Due to the current gap in continued funding from the U.S. National Science Foundation (NSF), the NSF Unidata Program Center has temporarily paused most operations. See NSF Unidata Pause in Most Operations for details.
[Bill] > did you also copy the colors (if they are non-null) > and especially the stripVertexCounts? That did it Bill, I hadn't been setting the individual strip vertex counts. So for reference, here's how to create Spheres as VisAD shapes from Sun's built in ones (other shapes should be similar): /* import com.sun.j3d.utils.geometry.Sphere; import javax.media.j3d.Appearance; import javax.media.j3d.TriangleStripArray; */ VisADTriangleStripArray sphere_visad = new VisADTriangleStripArray(); Sphere sphere_j3d = new Sphere(0.1f, new Appearance()); TriangleStripArray geom_j3d = (TriangleStripArray)sphere_j3d.getShape().getGeometry(); sphere_visad.vertexCount = geom_j3d.getVertexCount(); sphere_visad.coordinates = new float[3 * geom_j3d.getVertexCount()]; geom_j3d.getCoordinates(0, sphere_visad.coordinates); sphere_visad.normals = new float[3 * geom_j3d.getVertexCount()]; geom_j3d.getNormals(0, sphere_visad.normals); sphere_visad.vertexFormat = geom_j3d.getVertexFormat(); sphere_visad.stripVertexCounts = new int[geom_j3d.getNumStrips()]; geom_j3d.getStripVertexCounts(sphere_visad.stripVertexCounts); // Now use sphere_visad like any other VisAD shape, e.g. in ShapeControl.setShape() Thanks for the help Steve Harris Programmer National Center for Toxicological Research, FDA
visad
archives: