gpt4 book ai didi

Java geotools 检查点是否包含在具有公差的多边形中

转载 作者:搜寻专家 更新时间:2023-11-01 03:18:38 31 4
gpt4 key购买 nike

我正在使用 Java Geotools 库来检查 POINT(...) 是否包含在 POLYGON(...) 中。

我已经完成了:

Geometry sPG = reader.read(wktStartPoint); //startpointgeometry
Geometry sEG = reader.read(wktEndPoint);
if(wktLayerGeo.contains(sPG) || wktLayerGeo.contains(sEG)){
// do something
}

但现在我必须设置一个公差:例如,我会检查一个点是否包含在公差距离为 50 公里的多边形中。

我可以用 GeoTools 做吗?

谢谢

最佳答案

您可以在多边形几何 (API) 上使用 JTS buffer 方法:

double yourToleranceDistance = 2;
int numberOfSegmentsPerQuadrant = 2;
// get the geometry with your tolerance
Polygon wktLayerGeoWithTolerance = (Polygon) wktLayerGeo.buffer(yourToleranceDistance, numberOfSegmentsPerQuadrant, BufferParameters.CAP_SQUARE);
// continue with your code...
if(wktLayerGeoWithTolerance.contains(sPG) || wktLayerGeoWithTolerance.contains(sEG)){
// do something
}

关于Java geotools 检查点是否包含在具有公差的多边形中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38693295/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com