mMapControl!!.map.trackingLayer.remove(mMapControl!!.map.trackingLayer.indexOf("point${allPoint!!.count}"))
循环删除时,只能删除部分点。
这个remove方法,对面用可以移除,但是点的话,不能完全移除,移除的代码如下,添加的tag的值也是这种赋值方式
var pointTag="point${polygonList!!.size}${pointList!!.count-1}" mMapControl!!.getMap().getTrackingLayer() .remove(mMapControl!!.getMap().getTrackingLayer().indexOf(pointTag)) pointList!!.remove(pointList!!.count-1)
应该是点没有移除,因为给点加的样式都还存在。count值是一一对应的,
pointList是点一个Point2Ds对象,里面存的是当前绘制层的点的集合。remove最近的一个点是可以移除的,再次移除其他点的时候不得行
这个方法也试了,没用,不知道是我参数传错了还是怎样,hitTest()这个方法第二个参数是什么?按照翻译说的是公差,这个公差又如何计算呀? 我现在换了种方式,清除跟踪层的所有对象,然后重新渲染。之前想的是,能直接移除是最好的。
另外我想问下那个导入tif文件过大导入失败,还有其他方式可以导入吗?tif文件差不多3个G,导入的代码如下:
val importSettingTIF = ImportSettingTIF() val importTIF: String = "$rootPath/SuperMap/SampleData/nczjdMapData/金溪镇长春村正射影像.tif" importSettingTIF.sourceFilePath = importTIF importSettingTIF.targetDatasetName = "tifImport" importSettingTIF.targetDatasource = udbDatasource importSettingTIF.sourceFileCharset = Charset.UTF8 importSettingTIF.multiBandImportMode = MultiBandImportMode.COMPOSITE importSettingTIF.targetEncodeType = EncodeType.DCT importSettingTIF.isImportingAsGrid = false importSettingTIF.importMode = ImportMode.OVERWRITE importSettingTIF.isBuildPyramid = true // 将CAD数据添加到数据集 val tif = DataConversion.importTIF(importSettingTIF)
哦哦哦。好的。我试试看,谢谢你哈,第一次摸supermap,有点摸不着头脑。