public class GenerateRoutesParameter extends Object
LinearReferencing.GenerateRoutes
)的生成路由的方式、刻度字段、刻度偏移量、刻度因子及输出等参数的设置。
生成路由参数设置说明:
使用 LinearReferencing.generateRoutes
方法生成路由数据集时,需要实例化一个 GenerateRoutesParameter 对象设置生成路由的相关参数。建议首先将 GenerateRoutesParameter 对象的 setType
方法设置为相应的生成路由方式。生成路由的方式不同,需要设置的参数也所有不同,下表为四种生成路由的方式所对应的参数设置要求。
注:
LinearReferencing.generateRoutes
方法生成路由数据集时会抛出异常;setOutputDatasource
方法设置输出数据源,生成的结果路由将自动存储到线数据集所在的数据源中。 构造器和说明 |
---|
GenerateRoutesParameter()
构造一个新的 GenerateRoutesParameter 对象。
|
GenerateRoutesParameter(Datasource outputDatasource,
String outputDatasetName,
String routeIDField)
|
限定符和类型 | 方法和说明 |
---|---|
DatasetVector |
getDatasetPoint()
返回参考点数据集。
|
String |
getErrorInfoField()
返回记录错误信息的字段,只当生成路由方式为线参考点刻度(
GenerateType.BY_POINT )时有效。 |
boolean |
getIgnoringGaps()
返回是否忽略子对象之间的间隔。
|
String |
getLineRouteIDField()
返回用于生成路由的线数据集的路由标识字段。
|
String |
getMeasureEndField()
返回用于生成路由的线数据集中存储了终止刻度值的字段,当生成路由方式为线单字段(
GenerateType.BY_SINGLE_FIELD )或线双字段(GenerateType.BY_DOUBLE_FIELDS )时有意义。 |
String |
getMeasureField()
返回用于生成路由的参考点数据集中存储了刻度值的字段,只当生成路由方式为线参考点刻度(
GenerateType.BY_POINT )时才有意义。 |
double |
getMeasureOffset()
返回路由的刻度偏移量。
|
String |
getMeasureStartField()
返回用于生成路由的线数据集中存储了起始刻度值的字段,只当生成路由方式为线双字段(
GenerateType.BY_DOUBLE_FIELDS )时才有意义。 |
String |
getOutputDatasetName()
返回结果路由数据集的名称。
|
Datasource |
getOutputDatasource()
返回存储结果路由数据集的数据源。
|
String |
getPointRouteIDField()
返回参考点数据集的路由标识字段,只当生成路由方式为线参考点刻度(
GenerateType.BY_POINT )时才有意义。 |
double |
getRatio()
返回刻度因子,通常用于刻度值的单位换算。
|
double |
getTolerance()
返回容限值,只当生成路由方式为线参考点刻度(
GenerateType.BY_POINT )时才有意义。 |
Unit |
getToleranceUnit()
返回点线生成路由容限的单位。
|
GenerateType |
getType()
返回生成路由数据集的类型。
|
void |
setDatasetPoint(DatasetVector value)
设置参考点数据集。
|
void |
setErrorInfoField(String value)
设置记录错误信息的字段,只当生成路由方式为线参考点刻度(
GenerateType.BY_POINT )时有效。 |
void |
setIgnoringGaps(boolean value)
设置是否忽略子对象的间隔。
|
void |
setLineRouteIDField(String value)
设置参考道路线数据集路由标识字段。
|
void |
setMeasureEndField(String value)
设置用于生成路由的线数据集中存储了终止刻度值的字段,当生成路由方式为线单字段(
GenerateType.BY_SINGLE_FIELD )或线双字段(GenerateType.BY_DOUBLE_FIELDS )时有意义。 |
void |
setMeasureField(String value)
设置用于生成路由的参考点数据集中存储了刻度值的字段,只当生成路由方式为线点联合(
GenerateType.BY_POINT )时才有意义。 |
void |
setMeasureOffset(double value)
设置路由的刻度偏移量。
|
void |
setMeasureStartField(String value)
设置用于生成路由的线数据集中存储了起始刻度值的字段,只当生成路由方式为线字段(
GenerateType.BY_DOUBLE_FIELDS )时才有意义。 |
void |
setOutputDatasetName(String value)
设置结果路由数据集的名称。
|
void |
setOutputDatasource(Datasource value)
设置存储结果路由数据集的数据源。
|
void |
setPointRouteIDField(String value)
设置参考点数据集的路由标识字段,只当生成路由方式为线参考点刻度(
GenerateType.BY_POINT )时才有意义。 |
void |
setRatio(double value)
设置刻度因子,通常用于刻度值的单位换算。
|
void |
setTolerance(double value)
设置容限值,只当生成路由方式为线参考点刻度(
GenerateType.BY_POINT )时才有意义。 |
void |
setToleranceUnit(Unit value)
设置点线生成路由容限的单位。
|
void |
setType(GenerateType value)
设置生成路由数据集的类型。
|
public GenerateRoutesParameter()
@Deprecated public GenerateRoutesParameter(Datasource outputDatasource, String outputDatasetName, String routeIDField)
GenerateRoutesParameter.setOutputDatasource(Datasource)
、GenerateRoutesParameter.setOutputDatasetName(String)
、GenerateRoutesParameter.setLineRouteIDField(String)
替换。outputDatasource
- 指定的结果数据源。outputDatasetName
- 指定的结果路由数据集的名称。routeIDField
- 指定的结果路由标识字段。public DatasetVector getDatasetPoint()
public void setDatasetPoint(DatasetVector value)
value
- 参考点数据集。public double getTolerance()
GenerateType.BY_POINT
)时才有意义。单位与用于生成路由的线数据集相同。
对于在容限范围之外的参考点,不视为路线上的点,将不用于计算路由的刻度值,详细介绍请参见生成路由方式中的线参考点刻度(GenerateType.BY_POINT
)的介绍。
public void setTolerance(double value)
GenerateType.BY_POINT
)时才有意义。单位与用于生成路由的线数据集相同。
对于在容限范围之外的参考点,不视为路线上的点,将不用于计算路由的刻度值,详细介绍请参见生成路由方式中的线参考点刻度(GenerateType.BY_POINT
)的介绍。
value
- 容限值。public double getMeasureOffset()
刻度偏移量设定之后,将会对路线上所有刻度做整体偏移。例如,若某路由对象的一个节点的刻度值为 0.09,设置的刻度偏移量为 10,则在生成的路由数据集中该节点的刻度值为 10.09。
public void setMeasureOffset(double value)
刻度偏移量设定之后,将会对路线上所有刻度做整体偏移。例如,若某路由对象的一个节点的刻度值为 0.09,设置的刻度偏移量为 10,则在生成的路由数据集中该节点的刻度值为 10.09。
value
- 刻度偏移量。public double getRatio()
当已有的刻度值的单位与实际研究需求不一致时,可以通过刻度因子来进行单位换算。例如,将刻度值的单位从米转换为千米,刻度缩放因子应设置为 0.001。
public void setRatio(double value)
当已有的刻度值的单位与实际研究需求不一致时,可以通过刻度因子来进行单位换算。例如,将刻度值的单位从米转换为千米,刻度缩放因子应设置为 0.001。
value
- 刻度因子。public boolean getIgnoringGaps()
是否忽略子对象的间隔影响着路由刻度值的连续性,详细介绍请参见 setIgnoringGaps
方法的介绍。
public void setIgnoringGaps(boolean value)
路由可以是包含多个子对象的复杂对象。当两个子对象不连续时,就产生了间隔。是否忽略子对象的间隔影响着路由刻度值的连续性,如果忽略子对象的间隔,刻度值将是连续的,否则就是不连续的,此时子对象的间隔的距离就是两个端点的直线距离。
如下图所示,忽略子对象间隔时,第一个子对象的终点的 M 值和第二个子对象起点的 M 值相同;不忽略子对象间隔时,第二个子对象的起点的 M 值就是第一个子对象的终点 M 值加上两者的间隔的直线距离 。
value
- 是否忽略子对象之间的间隔,如果设置为 true 表示忽略,false 表示不忽略。public Datasource getOutputDatasource()
public void setOutputDatasource(Datasource value)
value
- 存储结果路由数据集的数据源。public String getOutputDatasetName()
public void setOutputDatasetName(String value)
value
- 结果路由数据集的名称。public GenerateType getType()
GenerateType.BY_LENGTH
。public void setType(GenerateType value)
value
- 生成路由数据集的类型。public String getErrorInfoField()
GenerateType.BY_POINT
)时有效。
可能会出现的错误信息类型请参见 setErrorInfoField
方法的介绍。
public void setErrorInfoField(String value)
GenerateType.BY_POINT
)时有效。
如果通过该方法指定了错误信息字段名称,在使用线参考点刻度方法生成路由数据集后,系统会自动添加该错误字段到参考点和线数据集的属性表中,用于存储生成路由错误信息。字段值为空表示没有错误。下表列出了可能出现的错误信息及说明:
value
- 记录错误信息的字段。public String getLineRouteIDField()
public void setLineRouteIDField(String value)
注意:对于路由标识字段,所支持的字段类型请参见 LinearReferencing
类的介绍。如果设置的字段类型不被支持,会导致生成路由数据集失败。
value
- 参考道路线数据集路由标识字段。public String getPointRouteIDField()
GenerateType.BY_POINT
)时才有意义。public void setPointRouteIDField(String value)
GenerateType.BY_POINT
)时才有意义。
注意:对于路由标识字段,所支持的字段类型请参见 LinearReferencing
类的介绍。如果设置的字段类型不被支持,会导致生成路由数据集失败。
value
- 参考点数据集的路由标识字段。public String getMeasureField()
GenerateType.BY_POINT
)时才有意义。public void setMeasureField(String value)
GenerateType.BY_POINT
)时才有意义。
注意:对于刻度值字段,所支持的字段类型请参见 LinearReferencing
类的备注部分。如果设置的字段类型不被支持,会导致生成路由数据集失败。
value
- 刻度字段。public String getMeasureStartField()
GenerateType.BY_DOUBLE_FIELDS
)时才有意义。public void setMeasureStartField(String value)
GenerateType.BY_DOUBLE_FIELDS
)时才有意义。
注意:对于刻度值字段,所支持的字段类型请参见 LinearReferencing
类的备注部分。如果设置的字段类型不被支持,会导致生成路由数据集失败。
value
- 起始刻度字段。public String getMeasureEndField()
GenerateType.BY_SINGLE_FIELD
)或线双字段(GenerateType.BY_DOUBLE_FIELDS
)时有意义。public void setMeasureEndField(String value)
GenerateType.BY_SINGLE_FIELD
)或线双字段(GenerateType.BY_DOUBLE_FIELDS
)时有意义。
注意:对于刻度值字段,所支持的字段类型请参见 LinearReferencing
类的备注部分。如果设置的字段类型不被支持,会导致生成路由数据集失败。
value
- 终止刻度字段。public Unit getToleranceUnit()
用户可以自定义点线生成路由容限的单位,可以与数据集单位不一致,在使用该容限时系统会自动将其与数据集单位进行换算。
Unit.METER
)。public void setToleranceUnit(Unit value)
用户可以自定义点线生成路由容限的单位,可以与数据集单位不一致,在使用该容限时系统会自动将其与数据集单位进行换算。
value
- 校准容限的单位。Copyright © 2021–2024 SuperMap. All rights reserved.