triangleArray = new TriangleArray(numberOfTriangles * 3, TriangleArray.COORDINATES | TriangleArray.NORMALS | TriangleArray.COLOR_3); } else { triangleArray = new TriangleArray(numberOfTriangles * 3, TriangleArray.COORDINATES | TriangleArray.NORMALS); triangleArray.setCoordinate(triangleCount * 3, t.getNodeOne().getLocation()); triangleArray.setCoordinate(triangleCount * 3 + 1, t.getNodeTwo().getLocation()); triangleArray.setCoordinate(triangleCount * 3 + 2, t.getNodeThree().getLocation()); triangleArray.setNormal(triangleCount * 3, t.getNormal()); triangleArray.setNormal(triangleCount * 3 + 1, t.getNormal()); triangleArray.setNormal(triangleCount * 3 + 2, t.getNormal()); triangleArray.setColor(triangleCount * 3, c1); triangleArray.setColor(triangleCount * 3 + 1, c2); triangleArray.setColor(triangleCount * 3 + 2, c3);
public VTriangleArray(TriangleArray triangleArray) { this.triangleArray = triangleArray; Triangle t = null; for (int i = 0; i < triangleArray.getVertexCount(); i++) { int nodeIndex = i % 3; if (nodeIndex == 0) { t = new Triangle(); } Point3f p3f = new Point3f(); triangleArray.getCoordinate(i, p3f); Color3f c = new Color3f(); triangleArray.getColor(i, c); t.setNode(nodeIndex, new Node(p3f, c)); } }
new TriangleArray( _nbNds, (float)_c[i].getAlpha() / 255); ta.setCoordinates(0, _noeuds); ta.setColors(0, couleurs); ta.setTextureCoordinates(0, texpoints); setGeometrie(ta);
private static Shape triangles (double[][] points, boolean filled) { int size = points.length; Point3f[] coords = new Point3f[size*3]; for (int i = 0; i < size; i++) { coords[3*i] = new Point3f(createVector3f(points[i][0], points[i][1], points[i][2])); coords[3*i+1] = new Point3f(createVector3f(points[i][3], points[i][4], points[i][5])); coords[3*i+2] = new Point3f(createVector3f(points[i][6], points[i][7], points[i][8])); } GeometryArray geom = new TriangleArray(size*3, TriangleArray.COORDINATES); geom.setCoordinates(0, coords); GeometryInfo geoinfo = new GeometryInfo(geom); NormalGenerator normalGenerator = new NormalGenerator(); normalGenerator.generateNormals(geoinfo); Shape3D shape = createShape3D(geoinfo.getIndexedGeometryArray()); if (filled) return shape(shape); else return wireShape(shape); }
public void setGeometrie(final TriangleArray _geometrie) { _geometrie.setCapability(Geometry.ALLOW_INTERSECT); _geometrie.setCapability(GeometryArray.ALLOW_COLOR_READ); _geometrie.setCapability(GeometryArray.ALLOW_COLOR_WRITE); _geometrie.setCapability(GeometryArray.ALLOW_COUNT_READ); _geometrie.setCapability(GeometryArray.ALLOW_COORDINATE_READ); _geometrie.setCapability(GeometryArray.ALLOW_COORDINATE_WRITE);
private static Shape triangles (double[][] points, boolean filled) { int size = points.length; Point3f[] coords = new Point3f[size*3]; for (int i = 0; i < size; i++) { coords[3*i] = new Point3f(createVector3f(points[i][0], points[i][1], points[i][2])); coords[3*i+1] = new Point3f(createVector3f(points[i][3], points[i][4], points[i][5])); coords[3*i+2] = new Point3f(createVector3f(points[i][6], points[i][7], points[i][8])); } GeometryArray geom = new TriangleArray(size*3, TriangleArray.COORDINATES); geom.setCoordinates(0, coords); GeometryInfo geoinfo = new GeometryInfo(geom); NormalGenerator normalGenerator = new NormalGenerator(); normalGenerator.generateNormals(geoinfo); Shape3D shape = createShape3D(geoinfo.getIndexedGeometryArray()); if (filled) return shape(shape); else return wireShape(shape); }
private static Shape triangles (double[][] points, Color[] colors, boolean filled) { int size = points.length; Point3f[] coords = new Point3f[size*3]; for (int i = 0; i < size; i++) { coords[3*i] = new Point3f(createVector3f(points[i][0], points[i][1], points[i][2])); coords[3*i+1] = new Point3f(createVector3f(points[i][3], points[i][4], points[i][5])); coords[3*i+2] = new Point3f(createVector3f(points[i][6], points[i][7], points[i][8])); } GeometryArray geom = new TriangleArray(size*3, TriangleArray.COORDINATES | TriangleArray.COLOR_4); geom.setCoordinates(0, coords); for (int i = 0; i < colors.length; i++) { geom.setColor(3 * i + 0, colors[i].getComponents(null)); geom.setColor(3 * i + 1, colors[i].getComponents(null)); geom.setColor(3 * i + 2, colors[i].getComponents(null)); } GeometryInfo geoinfo = new GeometryInfo(geom); NormalGenerator normalGenerator = new NormalGenerator(); normalGenerator.generateNormals(geoinfo); Shape3D shape = createShape3D(geoinfo.getIndexedGeometryArray()); if (filled) return shape(shape); else return wireShape(shape); }
private static Shape triangles (double[][] points, Color[] colors, boolean filled) { int size = points.length; Point3f[] coords = new Point3f[size*3]; for (int i = 0; i < size; i++) { coords[3*i] = new Point3f(createVector3f(points[i][0], points[i][1], points[i][2])); coords[3*i+1] = new Point3f(createVector3f(points[i][3], points[i][4], points[i][5])); coords[3*i+2] = new Point3f(createVector3f(points[i][6], points[i][7], points[i][8])); } GeometryArray geom = new TriangleArray(size*3, TriangleArray.COORDINATES | TriangleArray.COLOR_4); geom.setCoordinates(0, coords); for (int i = 0; i < colors.length; i++) { geom.setColor(3 * i + 0, colors[i].getComponents(null)); geom.setColor(3 * i + 1, colors[i].getComponents(null)); geom.setColor(3 * i + 2, colors[i].getComponents(null)); } GeometryInfo geoinfo = new GeometryInfo(geom); NormalGenerator normalGenerator = new NormalGenerator(); normalGenerator.generateNormals(geoinfo); Shape3D shape = createShape3D(geoinfo.getIndexedGeometryArray()); if (filled) return shape(shape); else return wireShape(shape); }