Senkrechte Linie zu erkannter Kante setzen (LV2012) - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Module (/Forum-LabVIEW-Module) +---- Forum: LabVIEW Vision (/Forum-LabVIEW-Vision) +---- Thema: Senkrechte Linie zu erkannter Kante setzen (LV2012) (/Thread-Senkrechte-Linie-zu-erkannter-Kante-setzen-LV2012) |
Senkrechte Linie zu erkannter Kante setzen (LV2012) - Peter Schulze - 04.09.2012 07:17 Hallo zusammen, ich möchte zu einer erkannten Kante, in dessen Mitte und senkrechte zur erkannten Kante eine Linie erzeugen. Die erkannte Kante ist leider nicht waagerecht. Im mitgeschickten Bild ist die ganze Problematik veranschaulicht. Die grüne Linie ist die erkannte Kante. Die schwarze Linie habe ich nachträglich eingezeichnet, diese soll automatisch durch das Programm erzeugt werden. Hat jemande eine Idee oder sogar eine Lösung wie die schwarze Linie erzeugt werden kann? Vielen Dank im Voraus für Eure Hilfe. Gruß Peter EDIT jg: Crosspost RE: Senkrechte Linie zu erkannter Kante setzen (LV2012) - b.p - 04.09.2012 07:28 Morgen - ich war bisjetzt zu faul, meine 2012er Upgrade-DVD zu öffnen, aber ich denke, ich kann dir auch helfen, wenn ich den Code nicht kenne. Ich gehe mal davon aus, du kennst einen Vektor, der sie repräsentiert. (Im Zweifel Anfangspunkt - Endpunkt). Vertausche einfach die Koordinaten des Vektors und multipliziere einen davon mit -1. Jetzt hast du schon mal die Senkrechte.. und setzt die zB auf den Mittelpunkt deiner Linie oder wo auch immer du willst. Grüße, Birgit RE: Senkrechte Linie zu erkannter Kante setzen (LV2012) - Peter Schulze - 04.09.2012 12:28 Hallo Birgit, Vielen Dank für Deine Antwort. ich habe es mal ausprobiert, komme aber leider nicht zu einem befriedigenden Ergebnis. Eventuell kannst Du Dir den mitgeschickten Screenshot ansehen und mir sagen was ich falsch gemacht habe. Vielen Dank Gruß Peter RE: Senkrechte Linie zu erkannter Kante setzen (LV2012) - b.p - 04.09.2012 13:07 Du musst erst mal den Vektor ausrechnen. Dazu greifst du auf das erste Element von Straight Edge zu, und dann auf Punkt 1 und Punkt 2 mit Cluster. Der Vektor entsteht einfach durch Subtraktion, nehmen wir der Einfachheit halber (100|5). Diesen Vektor verdrehen und einen Wert mit -1 multiplizieren gibt (-5|100). Damit könntest du schon mal ne Linie zeichnen, nämlich von (ca) 800|722 auf 795|822. Versatz um den Mittelpunkt geht dann mit Substraktion von 1/2 des ersten Vektors von beiden Punkten. Grüße, Birgit RE: Senkrechte Linie zu erkannter Kante setzen (LV2012) - Peter Schulze - 05.09.2012 05:45 Ich konnte nach Deiner Beschreibung die Sache umsetzen. Ich hatte gehofft, dass es eine einfachere Variante gibt (z.B. NI SubVI’s mit welchen sich eine Linie drehen lässt) Vielen Dank und Grüße Peter RE: Senkrechte Linie zu erkannter Kante setzen (LV2012) - unicorn - 05.09.2012 11:44 Bei den Vision-VIs > Machine Vision > Analytic Geometry gibt es das VI "IMAQ Perpendicular Line" mit dem man die Linie berechnen kann. RE: Senkrechte Linie zu erkannter Kante setzen (LV2012) - b.p - 05.09.2012 12:05 Danke, hab ich noch nie verwendet, da mir das Ganze relativ offensichtlich erscheint. Man lernt nie aus :-) RE: Senkrechte Linie zu erkannter Kante setzen (LV2012) - unicorn - 05.09.2012 12:33 Na das VI ist ja auch in erster Linie dazu da, das Lot auf eine Gerade von einem Punkt aus zu fällen, was ansich auch recht einfache Analytische Geometrie ist, aber doch schon etwas mehr Programmcode umfasst. RE: Senkrechte Linie zu erkannter Kante setzen (LV2012) - GerdW - 06.09.2012 12:57 cross post... RE: Senkrechte Linie zu erkannter Kante setzen (LV2012) - jg - 06.09.2012 13:53 @GerdW: Danke für den Hinweise @Peter Schulze: Bitte LVF-Regeln lesen und in Zukunft beachten! Bei Crossposting immer einen Link angeben. Auf den ersten Blick werde ich da eine ganze Reihe Crossposts bei der finden! Beim nächsten Mal kommt dann Jens EDIT: Oh, jetzt werde ich wirklich böse, du wurdest ja schon mehrfach auf das Crossposting hingewiesen: http://www.labviewforum.de/Thread-Error-1074395317-point-lies-outside-the-image?pid=90382#pid90382 http://www.labviewforum.de/Thread-10-gleiche-Graubilder-aufnehmen-und-einen-Mittelwert-bilden?pid=90385#pid90385 Also beim nächsten Mal |