Registriert seit: 11. Mär 2008
14 Beiträge
Delphi XE5 Professional
|
AW: Polygon / Polylinie grafisch eingeben
22. Jun 2016, 09:26
Habe mal etwas ähnliches gemacht (Vektorgrafikprogramm). Meine Lösung war damals folgende: Intern habe ich eine ObjectList definiert, die ihrerseits Records aufnehmen konnte. Das Record speicherte Koordinatenpunkte (x,y,z) und jeweils eine Angabe zur Zeichenform (Polyline oder Polygon). Mit jedem Links-Klick auf einer Paintbox wurde ein weiterer Punkt aufgenommen, ein Rechts-Klick beendete die Punktaufnahme. Im OnPaint-Ereignis der Paintbox wurden die Figuren dann der Reihe nach abgearbeitet und gezeichnet, solange jeweils mehr als ein Koordinatenpunkt für Polylines oder drei Punkte für Polygone eingegeben worden waren. Die in den Records enthaltenen Koordinatenwerte konnten auch in einer Tabelle wiedergegeben und von dort aus auch verändert werden (OnChange). Allerdings konnte ich die Koordinatenpunkte auch per Maus greifen. Meines Wissens haben sämtliche User es auf diese Weise gemacht - keiner hat mit den Tabellen arbeiten wollen. Als zusätzliches Feature ließ sich auf der Paintbox ein Hintergrundbild einblenden, so dass man praktisch "durchpausen" konnte. Für geometrische Figuren gab es eine Snap-to-grid-Funktion.
|