从屏幕坐标中选择JavaFX中的3D节点

问题描述 投票:2回答:1

是否可以通过屏幕坐标来选择JFX场景上的3D节点?

知道我没有使用鼠标,而是使用了自定义触摸处理器(不是JFX Touch事件)。

我尝试过的:

  1. 模拟来自触摸处理程序的MouseEvent并触发事件。从事件获得的PickResult始终为null。
  2. 使用通用方法:通过调用(不推荐使用)方法:Node.impl_pickNode(pickray, result)进行射线/节点碰撞,所以我尝试获取PickRay:
    1. 通过调用:Camera.computePickRay(double x, double y, PickRay pickRay),但是该方法不是公共的...
    2. 构建它,但是我需要将屏幕坐标转换为3D坐标,但是不知道如何使用JFX API。

感谢您的任何输入!

3d javafx coordinates javafx-3d
1个回答
1
投票

Jose Pereda最近为免费的开源F(X)yz库贡献了一个RayCasting示例:

https://github.com/FXyz/FXyzLib/blob/master/src/org/fxyz/tests/RayTest.java

它仍在不断变化,但可能会为您提供所需的一切。这类似于他和@ jdub1581尝试解释javafx-8-3d-scene-intersection-point

的问题
© www.soinside.com 2019 - 2024. All rights reserved.