我已经在平面中加载了很多点,我需要从给定点开始绘制一个圆/椭圆,以米为单位的半径距离,然后检查哪些点在圆内。
我已经使用inner()方法对多边形进行了此操作,但是我无法找到一种无需指定多边形周围的每个点即可绘制圆形/椭圆形的方法。
有没有办法在JTS上执行此操作,或者我需要另一个Java库?
最佳答案
如果我正确理解了半径和中心,则可以使用JTS绘制一个圆形,如下所示:
public static Geometry createCircle(double x, double y, final double RADIUS) {
GeometricShapeFactory shapeFactory = new GeometricShapeFactory();
shapeFactory.setNumPoints(32);
shapeFactory.setCentre(new Coordinate(x, y));
shapeFactory.setSize(RADIUS * 2);
return shapeFactory.createCircle();
}