Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Habe folgendes Problem: Ich habe ein Photo und möchte darin von Hand mehrere Punkte markieren (nicht über x und y Angaben sondern mit der Maus im Bild anklicken) und diese im nachhinein einzeln verschieben oder löschen können. Von diesen Punkten möchte ich danach die Position im Bild auslesen. Ich habs mit einem Overlay versucht, weiss aber nicht wie ich den Punktoverlay mit der Mausposition koppeln kann...
Kann mir jemand einen Tip gegben wie dies am einfachsten zu realisieren ist?
Hab leider kein Vision mehr seit einiger Zeit.
Mit einem normalen Picture geht es folgendermassen (sollte mit Vision vermutlich auch klappen)
- Ereignissstruktur erstellen mit dem Fall: "on click" für dein Pictureelement.
- In der Ereignissstruktur kannst du nun die Koordinaten des Klicks auslesen
- Per Eigenschaftsknoten noch die Eckpunkte des Picturecontrols auslesen und diese von den ermittelten Koordinaten des Klicks abziehen.
Damit hast du dann die Koordinaten im Bild.
Grüße
A few weeks of developement and testing can save a WHOLE afternoon in the library!
' schrieb:Hab leider kein Vision mehr seit einiger Zeit.
Mit einem normalen Picture geht es folgendermassen (sollte mit Vision vermutlich auch klappen)
- Ereignissstruktur erstellen mit dem Fall: "on click" für dein Pictureelement.
- In der Ereignissstruktur kannst du nun die Koordinaten des Klicks auslesen
- Per Eigenschaftsknoten noch die Eckpunkte des Picturecontrols auslesen und diese von den ermittelten Koordinaten des Klicks abziehen.
Damit hast du dann die Koordinaten im Bild.
Grüße
Danke für deinen Rat. Allerdings kann ich mit dieser Methode nur einen Punkt auf einmal bestimmen. Und beim nächsten Klick ist er auch gleich wieder weg... Ich möchte mehrere Punkte ins Bild malen so dass diese bleiben und ich sie auch noch verschieben kann und wenn sie mir dann alle passen möchte ich die Koordinaten bestimmen. Weisst du wie das gehen könnte?
Gruss
25.06.2008, 09:09 (Dieser Beitrag wurde zuletzt bearbeitet: 25.06.2008 09:11 von jg.)
RE: Manuell Position von Punkten in Bild bestimmen
Hallo!
Habe gerade diesen interessanten Post gefunden. Stoße allerdings in meinem konkreten Anwendungsfall auf folgendes Problem mit dem Picture Property-Node:
Ich habe ein Control (Bool-Array), von dem ich die Position der Maus innerhalb bestimmen will. Das gibts natürlich nicht so praktisch wie beim picture.
Kein Problem, dachte ich: legst du einfach ein Picture dahinter und nutzt das. Geht nicht, Picture muss immer im Vordergrund sein, sonst kommen als Koordinaten nur -1/-1 raus!
Kein Problem, dachte ich: machst du das Picture einfach transparent! Jetzt krieg ich zwar die Position der Maus, aber kann das Control darunter nicht mehr bedienen.
Muss ich den (im Vergleich) komplizierten Weg über Maus-Koordinaten relativ zum Bildschirm verrechnen mit den VI- und Control-in-VI-Koordinaten verrechnen?
RE: Manuell Position von Punkten in Bild bestimmen
Hallo!
Ich habs jetzt versucht über folgenden Ansatz:
1. Picture einblenden
2. Koordinaten auslesen
3. Picture wieder ausblenden
(diese drei Punkte sollen später in einem SubVI ziemlich schnell nacheinander abgearbeitet werden, so dass ich eigentlich gar nicht mitbekomme, dass da überhaupt so etwas da ist.)
RE: Manuell Position von Punkten in Bild bestimmen
Hallo!
Das hatte ich vergessen zu erwähnen: Events kommen für die ganze Sache leider nicht in Frage, da wir z.T. mit der Base-Version von Labview arbeiten, in der die Events nicht zur Verfügung stehen.