[vtkusers] Using VTK with Java on Mac OS X

Mykola Khotyaintsev ko at anna.irfu.se
Sat Feb 21 15:45:35 EST 2004


Dear Garsha, Robert, VTK-users and VTK-developers!

I have developed a software based on Java, called the Orbit Visualization
Tool (http://ovt.irfu.se) wich uses VTK. I have compiled VTK with Java
wrapping on Mac OS X, and could get my software running, but unfortunately
with a blank visualization window.

I wrote a couple of times to this mailing list, but my e-mals, as well as
your e.mails, were ignored by everybody. 

That's why I ask the developers - do you know about this problem, and if
so - what is your attitude to it? 

Do you know the reason of this problem and do you have any plan to fix
it?


Looking forward to a reply,

Mykola Khotyaintsev                 

VTK FreeBSD port maintainer.


Astronomy & Space Physics Dept.,  Uppsala University
work: +46 18 471 59 29
mob:  +46 73 777 22 22

On Fri, 20 Feb 2004, garsha wrote:

> I've never been able to get java wrappers working on OS X.  From 10.1 to 
> 10.3.* I haven't ever been able to pull it off.  I've found python to be 
> a more reliable cross-platform solution for working with VTK, but it 
> would be nice to have java wrapping available for all platforms too.  I 
> just don't know enough about Apple's implementation to suggest a solution.
> -Karl
> 
> Robert.Nelson at tessella.com wrote:
> 
> >
> > Tessella Ref: NPD/3797/PR/TN/2004FEB20/14:02:32
> >
> > Hi,
> >
> > I've been trying to get Java/VTK to work under OSX. My question is 
> > should it work and if so, what am I doing wrong?
> >
> > I have OS X version 10.2.8 and Java v1.4.1_01-69.1
> >
> > I had to perform the following hack (found in the mailing list 
> > archive) to get the java bindings to build:
> > > in VTK/Common/vtkJavaAwt.h change lines 86 through 88 from:-
> > >
> > > JAWT_MacDrawingSurfaceInfo* dsi_mac;
> > >    dsi_mac = (JAWT_MacDrawingSurfaceInfo*)dsi->platformInfo;
> > >    temp0->SetWindowId((void *)dsi_mac->fQDWindow);
> > >
> > > to:-
> > >
> > > JAWT_MacOSXDrawingSurfaceInfo* dsi_mac;
> > >    dsi_mac = (JAWT_MacOSXDrawingSurfaceInfo*)dsi->platformInfo;
> > >    temp0->SetWindowId((void *)dsi_mac->cgWindowID);
> >
> > I then have something which does not work. The program I want to run 
> > is too large so I've created the following program which works on the 
> > PC - you get a Cone which can be rotated with the mouse. Under CARBON 
> > I just get a blank window. Under COCOA I get a bus error:
> > #0  0x90986b18 in glMatrixMode ()
> > #1  0x0668159c in vtkCocoaRenderWindow::OpenGLInit() ()
> > #2  0x06681bd0 in vtkCocoaRenderWindow::WindowInitialize() ()
> > #3  0x06680b38 in vtkCocoaRenderWindow::Start() ()
> > #4  0x066449ec in vtkRenderWindow::DoStereoRender() ()
> > #5  0x066449b0 in vtkRenderWindow::DoFDRender() ()
> > #6  0x066445c4 in vtkRenderWindow::DoAARender() ()
> > #7  0x06643dcc in vtkRenderWindow::Render() ()
> > ...
> >
> > The program is:
> > import java.awt.*;
> > import javax.swing.*;
> >
> > public class ConeFrame extends JFrame {
> >     public ConeFrame() { }
> >
> >     public static void main(String [] args) {
> >         ConePanel panel= new ConePanel();
> >         panel.drawMe();
> >         JFrame frame= new ConeFrame();
> >         frame.getContentPane().add(panel);
> >         frame.setSize(600,600);
> >         frame.show();
> >     }
> > }
> > and:
> > import vtk.*;
> > import java.awt.*;
> >
> > public class ConePanel extends vtk.vtkPanel {
> >  public ConePanel(){ }
> >  
> >   public void drawMe () {
> >     vtkConeSource cone = new vtkConeSource();
> >     cone.SetHeight( 3.0 );
> >     cone.SetRadius( 1.0 );
> >     cone.SetResolution( 10 );
> >     vtkPolyDataMapper coneMapper = new vtkPolyDataMapper();
> >     coneMapper.SetInput( cone.GetOutput() );
> >     vtkActor coneActor = new vtkActor();
> >     coneActor.SetMapper( coneMapper );
> >     vtkRenderer ren1 = GetRenderer(); //new vtkRenderer();
> >     ren1.AddActor( coneActor );
> >     ren1.SetBackground( 0.1, 0.2, 0.4 );
> >         enableEvents(AWTEvent.WINDOW_EVENT_MASK);  
> >    }
> > }
> >
> > Has anyone managed to do this in Java on the Mac and if so how?
> >
> > Thanks for your help,
> >
> > Rob
> >
> >
> > This message is confidential and may be privileged. It is intended for 
> > the addressee(s) only. Access to this message by anyone else is 
> > unauthorized and strictly prohibited. If you have received this 
> > message in error, please inform the sender immediately.   Please note 
> > that messages sent or received by the Tessella e-mail system may be 
> > monitored and stored in an information retrieval system.
> >
> > TESSELLA   Robert.Nelson at tessella.com
> > __/__/__/  Tessella Support Services plc
> > __/__/__/  3 Vineyard Chambers, ABINGDON, OX14 3PX, England
> > __/__/__/  Tel: (44)(0)1235-555511  Fax: (44)(0)1235-553301
> >                    www.tessella.com    Registered in England No. 1466429
> 
> _______________________________________________
> This is the private VTK discussion list. 
> Please keep messages on-topic. Check the FAQ at: <http://public.kitware.com/cgi-bin/vtkfaq>
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtkusers
> 




More information about the vtkusers mailing list