/** * Creates a new {@link PreparedGeometry} appropriate for the argument {@link Geometry}. * * @param geom the geometry to prepare * @return the prepared geometry */ public PreparedGeometry create(Geometry geom) { if (geom instanceof Polygonal) return new PreparedPolygon((Polygonal) geom); if (geom instanceof Lineal) return new PreparedLineString((Lineal) geom); if (geom instanceof Puntal) return new PreparedPoint((Puntal) geom); /** * Default representation. */ return new BasicPreparedGeometry(geom); } }
/** * Remove all vertices that are located within a polygon * * @param geometry * @param polygon * @return * @throws SQLException */ public static Geometry removePoint(Geometry geometry, Polygon polygon) throws SQLException { if(geometry == null){ return null; } GeometryEditor localGeometryEditor = new GeometryEditor(); PolygonDeleteVertexOperation localBoxDeleteVertexOperation = new PolygonDeleteVertexOperation(geometry.getFactory(), new PreparedPolygon(polygon)); Geometry localGeometry = localGeometryEditor.edit(geometry, localBoxDeleteVertexOperation); if (localGeometry.isEmpty()) { return null; } return localGeometry; }
/** * Remove all vertices that are located within a polygon * * @param geometry * @param polygon * @return * @throws SQLException */ public static Geometry removePoint(Geometry geometry, Polygon polygon) throws SQLException { if(geometry == null){ return null; } GeometryEditor localGeometryEditor = new GeometryEditor(); PolygonDeleteVertexOperation localBoxDeleteVertexOperation = new PolygonDeleteVertexOperation(geometry.getFactory(), new PreparedPolygon(polygon)); Geometry localGeometry = localGeometryEditor.edit(geometry, localBoxDeleteVertexOperation); if (localGeometry.isEmpty()) { return null; } return localGeometry; }
/** * Creates a new {@link PreparedGeometry} appropriate for the argument {@link Geometry}. * * @param geom the geometry to prepare * @return the prepared geometry */ public PreparedGeometry create(Geometry geom) { if (geom instanceof Polygonal) return new PreparedPolygon((Polygonal) geom); if (geom instanceof Lineal) return new PreparedLineString((Lineal) geom); if (geom instanceof Puntal) return new PreparedPoint((Puntal) geom); /** * Default representation. */ return new BasicPreparedGeometry(geom); } }