public class ThemeLabel extends Theme
标签专题图的标注可以是数字、字母与文字,例如:河流、湖泊、海洋、山脉、城镇、村庄等地理名称,高程、等值线数值、河流流速、公路段里程、航海线里程等。
在标签专题图中,你可以对标签的显示风格和位置进行设置或控制,你可以为所有的标签都设置统一的显示风格和位置选项来显示;也可以通过单值标签专题图,基于指定字段表达式的值进行分类,值相同的对象标签为一类使用相同的风格显示,不同类的标签使用不同风格显示;还可以通过分段标签专题图,基于指定字段表达式的值进行分段,同一段内的对象标签相同的风格显示,不同段的标签使用不同风格显示。
另外,单个标签的位置也是可以通过 Layer.setThemeElementPosition 接口修改的。
标签专题图有多种类型:统一标签专题图、单值标签专题图、复合风格标签专题图、分段标签专题图以及自定义标签专题图,通过ThemeLabel类可以实现以上所有风格标签专题图的设置,建议用户不要同时设置两种或两种以上的风格,如果同时设置了多种风格,标签专题图的显示将按照下表的优先级情况进行风格显示:
注:地图上一般还会出现图例说明,图名,比例尺等等,那些都是制图元素,不属于标签专题图标注的范畴。
注意:如果通过连接(Join)或关联(Link)的方式与一个外部表建立了联系,当专题图的专题变量用到外部表的字段时,在显示专题图时,需要调用 Layer.setDisplayFilter()
方法,否则专题图将创建失败。
构造器和说明 |
---|
ThemeLabel()
默认构造函数,构造一个新的
ThemeLabel 对象。 |
ThemeLabel(ThemeLabel themeLabel)
拷贝构造函数,根据给定的
ThemeLabel 对象构造一个与其完全相同的新对象。 |
限定符和类型 | 方法和说明 |
---|---|
boolean |
addToHead(ThemeLabelItem item)
已过时。
|
boolean |
addToHead(ThemeLabelItem item,
boolean normalize)
已过时。
|
boolean |
addToTail(ThemeLabelItem item)
已过时。
|
boolean |
addToTail(ThemeLabelItem item,
boolean normalize)
已过时。
|
void |
clear()
已过时。
|
void |
dispose()
释放对象所占用的资源。
|
boolean |
fromXML(String xml)
通过包含专题图信息的 XML 字符串来初始化标签专题图
|
AlongLineAllowCondition |
getAlongLineAllowCondition()
获取沿线标注在特殊情况下的允许模式。
|
AlongLineCulture |
getAlongLineCulture()
返回沿线标注使用的语言文化习惯。
|
AlongLineDirection |
getAlongLineDirection()
返回标签沿线标注方向。
|
AlongLineDrawingMode |
getAlongLineDrawingMode()
返回设置在沿线标注中,标签绘制所采用的策略:兼容绘制、整行绘制、拆分绘制。
|
AlongLineLabelMode |
getAlongLineLabelMode()
获取沿线标注的显示模式。
|
double |
getAlongLineMoreThanLineMultiple()
获取沿线标注的超长标签可超过标注线对象长度的倍数
|
double |
getAlongLineResampleTolerance()
获取沿线标注重采样的容限值,需要开启重采样才能有效:
ThemeLabel.setAlongLineResampleLine(boolean) |
int |
getAlongLineSmoothness()
获取沿线标注重采样的光滑系数,需要开启重采样才能有效:
ThemeLabel.setAlongLineResampleLine(boolean) |
double |
getAlongLineSpaceRatio()
返回沿线文本间隔比率,该方法只对沿线标注起作用。
|
int |
getAlongLineWordAngleRange()
返回沿线标注中字与字或者字母与字母间相对角度的容限值,单位为:度。
|
LabelBackShape |
getBackShape()
返回标签专题图中的标签背景的形状类型。
|
GeoStyle |
getBackStyle()
返回标签专题图中的标签背景风格。
|
int |
getCount()
已过时。
|
double |
getCustomInterval()
获取自定义段长。
|
DraftLinePositionMode |
getDraftLinePositionMode()
获取牵引线的连接锚点。
|
DraftLineTypeMode |
getDraftLineTypeMode()
获取牵引线类型。
|
String |
getExplodeXExpression()
返回一个字段,该字段为数值型字段,字段值控制文本的在水平方向的偏移距离,数值单位为地理坐标或者逻辑坐标(0.1毫米),由方法ThemeLabel.setOffsetFixed(boolean value)设置的值决定,该方法传入的值为true,表示使用逻辑坐标,为false表示使用地理坐标。
|
String |
getExplodeYExpression()
返回一个字段,该字段为数值型字段,字段值控制文本的在垂直方向的偏移距离,数值单位为地理坐标或者逻辑坐标(0.1毫米),由方法ThemeLabel.setOffsetFixed(boolean value)设置的值决定,该方法传入的值为true,表示使用逻辑坐标,为false表示使用地理坐标。
|
boolean |
getIsDisplayByDomain()
获取是否根据值域显示。
|
ThemeLabelItem |
getItem(int index)
已过时。
|
String |
getLabelAngleExpression()
返回一个字段,该字段为数值型字段,字段值控制文本的旋转角度。
|
String |
getLabelColorExpression()
返回一个字段,该字段为数值型字段,控制文字颜色。
|
String |
getLabelExpression()
返回标注字段表达式。
|
String |
getLabelFontTypeExpression()
返回一个字段,该字段值为字体名称,如:微软雅黑、宋体,控制标签专题图中标签文本的字体样式。
|
double |
getLabelRepeatInterval()
返回在沿线标注时循环标注的间隔。
|
LabelMatrix |
getLabels()
返回标签专题图中的矩阵标签。
|
String |
getLabelSizeExpression()
返回一个字段,该字段为数值型字段,字段值控制文字字高,数值单位为毫米。
|
GeoStyle |
getLeaderLineStyle()
返回标签与其标注对象之间牵引线的风格。
|
int |
getMaxLabelLength()
返回标签在每一行显示的最大长度。
|
int |
getMaxTextHeight()
返回标签中文本的最大高度。
|
int |
getMaxTextWidth()
返回标签中文本的最大宽度。
|
int |
getMinTextHeight()
返回标签中文本的最小高度。
|
int |
getMinTextWidth()
返回标签中文本的最小宽度。
|
int |
getNumericPrecision()
返回标签中数字的精度。
|
String |
getOffsetX()
返回标签专题图中标记文本相对于要素内点的水平偏移量。
|
String |
getOffsetY()
返回标签专题图中标记文本相对于要素内点的垂直偏移量。
|
AvoidMode |
getOverlapeAvoidMode()
返回标签专题图中标签文本的避让方式。
|
OverLengthLabelMode |
getOverLengthMode()
返回超长标签的处理方式。
|
ThemeLabel |
getParent()
返回当前标签专题图所归属的专题图,即其父对象。
|
String |
getRangeExpression()
返回分段字段表达式。
|
ThemeLabelRangeItems |
getRangeItems()
返回分段标签专题图子项集合。
|
RangeMode |
getRangeMode()
返回当前的分段模式。
|
double |
getRarefyPointsRadius()
返回自动抽稀点的容限,逻辑坐标,单位为0.1mm。
|
int |
getRarefyThreshold()
返回自动抽稀点的阈值。
|
Color |
getShadowColor()
返回边线的颜色
|
double |
getShadowOffsetRatioX()
返回阴影的水平偏移量
|
double |
getShadowOffsetRatioY()
返回阴影的垂直偏移量
|
char |
getSplitSeparator()
获取用于标签文本换行的换行符,可以为:“/”、“;”、空格等。
|
Size2D |
getTextExtentInflation()
返回标签中文本在 X,Y 正方向上的缓冲范围。
|
double |
getTextSpaceing()
已过时。
|
double |
getTextSpacing()
获取文本的间距,以字高为单位。
|
MixedTextStyle |
getUniformMixedStyle()
返回标签专题图统一的文本复合风格。
|
MixedTextStyle |
getUniformMixedSytle()
已过时。
|
TextStyle |
getUniformStyle()
返回统一文本风格。
|
String |
getUniqueExpression()
返回单值字段表达式,表达式可以为一个字段,也可以为多个字段构成的表达式,通过该表达式的值控制对象标签的风格,表达式值相同的对象标签使用相同的风格进行显示。
|
ThemeLabelUniqueItems |
getUniqueItems()
返回单值标签专题图子项集合。
|
int |
indexOf(double value)
已过时。
|
boolean |
isAllDirectionsOverlapedAvoided()
已过时。
|
boolean |
isAllDirectionsOverlappedAvoided()
已过时。
|
boolean |
isAlongLine()
返回是否沿线显示文本。
|
boolean |
isAlongLineAutoAvoid()
返回是否沿线查找合适的位置进行沿线标注。
|
boolean |
isAlongLineResampleLine()
返回是否对复杂线型进行预处理后再进行沿线标注。
|
boolean |
isAlongLineResampleSmooth()
获取是否沿线标注重采样,即对于高密集点的线段做重采样和光滑处理,然后再沿线标注
|
boolean |
isAlongLineSelfOverlap()
沿线标签是否开启显示自压盖对象
|
boolean |
isAlongLineTextFollowLine()
获取沿线标注时文本是否随线方向保持一致。
|
boolean |
isAngleFixed()
当沿线显示文本时,是否将文本角度固定。
|
boolean |
isAutoAdjustRegionLabel()
返回是否自动根据面对象的宽度和高度竖排标签,如果宽度大于高度,就横排标签,否则就竖排。
|
boolean |
isDrawBackShadow()
获取是否显示标签阴影
|
boolean |
isDrawTextInCenterLine() |
boolean |
isFlowEnabled()
返回是否流动显示标签。
|
boolean |
isLabelCoverLine()
获取是否标签掩膜。
|
boolean |
isLeaderLineDisplayed()
返回是否显示标签和它标注的对象之间的牵引线。
|
boolean |
isOffsetFixed()
返回当前标签专题图是否固定标记文本的偏移量。
|
boolean |
isOnlyDrawWithinRegionText()
获取是否只绘制面内标签
|
boolean |
isOnTop()
返回标签专题图图层是否显示在最上层。
|
boolean |
isOptimizeMutilineAlignment()
返回当开启标签文本自动避让后,是否自动优化多行文本的排版,使其与被标注的点对象在当前位置关系下更加美观整齐,true表示优化;false表示不进行优化处理。
|
boolean |
isOverlapAvoided()
返回是否允许以文本避让方式显示文本。
|
boolean |
isRarefyPoints()
返回显示点标签专题图时,是否自动抽稀点,以节省绘制时间。
|
boolean |
isRepeatedLabelAvoided()
返回是否避免地图重复标注。
|
boolean |
isRepeatIntervalFixed()
返回循环标注间隔是否固定。
|
boolean |
isShowTextInRegionThrend()
获取是否面标签沿面趋势方向显示
|
boolean |
isSmallGeometryLabeled()
当标签的长度大于被标注对象本身的长度时,返回是否显示该标签。
|
boolean |
isTextExpression()
返回是否支持文本表达式,即上下标功能。
|
boolean |
isVertical()
返回是否使用竖排标签。
|
static ThemeLabel |
makeDefault(DatasetVector dataset,
String uniqueExpression,
ColorGradientType colorGradientType,
JoinItems joinItems)
根据给定的矢量数据集、单值字段表达式、颜色渐变模式和和外部连接表项参数生成默认的单值标签专题图。
|
static ThemeLabel |
makeDefault(DatasetVector dataset,
String rangeExpression,
RangeMode rangeMode,
double rangeParameter)
根据给定的矢量数据集、分段字段表达式、分段模式和相应的分段参数生成默认的标签专题图。
|
static ThemeLabel |
makeDefault(DatasetVector dataset,
String rangeExpression,
RangeMode rangeMode,
double rangeParameter,
ColorGradientType colorGradientType)
根据给定的矢量数据集、分段字段表达式、分段模式、相应的分段参数和颜色渐变模式生成默认的标签专题图。
|
static ThemeLabel |
makeDefault(DatasetVector dataset,
String rangeExpression,
RangeMode rangeMode,
double rangeParameter,
ColorGradientType colorGradientType,
JoinItems joinItems)
根据给定的矢量数据集、分段字段表达式、分段模式、相应的分段参数、颜色渐变填充模式和外部连接表项生成默认的标签专题图。
|
static ThemeLabel |
makeDefault(String[] values,
String uniqueExpression,
ColorGradientType colorGradientType,
JoinItems joinItems)
根据给定的单值、单值字段表达式、渐变颜色类型和外部连接表项参数生成默认的单值标签专题图。
|
boolean |
merge(int index,
int count,
TextStyle style,
String caption)
已过时。
|
void |
reverseStyle()
对标签专题图中分段的风格进行反序显示。
|
void |
setAllDirectionsOverlapedAvoided(boolean value)
已过时。
|
void |
setAllDirectionsOverlappedAvoided(boolean value)
已过时。
|
void |
setAlongLine(boolean value)
设置是否沿线显示文本。
|
void |
setAlongLineAllowCondition(AlongLineAllowCondition value)
设置沿线标注在特殊情况下的允许模式。
|
void |
setAlongLineAutoAvoid(boolean value)
设置是否沿线查找合适的位置进行沿线标注。
|
void |
setAlongLineCulture(AlongLineCulture value)
设置沿线标注使用的语言文化习惯。
|
void |
setAlongLineDirection(AlongLineDirection value)
设置标签沿线标注方向。
|
void |
setAlongLineDrawingMode(AlongLineDrawingMode value)
设置在沿线标注中,标签绘制所采用的策略:兼容绘制、整行绘制、拆分绘制。
|
void |
setAlongLineLabelMode(AlongLineLabelMode value)
设置沿线标注的显示模式。
|
void |
setAlongLineMoreThanLineMultiple(double value)
设置沿线标注的超长标签可超过标注线对象长度的倍数
|
void |
setAlongLineResampleLine(boolean value)
设置是否对复杂线型进行预处理后再进行沿线标注。
|
void |
setAlongLineResampleSmooth(boolean value)
设置是否沿线标注重采样,即对于高密集点的线段做重采样和光滑处理,然后再沿线标注
|
void |
setAlongLineResampleTolerance(double value)
设置沿线标注重采样的容限值,需要开启重采样才能有效:
ThemeLabel.setAlongLineResampleLine(boolean) |
void |
setAlongLineSelfOverlap(boolean value)
设置沿线标签是否开启显示自压盖对象
|
void |
setAlongLineSmoothness(int value)
设置沿线标注重采样的光滑系数,需要开启重采样才能有效:
ThemeLabel.setAlongLineResampleLine(boolean) |
void |
setAlongLineSpaceRatio(double value)
设置沿线文本间隔比率,该方法只对沿线标注起作用。
|
void |
setAlongLineTextFollowLine(boolean value)
设置沿线标注时文本是否随线方向保持一致。
|
void |
setAlongLineWordAngleRange(int value)
设置沿线标注中字与字或者字母与字母间相对角度的容限值,单位为:度。
|
void |
setAngleFixed(boolean value)
当沿线显示文本时,是否将文本角度固定。
|
void |
setAutoAdjustRegionLabel(boolean value)
设置是否自动根据面对象的宽度和高度竖排标签,如果宽度大于高度,就横排标签,否则就竖排。
|
void |
setBackShape(LabelBackShape value)
设置标签专题图中的标签背景的形状类型。
|
void |
setBackStyle(GeoStyle style)
设置标签专题图中的标签背景风格。
|
void |
setDraftLinePositionMode(DraftLinePositionMode value)
设置牵引线的连接锚点。
|
void |
setDraftLineTypeMode(DraftLineTypeMode value)
设置牵引线类型。
|
void |
setDrawBackShadow(boolean value)
设置是否显示标签阴影
|
void |
setDrawTextInCenterLine(boolean value) |
void |
setExplodeXExpression(String value)
设置一个字段,该字段为数值型字段,字段值控制文本的在水平方向的偏移距离,数值单位为地理坐标或者逻辑坐标(0.1毫米),由方法ThemeLabel.setOffsetFixed(boolean value)设置的值决定,该方法传入的值为true,表示使用逻辑坐标,为false表示使用地理坐标。
|
void |
setExplodeYExpression(String value)
设置一个字段,该字段为数值型字段,字段值控制文本的在垂直方向的偏移距离,数值单位为地理坐标或者逻辑坐标(0.1毫米),由方法ThemeLabel.setOffsetFixed(boolean value)设置的值决定,该方法传入的值为true,表示使用逻辑坐标,为false表示使用地理坐标。
|
void |
setFlowEnabled(boolean value)
设置是否流动显示标签。
|
void |
setIsDisplayByDomain(boolean value)
设置是否根据值域显示。
|
void |
setIsOnlyDrawWithinRegionText(boolean value)
设置是否只绘制面内标签
|
void |
setIsShowTextInRegionThrend(boolean value)
设置是否面标签沿面趋势方向显示
|
void |
setLabelAngleExpression(String value)
设置一个字段,该字段为数值型字段,字段值控制文本的旋转角度。
|
void |
setLabelColorExpression(String value)
设置一个字段,该字段为数值型字段,控制文字颜色,指定字段后,标签的文字颜色将从对应记录的该字段值中读取。
|
void |
setLabelCoverLine(boolean value)
设置是否标签掩膜。
|
void |
setLabelExpression(String value)
设置标注字段表达式。
|
void |
setLabelFontTypeExpression(String value)
设置一个字段,该字段值为字体名称,如:微软雅黑、宋体,控制标签专题图中标签文本的字体样式。
|
void |
setLabelRepeatInterval(double value)
设置在沿线标注时循环标注的间隔。
|
void |
setLabels(LabelMatrix labelMatrix)
设置标签专题图中的矩阵标签。
|
void |
setLabelSizeExpression(String value)
设置一个字段,该字段为数值型字段,字段值控制文字字高,数值单位为毫米。
|
void |
setLeaderLineDisplayed(boolean value)
设置是否显示标签和它标注的对象之间的牵引线。
|
void |
setLeaderLineStyle(GeoStyle style)
设置标签与其标注对象之间牵引线的风格。
|
void |
setMaxLabelLength(int value)
设置标签在每一行显示的最大长度。
|
void |
setMaxTextHeight(int value)
设置标签中文本的最大高度。
|
void |
setMaxTextWidth(int value)
设置标签中文本的最大宽度。
|
void |
setMinTextHeight(int value)
设置标签中文本的最小高度。
|
void |
setMinTextWidth(int value)
设置标签中文本的最小宽度。
|
void |
setNumericPrecision(int value)
设置标签中数字的精度。
|
void |
setOffsetFixed(boolean value)
设置当前标签专题图是否固定标记文本的偏移量。
|
void |
setOffsetX(String value)
设置标签专题图中标记文本相对于要素内点的水平偏移量。
|
void |
setOffsetY(String value)
设置标签专题图中标记文本相对于要素内点的垂直偏移量。
|
void |
setOnTop(boolean value)
设置标签专题图图层是否显示在最上层。
|
void |
setOptimizeMutilineAlignment(boolean value)
设置当开启标签文本自动避让后,是否自动优化多行文本的排版,使其与被标注的点对象在当前位置关系下更加美观整齐,true表示优化;false表示不进行优化处理。
|
void |
setOverlapAvoided(boolean value)
是否允许以文本避让方式显示文本。
|
void |
setOverlapeAvoidMode(AvoidMode value)
设置标签专题图中标签文本的避让方式。
|
void |
setOverLengthMode(OverLengthLabelMode value)
设置超长标签的处理方式。
|
void |
setRangeExpression(String value)
设置分段字段表达式。
|
void |
setRarefyPoints(boolean value)
设置显示点标签专题图时,是否自动抽稀点,以节省绘制时间。
|
void |
setRarefyPointsRadius(double value)
设置自动抽稀点的容限,逻辑坐标,单位为0.1mm。
|
void |
setRarefyThreshold(int value)
设置自动抽稀点的阈值。
|
void |
setRepeatedLabelAvoided(boolean value)
设置是否避免地图重复标注。
|
void |
setRepeatIntervalFixed(boolean value)
设置循环标注间隔是否固定。
|
void |
setShadowColor(Color value)
设置边线的颜色
|
void |
setShadowOffsetRatioX(double value)
设置阴影的水平偏移量
|
void |
setShadowOffsetRatioY(double value)
设置阴影的垂直偏移量
|
void |
setSmallGeometryLabeled(boolean value)
当标签的长度大于被标注对象本身的长度时,设置是否显示该标签。
|
void |
setSplitSeparator(char value)
设置用于标签文本换行的换行符,可以为:“/”、“;”、空格等。
|
void |
setTextExpression(boolean value)
设置是否支持文本表达式,即上下标功能。
|
void |
setTextExtentInflation(Size2D value)
设置标签中文本在 X,Y 正方向上的缓冲范围。
|
void |
setTextSpaceing(double value)
已过时。
|
void |
setTextSpacing(double value)
设置文本的间距,以字高为单位。
|
void |
setUniformMixedStyle(MixedTextStyle value)
设置标签专题图统一的文本复合风格。
|
void |
setUniformMixedSytle(MixedTextStyle value)
已过时。
|
void |
setUniformStyle(TextStyle style)
设置统一文本风格。
|
void |
setUniqueExpression(String value)
设置单值字段表达式,表达式可以为一个字段,也可以为多个字段构成的表达式,通过该表达式的值控制对象标签的风格,表达式值相同的对象标签使用相同的风格进行显示。
|
void |
setVertical(boolean value)
设置是否使用竖排标签。
|
boolean |
split(int index,
double splitValue,
TextStyle style1,
String caption1,
TextStyle style2,
String caption2)
已过时。
|
String |
toString()
输出一个字符串来表达当前标签专题图对象
|
getMemoryData, getThemeWeight, getType, setMemoryData, setThemeWeight, toXML
public ThemeLabel()
ThemeLabel
对象。public ThemeLabel(ThemeLabel themeLabel)
ThemeLabel
对象构造一个与其完全相同的新对象。themeLabel
- 给定的 ThemeLabel
对象。@Deprecated public ThemeLabelItem getItem(int index)
ThemeLabelItem
类。index
- 指定标签专题图子项的序号。ThemeLabelItem
@Deprecated public int getCount()
public GeoStyle getBackStyle()
public void setBackStyle(GeoStyle style)
style
- 指定标签背景风格。public LabelBackShape getBackShape()
LabelBackShape
。LabelBackShape
LabelBackShape.NONE
,即空背景。public void setBackShape(LabelBackShape value)
LabelBackShape
。value
- 指定标签背景的形状类型。LabelBackShape
public int getMaxLabelLength()
如果输入的字符超过设置的最大长度,可以采用两种方式处理,一种是以换行的方式进行显示,这种方式自动调整字间距,尽量使每一行的字符个数相近,故每一行显示的字符个数小于等于设置的最大长度; 另一种是以省略号方式进行显示,当输入的字符大于设置的最大长度时,多出的字符将以省略号的方式进行显示。
public void setMaxLabelLength(int value)
value
- 指定每一行显示的最大长度。public OverLengthLabelMode getOverLengthMode()
OverLengthLabelMode.NONE
,即对超长标签不进行处理。public void setOverLengthMode(OverLengthLabelMode value)
value
- 指定超长标签的处理方式。public boolean isFlowEnabled()
注:流动显示只适合于线和面要素的标注
。 该方法与Map.setDisableDynamicEffect()
方法相互冲突,即 setDisableDynamicEffect(true)时,即使该方法设置为true,也无法流动显示标签。
public void setFlowEnabled(boolean value)
注:流动显示只适合于线和面要素的标注
。value
- 指定是否流动显示标签。public boolean isSmallGeometryLabeled()
在标签的长度大于线或者面对象本身的长度时,如果选择继续标注,则标签文字会叠加在一起显示,为了清楚完整的显示该标签,可以采用换行模式来显示标签,但必须保证每行的长度小于对象本身的长度。
public void setSmallGeometryLabeled(boolean value)
在标签的长度大于线或者面对象本身的长度时,如果选择继续标注,则标签文字会叠加在一起显示,为了清楚完整的显示该标签,可以采用换行模式来显示标签,但必须保证每行的长度小于对象本身的长度。
value
- 一个布尔值指定是否显示长度大于被标注对象本身长度的标签。public AlongLineDirection getAlongLineDirection()
AlongLineDirection.ALONG_LINE_NORMAL
。public void setAlongLineDirection(AlongLineDirection value)
value
- 标签沿线标注方向。public AlongLineCulture getAlongLineCulture()
public void setAlongLineCulture(AlongLineCulture value)
value
- 沿线标注使用的语言文化习惯。public boolean isAlongLine()
注:沿线标注属性只适用于线数据集专题图。
public void setAlongLine(boolean value)
注:沿线标注属性只适用于线数据集专题图。
value
- 指定是否沿线显示文本。public boolean isAngleFixed()
public void setAngleFixed(boolean value)
value
- 指定当沿线显示文本时,是否将文本角度固定。public boolean isOverlapAvoided()
注:在标签重叠度很大的情况下,即使使用自动避让功能,可能也无法完全避免标签重叠现象。
当两个相互重叠的标签同时设置了文本避让时,ID 靠前的标签文本具有优先绘制权。
在制作标签专题图时,如果对同一空间位置上的重复点制作标签专题图,可以关闭自动避让功能来保证性能。
public void setOverlapAvoided(boolean value)
该方法与Map.setDisableDynamicEffect()
方法相互冲突,即 setDisableDynamicEffect(true)时,即使该方法设置为true,标签专题图中文本也无法自动避让。
注:在标签重叠度很大的情况下,即使使用自动避让功能,可能也无法完全避免标签重叠现象。
当两个相互重叠的标签同时设置了文本避让时,ID 靠前的标签文本具有优先绘制权。
value
- 指定是否自动避免文本叠盖。public boolean isRepeatIntervalFixed()
public void setRepeatIntervalFixed(boolean value)
value
- 一个布尔值指定循环标注间隔是否固定。public double getLabelRepeatInterval()
public void setLabelRepeatInterval(double value)
value
- 指定在沿线标注时循环标注的间隔。public String getOffsetX()
该偏移量的值为一个常量值或者字段表达式所表示的值,即如果字段表达式为 SmID,其中 SmID=2,那么偏移量的值为 2。
public void setOffsetX(String value)
该偏移量的值为一个常量值或者字段表达式所表示的值,即如果字段表达式为 SmID,其中 SmID=2,那么偏移量的值为 2。
value
- 指定标签专题图中标记文本相对于要素内点的水平偏移量。public String getOffsetY()
该偏移量的值为一个常量值或者字段表达式所表示的值,即如果字段表达式为 SmID,其中 SmID=2,那么偏移量的值为2。
public void setOffsetY(String value)
该偏移量的值为一个常量值或者字段表达式所表示的值,即如果字段表达式为 SmID,其中 SmID=2,那么偏移量的值为 2。
value
- 指定标签专题图中标记文本相对于要素内点的垂直偏移量。public GeoStyle getLeaderLineStyle()
public void setLeaderLineStyle(GeoStyle style)
style
- 指定标签与其标注对象之间牵引线的风格。public boolean isLeaderLineDisplayed()
public void setLeaderLineDisplayed(boolean value)
value
- 指定是否显示标签和它标注的对象之间的牵引线。public String getRangeExpression()
用户根据该方法的返回值来比较其从开始到结束的每一个分段值,以确定采用什么风格来显示给定标注字段表达式(getLabelExpression()
或 setLabelExpression()
)相应的标注文本。
public void setRangeExpression(String value)
用户根据该方法的设置值来比较其从开始到结束的每一个分段值,以确定采用什么风格来显示给定标注字段表达式(getLabelExpression()
或 setLabelExpression()
)相应的标注文本。
value
- 指定分段字段表达式。public String getUniqueExpression()
public void setUniqueExpression(String value)
value
- 单值字段表达式,表达式可以为一个字段,也可以为多个字段构成的表达式。public String getLabelExpression()
public void setLabelExpression(String value)
value
- 指定标注字段表达式。public String getExplodeXExpression()
public void setExplodeXExpression(String value)
value
- 一个字段,该字段控制文本的在水平方向的偏移距离。
标签偏移效果由偏移量(X、Y方向)以及文本对齐方式共同决定,偏移设置需要提供水平(X)、垂直(Y)偏移量。对于偏移可以使用地理坐标或者逻辑坐标。
注:如果字段值为无值,将按照ThemeLabel.setOffsetX()方法设置的值进行水平偏移。
关于标签旋转角度和偏移,如果两者同时设置后,先对标签进行角度旋转,再进行偏移。
setLabelColorExpression()
。public String getExplodeYExpression()
public void setExplodeYExpression(String value)
value
- 一个字段,该字段控制文本的在垂直方向的偏移距离。
标签偏移效果由偏移量(X、Y方向)以及文本对齐方式共同决定,偏移设置需要提供水平(X)、垂直(Y)偏移量。对于偏移可以使用地理坐标或者逻辑坐标。
注:如果字段值为无值,将按照ThemeLabel.setOffsetY()方法设置的值进行垂直偏移。
关于标签旋转角度和偏移,如果两者同时设置后,先对标签进行角度旋转,再进行偏移。
setLabelColorExpression()
。public String getLabelSizeExpression()
public void setLabelSizeExpression(String value)
value
- 一个字段,该字段控制文字字高。
通过指定字段的方式控制标签的字体、文字大小、文字旋转角度、文字颜色、标签偏移量,只对点标签专题图有效。
注:如果字段值为无值,将按照当前标签专题图所设置的字体大小的具体数值进行显示,如:ThemeLabel.setUniformStyle()方法所设置的文本风格中的字体大小。
setLabelColorExpression()
。public String getLabelFontTypeExpression()
public void setLabelFontTypeExpression(String value)
value
- 一个字段,该字段控制标签专题图中标签文本的字体样式。
通过指定字段的方式控制标签的字体、文字大小、文字旋转角度、文字颜色、标签偏移量,只对点标签专题图有效。
注:如果字段值指定的字体在当前系统中不存在,或者字段值为无值,将按照当前标签专题图所设置的具体字体进行显示,如:ThemeLabel.setUniformStyle()方法所设置的文本风格中的字体。
setLabelColorExpression()
。public String getLabelColorExpression()
public void setLabelColorExpression(String value)
value
- 一个字段,该字段为数值型字段,控制文字颜色。
颜色值支持十六进制表达下为0xRRGGBB,即按照RGB排列。
通过指定字段的方式控制标签的字体、文字大小、文字旋转角度、文字颜色、标签偏移量,只对点标签专题图有效。
注:如果字段值为无值,将按照当前标签专题图所设置的字体颜色的具体数值进行显示,如:ThemeLabel.setUniformStyle()方法所设置的文本颜色。
//1. 新建一个标签专题图对象,用于制作示例中的点标签专题图。 ThemeLabel themeLabel = new ThemeLabel(); //2. 设置用于标注的字段。 themeLabel.setLabelExpression("ZJNR"); //3. 设置标签文本的对齐方式为中心点对齐。 themeLabel. getUniformStyle. setAlignment(TextAlignment. MiddleCenter); //4. 指定一个字段,该字段值为字体名称用来控制标签文字的字体。 themeLabel.setLabelFontTypeExpression("Font"); //5. 指定一个字段,该字段值为字高,用来控制标签文字的大小。 themeLabel.setLabelSizeExpression("FontSize"); //6. 指定一个字段,该字段值为颜色值,用来控制标签文字的颜色。 themeLabel.setLabelColorExpression( " FontColor"); //7. 指定一个字段,该字段值为旋转角度值,用来控制标签文字的旋转。 themeLabel.setLabelAngleExpression("FontAngle"); //8. 指定一个字段,该字段值为偏移距离,用来控制标签文字在水平方向的偏移量。 themeLabel.setExplodeXExpression("OffsetX"); //9. 指定一个字段,该字段值为偏移距离,用来控制标签文字在垂直方向的偏移量。 themeLabel.setExplodeYExpression("OffsetY"); //10. 将自定义标签专题图风格应用到示例中的点数据集,并添加到地图窗口中。 Layer layerTheme = mapControl.getMap().getLayers().add(ptDataset, themeLabel, true);
public String getLabelAngleExpression()
public void setLabelAngleExpression(String value)
value
- 一个字段,该字段为数值型字段,字段值控制文本的旋转角度。
数值单位为度。角度旋转以逆时针方向为正方向,对应数值为正值;角度值支持负值,表示沿顺时针方向旋转。
注:如果字段值为无值,将按照当前标签专题图所设置的具体角度数值进行显示,如:ThemeLabel.setUniformStyle()方法所设置的文字旋转角度。
关于标签旋转角度和偏移,如果两者同时设置后,先对标签进行角度旋转,再进行偏移。
通过指定字段的方式控制标签的字体、文字大小、文字旋转角度、文字颜色、标签偏移量,只对点标签专题图有效。
setLabelColorExpression()
。public TextStyle getUniformStyle()
setUniformStyle()
将不起作用。public void setUniformStyle(TextStyle style)
setUniformStyle()
将不起作用。style
- 指定统一文本风格。@Deprecated public boolean addToHead(ThemeLabelItem item)
item
- 需要添加的子项。@Deprecated public boolean addToTail(ThemeLabelItem item)
item
- 需要添加的标签专题图子项。public boolean isOptimizeMutilineAlignment()
该属性的设置对点标签专题图有效。
public void setOptimizeMutilineAlignment(boolean value)
value
- 一个布尔值,当开启标签文本自动避让后,是否自动优化多行文本的排版,使其与被标注的点对象在当前位置关系下更加美观整齐,true表示优化;false表示不进行优化处理。@Deprecated public boolean addToHead(ThemeLabelItem item, boolean normalize)
item
- 需要添加的子项。normalize
- 表示是否规整化,normalize 为 true时, item 值不合法,则进行规整,normalize 为 fasle时, item 值不合法则抛异常。@Deprecated public boolean addToTail(ThemeLabelItem item, boolean normalize)
item
- 需要添加的标签专题图子项。normalize
- 表示是否规整化,normalize 为 true时, item 值不合法,则进行规整,normalize 为 fasle时, item 值不合法则抛异常。@Deprecated public boolean split(int index, double splitValue, TextStyle style1, String caption1, TextStyle style2, String caption2)
index
- 指定的标签专题图子项的序号。splitValue
- 指定的拆分分段值。style1
- 被拆分的两个标签专题图子项中的一个标签专题图子项的风格。caption1
- 被拆分的两个标签专题图子项中的一个标签专题图子项的名称。style2
- 被拆分的两个标签专题图子项中的另一个标签专题图子项的风格。caption2
- 被拆分的两个标签专题图子项中的另一个标签专题图子项的名称。@Deprecated public boolean merge(int index, int count, TextStyle style, String caption)
index
- 指定的标签专题图子项的序号,并以此序号为起始。count
- 要合并的标签专题图子项个数,即从指定的序号开始计算。style
- 合并后的标签专题图子项的风格。caption
- 合并后的标签专题图子项名称。@Deprecated public void clear()
public static ThemeLabel makeDefault(DatasetVector dataset, String rangeExpression, RangeMode rangeMode, double rangeParameter)
dataset
- 矢量数据集。rangeExpression
- 分段字段表达式。rangeMode
- 分段模式。包括等距离分段法,平方根分段法,标准差分段法,对数分段法,等计数分段法,以及自定义距离法。rangeParameter
- 分段参数。当分段模式为等距离分段法,平方根分段法其中一种模式时,该参数为分段值;当分段模式为标准差分段法的时候,该参数不起作用;当分段模式为自定义距离时,该参数表示自定义距离。ThemeLabel
的对象实例。public static ThemeLabel makeDefault(DatasetVector dataset, String rangeExpression, RangeMode rangeMode, double rangeParameter, ColorGradientType colorGradientType)
dataset
- 矢量数据集。rangeExpression
- 分段字段表达式。rangeMode
- 分段模式。包括等距离分段法,平方根分段法,标准差分段法,对数分段法,等计数分段法,以及自定义距离法。rangeParameter
- 分段参数。当分段模式为等距离分段法,平方根分段法其中一种时,该参数为分段值;当分段模式为标准差分段法的时候,该参数不起作用;当分段模式为自定义距离时,该参数表示自定义距离。colorGradientType
- 颜色渐变模式。ThemeLabel
的对象实例。public static ThemeLabel makeDefault(DatasetVector dataset, String rangeExpression, RangeMode rangeMode, double rangeParameter, ColorGradientType colorGradientType, JoinItems joinItems)
注意:通过连接外部表的方式制作专题图时,对于 UDB 数据源,连接类型不支持内连接,即不支持 JoinType.INNERJOIN
连接类型。
dataset
- 矢量数据集。rangeExpression
- 分段字段表达式。rangeMode
- 分段模式。包括等距离分段法,平方根分段法,标准差分段法,对数分段法,等计数分段法,以及自定义距离法。rangeParameter
- 分段参数。当分段模式为等距离分段法,平方根分段法其中一种时,该参数为分段值;当分段模式为标准差分段法的时候,该参数不起作用;当分段模式为自定义距离时,该参数表示自定义距离。colorGradientType
- 颜色渐变模式。joinItems
- 外部表连接项。如果要将制作的专题图添加到地图中,作为地图中的图层,需要对该专题图图层进行以下设置,通过该专题图图层对应的 Layer 对象的 setDisplayFilter 方法,该方法中的 queryParameter 参数为 QueryParameter 对象,这里需要通过 QueryParameter 对象的 setJoinItems 方法,将专题的外部表连接项(即当前方法的 joinItems参数)指定给该专题图图层对应的 Layer 对象,这样所做的专题图在地图中显示才正确。
ThemeLabel
的对象实例。@Deprecated public int indexOf(double value)
value
- 给定的分段字段值。public void reverseStyle()
@Deprecated public MixedTextStyle getUniformMixedSytle()
public MixedTextStyle getUniformMixedStyle()
在图层绘制时,各种绘制风格的优先级从高到低为:ThemeLabel.getUniformMixedStyle()
,ThemeLabelItem.getStyle()
,ThemeLabel.getUniformStyle()
,即:当 ThemeLabel.getUniformMixedStyle()
与 ThemeLabelItem.getStyle()
或 ThemeLabel.getUniformStyle()
不一致时,以 ThemeLabel.getUniformMixedStyle()
为准。
@Deprecated public void setUniformMixedSytle(MixedTextStyle value)
public void setUniformMixedStyle(MixedTextStyle value)
在图层绘制时,各种绘制风格的优先级从高到低为:ThemeLabel.getUniformMixedStyle()
,ThemeLabelItem.getStyle()
,ThemeLabel.getUniformStyle()
,即:当 ThemeLabel.getUniformMixedStyle()
与 ThemeLabelItem.getStyle()
或 ThemeLabel.getUniformStyle()
不一致时,以 ThemeLabel.getUniformMixedStyle()
为准。
value
- 标签专题图的文本复合风格。public LabelMatrix getLabels()
public void setLabels(LabelMatrix labelMatrix)
labelMatrix
- 标签专题图中的矩阵标签。public ThemeLabel getParent()
ThemeLabel
对象。public int getNumericPrecision()
public void setNumericPrecision(int value)
value
- 标签中数字的精度。public int getMaxTextHeight()
该方法在标签不固定大小时有效,当放大后的文本高度超过最大高度之后就不再放大。高度单位为 0.1 毫米。
public void setMaxTextHeight(int value)
该方法在标签不固定大小时有效,当放大后的文本高度超过最大高度之后就不再放大。高度单位为 0.1 毫米。
value
- 标签中文本的最大高度。public int getMinTextHeight()
public void setMinTextHeight(int value)
value
- 标签中文本的最小高度。public int getMaxTextWidth()
public void setMaxTextWidth(int value)
value
- 标签中文本的最大宽度。public int getMinTextWidth()
public void setMinTextWidth(int value)
value
- 标签中文本的最小宽度。public Size2D getTextExtentInflation()
public void setTextExtentInflation(Size2D value)
value
- 标签中文本在 X,Y 正方向上的缓冲范围。public boolean isRepeatedLabelAvoided()
对于代表北京地铁四号线的线数据,假如由4条子线段组成,当以名称字段(字段值为:地铁四号线)做为专题变量制作标签专题图且设置沿线标注(即 setAlongLine(true)
)时,如果不选择避免地图重复标注,则显示效果如左图,如果选择了避免地图重复标注,系统会将这条折线的四个子线部分看成一条线来进行标注,其显示效果如下图所示。
public void setRepeatedLabelAvoided(boolean value)
对于代表北京地铁四号线的线数据,假如由4条子线段组成,当以名称字段(字段值为:地铁四号线)做为专题变量制作标签专题图且设置沿线标注(即 setAlongLine(true)
)时,如果不选择避免地图重复标注,则显示效果如左图,如果选择了避免地图重复标注,系统会将这条折线的四个子线部分看成一条线来进行标注,其显示效果如右图所示。
value
- 一个布尔值指定是否避免地图重复标注。public boolean isOffsetFixed()
public void setOffsetFixed(boolean value)
value
- 一个布尔值指定是否固定标记文本的偏移量。public boolean isAutoAdjustRegionLabel()
当设置该属性时,忽略IsVertical属性的设置。
不支持矩阵标签、复合风格的标签和沿线标注。
不支持有旋转角度的文本标签,即文本标签的旋转角度大于0时,该属性的设置无效。
public void setAutoAdjustRegionLabel(boolean value)
当设置该属性时,忽略IsVertical属性的设置。
不支持矩阵标签和沿线标注。
不支持有旋转角度的文本标签,即文本标签的旋转角度大于0时,该属性的设置无效。
value
- 一个布尔值,指定是否自动根据面对象的宽度和高度竖排标签,true,表示文字自动根据面对象的宽度和高度竖排标签,false,表示文字不自动根据面对象的宽度和高度竖排标签。public boolean isVertical()
不支持矩阵标签、复合风格的标签和沿线标注。
不支持有旋转角度的文本标签,即文本标签的旋转角度大于0时,该属性的设置无效。
public void setVertical(boolean value)
不支持矩阵标签和沿线标注。
不支持有旋转角度的文本标签,即文本标签的旋转角度大于0时,该属性的设置无效。
value
- 一个布尔值,指定是否使用竖排标签,true,表示文字竖排,false,表示文字不竖排。@Deprecated public double getTextSpaceing()
public double getTextSpacing()
不支持矩阵标签和沿线标注。
不支持有旋转角度的文本标签,即文本标签的旋转角度大于0时,该属性的设置无效。
当地图有旋转角度时,不支持设置文本的间距。
@Deprecated public void setTextSpaceing(double value)
public void setTextSpacing(double value)
不支持矩阵标签和沿线标注。
不支持有旋转角度的文本标签,即文本标签的旋转角度大于0时,该属性的设置无效。
当地图有旋转角度时,不支持设置文本的间距。
value
- 文本的间距。public void dispose()
@Deprecated public boolean isAllDirectionsOverlapedAvoided()
通常文本避让是以全方向进行的,虽然避让比较合理,但会影响显示效率;如果提高显示效率,请设置 setAllDirectionsOverlapedAvoided()
方法为 false。
全方向即指以文本外边框和基准线而形成的12个方向,如下图所示;
四方向是指以文本外边矩形框的四个角点方向,如图下图所示。
@Deprecated public boolean isAllDirectionsOverlappedAvoided()
备注说明:在SuperMap GIS 8C 版本以前,true表示以八方向进行文本避让;false表示以四两方向进行文本避让。
public AvoidMode getOverlapeAvoidMode()
@Deprecated public void setAllDirectionsOverlapedAvoided(boolean value)
通常文本避让是以全方向进行的,虽然避让比较合理,但会影响显示效率;如果提高显示效率,请设置 setAllDirectionsOverlapedAvoided()
方法为 false。
value
- 一个布尔值指定是否以全方向文本避让。@Deprecated public void setAllDirectionsOverlappedAvoided(boolean value)
四方向避让是选择文本外边矩形框的四个角点方向做为避让方向。两方向避让方向与标签的对齐方式有关,将选择对齐方式的对称方向进行避让,例如:如果对齐为左中点,那么避让方向为右中点。
备注说明:在SuperMap GIS 8C 版本以前,true表示以八方向进行文本避让;false表示以四方向进行文本避让。
value
- 一个布尔值,指示是以四方向还是两方向进行文本避让,true表示以两方向进行文本避让;false表示以四方向进行文本避让。public void setOverlapeAvoidMode(AvoidMode value)
value
- 标签专题图中标签文本的避让方式。public double getAlongLineSpaceRatio()
该值为字高的倍数。
注意:
1.该值大于1就以线中心为准,按指定间隔往两边标注;
2.该值在0到1之间(包含1)就在线中心按照沿线角度标注单个文本。
3.该值小于等于0采用默认的沿线标注模式。
public void setAlongLineSpaceRatio(double value)
该值为字高的倍数。
注意:
1.该值大于 1 就以线中心为准,按指定间隔往两边标注;
2.该值在 0 到 1 之间(包含1)就在线中心按照沿线角度标注单个文本。
3.该值小于等于 0 采用默认的沿线标注模式。
value
- 沿线文本间隔比率。public boolean fromXML(String xml)
public RangeMode getRangeMode()
public double getCustomInterval()
public boolean isTextExpression()
public void setTextExpression(boolean value)
当选择字段为文本类型,文本中含有上下标,并且是根据特定的标准时(文本表达式请参考下面说明),需要设置此属性,以便正确显示文本(如下右图)。下图为分别设置此属性值为false和true时的效果对比:
注意:
下图为分别设置此属性值为false和true时的效果对比:
下图为分别设置此属性值为flse和true时的效果对比。
下图为分别设置此属性值为false和true时的效果对比:
value
- 一个布尔值,指定是否支持文本表达式,即上下标功能,true,表示支持文本表达式,false,表示不支持。public char getSplitSeparator()
如果通过setOverLengthMode接口设置了NEWLINE值,即换行方式,并且通过setSplitSeparator接口同时设置了换行符,那么,标签文本将按照特殊字符指定的位置进行换行显示。
当标签专题图使用换行的方式进行超长文本处理时,可以通过给定特殊字符的方式控制文本的换行位置,这就需要您提前做好数据准备,在用于标注的字段中,在字段值需要换行的位置加入您设定的换行符,如“/”、“;”、空格,当使用特殊字符换行时,将在出现指定的特殊字符处进行换行,并且指定的特殊字符不显示。
public void setSplitSeparator(char value)
如果通过setOverLengthMode接口设置了NEWLINE值,即换行方式,并且通过setSplitSeparator接口同时设置了换行符,那么,标签文本将按照特殊字符指定的位置进行换行显示。
当标签专题图使用换行的方式进行超长文本处理时,可以通过给定特殊字符的方式控制文本的换行位置,这就需要您提前做好数据准备,在用于标注的字段中,在字段值需要换行的位置加入您设定的换行符,如“/”、“;”、空格,当使用特殊字符换行时,将在出现指定的特殊字符处进行换行,并且指定的特殊字符不显示。
value
- 用于标签文本换行的换行符。public ThemeLabelUniqueItems getUniqueItems()
public ThemeLabelRangeItems getRangeItems()
public boolean isOnTop()
一般制图时,都会把地图中标签专题图图层放在所有非标签专题图图层的最前面,但当使用了图层分组时,分组内的标签专题图层有可能被位于上层图层分组中的其他普通图层掩盖,为了即保持图层分组状态,又要使标签不被掩盖,可以使用setOnTop方法传入true值,标签专题图不论当前在地图中的位置,都将显示在最前面;如果有多个标签专题图图层都通过setOnTop方法传入true值,那么他们之间显示顺序,由他们所在地图的图层顺序决定。
public void setOnTop(boolean value)
一般制图时,都会把地图中标签专题图图层放在所有非标签专题图图层的最前面,但当使用了图层分组时,分组内的标签专题图层有可能被位于上层图层分组中的其他普通图层掩盖,为了即保持图层分组状态,又要使标签不被掩盖,可以使用setOnTop方法传入true值,标签专题图不论当前在地图中的位置,都将显示在最前面;如果有多个标签专题图图层都通过setOnTop方法传入true值,那么他们之间显示顺序,由他们所在地图的图层顺序决定。
value
- 标签专题图图层是否显示在最上层;true,表示显示在最上层,这里的最上层是指所有非标签专题图图层的上层;否则为false,将按照原来的图层显示顺序显示。public static ThemeLabel makeDefault(String[] values, String uniqueExpression, ColorGradientType colorGradientType, JoinItems joinItems)
values
- 单值uniqueExpression
- 指定一个字段或者多个字段组成的表达式。该表达式的值用来对对象标签进行分类,值相同的对象标签为一类使用相同的风格显示,不同类的标签使用不同风格显示。colorGradientType
- 颜色渐变模式。joinItems
- 外部表连接项。IllegalStateException
- 当前对象已被释放public static ThemeLabel makeDefault(DatasetVector dataset, String uniqueExpression, ColorGradientType colorGradientType, JoinItems joinItems)
dataset
- 用于制作单值标签专题图的矢量数据集。uniqueExpression
- 指定一个字段或者多个字段组成的表达式。该表达式的值用来对对象标签进行分类,值相同的对象标签为一类使用相同的风格显示,不同类的标签使用不同风格显示。colorGradientType
- 颜色渐变模式。joinItems
- 外部表连接项。public int getAlongLineWordAngleRange()
沿线标注中,中文标签与英文标签为了适应弯曲线的走势,文字或者字母会发生旋转,但是单个字或者字母始终与其当前标注点位的切线方向垂直,因此,会出现如下图所示的效果,相邻字或者字母形成一定的夹角,当线的弯曲度较大时,夹角也增大,会出现标签整体不美观的效果。因此,该接口通过一个给定的容限值,限制相邻字或者字母夹角最大值,以保证沿线标注的美观性。
夹角容限值越小,标签越紧凑,但弯度大的地方可能就无法进行标注;夹角容限值越大,弯度大的地方也能显示标注,但是沿线标注的美观性降低了。
沿线标注中字与字或者字母与字母间相对角度指的是什么?如下图所示:
public void setAlongLineWordAngleRange(int value)
沿线标注中,中文标签与英文标签为了适应弯曲线的走势,文字或者字母会发生旋转,但是单个字或者字母始终与其当前标注点位的切线方向垂直,因此,会出现如下图所示的效果,相邻字或者字母形成一定的夹角,当线的弯曲度较大时,夹角也增大,会出现标签整体不美观的效果。因此,该接口通过一个给定的容限值,限制相邻字或者字母夹角最大值,以保证沿线标注的美观性。
夹角容限值越小,标签越紧凑,但弯度大的地方可能就无法进行标注;夹角容限值越大,弯度大的地方也能显示标注,但是沿线标注的美观性降低了。
沿线标注中字与字或者字母与字母间相对角度指的是什么?如下图所示:
value
- 沿线标注中字与字或者字母与字母间相对角度的容限值,单位为:度。public boolean isAlongLineResampleSmooth()
IllegalStateException
- 当前对象已被释放public void setAlongLineResampleSmooth(boolean value)
value
- 是否沿线标注重采样IllegalStateException
- 当前对象已被释放public double getAlongLineResampleTolerance()
ThemeLabel.setAlongLineResampleLine(boolean)
IllegalStateException
- 当前对象已被释放public void setAlongLineResampleTolerance(double value)
ThemeLabel.setAlongLineResampleLine(boolean)
value
- 沿线标注重采样的容限值IllegalStateException
- 当前对象已被释放public int getAlongLineSmoothness()
ThemeLabel.setAlongLineResampleLine(boolean)
IllegalStateException
- 当前对象已被释放public void setAlongLineSmoothness(int value)
ThemeLabel.setAlongLineResampleLine(boolean)
value
- 沿线标注重采样的光滑系数IllegalStateException
- 当前对象已被释放public AlongLineDrawingMode getAlongLineDrawingMode()
public void setAlongLineDrawingMode(AlongLineDrawingMode value)
value
- 设置在沿线标注中,标签绘制所采用的策略。IllegalStateException
- 当前对象已被释放public boolean isRarefyPoints()
对于大数据量的点标签专题图,当地图比例尺比较小的时候,点分布密集,点标签的显示又需要计算避让关系,所以一般会影响显示效率,通过在小比例尺下对点进行抽稀,节约计算避让关系等的时间,提升显示效率。
public void setRarefyPoints(boolean value)
对于大数据量的点标签专题图,当地图比例尺比较小的时候,点分布密集,点标签的显示又需要计算避让关系,所以一般会影响显示效率,通过在小比例尺下对点进行抽稀,节约计算避让关系等的时间,提升显示效率。
value
- 一个布尔值,指示显示点标签专题图时,是否自动抽稀点,以节省绘制时间。true表示自动抽稀;false表示不抽稀。public double getRarefyPointsRadius()
当点标签专题图开启了自动抽稀功能,以节约绘制时间时,将根据该方法返回值所指定的容限对点进行抽稀,判断当前点与其他点的关系,以当前点为圆心,以getRarefyPointsRadius返回值为半径,在此范围内的点将被抽稀掉。
public void setRarefyPointsRadius(double value)
当点标签专题图开启了自动抽稀功能,以节约绘制时间时,将根据该方法返回值所指定的容限对点进行抽稀,判断当前点与其他点的关系,以当前点为圆心,以getRarefyPointsRadius返回值为半径,在此范围内的点将被抽稀掉。
value
- public int getRarefyThreshold()
public void setRarefyThreshold(int value)
value
- 自动抽稀点的阈值。目前使用点对象的总数(RecordsetCount)来控制,超过阈值(所设置的点对象的总数)就会触发抽稀算法。public boolean isAlongLineSelfOverlap()
IllegalStateException
- 当前对象已被释放public void setAlongLineSelfOverlap(boolean value)
value
- 是否开启显示自压盖对象IllegalStateException
- 当前对象已被释放public AlongLineLabelMode getAlongLineLabelMode()
AlongLineLabelMode
IllegalStateException
- 当前对象已被释放public void setAlongLineLabelMode(AlongLineLabelMode value)
AlongLineLabelMode
value
- 沿线标注的显示模式IllegalStateException
- 当前对象已被释放IllegalArgumentException
- 参数异常public void setIsDisplayByDomain(boolean value)
value
- 是否根据值域显示IllegalStateException
- 当前对象已被释放public boolean getIsDisplayByDomain()
IllegalStateException
- 当前对象已被释放public void setIsOnlyDrawWithinRegionText(boolean value)
value
- 是否只绘制面内标签IllegalStateException
- 当前对象已被释放public boolean isOnlyDrawWithinRegionText()
IllegalStateException
- 当前对象已被释放public void setDrawTextInCenterLine(boolean value)
public boolean isDrawTextInCenterLine()
public void setIsShowTextInRegionThrend(boolean value)
value
- 是否面标签沿面趋势方向显示IllegalStateException
- 当前对象已被释放public boolean isShowTextInRegionThrend()
IllegalStateException
- 当前对象已被释放public AlongLineAllowCondition getAlongLineAllowCondition()
AlongLineAllowCondition
IllegalStateException
- 当前对象已被释放public void setAlongLineAllowCondition(AlongLineAllowCondition value)
AlongLineAllowCondition
value
- 沿线标注允许模式IllegalStateException
- 当前对象已被释放IllegalArgumentException
- 参数异常public double getAlongLineMoreThanLineMultiple()
IllegalStateException
- 当前对象已被释放public void setAlongLineMoreThanLineMultiple(double value)
value
- 沿线标注的超长标签可超过标注线对象长度的倍数,值域范围:(1,+∞)IllegalStateException
- 当前对象已被释放IllegalArgumentException
- 参数value值超出取值范围public void setAlongLineAutoAvoid(boolean value)
value
- 一个布尔值,指示是否沿线查找合适的位置进行沿线标注。public boolean isAlongLineAutoAvoid()
public void setAlongLineResampleLine(boolean value)
value
- 一个布尔值,指示是否对复杂线型进行预处理再进行沿线标注。public boolean isAlongLineResampleLine()
public void setAlongLineTextFollowLine(boolean value)
value
- 方向是否一致IllegalStateException
- 当前对象已经释放时,再次调用该接口时抛出 IllegalStateException 异常。public boolean isAlongLineTextFollowLine()
IllegalStateException
- 当前对象已经释放时,再次调用该接口时抛出 IllegalStateException 异常。public void setDraftLinePositionMode(DraftLinePositionMode value)
DraftLinePositionMode
value
- 牵引线的连接锚点IllegalStateException
- 当前对象已被释放public DraftLinePositionMode getDraftLinePositionMode()
DraftLinePositionMode
IllegalStateException
- 当前对象已被释放public void setDrawBackShadow(boolean value)
value
- 是否显示标签阴影IllegalStateException
- 当前对象已被释放public boolean isDrawBackShadow()
IllegalStateException
- 当前对象已被释放public void setLabelCoverLine(boolean value)
value
- 是否标签掩膜IllegalStateException
- 当前对象已被释放public boolean isLabelCoverLine()
IllegalStateException
- 当前对象已被释放public double getShadowOffsetRatioX()
public void setShadowOffsetRatioX(double value)
value
- doublepublic double getShadowOffsetRatioY()
public void setShadowOffsetRatioY(double value)
value
- doublepublic Color getShadowColor()
public void setShadowColor(Color value)
value
- Colorpublic void setDraftLineTypeMode(DraftLineTypeMode value)
DraftLineTypeMode
value
- 牵引线类型IllegalStateException
- 当前对象已被释放public DraftLineTypeMode getDraftLineTypeMode()
DraftLineTypeMode
IllegalStateException
- 当前对象已被释放Copyright © 2021–2024 SuperMap. All rights reserved.