Java3d: Eckkoordinaten ein Box abfragen

Status
Nicht offen für weitere Antworten.
W

walk_on_deadline

Gast
Hallo Leute,
ich habe ein kleines Problem mit Java3d, ich würde gerne die Koordinaten der Eckpunkte einer beweglichen Box abfragen. Ich habe schon raus gefunden wie ich mir die Koordinaten des Mittelpunktes anzeigen lassen kann, ich vermute mal das ich mir die Box zu einem Shape3D Objekt casten muss, leider sind meine Versuche dann an die Koordinaten der Eckpunkte zu kommen gescheitert. Weiß jemand wie ich dann an die Point3f rankomme?

Gruß Ole
 

Marco13

Top Contributor
Du wirst zuimindest wissen müssen, wie groß deine ursprüngliche Box ist (bzw. wo DORT die Punkte liegen).

Dann kannst du dir mit http://java.sun.com/javase/technologies/desktop/java3d/forDevelopers/J3D_1_3_API/j3dapi/javax/media/j3d/Node.html#getLocalToVworld(javax.media.j3d.Transform3D) die Transform3D des Knotens holen, wo die Box dranhängt. Die Ursprünglichen Punkte kannst du dann mit dieser Transform transformieren, um ihre Lage in der "Welt" zu erhalten.

Falls du also einen Einheitswürfel transformiert hast, bekommst du die Eckpunkte, indem du die Punkte (0,0,0), (0,0,1), (0,1,0) ... (1,1,1) alle durch diese Transform jagst.
 
W

walk_on_deadline

Gast
Erst mal danke für die gute Idee, wenn ich die Eckpunkts als einzelne Punkte betrachte sind schon mal alle Probleme mit normalen Verschiebungen gelöst. Ich habe aber weiterhin ein Problem mit den Rotationen, die Punkte beachten bei der Rotation ja nicht den Abstand zum Mittelpunkt der Box sondern drehen sich nur um sich selbst. Gibt es eine einfache Möglichkeit bei der Rotation einen Ursprung anzugeben? Das einzige was mir einfällt wär den Abstand zu Boxmittelpunkt bestimmen dann den punkt dahin verschieben, die Transformation anwenden, den Punkt danach wieder zurück verschieben, rotieren und dann die Transformation anwenden. Aber das erscheint mir doch als ziemlich gefrickelt. Gibt es keinen Möglichkeit an die Position der Punkte einer Box ranzukommen, wie sieht es aus wenn ich keine fertige Box verwende sondern mir eine mit punkten selbst baue? Oder wenigsten eine einfache Möglichkeit einen Ursprung für die Rotation anzugeben?

Gruß Ole
 

Marco13

Top Contributor
Hab' die Frage jetzt nicht ganz verstanden: Wenn man eine Box mit Punkten (0,0,0), (0,0,1), (0,1,0) .... (1,1,1) hat, und diese dann rotiert, dann wird sie um ihren Ursprung gedreht. In der Matrix, die man mit der angegebenen Methode erhält, sind ALLE Transformationen zusammengefasst, die auf die Box angewendet wurden. Wenn man dann den Punkt 1,1,1 mit dieser Transform transformiert, erhält man die Position, wo der Punkt ganz am Ende liegt. Falls ich mich nicht gerade schwer irre.
 
W

walk_on_deadline

Gast
Hm dann hatte ich vielleicht deinen ersten Post nicht richtig verstanden, ich hatte jetzt einzelne Punkte definiert, die auf den Eckpunkten der Box lagen, die habe ich dann in gleichweise wie die Box verschoben, das klappt bei Verschiebungen aber leider nicht bei Rotationen weil einzelnen Punkte ja ihr eigener Ursprung sind. Aber offensichtlich hatte ich da was noch nicht ganz richtig verstanden.
 

Marco13

Top Contributor
Ja nee ... ein bißchen Pseudocode:
Code:
Box b = new Box(0,0,0,   0,0,1,   .... 1,1,1); // Box aus Eckpunkten

