我正在使用 nutiteq 库来绘制多边形并使用 .getVertexList() 命令获取多边形的坐标。然后我将这些坐标转换为数组列表。然后我将这些坐标投射到另一个多边形列表中。GPC 正在计算交集、并集、异或和差异区域整数值。然后我需要突出显示处理区域,因此我需要处理区域坐标,但我无法直接从 GPC 获取这些坐标。
我用于面积计算的代码如下。我应该怎么做才能获得结果多边形的坐标?(我不能像你 在这里看到的那样直接投射坐标......)
提前致谢。
public void IntersectionButton(View view) {
VectorElement selectedElement = mapView.getSelectedElement();
List<?> VisibleElements = selectedElement.getLayer().getVisibleElements();
ArrayList<Poly> polyList = new ArrayList<Poly>();
for (Object obj : VisibleElements) {
if (obj instanceof Polygon) {
Polygon poly = (Polygon) obj;
List<MapPos> geoList = poly.getVertexList();
Poly p = new PolyDefault();
for (MapPos pos : geoList) {
p.add(pos.x, pos.y);
}
polyList.add(p);
}
}
PolyDefault result = (PolyDefault) Clip.intersection(polyList.get(0), polyList.get(1));
int area = (int) (((int) result.getArea()) * (0.57417));