JavaFX三维空间中的二维形状
我知道,如果我旋转一个对象,它扩展了JavaFX三维空间中的二维形状,javafx,2d,javafx-8,polyline,javafx-3d,Javafx,2d,Javafx 8,Polyline,Javafx 3d,我知道,如果我旋转一个对象,它扩展了javafx.scene.shape.shape,我可以将它转换为3D空间,即使它最初设计为2D(至少据我所知) 假设我有一个3D场景(使用透视摄影机和深度缓冲区),其中出现了各种MeshViews。一些用于区域,另一些用于线。在这两种情况下,必须对这些形状进行三角剖分,以便使用三角网格绘制它们,这通常是不常见的 现在,当我将这些线的绘制更改为使用Polyline类时,性能崩溃非常可怕,并且出现了奇怪的伪影。我认为我可以受益于这样一个事实,即多段线具有较少的顶
javafx.scene.shape.shape
,我可以将它转换为3D空间,即使它最初设计为2D(至少据我所知)
假设我有一个3D场景(使用透视摄影机和深度缓冲区),其中出现了各种MeshView
s。一些用于区域,另一些用于线。在这两种情况下,必须对这些形状进行三角剖分,以便使用三角网格
绘制它们,这通常是不常见的
现在,当我将这些线的绘制更改为使用Polyline
类时,性能崩溃非常可怕,并且出现了奇怪的伪影。我认为我可以受益于这样一个事实,即多段线具有较少的顶点,并且开发人员不必以编程方式进行三角剖分
是否不鼓励在3D空间中使用扩展的形状javafx.scene.shape.shape
?它们是如何在内部绘制的?如果在JavaFX中的问题是“我应该在3D空间中使用2D形状对象吗?”那么答案是否定的,因为您将看到所有糟糕的性能。不过,听起来您似乎在试图弥补JavaFX使用2D对象并在3D空间中旋转它们的3D多段线对象的不足。如果这是真的,请使用免费的开源F(X)yz库:
例如,PolyLine3D类允许您简单地指定Point3Ds的列表,并为您连接它们:
/src/org/fxyz/shapes/composites/PolyLine3D.java
您可以在测试目录中看到如何使用它的示例代码:
/src/org/fxyz/tests/PolyLine3DTest.java