// Szenegraph aus Rotationen und Translationen zusammenbauen
translation0.addChild(box);
rotation0.addChild(translation0);
translation1.addChild(rotation0);
rotation1.addChild(translation1);
root.addChild(rotation0);

// Transform vom letzten Node holen (wo die Box drin ist)
translation0.getLocalToVworld(transform);

Point p = transform.transform(1,1,1); // p ehthält jetzt die finalen Weltkoordinaten des Punktes 1,1,1 der Box
Müßte grob(!!!) so gehen...
 

Backe

Mitglied
Ich versuche die Koordianten (Mittelpunkt) von Kugeln und Würfeln zu bekommen. Weiß leider nicht, wie ich das machen soll. Gibt es eine Methode die mir diese Koordianten ausliest?

LG
Backe
 

Marco13

Top Contributor
Kommt drauf an, wie die Kugeln und Würfel ursprünglich lagen. Im einfachsten Fall kann man sich mit getLocalToVWorld die Transformation der jeweiligen Objekte holen, und mit dieser Matrix dann den Punkt (0,0,0) transformieren (bzw. den Translationsanteil auslesen). Ansonsten ... musst du eine präzisere Frage stellen.
 

Backe

Mitglied
Ja, die Kugel liegt im Ursprung. Wie genau hole ich mir dann die Koordinaten mit getLocalToVWorld?
Ich würde sie gerne Ausgeben.
Kann da jemand mal ein bissle Code hochladen (kein Pseudocode).
 

mattn

Aktives Mitglied
weiß da es noch nicht erledigt ist ...

kann sein das es da einfache wege gibt aber
so aus dem stehgreif würd ich folgendes raten...


