Hallo,
ich sitz gerade vor GWT mit der GWT-graphics Library und erstelle ein Panel, das mit SVG Dinge darstellt (im Anhang ist ein Bild).
Im Prinzip sind's einfach nur Striche und an jedem Strich-Ende wird ein Kreis dargestellt. Die Kreise kann man per Drag and Drop bewegen. Soweit ist alles ganz einfach. Jetzt soll man aber auch (per Doppelklick) neue Kreise erstellen können... Und natürlich sollen dann die Linien angepasst werden.
Ich hab's auch schon implementiert, aber ich finde das sooo hässlich
-->
Koordinaten vom Doppelklick abrufen, dann gucken zwischen welchen bisherigen Punkten ich gelandet bin. und dann den 'nächsten' Punkt auf die Position des Klicks setzen, den übernächsten auf die Position des vorherigen Punktes, etc. Also einfach alle einen zurückschieben und zum Schluss an die Stelle wo der letzte Punkt war einen neuen erstellen.
Viel einfacher wäre es, wenn ich mitten im Path einfach sagen könnte: Bau mir da noch einen Strich zwischen. Aber geht das irgendwie? Oder ist das per Spezifikation unmöglich?
Achja: Die Punkte lassen sich maximal(!) bis zum nächsten Punkt verschieben. Es ist also nicht möglich Punkt 1 zwischen Punkt 2 und Punkt 3 zu schieben. Ordnung muss sein
ich sitz gerade vor GWT mit der GWT-graphics Library und erstelle ein Panel, das mit SVG Dinge darstellt (im Anhang ist ein Bild).
Im Prinzip sind's einfach nur Striche und an jedem Strich-Ende wird ein Kreis dargestellt. Die Kreise kann man per Drag and Drop bewegen. Soweit ist alles ganz einfach. Jetzt soll man aber auch (per Doppelklick) neue Kreise erstellen können... Und natürlich sollen dann die Linien angepasst werden.
Ich hab's auch schon implementiert, aber ich finde das sooo hässlich
Koordinaten vom Doppelklick abrufen, dann gucken zwischen welchen bisherigen Punkten ich gelandet bin. und dann den 'nächsten' Punkt auf die Position des Klicks setzen, den übernächsten auf die Position des vorherigen Punktes, etc. Also einfach alle einen zurückschieben und zum Schluss an die Stelle wo der letzte Punkt war einen neuen erstellen.
Viel einfacher wäre es, wenn ich mitten im Path einfach sagen könnte: Bau mir da noch einen Strich zwischen. Aber geht das irgendwie? Oder ist das per Spezifikation unmöglich?
Achja: Die Punkte lassen sich maximal(!) bis zum nächsten Punkt verschieben. Es ist also nicht möglich Punkt 1 zwischen Punkt 2 und Punkt 3 zu schieben. Ordnung muss sein