public class SnapSetting
extends com.supermap.data.InternalHandleDisposable
地图捕捉可以将节点精确捕捉到与其呈特定空间关系且在捕捉容限内的对象上。地图捕捉多用在栅格矢量化、矢量图层编辑等。设置合理的捕捉容限,可以消除悬线、断线等数字化以及图形编辑过程中容易产生的错误。
注意:捕捉模式的优先级由捕捉模式在该对象中的先后顺序来决定,即,捕捉模式的 ID 值,ID 值越小优先级越高。
构造器和说明 |
---|
SnapSetting()
构造一个捕捉设置类的新对象。
|
SnapSetting(SnapSetting setting)
根据指定的捕捉设置对象构造一个与其相同的新对象。
|
限定符和类型 | 方法和说明 |
---|---|
void |
dispose()
释放该对象所占用的资源。
|
boolean |
exchange(int index1,
int index2)
交换两个指定的捕捉模式的先后顺序。
|
boolean |
exchange(SnapMode mode1,
SnapMode mode2)
交换两个指定的捕捉模式的先后顺序。
|
boolean |
get(SnapMode mode)
返回指定的捕捉模式是否有效。
|
SnapMode |
getAt(int index)
返回指定索引值的捕捉模式。
|
double |
getFixedAngle()
返回按固定角度画线时的角度,默认为 90 度。
|
double |
getFixedLength()
返回按固定长度画线时的长度,单位为地图单位,默认为 1000。
|
int |
getMaxSnappedCount()
返回一个可捕捉图层内,最多可以捕捉的对象数。
|
int |
getMinSnappedLength()
返回捕捉线的最小长度,当线性图素的长度小于该值时,不再捕捉,单位是像素。
|
int |
getTolerance()
返回捕捉时光标定位点的容限,单位是像素。
|
int |
indexOf(SnapMode mode)
返回指定模式的索引值。
|
boolean |
isEnable()
返回捕捉是否可用,true表示开启捕捉,false表示关闭捕捉功能。
|
boolean |
isSnappedLineBroken()
返回是否打断被捕捉的线。
|
boolean |
moveTo(SnapMode mode,
int targetIndex)
移动指定的捕捉模式到指定的索引处。
|
void |
set(SnapMode mode,
boolean value)
设置指定的捕捉模式是否有效。
|
void |
setEnable(boolean value)
设置捕捉是否可用,true表示开启捕捉,false表示关闭捕捉功能。
|
void |
setFixedAngle(double value)
设置按固定角度画线时的角度,默认为 90 度。
|
void |
setFixedLength(double value)
设置按固定长度画线时的长度,单位为地图单位,默认为 1000。
|
void |
setMaxSnappedCount(int value)
设置一个可捕捉图层内,最多可以捕捉的对象数。
|
void |
setMinSnappedLength(int value)
设置捕捉线的最小长度,当线性图素的长度小于该值时,不再捕捉,单位是像素。
|
void |
setSnappedLineBroken(boolean value)
设置是否打断被捕捉的线。
|
void |
setTolerance(int value)
设置捕捉时光标定位点的容限,单位是像素。
|
String |
toString()
输出一个字符串来表示当前的捕捉设置类对象。
|
public SnapSetting()
public SnapSetting(SnapSetting setting)
setting
- 指定的捕捉设置对象。public int getTolerance()
public void setTolerance(int value)
value
- 捕捉时光标定位点的容限。public int getMinSnappedLength()
public void setMinSnappedLength(int value)
value
- 捕捉线的最小长度。public double getFixedAngle()
public void setFixedAngle(double value)
value
- 按固定角度画线时的角度。public double getFixedLength()
public void setFixedLength(double value)
value
- 按固定长度画线时的长度。public int getMaxSnappedCount()
public void setMaxSnappedCount(int value)
value
- 可捕捉图层内最多可以捕捉的对象数。public boolean isSnappedLineBroken()
public void setSnappedLineBroken(boolean value)
value
- 返回一个布尔值,用于指定是否打断被捕捉的线。public boolean isEnable()
public void setEnable(boolean value)
value
- 一个布尔值,指示捕捉是否可用,true表示开启捕捉,false表示关闭捕捉功能。public boolean get(SnapMode mode)
mode
- 指定的捕捉模式。public void set(SnapMode mode, boolean value)
mode
- 指定的捕捉模式。value
- 返回一个布尔值,用于指定该捕捉模式是否有效。public int indexOf(SnapMode mode)
mode
- 指定的捕捉模式。SnapSetting.exchange(int,int)
方法的示例。public SnapMode getAt(int index)
index
- 指定的索引值。public void getATTest() { // 实例化一个捕捉设置类对象 setting,并进行相应设置 SnapSetting setting = new SnapSetting(); setting.setFixedLength(3000.0); setting.setTolerance(20); setting.setFixedAngle(360); setting.setSnappedLineBroken(true); setting.setMaxSnappedCount(520); setting.setMinSnappedLength(22); setting.set(SnapMode.POINT_ON_LINE, true); // 返回给定索引值的捕捉模式 int index = 0; SnapMode actual = setting.getAt(index); }
public boolean exchange(SnapMode mode1, SnapMode mode2)
mode1
- 指定的一个待交换位置的捕捉模式。mode2
- 指定的另一个待交换位置的捕捉模式。SnapSetting.exchange(int,int)
方法的示例。public boolean exchange(int index1, int index2)
index1
- 一个捕捉模式的索引index2
- 另一个捕捉模式的索引public boolean moveTo(SnapMode mode, int targetIndex)
mode
- 指定的捕捉模式。targetIndex
- 指定的索引值。public void moveToTest() { // 实例化一个捕捉设置类对象setting SnapSetting setting = new SnapSetting(); // 指定捕捉模式 SnapMode mode = SnapMode.POINT_ON_ENDPOINT; // 指定索引值 int targetIndex = 5; // 移动捕捉模式到指定的索引处 setting.moveTo(mode, targetIndex); }
public String toString()
public void dispose()
Copyright © 2021–2024 SuperMap. All rights reserved.