首页 / 浏览问题 / 组件GIS / 问题详情
修改三维网络数据集
35EXP 2022年04月10日
使用产品:iObjects.NET 10.2.1

问题描述:现在我使用NetworkBuilder3D.BuildNetwork方法得到了三维网络数据集,现在我想筛选出其中网络数据集中,取某一字段值的管点,也就是对这个网络集进行修改,使其只有我想要的部分网络,请问要如何实现

2 个回答

您好,根据您的需求描述,有以下3种操作流程建议:

  1. 新建一个临时数据集,将您需要获取的字段记录中的唯一值添加到这个临时数据集中,然后通过 DatasetVector.AppendFields 方法对临时数据集进行字段值填充,得到的这个临时数据集就是您期望的数据集;
  2. 通过 SQL 查询获取您需要的记录集(Recordset),再将记录集添加到一个临时数据集中,得到的这个临时数据集就是您期望的数据集;
  3. 通过动态游标的方式从三维网络数据集中获取记录集对象,遍历每条记录集,将不满足您需求的记录通过 Recordset.Delete 方法删除(每次操作记录集后都需要调用 Recordset.Update 方法提交修改),最终得到的数据集就是您期望的数据集。

希望可以帮到您。

2,253EXP 2022年04月11日
您好,三维网络数据集同普通的数据集是不一样的,网络数据集的节点与节点记录,弧段与弧段记录,节点与弧段记录之间有严密的拓扑关系。

直接修改是没法生成正确的更细你争分拓扑数据集正确的拓扑关系的。

所以建议您修改时就和修改普通数据集一样来修改,修改后使用BuildNetwork方法重建一下三维网路数据集,建立正确的拓扑关系就好了。

希望可以帮助到您。
10,593EXP 2022年04月11日
...