public Geometry densify(double segLength) { newCoords = new CoordinateList(); CoordinateSequence seq = inputLine.getCoordinateSequence(); Coordinate p0 = new Coordinate(); Coordinate p1 = new Coordinate(); seq.getCoordinate(0, p0); newCoords.add(new Coordinate(p0)); for (int i = 0; i < seq.size() - 1; i++) { seq.getCoordinate(i, p0); seq.getCoordinate(i + 1, p1); densify(p0, p1, segLength); } Coordinate[] newPts = newCoords.toCoordinateArray(); return inputLine.getFactory().createLineString(newPts); }
/** * Creates a MultiPoint using the given CoordinateSequence. A a null or empty CoordinateSequence * will create an empty MultiPoint. * * @param coordinates a CoordinateSequence (possibly empty), or <code>null</code> * @return a MultiPoint object */ public MultiPoint createMultiPoint(CoordinateSequence coordinates) { if (coordinates == null) { return createMultiPoint(new Point[0]); } Point[] points = new Point[coordinates.size()]; for (int i = 0; i < coordinates.size(); i++) { points[i] = createPoint(coordinates.getCoordinate(i)); } return createMultiPoint(points); }