/** * Converts a JTS Point to a DirectPosition with the given CRS. */ public static DirectPosition pointToDirectPosition(com.vividsolutions.jts.geom.Point p, CoordinateReferenceSystem crs) { return coordinateToDirectPosition(p.getCoordinate(), crs); }
/** * Converts a JTS Point to a DirectPosition with the given CRS. */ public static DirectPosition pointToDirectPosition(com.vividsolutions.jts.geom.Point p, CoordinateReferenceSystem crs) { return coordinateToDirectPosition(p.getCoordinate(), crs); }
public void filter(com.vividsolutions.jts.geom.Coordinate coord) { // Load the input into a DirectPosition JTSUtils.coordinateToDirectPosition(coord, src); try { // Do the transform math. transform.transform(src, dst); } catch (MismatchedDimensionException e) { throw new RuntimeException(e); } catch (TransformException e) { throw new RuntimeException(e); } // Load the result back into the Coordinate. JTSUtils.directPositionToCoordinate(dst, coord); } }
public void filter(com.vividsolutions.jts.geom.Coordinate coord) { // Load the input into a DirectPosition JTSUtils.coordinateToDirectPosition(coord, src); try { // Do the transform math. transform.transform(src, dst); } catch (MismatchedDimensionException e) { throw new RuntimeException(e); } catch (TransformException e) { throw new RuntimeException(e); } // Load the result back into the Coordinate. JTSUtils.directPositionToCoordinate(dst, coord); } }
public static Ring linearRingToRing(com.vividsolutions.jts.geom.LineString jtsLinearRing, CoordinateReferenceSystem crs) { int numPoints = jtsLinearRing.getNumPoints(); if (! jtsLinearRing.getCoordinateN(0).equals(jtsLinearRing.getCoordinateN(numPoints-1))) { throw new IllegalArgumentException("LineString must be a ring"); } Hints hints = new Hints( Hints.CRS, crs ); PrimitiveFactory pf = GeometryFactoryFinder.getPrimitiveFactory(hints); GeometryFactory gf = GeometryFactoryFinder.getGeometryFactory(hints); LineString ls = gf.createLineString(new ArrayList()); List pointList = ls.getControlPoints(); for (int i=0; i<numPoints; i++) { pointList.add(coordinateToDirectPosition(jtsLinearRing.getCoordinateN(i), crs)); } Curve curve = pf.createCurve(new ArrayList()); // Cast below can be removed when GeoAPI will be allowed to abandon Java 1.4 support. ((List) curve.getSegments()).add(ls); Ring result = pf.createRing(new ArrayList()); // Cast below can be removed when GeoAPI will be allowed to abandon Java 1.4 support. ((List) result.getGenerators()).add(curve); return result; }
public static Ring linearRingToRing(com.vividsolutions.jts.geom.LineString jtsLinearRing, CoordinateReferenceSystem crs) { int numPoints = jtsLinearRing.getNumPoints(); if (! jtsLinearRing.getCoordinateN(0).equals(jtsLinearRing.getCoordinateN(numPoints-1))) { throw new IllegalArgumentException("LineString must be a ring"); } Hints hints = new Hints( Hints.CRS, crs ); PrimitiveFactory pf = GeometryFactoryFinder.getPrimitiveFactory(hints); GeometryFactory gf = GeometryFactoryFinder.getGeometryFactory(hints); LineString ls = gf.createLineString(new ArrayList()); List pointList = ls.getControlPoints().positions(); for (int i=0; i<numPoints; i++) { pointList.add(coordinateToDirectPosition(jtsLinearRing.getCoordinateN(i), crs)); } Curve curve = pf.createCurve(new ArrayList()); curve.getSegments().add(ls); Ring result = pf.createRing(new ArrayList()); result.getGenerators().add(curve); return result; }
/** * Converts a JTS Coordinate to a DirectPosition with the given CRS. */ public static DirectPosition coordinateToDirectPosition( com.vividsolutions.jts.geom.Coordinate c, CoordinateReferenceSystem crs) { Hints hints = new Hints( Hints.CRS, crs ); GeometryFactory gf = GeometryFactoryFinder.getGeometryFactory(hints); double [] vertices; if (crs == null) vertices = new double[3]; else vertices = new double[crs.getCoordinateSystem().getDimension()]; DirectPosition result = gf.createDirectPosition(vertices); coordinateToDirectPosition(c, result); return result; }
/** * Converts a JTS Coordinate to a DirectPosition with the given CRS. */ public static DirectPosition coordinateToDirectPosition( com.vividsolutions.jts.geom.Coordinate c, CoordinateReferenceSystem crs) { Hints hints = new Hints( Hints.CRS, crs ); GeometryFactory gf = GeometryFactoryFinder.getGeometryFactory(hints); double [] vertices; if (crs == null) vertices = new double[3]; else vertices = new double[crs.getCoordinateSystem().getDimension()]; DirectPosition result = gf.createDirectPosition(vertices); coordinateToDirectPosition(c, result); return result; }
List pointList = ls.getControlPoints(); for (int i=0; i<numPoints; i++) { pointList.add(coordinateToDirectPosition(jtsLineString.getCoordinateN(i), crs));
List pointList = ls.getControlPoints().positions(); for (int i=0; i<numPoints; i++) { pointList.add(coordinateToDirectPosition(jtsLineString.getCoordinateN(i), crs));
new PointImpl(JTSUtils.coordinateToDirectPosition( coords[0], crs)), new PointImpl(JTSUtils.coordinateToDirectPosition( coords[1], crs))); return result;
new PointImpl(JTSUtils.coordinateToDirectPosition( coords[0], crs)), new PointImpl(JTSUtils.coordinateToDirectPosition( coords[1], crs))); return result;