首页 / 浏览问题 / 组件GIS / 问题详情
Geometrist3D类下的求交方法报错:几何对象类型不合法!
14EXP 2020年10月09日

使用产品:iObjects.NET 9D  操作系统:win10 x64

数据类型:文件型

问题描述:1)数据集为模型数据集,分别添加了模型对象,在桌面端能正常加载、编辑。2)通过读取数据集的方式分别获取要进行运算的模型。3)使用Geometrist3D类下的求交运算方法Intersect/HasIntersection时,输入均为GeoModel或Geometrist3D,运行后会报错“System.ArgumentException:几何对象类型不合法!”。4)利用同样的数据,在桌面端iDeskTop 9D使用“三维地理设计-布尔运算”功能,分别选中两个模型图层下的模型对象,进行求交运算,能成功求取得到结果。

部分数据获取及求交代码:

 DatasetVector Dataset_A = m_sceneControl.Scene.Workspace.Datasources[source].Datasets[dataset] as DatasetVector;
 Recordset recordset_A = Dataset_A.GetRecordset(false, CursorType.Dynamic);
 recordset_A.MoveFirst();
 GeoModel3D ModelA = (GeoModel3D)recordset_A.GetGeometry();
 bool run = Geometrist3D.HasIntersection(ModelA, ModelB);

1个回答

能否将这两个模型数据集单独发过来看一下,直接发数据源就行,可以发送到邮箱chengyishi@supermap.com,如果大于10M,请上传到百度网盘,分享链接即可
4,620EXP 2020年10月10日
数据源已发送
接口使用问题,桌面布尔运算里面使用的是BooleanOperator3D.Intersect,不是用的Geometrist3D
好的,谢谢!
...