import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.Geometry; import com.vividsolutions.jts.geom.GeometryFactory; import com.vividsolutions.jts.geom.Point; import com.vividsolutions.jts.geom.Polygon; import com.vividsolutions.jts.geom.prep.PreparedGeometry; import com.vividsolutions.jts.operation.distance.DistanceOp; import com.vividsolutions.jts.operation.relate.RelateOp; public class TopologyAnalysisExample { public static void main(String[] args) { GeometryFactory geometryFactory = new GeometryFactory(); Coordinate coordinate1 = new Coordinate(0, 0); Coordinate coordinate2 = new Coordinate(1, 1); Point point1 = geometryFactory.createPoint(coordinate1); Point point2 = geometryFactory.createPoint(coordinate2); boolean isAdjacent = point1.isAdjacent(point2); Coordinate[] coordinates = {new Coordinate(0, 0), new Coordinate(0, 1), new Coordinate(1, 1), new Coordinate(1, 0), new Coordinate(0, 0)}; Polygon polygon = geometryFactory.createPolygon(coordinates); boolean isContained = polygon.contains(point1); boolean isIntersect = polygon.intersects(point1); RelateOp relateOp = new RelateOp(polygon, point1); boolean isRelated = relateOp.getIntersectionMatrix().isIntersects(); DistanceOp distanceOp = new DistanceOp(point1, point2); double distance = distanceOp.distance(); System.out.println("isAdjacent: " + isAdjacent); System.out.println("isContained: " + isContained); System.out.println("isIntersect: " + isIntersect); System.out.println("isRelated: " + isRelated); System.out.println("distance: " + distance); } }


上一篇:
下一篇:
切换中文