/** * Return the 3D area of all triangles * @return */ public double get3DArea(){ if(convertedInput != null) { List<DelaunayTriangle> delaunayTriangle = convertedInput.getTriangles(); double sum = 0; for (DelaunayTriangle triangle : delaunayTriangle) { sum += computeTriangleArea3D(triangle); } return sum; } else { return 0; } }
/** * Return the 3D area of all triangles * @return */ public double get3DArea(){ if(convertedInput != null) { List<DelaunayTriangle> delaunayTriangle = convertedInput.getTriangles(); double sum = 0; for (DelaunayTriangle triangle : delaunayTriangle) { sum += computeTriangleArea3D(triangle); } return sum; } else { return 0; } }
/** * Return the 3D area of all triangles * @return */ public double get3DArea(){ if(convertedInput != null) { List<DelaunayTriangle> delaunayTriangle = convertedInput.getTriangles(); double sum = 0; for (DelaunayTriangle triangle : delaunayTriangle) { sum += computeTriangleArea3D(triangle); } return sum; } else { return 0; } }
/** * @return Unique triangles edges */ public MultiLineString getTrianglesSides() { List<DelaunayTriangle> delaunayTriangle = convertedInput.getTriangles(); // Remove duplicates edges thanks to this hash map of normalized line segments Set<LineSegment> segmentHashMap = new HashSet<LineSegment>(delaunayTriangle.size()); for(DelaunayTriangle triangle : delaunayTriangle) { TriangulationPoint[] pts = triangle.points; addSegment(segmentHashMap, pts[0], pts[1]); addSegment(segmentHashMap, pts[1], pts[2]); addSegment(segmentHashMap, pts[2], pts[0]); } LineString[] lineStrings = new LineString[segmentHashMap.size()]; int i = 0; for(LineSegment lineSegment : segmentHashMap) { lineStrings[i++] = lineSegment.toGeometry(gf); } return gf.createMultiLineString(lineStrings); }
/** * @return Unique triangles edges */ public MultiLineString getTrianglesSides() { List<DelaunayTriangle> delaunayTriangle = convertedInput.getTriangles(); // Remove duplicates edges thanks to this hash map of normalized line segments Set<LineSegment> segmentHashMap = new HashSet<LineSegment>(delaunayTriangle.size()); for(DelaunayTriangle triangle : delaunayTriangle) { TriangulationPoint[] pts = triangle.points; addSegment(segmentHashMap, pts[0], pts[1]); addSegment(segmentHashMap, pts[1], pts[2]); addSegment(segmentHashMap, pts[2], pts[0]); } LineString[] lineStrings = new LineString[segmentHashMap.size()]; int i = 0; for(LineSegment lineSegment : segmentHashMap) { lineStrings[i++] = lineSegment.toGeometry(gf); } return gf.createMultiLineString(lineStrings); }
/** * @return Unique triangles edges */ public MultiLineString getTrianglesSides() { List<DelaunayTriangle> delaunayTriangle = convertedInput.getTriangles(); // Remove duplicates edges thanks to this hash map of normalized line segments Set<LineSegment> segmentHashMap = new HashSet<LineSegment>(delaunayTriangle.size()); for(DelaunayTriangle triangle : delaunayTriangle) { TriangulationPoint[] pts = triangle.points; addSegment(segmentHashMap, pts[0], pts[1]); addSegment(segmentHashMap, pts[1], pts[2]); addSegment(segmentHashMap, pts[2], pts[0]); } LineString[] lineStrings = new LineString[segmentHashMap.size()]; int i = 0; for(LineSegment lineSegment : segmentHashMap) { lineStrings[i++] = lineSegment.toGeometry(gf); } return gf.createMultiLineString(lineStrings); }
public MultiPolygon getTriangles() { if(convertedInput != null) { List<DelaunayTriangle> delaunayTriangle = convertedInput.getTriangles(); // Convert into multi polygon Polygon[] polygons = new Polygon[delaunayTriangle.size()]; for (int idTriangle = 0; idTriangle < polygons.length; idTriangle++) { TriangulationPoint[] pts = delaunayTriangle.get(idTriangle).points; polygons[idTriangle] = gf.createPolygon(new Coordinate[]{toJts(isInput2D, pts[0]), toJts(isInput2D, pts[1]), toJts(isInput2D, pts[2]), toJts(isInput2D, pts[0])}); } return gf.createMultiPolygon(polygons); } else { return gf.createMultiPolygon(new Polygon[0]); } }
public MultiPolygon getTriangles() { if(convertedInput != null) { List<DelaunayTriangle> delaunayTriangle = convertedInput.getTriangles(); // Convert into multi polygon Polygon[] polygons = new Polygon[delaunayTriangle.size()]; for (int idTriangle = 0; idTriangle < polygons.length; idTriangle++) { TriangulationPoint[] pts = delaunayTriangle.get(idTriangle).points; polygons[idTriangle] = gf.createPolygon(new Coordinate[]{toJts(isInput2D, pts[0]), toJts(isInput2D, pts[1]), toJts(isInput2D, pts[2]), toJts(isInput2D, pts[0])}); } return gf.createMultiPolygon(polygons); } else { return gf.createMultiPolygon(new Polygon[0]); } }
public MultiPolygon getTriangles() { if(convertedInput != null) { List<DelaunayTriangle> delaunayTriangle = convertedInput.getTriangles(); // Convert into multi polygon Polygon[] polygons = new Polygon[delaunayTriangle.size()]; for (int idTriangle = 0; idTriangle < polygons.length; idTriangle++) { TriangulationPoint[] pts = delaunayTriangle.get(idTriangle).points; polygons[idTriangle] = gf.createPolygon(new Coordinate[]{toJts(isInput2D, pts[0]), toJts(isInput2D, pts[1]), toJts(isInput2D, pts[2]), toJts(isInput2D, pts[0])}); } return gf.createMultiPolygon(polygons); } else { return gf.createMultiPolygon(new Polygon[0]); } }