Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 3D画布到虚拟世界的映射_Java_Graphics_Java 3d_3d - Fatal编程技术网

Java 3D画布到虚拟世界的映射

Java 3D画布到虚拟世界的映射,java,graphics,java-3d,3d,Java,Graphics,Java 3d,3d,我已经设置了一个3d场景,可以浏览我的场景等(我在Java 3d方面有相当丰富的经验),但我仍然需要在Java 3d中实现以下四个操作的方法: 将Canvas3D的查看区域映射到虚拟世界(使用此映射,我应该能够在虚拟世界中围绕查看画布绘制轮廓(矩形) 将画布上的鼠标点转换为虚拟世界中的一个点(如果我有这个,我也应该能够实现上述目标) 从虚拟世界中的点转换为Canvas3D对象上的点 我希望能够缩放我的场景以适应Canvas3D对象的查看区域(希望没有尝试和错误。即,希望没有放大一点,然后再次测

我已经设置了一个3d场景,可以浏览我的场景等(我在Java 3d方面有相当丰富的经验),但我仍然需要在Java 3d中实现以下四个操作的方法:

  • 将Canvas3D的查看区域映射到虚拟世界(使用此映射,我应该能够在虚拟世界中围绕查看画布绘制轮廓(矩形)
  • 将画布上的鼠标点转换为虚拟世界中的一个点(如果我有这个,我也应该能够实现上述目标)
  • 从虚拟世界中的点转换为Canvas3D对象上的点
  • 我希望能够缩放我的场景以适应Canvas3D对象的查看区域(希望没有尝试和错误。即,希望没有放大一点,然后再次测试点,然后重复)

以上所有内容都非常密切相关,因此非常感谢您的帮助。

要将Canvas3D坐标转换为虚拟世界坐标,您应该使用Canvas3D的和方法。这将获得从imagePlate坐标到虚拟世界坐标的映射

要将像素位置转换为虚拟世界坐标,需要将上述转换与

与上述相反,将回答你的第三点

一旦所有东西都在同一个坐标空间中,就可以开始计算出特定应用程序所需的适当变换