Hallo erstmal,
Ich bin gerade dabei ein bisschen Java3D zu lernen und lese mir dazu das Tutorial von Sun durch. Der Test in Kapitel 1, Frage 5, bereitet mir allerdings Probleme. Da heißt es:
In dem Programm wurde ein ColorCube mit der Skalierung 0.4 erzeugt (Die Seitenlänge beträgt also 0.8), ein RotationInterpolator angehängt und diesem eine BoundingSphere für die scheduling bounds zugewiesen. In der Antwort zu dieser Frage steht:
Nun frage ich mich: Wieso ein Radius von 0.8? Die Frage war ja, welches der kleinsmögliche Radius ist, bei dem der Würfel immer rotiert, wenn er im Blickfeld ist. Einen kleinstmöglichen Wert kann es da aber doch garnicht geben, denn egal wie weit man den Würfel von der Kamera "wegschiebt", er bleibt schließlich immernoch im Blickfeld. Die BoundingSphere ist dann aber nichtmehr innerhalb des view radius.
Wie kommt der Wert zu stande? Warum soll der Radius gerade so groß sein, wie der Würfel? Die BoundingSphere wäre dadurch ja doppelt so groß wie der Würfel.
Ich habe da bestimmt irgendwo einen Verständnis- oder Denkfehler drin, aber ich kann ihn nicht finden. Könnt ihr mir helfen?
Danke im Voraus.
Ich bin gerade dabei ein bisschen Java3D zu lernen und lese mir dazu das Tutorial von Sun durch. Der Test in Kapitel 1, Frage 5, bereitet mir allerdings Probleme. Da heißt es:
In HelloJava3Dc, the bounding sphere has a radius of 1 meter. Is this value larger or smaller than it
needs to be? What is the smallest value that would guarantees the cube will be rotating if it is in view?
In dem Programm wurde ein ColorCube mit der Skalierung 0.4 erzeugt (Die Seitenlänge beträgt also 0.8), ein RotationInterpolator angehängt und diesem eine BoundingSphere für die scheduling bounds zugewiesen. In der Antwort zu dieser Frage steht:
The BoundingSphere only needs a radius of 0.8 (0.4 * 2.0). The center should be (0, 0, 0). The location of
the BoundingSphere will be transformed by any TransformGroup objects above it in its scene graph path.
Nun frage ich mich: Wieso ein Radius von 0.8? Die Frage war ja, welches der kleinsmögliche Radius ist, bei dem der Würfel immer rotiert, wenn er im Blickfeld ist. Einen kleinstmöglichen Wert kann es da aber doch garnicht geben, denn egal wie weit man den Würfel von der Kamera "wegschiebt", er bleibt schließlich immernoch im Blickfeld. Die BoundingSphere ist dann aber nichtmehr innerhalb des view radius.
Wie kommt der Wert zu stande? Warum soll der Radius gerade so groß sein, wie der Würfel? Die BoundingSphere wäre dadurch ja doppelt so groß wie der Würfel.
Ich habe da bestimmt irgendwo einen Verständnis- oder Denkfehler drin, aber ich kann ihn nicht finden. Könnt ihr mir helfen?
Danke im Voraus.