嘿人们这将是我的第一个问题,所以不要太难打我!
在我添加多边形之前,但交叉点有点复杂。
具有预定义的i意味着例如两个其他多边形的交叉点坐标。我计算多边形交叉点的面积,但我也想突出显示该区域。谢谢
答案 0 :(得分:0)
您需要两个步骤:
a)计算交点:2个多边形的多边形。我会使用JTS,你需要在JTS对象中提供数据。
b)在mapview(例如nutiteq)上突出显示交叉点。您可以将生成的多边形作为一个几何元素添加到几何图层中,就像任何其他多边形一样。使用特殊样式使其看起来不同。您需要将JTS多边形转换为Nutiteq Polygon对象以在地图上显示它
答案 1 :(得分:0)
ArrayList<MapPos> keslist = new ArrayList<MapPos>();
for (int i = 0; i < sonuc.getNumPoints(); i++) {
double lon = sonuc.getX(i);
double lat = sonuc.getY(i);
MapPos mPos = new MapPos(lon, lat);
keslist.add(mPos);
}
PolygonStyle polygonStyle = PolygonStyle.builder().setColor(Color.GREEN).build();
StyleSet<PolygonStyle> polygonStyleSet = new StyleSet<PolygonStyle>(null);
polygonStyleSet.setZoomStyle(10, polygonStyle);
Polygon KesisimPol = new Polygon(keslist, new DefaultLabel("Kesişim"), polygonStyleSet, null);
GeometryLayer geomLayer = new GeometryLayer(mapView.getLayers().getBaseLayer().getProjection());
mapView.getLayers().addLayer(geomLayer);
geomLayer.add(KesisimPol);
}
这是我的解决方案。我已经尝试过了。现在我尝试将这个新多边形添加到可编辑对象图层。因为我不能在另一个交叉过程中使用结果多边形。
我希望这会有助于其他人。