mapControl.getMap().getTrackingLayer().add()这句话是不是显示面的?
现在从iserver返回的值类型是com.spermap.services.components.commontypes.Geomety
我现在想用com.supermap.data.Geometry应该怎么转,还是用什么方法,或者是我缺少引用?
TrackingLayer().add()可以显示点、线、面,您可以参考API文档。您可以获取iserver传回来的几何对象的节点坐标,然后使用Android SDK自己重新构造几何对象
上面这两张图是iserver返回值,一个points应该显示下面这个样子,一个points里就有两个面,points里全是上面那样的坐标.我代码里怎么确定从哪里分割是另一个面.
我直接把points构造几何对象显示出来是这样的,多了一条线,该怎样解决?
刚刚那条消息最上边那两张图片就是返回值,只有一个点串,获取的所有信息都给在图片里.没有别的返回值了,parts有什么用?应该怎么解决?
下边是我显示出来多一条线的代码:
if(count>0){ Point2Ds point2Ds=new Point2Ds(); Point2D[] ps=new Point2D[featuresResult.features[a].geometry.points.length]; for(int i=0;i<featuresResult.features[a].geometry.points.length;i++){ Point2D point2d =new Point2D(); point2d.setX(featuresResult.features[a].geometry.points[i].x); point2d.setY(featuresResult.features[a].geometry.points[i].y); point2Ds.add(point2d); ps[i]=point2d; } GeoStyle geoStyle=new GeoStyle(); geoStyle.setFillBackColor(new com.supermap.data.Color(Color.parseColor("#4876FF"))); geoStyle.setFillOpaqueRate(40); GeoRegion region=new GeoRegion(point2Ds); region.getArea(); region.setStyle(geoStyle); mapControl.getMap().getTrackingLayer().add(region,"regoinsq"); }