1

I am gonna be writing java code to plot 3D point clouds. Someone suggested me to go for java 3D libraries however it is apparently dead (this reference) and not apparently good idea go to with JMonkey either (same reference). That link was posted in 2009 and we are in 2012. All I want to do is to plot a dense 3D point cloud, say 5 million points, and to be able to rotate it / or zoom in real-time. I know the algorithms for rendering and stuff however I need a set of 3D java library with active community and support ( if any).

Please consider Desktop and also Web applications while suggesting me the solution.

Thanks a lot

Community
  • 1
  • 1
C graphics
  • 7,308
  • 19
  • 83
  • 134
  • may i ask what was ultimately a useful solution for this? I have a very similar need and implementing it directly in jogl is is probably reaching its performance limits around 5mill points. 6 years later and the options for large point cloud rendering in java still seem sparse. i see po tree implementations in a lot of other languages wrapping opengl, but nothing for java – Jody Sowald Mar 28 '23 at 16:17

4 Answers4

2

Not a scenegraph, but LWJGL offers an easy wrapper around OpenGL, so you could quite easily construct a list of quads to represent your points and setup/modify a view to display and rotate them depending on user input.

This should work in applets also to cover your web targets.

Capn Sparrow
  • 2,030
  • 2
  • 15
  • 32
2

and not apparently good idea go to with JMonkey either (same reference)

What you reference there is more than three years old, ancient in terms of technology.

jME has come back in a big way since then. jME3 is it an extraordinarily stable beta with Android support, improved physics support (both JBullet as well as a native wrapper), an SDK with scene editor, lots of user-contributed plugins, and an extremely active community.

There are a number of successful games making use of it as well, most notably Mythruna and 3079.

What you're looking to do is easily accomplished in jME and we'd invite you to come on over and try it out. http://jmonkeyengine.org

sbook
  • 841
  • 1
  • 8
  • 13
  • After spending couple of hours more I am convinced that jMonkey community is alive and ongoing. However, I only need to plot 3D point scatter point clouds and no intention if expanding it to game. Do you still think JME is the wright choice? – C graphics May 01 '12 at 18:50
  • Yes, jME can still do this.. even if you don't want to make it into a game :) – sbook May 06 '12 at 21:27
  • You need to learn to use Blender to create the models that jme3 uses so I think that's overkill in terms of time wasted. – DPM Aug 10 '17 at 21:48
0

jzy3d is what you are looking for.

Jzy3d is an open source (BSD) java library that allows a rapid display of 3d scientific data, either surfaces, scatter plots, bar charts, and lot of other 3d primitives. The API provides support for rich interactive charts, with colorbars, tooltips and overlays. Axis and chart layout can be fully customized and enhanced.

Rob Audenaerde
  • 19,195
  • 10
  • 76
  • 121
Martin Pernollet
  • 2,285
  • 1
  • 28
  • 39
  • Thanks but the latest release is 2 years old! Dec 2009 http://code.google.com/p/jzy3d/downloads/list?can=1&q= – C graphics May 01 '12 at 16:48
  • The downloads have moved to www.jzy3d.org! I will delete these old downloads :) – Martin Pernollet May 01 '12 at 19:49
  • Also it seems platform dependent Here:http://jzy3d.org/download-0.9.php ... and seems not to be totally free http://jzy3d.org/guide.php .. and no video tutorials available on youtube – C graphics May 01 '12 at 20:34
  • Yes the documentation is not free, but API is BSD licensed. Jzy3d is trully crossplatform: there are binaries available for each platform. You can also use JOGL2 RC5 instead of the one provided on the page you mention: all natives are packed in jars and auto selected according to the target platform. – Martin Pernollet May 01 '12 at 21:12
  • Could you recommend me a link from which I can download a complete project and run it to see how it works? Something which runs just out of the box ( not like Jzy3d demos in http://www.jzy3d.org/download-0.9.php). Also only one page tutorial? http://www.jzy3d.org/tutorial.php – C graphics May 09 '12 at 20:35
  • Tutorial can now be downloaded as a ready to use eclipse project: http://www.jzy3d.org/tutorial.php – Martin Pernollet Oct 19 '12 at 22:52
0

I would use JavaFX for this. It is already included in JDK 8 and the project is well alive.

Contrary to LWJGL, there is more and better documentation. Also LWJGL being a thin wrapper, will force you to learn OpenGL as soon as you need to do any transformation, and that will take you some time.

Jzy3d is a higher level API but the tutorial is not free.

JME3 is overkill and, as long as my limited experience with it taught me, you'll need to use Blender to create the model (I might be wrong).

There is a lot of documentation for JavaFX online. If you don't mind buying a book, "JavaFX for Dummies" is quite good, although basic.

DPM
  • 1,960
  • 3
  • 26
  • 49