相关疑难解决方法(0)

在JavaFX中正确旋转3轴上的3D对象

所以我到目前为止用于在JavaFX中旋转对象的方法是我将它分成3组,每组都附加一个Rotate并锁定到单个轴,如下所示:

    Rotate heading, roll, pitch;
    Group normalrotate, rollrotate, verticalrotate;

    heading.setAxis(new Point3D(0,1,0));
    normalrotate.getTransforms().add(heading);

    roll.setAxis(new Point3D(0,0,1));
    rollrotate.getTransforms().add(roll);

    pitch.setAxis(new Point3D(1,0,0));
    verticalrotate.getTransforms().add(pitch);
Run Code Online (Sandbox Code Playgroud)

并且每次我需要旋转对象时都会执行setAngle().这对于前进和滚动非常有效,直到我决定我也需要投球.现在很多OpenGL等教程都说旋转的matix或四元数最适合这种类型的旋转,但是javadoc缺少任何有用的数据.

示例:当我在y轴上旋转对象180度时会发生什么(实际上应该以透明蓝色旋转) 在此输入图像描述 我错过了什么吗?所有帮助将不胜感激.

java 3d javafx quaternions javafx-3d

6
推荐指数
1
解决办法
4381
查看次数

标签 统计

3d ×1

java ×1

javafx ×1

javafx-3d ×1

quaternions ×1