Hallo liebe Community, ich habe ein Thema mit dem ich nicht weiter komme.
Habe ein kleines Zeichenprogramm erstellt, mit dem ich die Zeichnung als DXF ausgeben kann.
Nun möchte ich das gezeichnete editieren. Dabeiwäre es gut wenn die einzelnen Elemente per Maus anklicken könnte, und dann die Positinsangaben vom Elemnt einfach editieren kann. Somit könnte ich Linienzüge ... einfach editieren.
Nun, bisher habe ich mit den Geometries gearbeitet (LineGeometry, ArcGeometry), die haben aber nur das Change-Event.
Bei den Shapes gibt es die Events, die sind alle schon vorhanden. Aber bei den Shapes gibt es auch keine Kreisbögen (Arc).
Gibt es eine Möglichkeit, die Geometries auch auf Mausevents reagieren zu lassen, oder gibt es bei Shapes etwas für Kreissegmente (möchte keine Punktewolke oder viele kurze Liniensegment).
Hat jemand so etwas realisiert.
Eine Möglichkeit sehe ich nun. Bei Path.Data sind die Events wieder vorhanden. So müßten alle Geometries in einem eigenen Path stehen, und diese an das Event gebunden werden, dann geht das auch mit den Geometries. Andere Idee?
Hier werden sinnvolle Tips für ein solches Vorhaben gegeben: Strategy for implementing a complex curve editor with XAML/WPF
Vergiß die Idee mit den Events wieder. Verwende Thumb-Controls zum Verschieben der Punkte, DataBinding sowie MVVM für das Implementieren der Logik: [Artikel] MVVM und DataBinding
Ich habe so etwas ähnliches schon mal umgesetzt, allerdings nur zum Editieren von einfachen Bezier-Splines. Daher kann ich sagen, daß dein Vorhaben nicht ganz trivial ist. Kreisbögen kannst du auch durch Splines approximieren, oder du verwendest fertige Bibliotheken dafür, oder du schreibst die Berechnung selbst. Das komplizierte ist aber die Benutzerinteraktion.
Weeks of programming can save you hours of planning
Hallo, danke für die Info.
Von dem Thumb habe ich noch nie gehört. Gibt es da von die was konkretes wo man sich das anschauen kann? Im Netz habe ich erst mal nichts so dolles gefunden.
Gemeint ist Thumb Klasse.
In dem verlinkten Stackoverflow-Beitrag gibt es ein Code-Beispiel mit den Thumbs. Es gibt die Doku. Und es gibt Projekte, die sowas anwenden, wie z.B. NetworkView.
Weeks of programming can save you hours of planning