hi there,
        I'm suspecting a bug in javax.media.j3d.GeometryArray. I can't get
the coordinates of my geometry. To illustrate this, here's a very simple
code:


import java.applet.Applet;
import java.awt.BorderLayout;
import java.awt.Frame;
import java.awt.event.*;
import com.sun.j3d.utils.applet.MainFrame;
import com.sun.j3d.utils.universe.*;
import com.sun.j3d.utils.geometry.ColorCube;
import javax.media.j3d.*;
import javax.vecmath.*;


public class HelloJava3Da extends Applet {
    public HelloJava3Da() {
        setLayout(new BorderLayout());
        Canvas3D canvas3D = new
Canvas3D(SimpleUniverse.getPreferredConfiguration());
        add("Center", canvas3D);

        BranchGroup scene = createSceneGraph();
        SimpleUniverse simpleU = new SimpleUniverse(canvas3D);
        simpleU.getViewingPlatform().setNominalViewingTransform();

        simpleU.addBranchGraph(scene);
    }

     public BranchGroup createSceneGraph() {

        BranchGroup objRoot = new BranchGroup();
        objRoot.setCapability(BranchGroup.ALLOW_CHILDREN_READ);
        ColorCube mycube = new ColorCube();
        mycube.setCapability(Shape3D.ALLOW_GEOMETRY_READ);

        QuadArray geom = (QuadArray) mycube.getGeometry();
        geom.setCapability(GeometryArray.ALLOW_COORDINATE_READ);

        //ColorCube has 24 points according to its source code.
        Point3d[] coordinates = new Point3d[24];
        geom.getCoordinates(0, coordinates);
        System.out.println("coordinateFirst = "+coordinates[0].toString());

        objRoot.addChild(mycube);
        objRoot.compile();
        return objRoot;
    }

    public static void main(String[] args) {
        Frame frame = new MainFrame(new HelloJava3Da(), 256, 256);
    }
}

        I want to get the coordinates of this very very simple ColorCube.
but when I tried to run it, I got this NullPointerException.

java.lang.NullPointerException
        at
javax.media.j3d.GeometryArrayRetained.getCoordinates(GeometryArrayRetained.j
ava:4145)
        at
javax.media.j3d.GeometryArray.getCoordinates(GeometryArray.java:2477)
        at HelloJava3Da.createSceneGraph(HelloJava3Da.java:70)
        at HelloJava3Da.<init>(HelloJava3Da.java:51)
        at HelloJava3Da.main(HelloJava3Da.java:79)

        Is this a bug? I tried it like 20 times, and it's the same thing
(TRY IT). I suspected it at first in my original application. I'm running on
java1.3.1-rc1 and java3d 1.2.1

daniel

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to