List of usage examples for javax.media.j3d PointArray setCoordinate
public void setCoordinate(int index, float coordinate[])
From source file:BackgroundApp.java
public BranchGroup createBackGraph() { // Create the root of the branch graph BranchGroup objRoot = new BranchGroup(); PointArray starGeom1 = new PointArray(7, PointArray.COORDINATES); Appearance starAppear1 = new Appearance(); starGeom1.setCoordinate(0, new Point3f(0.79483311f, -0.58810995f, 0.14955615f)); starGeom1.setCoordinate(1, new Point3f(0.44430932f, -0.55736839f, -0.70137505f)); starGeom1.setCoordinate(2, new Point3f(0.94901367f, -0.30404968f, 0.08322775f)); starGeom1.setCoordinate(3, new Point3f(0.68060123f, -0.43044807f, 0.59287173f)); starGeom1.setCoordinate(4, new Point3f(-0.11641672f, 0.47273532f, 0.87348049f)); starGeom1.setCoordinate(5, new Point3f(-0.10399289f, -0.98059412f, 0.16619437f)); starGeom1.setCoordinate(6, new Point3f(0.08024400f, -0.96944100f, -0.23182900f)); PointAttributes point1 = new PointAttributes(4.0f, false); starAppear1.setPointAttributes(point1); objRoot.addChild(new Shape3D(starGeom1, starAppear1)); PointArray starGeom2 = new PointArray(18, PointArray.COORDINATES); starGeom2.setCoordinate(0, new Point3f(0.050844f, -0.992329f, 0.112678f)); starGeom2.setCoordinate(1, new Point3f(-0.063091f, -0.997672f, 0.025869f)); starGeom2.setCoordinate(2, new Point3f(0.096706f, -0.980384f, 0.171736f)); starGeom2.setCoordinate(3, new Point3f(-0.562384f, 0.073568f, 0.823595f)); starGeom2.setCoordinate(4, new Point3f(-0.863904f, 0.059045f, 0.500180f)); starGeom2.setCoordinate(5, new Point3f(-0.727033f, 0.304149f, 0.615559f)); starGeom2.setCoordinate(6, new Point3f(-0.724850f, 0.535590f, 0.433281f)); starGeom2.setCoordinate(7, new Point3f(0.185904f, -0.976907f, -0.105311f)); starGeom2.setCoordinate(8, new Point3f(0.738028f, -0.531886f, -0.415221f)); starGeom2.setCoordinate(9, new Point3f(-0.402152f, 0.392690f, -0.827085f)); starGeom2.setCoordinate(10, new Point3f(-0.020020f, -0.999468f, -0.025724f)); starGeom2.setCoordinate(11, new Point3f(-0.384103f, -0.887075f, 0.256050f)); starGeom2.setCoordinate(12, new Point3f(-0.224464f, -0.968946f, -0.103720f)); starGeom2.setCoordinate(13, new Point3f(-0.828880f, -0.397932f, -0.393203f)); starGeom2.setCoordinate(14, new Point3f(-0.010557f, -0.998653f, 0.050797f)); starGeom2.setCoordinate(15, new Point3f(-0.282122f, 0.258380f, -0.923930f)); starGeom2.setCoordinate(16, new Point3f(-0.941342f, -0.030364f, 0.336082f)); starGeom2.setCoordinate(17, new Point3f(0.00057f, -0.99651f, -0.08344f)); Appearance starAppear2 = new Appearance(); PointAttributes point2 = new PointAttributes(2.0f, false); starAppear2.setPointAttributes(point2); objRoot.addChild(new Shape3D(starGeom2, starAppear2)); PointArray starGeom3 = new PointArray(20, PointArray.COORDINATES); starGeom3.setCoordinate(0, new Point3f(0.07292f, -0.98862f, -0.13153f)); starGeom3.setCoordinate(1, new Point3f(0.23133f, -0.87605f, -0.42309f)); starGeom3.setCoordinate(2, new Point3f(-0.08215f, -0.64657f, 0.75840f)); starGeom3.setCoordinate(3, new Point3f(-0.84545f, 0.53398f, 0.00691f)); starGeom3.setCoordinate(4, new Point3f(-0.49365f, -0.83645f, -0.23795f)); starGeom3.setCoordinate(5, new Point3f(0.06883f, -0.99319f, -0.09396f)); starGeom3.setCoordinate(6, new Point3f(0.87582f, -0.40662f, 0.25997f)); starGeom3.setCoordinate(7, new Point3f(-0.09095f, -0.99555f, 0.02467f)); starGeom3.setCoordinate(8, new Point3f(0.45306f, -0.81575f, -0.35955f)); starGeom3.setCoordinate(9, new Point3f(0.17669f, -0.97939f, 0.09776f)); starGeom3.setCoordinate(10, new Point3f(0.27421f, -0.83963f, 0.46884f)); starGeom3.setCoordinate(11, new Point3f(0.32703f, -0.94013f, -0.09584f)); starGeom3.setCoordinate(12, new Point3f(-0.01615f, -0.99798f, -0.06132f)); starGeom3.setCoordinate(13, new Point3f(-0.76665f, 0.45998f, -0.44791f)); starGeom3.setCoordinate(14, new Point3f(-0.91025f, -0.07102f, 0.40791f)); starGeom3.setCoordinate(15, new Point3f(-0.00240f, -0.97104f, -0.23887f)); starGeom3.setCoordinate(16, new Point3f(0.91936f, -0.39244f, 0.02740f)); starGeom3.setCoordinate(17, new Point3f(0.18290f, -0.97993f, 0.07920f)); starGeom3.setCoordinate(18, new Point3f(-0.48755f, 0.61592f, 0.61884f)); starGeom3.setCoordinate(19, new Point3f(-0.89375f, 0.36087f, -0.26626f)); objRoot.addChild(new Shape3D(starGeom3)); int[] stripCount = { 10 }; LineStripArray orion = new LineStripArray(10, LineStripArray.COORDINATES, stripCount); orion.setCoordinate(0, new Point3f(0.978330f, -0.033900f, 0.204426f)); orion.setCoordinate(1, new Point3f(0.968007f, -0.167860f, 0.186506f)); orion.setCoordinate(2, new Point3f(0.981477f, -0.142660f, 0.127873f)); orion.setCoordinate(3, new Point3f(0.983764f, -0.005220f, 0.179391f)); orion.setCoordinate(4, new Point3f(0.981112f, 0.110597f, 0.158705f)); orion.setCoordinate(5, new Point3f(0.967377f, 0.172516f, 0.185523f)); orion.setCoordinate(6, new Point3f(0.961385f, 0.128845f, 0.243183f)); orion.setCoordinate(7, new Point3f(0.978330f, -0.033900f, 0.204426f)); orion.setCoordinate(8, new Point3f(0.981293f, -0.020980f, 0.191375f)); orion.setCoordinate(9, new Point3f(0.983764f, -0.005220f, 0.179391f)); objRoot.addChild(new Shape3D(orion)); objRoot.compile();//from w w w . j a v a 2 s.c o m return objRoot; }
From source file:IntersectTest.java
public BranchGroup createSceneGraph() { // Create the root of the branch graph BranchGroup objRoot = new BranchGroup(); // Set up the ambient light Color3f ambientColor = new Color3f(0.1f, 0.1f, 0.1f); AmbientLight ambientLightNode = new AmbientLight(ambientColor); ambientLightNode.setInfluencingBounds(bounds); objRoot.addChild(ambientLightNode);/*w ww . j av a 2 s . co m*/ // Set up the directional lights Color3f light1Color = new Color3f(1.0f, 1.0f, 0.9f); Vector3f light1Direction = new Vector3f(4.0f, -7.0f, -12.0f); Color3f light2Color = new Color3f(0.3f, 0.3f, 0.4f); Vector3f light2Direction = new Vector3f(-6.0f, -2.0f, -1.0f); DirectionalLight light1 = new DirectionalLight(light1Color, light1Direction); light1.setInfluencingBounds(bounds); objRoot.addChild(light1); DirectionalLight light2 = new DirectionalLight(light2Color, light2Direction); light2.setInfluencingBounds(bounds); objRoot.addChild(light2); Transform3D t3 = new Transform3D(); // Shapes for (int x = 0; x < 3; x++) { for (int y = 0; y < 3; y++) { for (int z = 0; z < 3; z++) { t3.setTranslation(new Vector3d(-4 + x * 4.0, -4 + y * 4.0, -20 - z * 4.0)); TransformGroup objTrans = new TransformGroup(t3); objRoot.addChild(objTrans); // Create a simple shape leaf node, add it to the scene // graph. GeometryArray geom = null; if (((x + y + z) % 2) == 0) { geom = new RandomColorCube(); } else { geom = new RandomColorTetrahedron(); } Shape3D shape = new Shape3D(geom); // use the utility method to set the capabilities PickTool.setCapabilities(shape, PickTool.INTERSECT_FULL); objTrans.addChild(shape); } } } // Lines Point3f[] verts = { new Point3f(-2.0f, 0.0f, 0.0f), new Point3f(2.0f, 0.0f, 0.0f) }; Color3f grey = new Color3f(0.7f, 0.7f, 0.7f); Color3f[] colors = { grey, grey }; for (int y = 0; y < 5; y++) { for (int z = 0; z < 5; z++) { t3.setTranslation(new Vector3d(7.0, -4 + y * 2.0, -20.0 - z * 2.0)); TransformGroup objTrans = new TransformGroup(t3); objRoot.addChild(objTrans); LineArray la = new LineArray(verts.length, LineArray.COORDINATES | LineArray.COLOR_3); la.setCoordinates(0, verts); la.setColors(0, colors); Shape3D shape = new Shape3D(); shape.setGeometry(la); // use the utility method to set the capabilities PickTool.setCapabilities(shape, PickTool.INTERSECT_FULL); objTrans.addChild(shape); } } // Points for (double x = -2.0; x <= 2.0; x += 1.0) { for (double y = -2.0; y <= 2.0; y += 1.0) { for (double z = -2.0; z <= 2.0; z += 1.0) { t3.setTranslation(new Vector3d(-10.0 + 2.0 * x, 0.0 + 2.0 * y, -20.0 + 2.0 * z)); TransformGroup objTrans = new TransformGroup(t3); objRoot.addChild(objTrans); PointArray pa = new PointArray(1, PointArray.COORDINATES | PointArray.COLOR_3); pa.setCoordinate(0, new Point3d(0.0, 0.0, 0.0)); pa.setColor(0, grey); Shape3D shape = new Shape3D(); shape.setGeometry(pa); // use the utility method to set the capabilities PickTool.setCapabilities(shape, PickTool.INTERSECT_FULL); objTrans.addChild(shape); } } } return objRoot; }
From source file:PointTest.java
private BranchGroup createPoints(final int nPointSize, final int nNumPoints, boolean bAliased) { BranchGroup bg = new BranchGroup(); String szText = new String(); szText += (nNumPoints + "X, Size:" + nPointSize + ", aliased: " + bAliased); Font3D f3d = new Font3D(new Font("SansSerif", Font.PLAIN, 1), new FontExtrusion()); Text3D label3D = new Text3D(f3d, szText, new Point3f(-5, 0, 0)); Shape3D sh = new Shape3D(label3D); bg.addChild(sh);//w w w . j a v a 2 s . co m PointArray pointArray = new PointArray(nNumPoints * nNumPoints, GeometryArray.COORDINATES | GeometryArray.COLOR_3); // create the PointArray that we will be rendering int nPoint = 0; final double factor = 1.0 / nNumPoints; for (int n = 0; n < nNumPoints; n++) { for (int i = 0; i < nNumPoints; i++) { Point3f point = new Point3f(n - nNumPoints / 2, i - nNumPoints / 2, 0.0f); pointArray.setCoordinate(nPoint, point); pointArray.setColor(nPoint++, new Color3f(0.5f, (float) (n * factor), (float) (i * factor))); } } // create the material for the points Appearance pointApp = new Appearance(); // enlarge the points pointApp.setPointAttributes(new PointAttributes(nPointSize, bAliased)); Shape3D pointShape = new Shape3D(pointArray, pointApp); bg.addChild(pointShape); return bg; }