hol dir die koordinaten des würfels und da du die seitenlänge kennst....kommst du via rechtwinklichen dreieck an die eckkoordinate...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Java3D: Eckkoordinaten einer Box herausfinden Spiele- und Multimedia-Programmierung 18
N Java3d in Eclipse einbinden Spiele- und Multimedia-Programmierung 4
Neumi5694 Java3D Viewer Beschriftung Spiele- und Multimedia-Programmierung 1
C Java3D Transformieren von obj. Datein Spiele- und Multimedia-Programmierung 0
M Cylinder anhand eines Vektors ausrichten (Java3d) Spiele- und Multimedia-Programmierung 0
Ruvok Java3D Tutorial gesucht Spiele- und Multimedia-Programmierung 5
U Hilfe bei Implementierung eines PointSounds in Java3D Spiele- und Multimedia-Programmierung 1
R Java3d ViewingPlatform erst Verschieben und dann RotationsInterpolator Spiele- und Multimedia-Programmierung 0
D Java3D - Blickfeld Spiele- und Multimedia-Programmierung 1
P Java3D Box Dimensionen und Positionierung Spiele- und Multimedia-Programmierung 1
E Java3D Objekt skalieren per JSlider/JButton Spiele- und Multimedia-Programmierung 10
S Java3D: Primitives zu einem Objekt kombinieren Spiele- und Multimedia-Programmierung 7
J Java3D - Textur laden geht nicht Spiele- und Multimedia-Programmierung 9
J Java3D - Farben vermischen sich Spiele- und Multimedia-Programmierung 7
T Java3D Rendering Problem Spiele- und Multimedia-Programmierung 7
S Java3D oder JMonkey? Spiele- und Multimedia-Programmierung 17
H Java3D - Textur aufs innere einer Sphere mappen Spiele- und Multimedia-Programmierung 9
C java 3d ohne Java3d Spiele- und Multimedia-Programmierung 28
Maxim6394 [Java3D] Probleme bei Kollision Spiele- und Multimedia-Programmierung 7
Maxim6394 [Java3D] lookAt Mausposition Spiele- und Multimedia-Programmierung 17
Maxim6394 [Java3D] Probleme mit KeyFrame Animationen Spiele- und Multimedia-Programmierung 9
K Java3D als Applet ohne Installation von Java3d Spiele- und Multimedia-Programmierung 6
D Java3D Installation: package javax.media.j3d not found Spiele- und Multimedia-Programmierung 5
C Java3D Texture Mapping Spiele- und Multimedia-Programmierung 2
W Java3D: Kanten die hinter einem Objekt liegen werden gezeigt Spiele- und Multimedia-Programmierung 2
W Java3D: Farbe von Objekten stimmt nicht mit übergebenem RGB-Wert überein Spiele- und Multimedia-Programmierung 9
M Eigene Renderengine ohne Java3D,etc. Spiele- und Multimedia-Programmierung 19
C Java3D Sound spielt nur einen Sound ab. Spiele- und Multimedia-Programmierung 8
A JAVA3D TransformGroup <--> Group Problem Spiele- und Multimedia-Programmierung 3
M [Java3D] Animation von mehreren Objekten Spiele- und Multimedia-Programmierung 7
T Java3D: Objekte platzieren und entfernen? Spiele- und Multimedia-Programmierung 7
T Java3D: Nur die Kanten des Würfels rendern? Spiele- und Multimedia-Programmierung 4
W Java3D setBounds(BoundingBox) Spiele- und Multimedia-Programmierung 6
T [gelöst] Java3D: Unerwünschte Rotation um die 3.Achse vermeiden? Spiele- und Multimedia-Programmierung 3
Bastie JAVA3D - WRL Transform Spiele- und Multimedia-Programmierung 9
G Eclipse Problem mit Java3d Spiele- und Multimedia-Programmierung 3
T Java3D - Lichtquelle einbauen Spiele- und Multimedia-Programmierung 7
jemandzehage java3d parallel und perspective view Spiele- und Multimedia-Programmierung 5
H Cinema 4D in Java3D importieren Spiele- und Multimedia-Programmierung 2
1 [Java3D] komplexes Projekt? Spiele- und Multimedia-Programmierung 10
P .obj-Datei in Java3D laden: ParsingErrorException Spiele- und Multimedia-Programmierung 7
C Java3D Lichtquelle beim Beobachter Spiele- und Multimedia-Programmierung 2
C Java3D Interaktion während Animation Spiele- und Multimedia-Programmierung 3
aze Java3D: Flächen teilen Spiele- und Multimedia-Programmierung 15
P Java3D Textur verzerrt Spiele- und Multimedia-Programmierung 3
aze Java3D: Gegenstände aufeinander zubewegen ohne Kollision Spiele- und Multimedia-Programmierung 4
D [JAVA3D] Es werden 2 Fenster erzeugt und auf dem falschen gezeichnet Spiele- und Multimedia-Programmierung 3
aze Java3D: leere Räume füllen Spiele- und Multimedia-Programmierung 2
aze Java3d:Helligkeit von Shape3D ändern Spiele- und Multimedia-Programmierung 2
S Einschätzung zu Java3D-Einstieg Spiele- und Multimedia-Programmierung 3
F Programm mit Java3D unter Linux laufen lassen Spiele- und Multimedia-Programmierung 3
I Vergleich von Java3D und OpenGL Spiele- und Multimedia-Programmierung 17
W Waterslide mit Java3D Spiele- und Multimedia-Programmierung 11
M Java3D Picking - falsche Objekte werden gepickt Spiele- und Multimedia-Programmierung 3
M [Java3D] Rotieren der Scene NICHT des POV Spiele- und Multimedia-Programmierung 4
F Jogl oder Java3D ? Spiele- und Multimedia-Programmierung 20
K Java3D Abfängerfrage Spiele- und Multimedia-Programmierung 3
aze Java3D:Farbige Flächen verschwinden lassen(Transparenz- oder Colorinterpolator?)) Spiele- und Multimedia-Programmierung 5
C Java3D PositionInterpolator Spiele- und Multimedia-Programmierung 3
G [Java3D] Probleme bei Animation Spiele- und Multimedia-Programmierung 4
E [JAVA3D] Kamerasteuerung Spiele- und Multimedia-Programmierung 3
E [JAVA3D] Schattenstrich durch die Szene Spiele- und Multimedia-Programmierung 4
M Grundsätzliche Java3D Fragen Spiele- und Multimedia-Programmierung 2
C Java3D SceneGraohPath Spiele- und Multimedia-Programmierung 2
C Java3D Rotation um einen Punkt (y-achse) Spiele- und Multimedia-Programmierung 2
G Java3D plattformunabhängig bundeln Spiele- und Multimedia-Programmierung 3
TheKing Java3D-Shooter View Spiele- und Multimedia-Programmierung 2
A Java3D tutorial? Spiele- und Multimedia-Programmierung 3
R Java3D Kollisionserkennung und Schwerkraft Spiele- und Multimedia-Programmierung 17
M Java3D Objekte entfernen und hinzufügen Spiele- und Multimedia-Programmierung 10
J Java3d Schnelle Geschosse Spiele- und Multimedia-Programmierung 12
D Kann ich mit Java3D 2D Daten als 3D surfaceplot plotten? Spiele- und Multimedia-Programmierung 5
J Java3d setTextureTransform verändert J3DGraphics2D Spiele- und Multimedia-Programmierung 4
J Hilfe: Rotation X und Y Achse (Java3d) Spiele- und Multimedia-Programmierung 12
K Java3D: LineStripArray Spiele- und Multimedia-Programmierung 2
P Java3D - Zylinder genau wie Vektor ausrichten Spiele- und Multimedia-Programmierung 5
Developer_X Java3D Mensch Ärgere Dich nicht. Spiele- und Multimedia-Programmierung 10
C JAVA3D Rotation um einen bestimmten Punkt Spiele- und Multimedia-Programmierung 20
Developer_X Java3D-Ungeeignet für 3D Spiele wegen Heap Space=? Spiele- und Multimedia-Programmierung 23
Developer_X Java3D Canvas post Renderer und? Spiele- und Multimedia-Programmierung 5
A Java3D Sichtweite Spiele- und Multimedia-Programmierung 2
"Er" Kamera rotation in Java3D Spiele- und Multimedia-Programmierung 2
A Java3D: Behavior scheduling bounds Spiele- und Multimedia-Programmierung 3
Developer_X THE BALL (needs Java3D) Spiele- und Multimedia-Programmierung 34
Developer_X Java3D Game_(die erste) Spiele- und Multimedia-Programmierung 2
Developer_X Java3D und while schleifen Spiele- und Multimedia-Programmierung 4
Developer_X Collisionserkennung in Java3D Spiele- und Multimedia-Programmierung 3
Developer_X Java3D Node -> Obj Data Spiele- und Multimedia-Programmierung 2
Developer_X Figuren werden nicht angezeigt (Java3D) Spiele- und Multimedia-Programmierung 5
S PDFRenderer und Java3D Spiele- und Multimedia-Programmierung 2
Developer_X Java3D- der Mausklick auf Nodes Spiele- und Multimedia-Programmierung 3
Developer_X Java3D Point Sound Spiele- und Multimedia-Programmierung 71
Developer_X Lines in Java3D Spiele- und Multimedia-Programmierung 4
V Java3D: HUD erstellen Spiele- und Multimedia-Programmierung 2
V Java3D: scheinende Sonne Spiele- und Multimedia-Programmierung 4
V Java3D: Ringe für Saturn erstellen Spiele- und Multimedia-Programmierung 8
V Java3D: automatisches Bewegen der Kamera Spiele- und Multimedia-Programmierung 19
V Java3D: mehrere ViewingPlaforms in Sonnensystem Spiele- und Multimedia-Programmierung 8
Developer_X Thread in Java3D Spiele- und Multimedia-Programmierung 8
B Java3D .obj dateien Spiele- und Multimedia-Programmierung 2

Ähnliche Java Themen


Oben