OpenGL vs VTK


I have to program a 3D interactive visualization/telemanipulation tool for a robotic system and I’m wondering if I should use OpenGL or VTK.
I guess using VTK is easier, faster and more object-oriented. On the other hand OpenGL is very flexible. Are there major drawbacks in using VTK?


Have you looked into Open Inventor and Performer? They may provide alternatives. VTK seems to be a nice wrapper, but I never used it, mainly because I couldn’t get it to compile properly on my computer. AFAIK, Inventor and Performer (and maybe VTK) let you combine OpenGL with their API’s so you get the best of both worlds.

Hope that helps.

Well, my question should have rather been:
If you are comfortable in programming OGL, are there any good reasons in using VTK, OInventor, etc. ?
My application will not need to support object editing. Just visualization and changing objects’ position/orientation/color/etc.
The visualization should be very flexible in camera manipulation (like rotating around the pixel the cursor is pointing at, shifting the camera at different speeds depending on the distance of the pixel the cursor points at, ect.)

If you are comfortable with OpenGL, I wouldn’t touch the VTK with a 10 foot pole unless you absolutely have to. I had to use the VTK for some school assignments and hated it. Some things in it are intuitive, but many are not. And the documentation is not very good, and in some cases I found the documentation was flat out wrong.

I should probably add, though, that my teacher basically just gave us assignments were we just had to cut and paste code from various examples that come with it, and cut-and-paste coding is really not my style. I like to understand the code I use, so most of the time I would re-write it all from scratch.

[This message has been edited by Deiussum (edited 08-09-2001).]