Hallo, ich habe folgendes Problem bzw. mir fehlt das genaue verständnis für eine Fehlermeldung in einem von mir geschriebenem Programm.
Ich erzeuge mehrere 3D Cubes in meiner Scene. Nun möchte ich diese zur Laufzeit die Farbe ändern lassen. Die erfolgt wie folgt:
In der Methode: createSceneGraph werden die Cubes erzeugt:
makeCube sieht so aus:
nun möchte ich irgendwo im Programm, z.B. beim klicken eines Buttons, das sich die Farbe eines bestimmten Cubes ändert. Nun dachte ich eigentlich ich könnte das mit
irgendwie machen, doch da bekomme ich die Meldung:
Der gesammte Quellcode is leider zu lang ihn hier zu Posten. Sollte es unverständlich sein, was genau gemeint ist, bitte einfach fragen. Was ich mir vorstellen könnte, das er das Object irgendwie nicht finden kann?! ???:L
Oder liegt es an meiner selbst geschriebenen Methode makeCube? Dort setze ich halt die coordinaten und die Farben für die Cube ecken.
thx schonmal für Antworten + Ideen.
Ich erzeuge mehrere 3D Cubes in meiner Scene. Nun möchte ich diese zur Laufzeit die Farbe ändern lassen. Die erfolgt wie folgt:
In der Methode: createSceneGraph werden die Cubes erzeugt:
Java:
Shape3D shape11 = new Shape3D(makeCube(w11),makeAppearance());
makeCube sieht so aus:
Java:
private QuadArray makeCube(float[] A){
QuadArray plane = new QuadArray(24, GeometryArray.COORDINATES | GeometryArray.COLOR_3 );
// Set coordinates
....
return plane
}
nun möchte ich irgendwo im Programm, z.B. beim klicken eines Buttons, das sich die Farbe eines bestimmten Cubes ändert. Nun dachte ich eigentlich ich könnte das mit
Java:
Appearance app = new Appearance( );
ColoringAttributes ca = new ColoringAttributes( );
ca.setColor( 1.0f, 1.0f, 0.0f );
shape11.setAppearance(app);
irgendwie machen, doch da bekomme ich die Meldung:
Java:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at ECube$1.actionPerformed(ECube.java:220)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Der gesammte Quellcode is leider zu lang ihn hier zu Posten. Sollte es unverständlich sein, was genau gemeint ist, bitte einfach fragen. Was ich mir vorstellen könnte, das er das Object irgendwie nicht finden kann?! ???:L
Oder liegt es an meiner selbst geschriebenen Methode makeCube? Dort setze ich halt die coordinaten und die Farben für die Cube ecken.
thx schonmal für Antworten + Ideen.