|
|||||||||
上一个类 下一个类 | 框架 无框架 | ||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object com.supermap.data.topology.TopologyProcessing
public class TopologyProcessing
拓扑处理类。
用于进行拓扑处理。
当处理对象是三维数据集时(非三维模型),计算过程中忽略三维线段的z值,只使用x、y数据进行计算。
方法摘要 | |
---|---|
static void |
addSteppedListener(SteppedListener l)
添加一个进度条事件( SteppedEvent )的监听器。 |
static DatasetVector |
buildRegions(DatasetVector sourceDataset,
Datasource outputDatasource,
java.lang.String outputDatasetName)
用于将线数据集或者网络数据集,通过拓扑处理来构建面数据集。 |
static DatasetVector |
buildRegions(DatasetVector sourceDataset,
Datasource outputDatasource,
java.lang.String outputDatasetName,
TopologyProcessingOptions options)
用于将线数据集或者网络数据集,通过拓扑处理来构建面数据集。 |
static boolean |
clean(DatasetVector datasetVector,
TopologyProcessingOptions options)
根据拓扑处理选项对给定的数据集进行拓扑处理。 |
static DatasetVector |
pickupBorder(DatasetVector regionDataset,
Datasource outputDatasource,
java.lang.String outputDatasetName,
boolean preProcessed)
提取面(或线)的边界,并保存为线数据集。 |
static DatasetVector |
pickupBorder(DatasetVector regionDataset,
Datasource outputDatasource,
java.lang.String outputDatasetName,
int[] extractIDs,
boolean preProcessed)
提取给定ID数组对应的面对象的边界,并保存为线数据集。 |
static boolean |
pickupLeftRightRegions(DatasetVector regionDataset,
DatasetVector lineDataset,
boolean preProcessed)
根据给定的面数据集和关联的线数据集,提取关联线数据集中线对象的左右多边形。 |
static void |
removeSteppedListener(SteppedListener l)
移除一个进度条事件( SteppedEvent )的监听器。 |
static boolean |
splitLinesByRegions(Recordset lineRecordset,
Recordset regionRecordset)
用面对象分割线对象。 |
从类 java.lang.Object 继承的方法 |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
方法详细信息 |
---|
public static DatasetVector buildRegions(DatasetVector sourceDataset, Datasource outputDatasource, java.lang.String outputDatasetName)
sourceDataset
- 指定的用于进行多边形拓扑处理的源数据集,只能是线数据集或网络数据集,支持三维线数据集。outputDatasource
- 指定的用于存储结果数据集的数据源。outputDatasetName
- 指定的结果面数据集的名称。
public static DatasetVector buildRegions(DatasetVector sourceDataset, Datasource outputDatasource, java.lang.String outputDatasetName, TopologyProcessingOptions options)
sourceDataset
- 指定的用于进行多边形拓扑处理的源数据集,只能是线数据集或网络数据集。outputDatasource
- 指定的用于存储结果数据集的数据源。outputDatasetName
- 指定的结果面数据集的名称。options
- 指定的拓扑处理选项。
public static boolean clean(DatasetVector datasetVector, TopologyProcessingOptions options)
datasetVector
- 指定的拓扑处理的数据集。支持三维矢量数据集。options
- 指定的拓扑处理选项。其中 options 的 AreLinesIntersected 弧段求交属性值可以为 false,即在做拓扑处理时, 可以先不进行弧段求交。
public static boolean pickupLeftRightRegions(DatasetVector regionDataset, DatasetVector lineDataset, boolean preProcessed)
该方法调用后,会在关联线数据集属性表里自动创建出名称为 “SmTopoLPolygon” 和 “SmTopoRPolygon” 的字段,这两个字段用于存储相应线对象的左多边形和右多边形的 ID。
注意:使用此方法时,要求一个线对象的左右两边分别至多有一个多边形,如果不是,则需要先打断,否则方法调用会产生错误结果;另外,使用此方法前请先对数据进行拓扑预处理,否则无法得到正确的结果。
regionDataset
- 指定的图斑(面)数据集。lineDataset
- 指定的关联的线数据集。preProcessed
- 指定是否进行拓扑预处理。
public static DatasetVector pickupBorder(DatasetVector regionDataset, Datasource outputDatasource, java.lang.String outputDatasetName, boolean preProcessed)
不支持重叠面提取边界。
regionDataset
- 指定的图斑(面)、或线数据集。支持处理三维线数据集和三维面数据集。outputDatasource
- 指定的用于存储结果边界线数据集的数据源。outputDatasetName
- 指定的结果边界线数据集的名称。preProcessed
- 指定是否进行拓扑预处理。
public static DatasetVector pickupBorder(DatasetVector regionDataset, Datasource outputDatasource, java.lang.String outputDatasetName, int[] extractIDs, boolean preProcessed)
不支持重叠面提取边界。
仅会提取给定ID数组对应的面对象边界。提取过程中会考虑相邻面对象的影响,目标面对象与多个面相邻,面边界可能会被打断成多条线段。
regionDataset
- 指定的图斑(面)、或线数据集。支持处理三维线数据集和三维面数据集。outputDatasource
- 指定的用于存储结果边界线数据集的数据源。outputDatasetName
- 指定的结果边界线数据集的名称。extractIDs
- 指定的面ID数组。preProcessed
- 指定是否进行拓扑预处理。
public static boolean splitLinesByRegions(Recordset lineRecordset, Recordset regionRecordset)
pickupLeftRightRegions()
方法)操作前,需要调用该方法分割线对象,否则会出现一个线对象对应多个左(右)多边形的情形。
如下图:线对象 AB,如果不用面对象进行分割,则 AB 的左多边形有两个,分别为1,3;右多边形也有两个,分别为1和3,进行分割操作后,线对象 AB 分割为 AC 与 CB,此时 AC 与 CB 各自对应的左、右多边形分别只有一个。
lineRecordset
- 指定的被分割的线记录集。regionRecordset
- 指定的用于分割线记录集的面记录集。
public static void addSteppedListener(SteppedListener l)
SteppedEvent
)的监听器。
l
- 一个用于接收进度条事件的监听器。public static void removeSteppedListener(SteppedListener l)
SteppedEvent
)的监听器。
l
- 一个用于接收进度条事件的监听器。
|
|||||||||
上一个类 下一个类 | 框架 无框架 | ||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |