[vtkusers] vtkOpenGLOffscreenRenderWindow + vtkTexture = bus error
Mykola Khotyaintsev
ko at irfu.se
Mon Oct 23 11:53:24 EDT 2000
Dear John/VTK users,
vtkOpenGLOffscreenRenderWindow works good if I don't use any texture. If
I set the texture - the programm crashes with the BUS ERROR while
executing renWin.Render() :(
Please help.
Here is the example code:
import vtk.*;
import java.awt.*;
import java.awt.event.*;
public class offscreen {
public static void main (String[] args)
{
System.loadLibrary("vtkJava");
vtkOpenGLOffscreenRenderWindow renWin = new
vtkOpenGLOffscreenRenderWindow();
vtkRenderer ren = new vtkRenderer();
renWin.SetSize(400, 400);
renWin.AddRenderer(ren);
vtkSphereSource sphere = new vtkSphereSource();
sphere.SetRadius(1.0);
sphere.SetThetaResolution(18);
sphere.SetPhiResolution(18);
vtkPolyDataMapper map = new vtkPolyDataMapper();
map.SetInput(sphere.GetOutput());
map.ImmediateModeRenderingOn();
vtkTexture atext = new vtkTexture();
vtkPNMReader pnmReader = new vtkPNMReader();
pnmReader.SetFileName("/home/ko/ovt2g/images/earth_grid.pnm");
atext.SetInput(pnmReader.GetOutput());
atext.InterpolateOn();
vtkActor aSphere = new vtkActor();
aSphere.SetMapper(map);
aSphere.SetTexture(atext);
ren.AddActor(aSphere);
ren.SetBackground(1,1,1); // Background color white
System.out.print("Rendering ... ");
renWin.Render();
System.out.println("done.");
vtkWindowToImageFilter windowToImageFilter = new
vtkWindowToImageFilter();
windowToImageFilter.SetInput(renWin);
vtkPNMWriter writer = new vtkPNMWriter();
writer.SetInput(windowToImageFilter.GetOutput());
writer.SetFileName("earth.ppm");
writer.Write();
}
}
Here is the error message:
[ko at anna][~/java]# java offscreen
NOT using PBuffers...
Rendering ... SIGBUS 10* bus error
si_signo [10]: SIGBUS 10* bus error
si_errno [0]: Error 0
si_code [1]: BUS_ADRALN [addr: 0xa800019]
stackpointer=FFBED5D8
"Finalizer" (TID:0x14f164, sys_thread_t:0x14f0a8, state:CW, thread_t: t at 6,
threadID:0xfecc1d78, stack_bottom:0xfecc2000, stack_size:0x20000) prio=8
[1] java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:106)
[2] java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:128)
[3] java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:175)
-------------------
"Reference Handler" (TID:0x14a964, sys_thread_t:0x14a8a8, state:CW,
thread_t: t at 5, threadID:0xfecf1d78, stack_bottom:0xfecf2000,
stack_size:0x20000) prio=10
[1] java.lang.Object.wait(Object.java:424)
[2] java.lang.ref.Reference$ReferenceHandler.run(Reference.java:107)
-------------------
"Signal dispatcher" (TID:0x138214, sys_thread_t:0x138158, state:MW,
thread_t: t at 4, threadID:0xfed51d78, stack_bottom:0xfed52000,
stack_size:0x20000) prio=10
-------------------
"main" (TID:0x3859c, sys_thread_t:0x384e0, state:R, thread_t: t at 1,
threadID:0x25118, stack_bottom:0xffbf0000, stack_size:0x20000) prio=5
*current thread*
[1] vtk.vtkRenderWindow.Render_5(Native Method)
[2] vtk.vtkRenderWindow.Render(vtkRenderWindow.java:32)
[3] offscreen.main(offscreen.java:44)
-------------------
Abort (core dumped)
Thanx in advance,
Mykola
More information about the vtkusers
mailing list