@Override public <X> Geometry wrap(X value, WrapperOptions options) { if ( value == null ) { return null; } if ( Geometry.class.isInstance( value ) ) { return (Geometry) value; } if ( org.geolatte.geom.Geometry.class.isInstance( value ) ) { return JTS.to( (org.geolatte.geom.Geometry) value ); } if ( String.class.isInstance( value ) ) { return fromString( (String) value ); } throw unknownWrap( value.getClass() ); }
@Override public <X> X unwrap(Geometry value, Class<X> type, WrapperOptions options) { if ( value == null ) { return null; } if ( Geometry.class.isAssignableFrom( type ) ) { return (X) value; } if ( org.locationtech.jts.geom.Geometry.class.isAssignableFrom( type ) ) { return (X) JTS.to( value ); } if ( String.class.isAssignableFrom( type ) ) { return (X) toString( value ); } throw unknownUnwrap( type ); }
@Override protected Geometry decode(Object o) { if ( o == null ) { return null; } return JTS.to( HANASpatialUtils.toGeometry( o ) ); }
@Override protected Geometry decode(Object o) { return ( o != null ) ? JTS.to( decoder.convert( o ) ) : null; } }
@Override protected Geometry decode(Object object) { org.geolatte.geom.Geometry geometry = PGGeometryTypeDescriptor.toGeometry( object ); return JTS.to( geometry ); }
@Override protected Geometry decode(Object o) { org.geolatte.geom.Geometry<?> geometry = desc.toGeometry( o ); return geometry == null ? null : JTS.to( geometry ); }
@Override protected Geometry decode(Object o) { return JTS.to( Decoders.decode( (byte[]) o ) ); }
@Override protected Geometry decode(Object o) { return JTS.to( GeoDbWkb.from( o ) ); }
@Override protected Geometry decode(Object o) { return JTS.to( Wkb.fromWkb( ByteBuffer.from( (byte[]) o ) ) ); } }
@Override protected Geometry decode(Object bytes) { if ( bytes == null ) { return null; } ByteBuffer buffer = ByteBuffer.from( (byte[]) bytes ); WkbDecoder decoder = Wkb.newDecoder( Wkb.Dialect.MYSQL_WKB ); return JTS.to( decoder.decode( buffer ) ); } }
geometryEquality.test( (Geometry) expected, (Geometry) org.geolatte.geom.jts.JTS.to( (org.geolatte.geom.Geometry) received )
public static JtsGeomEntity createFrom(TestDataElement element, Dialect dialect) throws ParseException { WktDecoder decoder = getWktDecoder( dialect ); Geometry geom = JTS.to( decoder.decode( element.wkt ) ); JtsGeomEntity result = new JtsGeomEntity(); result.setId( element.id ); result.setGeom( geom ); result.setType( element.type ); return result; }
public static <P extends Position> org.locationtech.jts.geom.Geometry to(org.geolatte.geom.Geometry<P> geometry) { if (geometry == null) { throw new IllegalArgumentException("Null object passed."); } GeometryFactory gFact = geometryFactory(geometry.getSRID()); return to(geometry, gFact); }
private static <P extends Position> Polygon to(org.geolatte.geom.Polygon<P> polygon, GeometryFactory gFact) { LinearRing shell = to(polygon.getExteriorRing(), gFact); LinearRing[] holes = new LinearRing[polygon.getNumInteriorRing()]; for (int i = 0; i < holes.length; i++) { holes[i] = to(polygon.getInteriorRingN(i), gFact); } return gFact.createPolygon(shell, holes); }
@Override @SuppressWarnings("unchecked") public <P extends C2D, G extends Geometry<P> & Polygonal<P>> Point<P> centroid(final G geometry) { return (Point<P>) JTS.from(JTS.to(geometry).getCentroid()); }
@Override public <P extends C2D> boolean intersects(final Geometry<P> geometry, final Geometry<P> other) { if (geometry.isEmpty() || other.isEmpty()) return Boolean.FALSE; checkCompatibleCRS(geometry, other); if (!envelopeIntersect(geometry, other)) return Boolean.FALSE; RelateOp relateOp = new RelateOp(JTS.to(geometry), JTS.to(other)); return relateOp.getIntersectionMatrix().isIntersects(); }
private static <P extends Position> GeometryCollection to(org.geolatte.geom.GeometryCollection<P, org.geolatte .geom.Geometry<P>> collection, GeometryFactory gFact) { Geometry[] geoms = new Geometry[collection.getNumGeometries()]; for (int i = 0; i < collection.getNumGeometries(); i++) { geoms[i] = to(collection.getGeometryN(i)); } return gFact.createGeometryCollection(geoms); }
@Override public <P extends C2D> Geometry<P> union(final Geometry<P> geometry, final Geometry<P> other) { checkCompatibleCRS(geometry, other); if (geometry.isEmpty()) return other; if (other.isEmpty()) return geometry; checkNotGeometryCollection(geometry); checkNotGeometryCollection(other); org.locationtech.jts.geom.Geometry union = SnapIfNeededOverlayOp.overlayOp(JTS.to(geometry), JTS.to(other), OverlayOp.UNION); return JTS.from(union, geometry.getCoordinateReferenceSystem()); }
private static <P extends Position> MultiPoint to(org.geolatte.geom.MultiPoint<P> multiPoint, GeometryFactory gFact) { Point[] points = new Point[multiPoint.getNumGeometries()]; for (int i = 0; i < multiPoint.getNumGeometries(); i++) { points[i] = to(multiPoint.getGeometryN(i), gFact); } return gFact.createMultiPoint(points); }
@Override public <P extends C2D> Geometry<P> difference(final Geometry<P> geometry, final Geometry<P> other) { checkCompatibleCRS(geometry, other); if (geometry.isEmpty()) return new Point<P>(geometry.getCoordinateReferenceSystem()); if (other.isEmpty()) return geometry; checkNotGeometryCollection(geometry); checkNotGeometryCollection(other); org.locationtech.jts.geom.Geometry difference = SnapIfNeededOverlayOp.overlayOp(JTS.to(geometry), JTS.to(other), OverlayOp.DIFFERENCE); return JTS.from(difference, geometry.getCoordinateReferenceSystem()); }