Hi,
I've played with Java3D and am currently using some vtk in a C++ research
project. The big difference is in what you intend to represent and how fast you
need to get the project out the door or how fast you need for the display to
update/run. Java3D is built around the scene graph concept. It is an excellent
API to quickly develop simulated walkthroughs and scenes of objects where much
of the geometry of the scene can be easily modeled or models can be dropped in
from other software packages. The API works best with models of the typical
polygon mesh variety. Trying to do radiosity, ray tracing, ray casting, etc. is
usually possible but you end up throwing away most of the advantages of Java3D.
Documentation and support is excellent.
vtk on the other hand is largely set up to perform visualization
functions. You have to spend the effort to figure out how to set up your scene
and render it, but models can be in a large variety of formats and data
structures. Manipulating raw data is much easier than with the typical polygon
structure of Java3D. As a result, vtk is easier for many of the visualization
methods and almost a must if you are trying to create some new method of display
or visualization. On the down side, it is difficult to build a real time
interactive scene in vtk with those types of visualizations. In my research,
I've found that after I pass my data to vtk for rendering, it takes several
seconds (as opposed to a measure of frames per second) to display the data. vtk
does well after the initial pass and does well when rotating and viewing the
object once rendered. Because vtk can use many data formats, doing something
like visually scanning through CAT scan slices is relatively easy whereas on
Java3D it would be much more difficult. I am not impressed with the
documentation and support for vtk as compared with Java3D. There are some
really good pubs and online tutorials for learning Java3D. The two vtk books in
existence are very similar in structure and often illustrate simplistic examples
leaving much out. The user group for Java3D is well subscribed and has an
active following. You are just about guaranteed to get someone to answer your
query, usually multiple answers. The vtk list is harder to read and follow a
thread and a great many queries appear to go unanswered (just look at the
archives).
Bottom line: I you intend to use largely polygonal models, use Java3D. If
you need fine control of the data for visualization, use vtk.
Hope this helps - Gary Graf
Rafael Pereira wrote:
> Hi...
> I'm a new studant of Java3D and I already work with java.
> But I need know about the features of Java3D...
>
> I would like to know the pros and cons of Java3D in relation to VTK and
> OpenGL (velocity, hard, quality and performance). I study at USP (University
> of S�o Paulo) in Brazil, and I use java with VTK, using JNI for the programs
> of Computer Graphics. But I don't like install the DLL that I need for use
> this.
>
> I also need know what's the diference between the Java3D install for DirectX
> and OpenGL. I don't know, but Java3D use OpenGL calls?
>
> In terms of Visulization, Java3D as powerful as VTK?
> If someone have any material about this, please, said to me.
> I need so much of this.
> Thank you.
> Bye.
>
> _________________________________________________________________
> Tenha voc� tamb�m um MSN Hotmail, o maior webmail do mundo:
> http://www.hotmail.com/br
>
> ===========================================================================
> To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
> of the message "signoff JAVA3D-INTEREST". For general help, send email to
> [EMAIL PROTECTED] and include in the body of the message "help".
===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST". For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".