public static PolyhedralSurface createPolyhedralSurface(final DirectPosition[][] patchPoints) { // get the crs and factories final CoordinateReferenceSystem crs = patchPoints[0][0].getCoordinateReferenceSystem(); final BasicFactories commonFactory = BasicFactories.getDefault(); final GeometryFactory geometryFactory = commonFactory.getGeometryFactory(crs); // create polygons from each of the arrays of directPositions final List polygons = new ArrayList(patchPoints.length); for (int i = 0; i < patchPoints.length; i++) { final Polygon polygon = createPolygon(patchPoints[i]); polygons.add(polygon); } return geometryFactory.createPolyhedralSurface(polygons); }
private static Curve createCurve( final PrimitiveFactory primitiveFactory, final DirectPosition[] points) { final BasicFactories commonFactory = BasicFactories.getDefault(); final GeometryFactory geometryFactory = commonFactory.getGeometryFactory(primitiveFactory.getCoordinateReferenceSystem()); final List curveSegmentList = Collections.singletonList(createLineString(geometryFactory, points)); final Curve curve = primitiveFactory.createCurve(curveSegmentList); return curve; }
public static LineString createLineString(final DirectPosition[] points) { final CoordinateReferenceSystem crs = points[0].getCoordinateReferenceSystem(); final BasicFactories commonFactory = BasicFactories.getDefault(); final GeometryFactory geometryFactory = commonFactory.getGeometryFactory(crs); return createLineString(geometryFactory, points); }
public static Envelope getWholeWorld() { if (WHOLE_WORLD == null) { CoordinateReferenceSystem crs = null; try { crs = org.geotools.referencing.CRS.decode("EPSG:4326"); } catch (Exception nsace){ getLog().warn("could not get crs for EPSG:4326"); } final BasicFactories commonFactory = BasicFactories.getDefault(); final GeometryFactory geometryFactory = commonFactory.getGeometryFactory(crs); final DirectPosition lowerCorner = geometryFactory.createDirectPosition(new double[] { -90, -180 }); final DirectPosition upperCorner = geometryFactory.createDirectPosition(new double[] { 90, 180 }); WHOLE_WORLD = geometryFactory.createEnvelope(lowerCorner, upperCorner); } return WHOLE_WORLD; }
public static Polygon createPolygon( final DirectPosition[] exteriorRingPoints, final DirectPosition[][] interiorRingsPoints) { final CoordinateReferenceSystem crs = exteriorRingPoints[0].getCoordinateReferenceSystem(); final BasicFactories commonFactory = BasicFactories.getDefault(); final GeometryFactory geometryFactory = commonFactory.getGeometryFactory(crs); final PrimitiveFactory primitiveFactory = commonFactory.getPrimitiveFactory(crs); final Ring exteriorRing = createRing(primitiveFactory, exteriorRingPoints); List interiorRingList = interiorRingsPoints.length == 0 ? Collections.EMPTY_LIST : new ArrayList(interiorRingsPoints.length); for (int i = 0; i < interiorRingsPoints.length; i++) { final DirectPosition[] interiorRingPoints = interiorRingsPoints[i]; interiorRingList.add(createRing(primitiveFactory,interiorRingPoints)); } final SurfaceBoundary surfaceBoundary = primitiveFactory.createSurfaceBoundary(exteriorRing, interiorRingList); return geometryFactory.createPolygon(surfaceBoundary); }
public static Envelope createCRSEnvelope( final CoordinateReferenceSystem crs, final double minx, final double miny, final double maxx, final double maxy) { final BasicFactories commonFactory = BasicFactories.getDefault(); final GeometryFactory geometryFactory = commonFactory.getGeometryFactory(crs); final DirectPosition lowerCorner = geometryFactory.createDirectPosition(); lowerCorner.setOrdinate(0, minx); lowerCorner.setOrdinate(1, miny); final DirectPosition upperCorner = geometryFactory.createDirectPosition(); upperCorner.setOrdinate(0, maxx); upperCorner.setOrdinate(1, maxy); return geometryFactory.createEnvelope(lowerCorner, upperCorner); }
DirectPosition dp2 = BasicFactories.getDefault().getGeometryFactory(wgs84crs).createDirectPosition(); try{ MathTransform transform = CRS.findMathTransform(crs, wgs84crs);
final Unit unit) { final BasicFactories commonFactory = BasicFactories.getDefault(); final GeometryFactory geometryFactory = commonFactory.getGeometryFactory(crs);