[vtkusers] vtkRnendererCollection problem with java
Simon Chatelain
simon.chatelain at epfl.ch
Thu Aug 29 03:23:00 EDT 2002
Hello,
I have an java/VTK application. I'm using jdk 1.4.0 and VTK 4.0.
In my application, i have a vtkRenderWindow with some vtkRenderer with
different viewport.
Like in the vtkPanel class, i check the number of actors in the differents
renderer.
I try with two different methods:
1)
vtkRendererCollection rcoll = this.rw.GetRenderers();
rcoll.InitTraversal();
int nbren = rcoll.GetNumberOfItems();
int nbActor = 0;
for (int i=0;i<nbren;i++)
{
vtkRenderer ren = rcoll.GetNextItem();
nbActor += ren.VisibleActorCount();
}
return nbActor;
this methods create (often but not always) the following exception:
An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : EXCEPTION_ACCESS_VIOLATION occurred at PC=0xAE3E4B0
Function=vtkCollection::GetNumberOfItems+0x0
Library=C:\WINDOWS\System32\vtkCommon.dll
Current Java thread:
at vtk.vtkCollection.GetNumberOfItems_8(Native Method)
at vtk.vtkCollection.GetNumberOfItems(vtkCollection.java:44)
at VTKPanel.visibleActor(VTKPanel.java:53)
- locked <02FF16F0> (a VTKPanel)
at VTKPanel.Render(VTKPanel.java:105)
- locked <02FF16F0> (a VTKPanel)
at vtk.vtkPanel.paint(vtkPanel.java:51)
at sun.awt.RepaintArea.paint(RepaintArea.java:180)
at
sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:260) ...
I try with an another method :
2)
vtkRendererCollection rcoll = this.rw.GetRenderers();
rcoll.InitTraversal();
vtkRenderer ren = rcoll.GetNextItem();
int nbActor = 0;
while (ren != null)
{
nbActor += ren.VisibleActorCount();
ren = rcoll.GetNextItem();
}
this methods create (often but not always) the following exception:
An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : EXCEPTION_ACCESS_VIOLATION occurred at PC=0xB65A3E6
Function=Java_vtk_vtkRendererCollection_GetNextItem_13+0x16
Library=C:\WINDOWS\system32\vtkRenderingJava.dll
Current Java thread:
at vtk.vtkRendererCollection.GetNextItem_3(Native Method)
at vtk.vtkRendererCollection.GetNextItem(vtkRendererCollection.java:24)
at VTKPanel.visibleActor(VTKPanel.java:56)
- locked <02FFE3C0> (a VTKPanel)
at VTKPanel.Render(VTKPanel.java:104)
- locked <02FFE3C0> (a VTKPanel)
at vtk.vtkPanel.paint(vtkPanel.java:51)
at sun.awt.RepaintArea.paint(RepaintArea.java:180) ...
This exception occurs only on during the second call to GetNextItem().
Can someone help ?
Thanks.
More information about the vtkusers
mailing list