是否可以在Netbeans 7.0应用程序中使用Jzy3D?

好吧,所以我们试图在我们的Netbeans 7.0项目中加入3D散点图,我们选择测试的其中一个库是Jzy3D。 看起来它会像我们需要的那样做,但不幸的是,它没有做任何事情。

我已经正确安装了JOGL,并对其进行了测试并发现它正常工作。 然后我包含了与demo中相同的依赖项。 我也尝试过直接包含.jars。 是的,gluegen-rt.jar在库文件夹中。

编辑:为了让JOGL工作,我们不得不大量修改构建设置。 老实说,我的老板做了大部分工作,所以我还不完全确定如何复制它。 现在,我正在尝试将图表放在JFrame中,而Jzy3D库中的FrameSwing扩展会出现以下错误:

 线程“main”中的exceptionjava.lang.ClassCastException:org.jzy3d.plot3d.rendering.canvas.CanvasAWT无法强制转换为javax.swing.JComponent
    在org.jzy3d.bridge.swing.FrameSwing。(FrameSwing.java:36)
     at scratchwork.My3DChart.main(My3DChart.java:40) 

我会继续努力,但如果有人知道什么是错的,那就知道了。

更新:似乎CanvasAWT是从Canvas扩展而来的,它是从Component扩展而不是JComponent。 这似乎是问题,我已经将它提交给了Jzy3D作者。

也许您忘记使用构造函数中的“swing”选项创建图表,如此处所述。 它使用CanvasSwing创建图表,CanvasSwing是Swing应用程序中预期的JComponent。 构建一个摇摆图表会创建一个JOGL lightwight组件,该组件可以与出现在顶部的其他JComponents混合(默认的AWT图表很重,并且仍然位于任何其他UI组件的顶部)。

Jzy3d已经在Swing和其他Windowing工具包中取得了成功,所以它应该适合你。

干杯,

马丁