JavaFX-如何将MeshView数组添加到组或场景

时间:2018-07-28 17:49:51

标签: javafx javafx-3d

更新:我更新了代码以遍历网状视图列表,并使用group.getChildren.add(meshview [i])将其添加到组中,但仍未显示在屏幕上。谢谢。

我试图在基于JavaFx的GUI中将MeshView类型的数组列表添加到场景中。我可以得到一个最初的例子来工作,它是一个MeshView,但是现在我遇到了一种情况,从文件中读取的数据会导致一个MeshView类型的数组。我在Group类型上找不到“ add”或“ addAll”类型的函数,无法循环浏览所有元素并添加它们,也无法通过Group构造函数在参数中的某个位置添加列表。我之所以使用Group来包含它们,是因为整个GUI使用的是使用FXML文件定义的BorderLayout。因此,我的初始版本将Meshview与一些点光源一起添加到一个组中,然后使用其set方法将该组添加到边框布局的中心。任何帮助,将不胜感激。谢谢。

Ps。我想我可能刚刚找到答案。我忘记了add方法在get子项下: group.getChildren()。addAll(meshView,pointLight); 如另一答案上方的行所示。但是我仍然对听到最好的方法感兴趣,因为我仍然对如何处理情景运动感到困惑,在这种情况下,您说20个网格视图构成了要在屏幕上显示的一部分,并且您想将这些和适当的灯光等进行缩放以适合居中或边框布局。我猜想我可以先使用add添加所有的meshview,然后添加灯光,但不确定。再次感谢。

1 个答案:

答案 0 :(得分:0)

您始终可以将网格视图添加到任何节点类型对象,例如Chemical_FormulaGroup,例如。

BorderLayout

您可以向该root.getChildren().add(meshView); 对象添加尽可能多的内容,并在场景中平移root

meshView

并设置摄像头和亮点配置,并将它们也添加到场景中