J
JKL
Gast
Hallo,
nun habe ich mich doch erstmals in einem Forum angemeldet, da ich zu dem Thema wenig gefunden habe und hoffe das man mir hier helfen kann.
Ich habe ein Zeichenprogramm geschrieben, in welchem ich drei 2d-Ansichten und eine 3d-Ansicht integriert habe. Die Geometrien bestehen aus Kontrollpunkten, diese können innerhalb der 2d-Ansichten per Mausklickt erstellt/ausgewählt werden und per drag&drop verschoben werden.
Nun merke ich, dass bei aufwändigen Geometrien (bestehen im Grunde aus sehr vielen Linien) die 2d-Ansichten extrem langsam werden, wenn ich einen Punkt anklicke oder verschiebe. Die 3d-Ansicht bleibt jedoch ziemlich fix und wird schnell neu gezeichnet. Von daher kann ich davon ausgehen das meine Geometrien schnell neu berechnet werden nur das zeichnen innerhalb meiner 2d-Panels zu lange dauert. Daher würde ich gerne 2d-Ansichten mittels Java3d basteln. Jedoch weiß ich nicht wie man in Java3d Mausklicks auswertet bzw. prüft ob man ein Objekt angeklickt hat. Bisher habe ich immer nur die Standard MouseListener von Java3d zum zoomen verschieben und rotieren der Kamera angemeldet. Ich weiß zwar das man da irgendwie einen Strahl in seine Scene schießen kann, aber ebend nur "irgendwie".
Weiterhin sollen die 2d-Ansichten auch keine Perspektive haben ( da habe ich mir schon Gedanken zu gemacht, man könnte ja einfach durch einen "Transform3d" eine 2d-Projektion auf seine "TransformGroup" anwenden, aber vielleicht gibt es ja noch eine einfachere Methode).
Ich bin auch für ganz andere Vorschläge offen, vielleicht ist mein 2d-Panel auch einfach ineffizient und ich könnte Java3d im Hinblick auf die 2d-Ansichten ganz umgehen.
Also denn, ich bin gespannt und freue mich auf eure Antworten!
nun habe ich mich doch erstmals in einem Forum angemeldet, da ich zu dem Thema wenig gefunden habe und hoffe das man mir hier helfen kann.
Ich habe ein Zeichenprogramm geschrieben, in welchem ich drei 2d-Ansichten und eine 3d-Ansicht integriert habe. Die Geometrien bestehen aus Kontrollpunkten, diese können innerhalb der 2d-Ansichten per Mausklickt erstellt/ausgewählt werden und per drag&drop verschoben werden.
Nun merke ich, dass bei aufwändigen Geometrien (bestehen im Grunde aus sehr vielen Linien) die 2d-Ansichten extrem langsam werden, wenn ich einen Punkt anklicke oder verschiebe. Die 3d-Ansicht bleibt jedoch ziemlich fix und wird schnell neu gezeichnet. Von daher kann ich davon ausgehen das meine Geometrien schnell neu berechnet werden nur das zeichnen innerhalb meiner 2d-Panels zu lange dauert. Daher würde ich gerne 2d-Ansichten mittels Java3d basteln. Jedoch weiß ich nicht wie man in Java3d Mausklicks auswertet bzw. prüft ob man ein Objekt angeklickt hat. Bisher habe ich immer nur die Standard MouseListener von Java3d zum zoomen verschieben und rotieren der Kamera angemeldet. Ich weiß zwar das man da irgendwie einen Strahl in seine Scene schießen kann, aber ebend nur "irgendwie".
Weiterhin sollen die 2d-Ansichten auch keine Perspektive haben ( da habe ich mir schon Gedanken zu gemacht, man könnte ja einfach durch einen "Transform3d" eine 2d-Projektion auf seine "TransformGroup" anwenden, aber vielleicht gibt es ja noch eine einfachere Methode).
Ich bin auch für ganz andere Vorschläge offen, vielleicht ist mein 2d-Panel auch einfach ineffizient und ich könnte Java3d im Hinblick auf die 2d-Ansichten ganz umgehen.
Also denn, ich bin gespannt und freue mich auf eure Antworten!
Zuletzt bearbeitet von einem Moderator: