Hello,
I have writen a program. When i run the program on one machine it wordks and when i run it on a different machine i get the error (see below).
Both machines have a geforce videocard the machine whith the error has the latest videocard. Who can help,
Below is also the main structure of the class of program.
with regards
public class JCTest3D extends JFrame{
private JBCad3D_OpenGl jBCad3D1;
public static void main(String[] args) {
JCTest3D jctest3d = new JCTest3D();
}
public JCTest3D() {
getContentPane().add(main3DPanel(), BorderLayout.CENTER);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
if (jBCad3D1 != null)
jBCad3D1.close_canvas();
System.exit(0);
}
});
setVisible(true);
}
private JPanel main3DPanel() {
JPanel pane = new JPanel();
pane.setLayout(new BorderLayout());
jBCad3D1 = new JBCad3D_OpenGl();
pane.add(jBCad3D1.getCanvas(),BorderLayout.CENTER);
JButton btn = new JButton("next");
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
calculate_3();
}
});
pane.add(btn, BorderLayout.SOUTH);
pane.setBorder(BorderFactory.createLineBorder(Color.black));
return pane;
}
private void calculate_3() {
jBCad3D1.reset();
jBCad3D1.setColorDisplay(1);
jBCad3D1.setSituatie(bouwlokatie);
jBCad3D1.setGebouwData(phenotype_vU.getBuildingModel());
}
}
public class JBCad3D_OpenGl
implements Serializable {
public JBCad3D_OpenGl() {
} //constructor
public GLJPanel getCanvas() {
canvas = GLDrawableFactory.getFactory().createGLJPanel(new
GLCapabilities());
canvas.setGL(new DebugGL(canvas.getGL()));
System.err.println("DRAWABLE GL IS: " +
canvas.getGL().getClass().getName());
System.err.println("DRAWABLE GLU IS: " +
canvas.getGLU().getClass().getName());
final Animator animator = new Animator(canvas);
animator.start();
canvas.addGLEventListener(new D3Renderer());
return canvas;
}//getCanvas
public void close_canvas() {
if(animator != null)
animator.stop();
} //close_canvas
//****************************************************************
//Inner class*****************************************************
//****************************************************************
class D3Renderer
implements GLEventListener, MouseListener,
MouseMotionListener {
public void init(GLDrawable drawable) {}
public void reshape(GLDrawable drawable) {}
public void display(GLDrawable drawable) {}
public void displayChanged(GLDrawable drawable, boolean modeChanged,
boolean deviceChanged) {}
} //end of class
Exception in thread “AWT-EventQueue-0” java.lang.OutOfMemoryError: Java heap space
Exception in thread “Thread-4” net.java.games.jogl.GLException: java.lang.reflect.InvocationTargetException
at net.java.games.jogl.GLJPanel.display(GLJPanel.java:131)
at net.java.games.jogl.Animator$1.run(Animator.java:107)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.reflect.InvocationTargetException
at java.awt.EventQueue.invokeAndWait(EventQueue.java:851)
at net.java.games.jogl.GLJPanel.display(GLJPanel.java:129)
... 2 more
Caused by: net.java.games.jogl.GLException: pbuffer creation error: wglCreateContext() failed
at net.java.games.jogl.impl.windows.WindowsPbufferGLContext.create(WindowsPbufferGLContext.java:422)
at net.java.games.jogl.impl.windows.WindowsGLContext.makeCurrent(WindowsGLContext.java:136)
at net.java.games.jogl.impl.windows.WindowsPbufferGLContext.makeCurrent(WindowsPbufferGLContext.java:343)
at net.java.games.jogl.impl.GLContext.invokeGL(GLContext.java:246)
at net.java.games.jogl.impl.GLPbufferImpl.maybeDoSingleThreadedWorkaround(GLPbufferImpl.java:234)
at net.java.games.jogl.impl.GLPbufferImpl.display(GLPbufferImpl.java:65)
at net.java.games.jogl.GLJPanel.paintComponent(GLJPanel.java:157)
at javax.swing.JComponent.paint(JComponent.java:1003)
at javax.swing.JComponent.paintWithOffscreenBuffer(JComponent.java:4930)
at javax.swing.JComponent.paintDoubleBuffered(JComponent.java:4883)
at javax.swing.JComponent._paintImmediately(JComponent.java:4826)
at javax.swing.JComponent.paintImmediately(JComponent.java:4633)
at net.java.games.jogl.GLJPanel$PaintImmediatelyAction.run(GLJPanel.java:578)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:199)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:234)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Exception in thread “AWT-EventQueue-0” net.java.games.jogl.GLException: pbuffer creation error: wglCreateContext() failed
at net.java.games.jogl.impl.windows.WindowsPbufferGLContext.create(WindowsPbufferGLContext.java:422)
at net.java.games.jogl.impl.windows.WindowsGLContext.makeCurrent(WindowsGLContext.java:136)
at net.java.games.jogl.impl.windows.WindowsPbufferGLContext.makeCurrent(WindowsPbufferGLContext.java:343)
at net.java.games.jogl.impl.GLContext.invokeGL(GLContext.java:246)
at net.java.games.jogl.impl.GLPbufferImpl.maybeDoSingleThreadedWorkaround(GLPbufferImpl.java:234)
at net.java.games.jogl.impl.GLPbufferImpl.display(GLPbufferImpl.java:65)
at net.java.games.jogl.GLJPanel.paintComponent(GLJPanel.java:157)
at javax.swing.JComponent.paint(JComponent.java:1003)
at javax.swing.JComponent.paintChildren(JComponent.java:840)
at javax.swing.JComponent.paint(JComponent.java:1012)
at javax.swing.JComponent.paintChildren(JComponent.java:840)
at javax.swing.JComponent.paint(JComponent.java:1012)
at javax.swing.JComponent.paintChildren(JComponent.java:840)
at javax.swing.JComponent.paint(JComponent.java:1012)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:559)
at javax.swing.JComponent.paintChildren(JComponent.java:840)
at javax.swing.JComponent.paintWithOffscreenBuffer(JComponent.java:4937)
at javax.swing.JComponent.paintDoubleBuffered(JComponent.java:4883)
at javax.swing.JComponent.paint(JComponent.java:993)
at java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:21)
at sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:60)
at sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:97)
at java.awt.Container.paint(Container.java:1709)
at sun.awt.RepaintArea.paintComponent(RepaintArea.java:248)
at sun.awt.RepaintArea.paint(RepaintArea.java:224)
at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:254)
at java.awt.Component.dispatchEventImpl(Component.java:4031)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Window.dispatchEventImpl(Window.java:1766)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:234)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)