类 ThemeUnique
- java.lang.Object
-
- com.supermap.data.InternalHandle
-
- com.supermap.data.InternalHandleDisposable
-
- com.supermap.mapping.Theme
-
- com.supermap.mapping.ThemeUnique
-
- 所有已实现的接口:
- IDisposable
public class ThemeUnique extends Theme
单值专题图类。将字段或表达式的值相同的要素采用相同的风格来显示,从而用来区分不同的类别。例如,在表示土地的面数据中表示土地利用类型的字段中有草地,林地,居民地,耕地等值,使用单值专题图进行渲染时,每种类型的土地利用类型被赋予一种颜色或填充风格,从而可以看出每种类型的土地利用的分布区域和范围。可用于地质图、地貌图、植被图、土地利用图、政治行政区划图、自然区划图、经济区划图等。单值专题图着重表示现象质的差别,一般不表示数量的特征。尤其是有交叉或重叠现象时,此类不推荐使用,例如:民族分布区等。
注意:如果通过连接(Join)或关联(Link)的方式与一个外部表建立了联系,当专题图的专题变量用到外部表的字段时,在显示专题图时,需要调用
Layer.getDisplayFilter()或Layer.setDisplayFilter()方法,否则专题图将出图失败。- 示范代码:
- 以下代码示例了如何创建一个单值专题图:
public void themeUniqueTest() { // 打开数据源,获得点数据集ProvinceCapital_P Workspace workspace = new Workspace(); String path = "G:/World/World.udb"; DatasourceConnectionInfo datasourceConnectionInfo = new DatasourceConnectionInfo(path, "World", ""); Datasource datasource = workspace.getDatasources().open(datasourceConnectionInfo); DatasetVector datasetVector = (DatasetVector) datasource.getDatasets().get("ProvinceCapital_P"); // 构造单值专题图并进行单值子项的风格设置 ThemeUnique theme = ThemeUnique.makeDefault(datasetVector, "SmID"); for (int i = 0; i < theme.getCount(); i++) { ThemeUniqueItem item = theme.getItem(i); item.getStyle().setMarkerSymbolID(0); item.getStyle().setMarkerSize(new Size2D(4, 4)); Color color = new Color(255,255,100 + i); item.getStyle().setLineColor(color); } // 将得到的专题图添加到地图 MapControl mapControl = new MapControl(workspace); Layer layer = mapControl.getMap().getLayers().add(datasetVector, true); Layer layerTheme = mapControl.getMap().getLayers().add(datasetVector, theme, true); // 出图成 JPG 文件 mapControl.getMap().setImageSize(new java.awt.Dimension(512, 512)); String outFile = "c:/temp/themeUnique.jpg"; mapControl.getMap().outputMapToJPG(outFile); // 释放资源 mapControl.dispose(); workspace.dispose(); }
-
-
构造器概要
构造器 构造器和说明 ThemeUnique()默认构造函数,构造一个新的ThemeUnique对象。ThemeUnique(ThemeUnique themeUnique)拷贝构造函数,根据给定的ThemeUnique对象构造一个与其完全相同的新对象。
-
方法概要
所有方法 静态方法 实例方法 具体方法 限定符和类型 方法和说明 intadd(ThemeUniqueItem item)添加一个单值专题图子项到单值专题图子项列表中。voidclear()删除所有单值专题图子项。intcombineGroup(int[] indexs)voiddispose()释放对象所占用的资源。booleanfromXML(String xml)根据传入的 XML 字符串重新构造对象。StringgetColorsName()获取颜色方案名称intgetCount()返回单值专题图子项个数。StringgetCustomLineColorExpression()获取自定义线符号颜色表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的线颜色统一进行显示。StringgetCustomLineMakerIdExpression()获取自定义线符号风格表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的符号风格统一进行显示。StringgetCustomLineWidthExpression()获取自定义线符号线宽表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的线宽统一进行显示。StringgetCustomMakerColorExpression()获取自定义点符号颜色表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的点颜色统一进行显示。StringgetCustomMakerIdExpression()获取自定义点符号风格表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的符号风格统一进行显示。StringgetCustomMarkerAngleExpression()返回一个字段表达式,该字段表达式用于控制对象对应的点单值题图中点符号的旋转角度,字段表达式中的字段必须为数值型字段。StringgetCustomMarkerSizeExpression()返回一个字段表达式,该字段表达式用于控制对象对应的点单值题图中点符号的大小,字段表达式中的字段必须为数值型字段。StringgetCustomRegionBackColorExpression()获取自定义面填充背景色表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充背景色统一进行显示。StringgetCustomRegionFillSymbolExpression()获取自定义面填充风格表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充风格统一进行显示。StringgetCustomRegionForeColorExpression()获取自定义面填充前景色表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充前景色统一进行显示。StringgetCustomTransparentExpression()获取自定义透明度表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的透明度统一进行显示。GeoStylegetDefaultStyle()返回单值专题图的默认风格。ThemeUniqueItemgetItem(int index)返回指定序号的单值专题图子项。ThemeUniqueMateModegetMateMode()获取自定义风格表达式的匹配模式,默认为ID匹配。StringgetOffsetX()返回点、线、面图层制作的单值专题图中的对象相对于原来位置的水平偏移量。StringgetOffsetY()返回点、线、面图层制作的单值专题图中的对象相对于原来位置的垂直偏移量。StringgetTrafficConditionExpress()获取制作路况字段表达式doublegetTrafficConditionOffset()获取制作路况的偏移量StringgetUniqueExpression()单值专题图字段表达式。intindexOf(String unique)返回单值专题图中指定子项单值在当前序列中的序号。booleaninsert(int index, ThemeUniqueItem item)将给定的单值专题图子项插入到指定序号的位置。booleanisDefaultStyleVisible()返回单值专题图默认风格是否可见。booleanisOffsetFixed()返回True表示采用设备单位,否则采用地理坐标单位。static ThemeUniquemakeDefault(DatasetVector dataset, String uniqueExpression)根据给定的矢量数据集和单值专题图字段表达式生成默认的单值专题图。static ThemeUniquemakeDefault(DatasetVector dataset, String uniqueExpression, ColorGradientType colorGradientType)根据给定的矢量数据集、单值专题图字段表达式和颜色渐变模式生成默认的单值专题图。static ThemeUniquemakeDefault(DatasetVector dataset, String uniqueExpression, ColorGradientType colorGradientType, JoinItems joinItems)根据给定的矢量数据集、单值专题图字段表达式、颜色渐变模式和外部表连接项生成默认的单值专题图。static ThemeUniquemakeDefault(DatasetVector dataset, String colorField, Colors colors)根据指定的面数据集、颜色字段名称、颜色生成默认的四色单值专题图。static ThemeUniquemakeDefault(String[] values, String uniqueExpression, ColorGradientType colorGradientType, JoinItems joinItems)根据给定单值、单值专题图字段表达式、颜色渐变模式和外部表连接项生成默认的单值专题图。booleanremove(int index)删除一个指定序号的单值专题图子项。voidreverseStyle()对单值专题图中子项的风格进行反序显示。voidsetColorsName(String value)设置颜色方案名称voidsetCustomLineColorExpression(String value)设置自定义线符号颜色表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的线颜色统一进行显示。voidsetCustomLineMakerIdExpression(String value)设置自定义线符号风格表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的符号风格统一进行显示。voidsetCustomLineWidthExpression(String value)设置自定义线符号线宽表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的线宽统一进行显示。voidsetCustomMakerColorExpression(String value)设置自定义点符号颜色表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的点颜色统一进行显示。voidsetCustomMakerIdExpression(String value)设置自定义点符号风格表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的符号风格统一进行显示。voidsetCustomMarkerAngleExpression(String value)设置一个字段表达式,该字段表达式用于控制对象对应的点单值题图中点符号的旋转角度,字段表达式中的字段必须为数值型字段。voidsetCustomMarkerSizeExpression(String value)设置一个字段表达式,该字段表达式用于控制对象对应的点单值题图中点符号的大小,字段表达式中的字段必须为数值型字段。voidsetCustomRegionBackColorExpression(String value)设置自定义面填充背景色表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充背景色统一进行显示。voidsetCustomRegionFillSymbolExpression(String value)获取自定义面填充风格表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充风格统一进行显示。voidsetCustomRegionForeColorExpression(String value)设置自定义面填充前景色表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充前景色统一进行显示。voidsetCustomTransparentExpression(String value)设置自定义透明度表达式 通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的透明度统一进行显示。voidsetDefaultStyle(GeoStyle style)设置单值专题图的默认风格。voidsetDefaultStyleVisible(boolean value)设置单值专题图默认风格是否可见。voidsetMateMode(ThemeUniqueMateMode mateMode)设置自定义风格表达式的匹配模式,默认为ID匹配。voidsetOffsetFixed(boolean value)参数为True表示采用设备单位,否则采用地理坐标单位。voidsetOffsetX(String value)设置点、线、面图层制作的单值专题图中的对象相对于原来位置的水平偏移量。voidsetOffsetY(String value)设置点、线、面图层制作的单值专题图中的对象相对于原来位置的垂直偏移量。voidsetTrafficConditionExpress(String value)设置制作路况字段表达式voidsetTrafficConditionOffset(double value)设置制作路况的偏移量voidsetUniqueExpression(String value)设置单值专题图字段表达式。int[]splitGroup(int parentIndex)拆分StringtoString()输出一个字符串来表达当前单值专题图对象-
从类继承的方法 com.supermap.mapping.Theme
getMemoryData, getThemeWeight, getType, setMemoryData, setThemeWeight, toXML
-
-
-
-
构造器详细资料
-
ThemeUnique
public ThemeUnique()
默认构造函数,构造一个新的ThemeUnique对象。
-
ThemeUnique
public ThemeUnique(ThemeUnique themeUnique)
拷贝构造函数,根据给定的ThemeUnique对象构造一个与其完全相同的新对象。- 参数:
themeUnique- 给定的单值专题图对象。
-
-
方法详细资料
-
getItem
public ThemeUniqueItem getItem(int index)
返回指定序号的单值专题图子项。- 参数:
index- 指定的单值专题图子项的序号。- 返回:
- 指定序号的单值专题图子项。
-
getCount
public int getCount()
返回单值专题图子项个数。- 返回:
- 单值专题图子项个数。
- 默认值:
- 默认值为 0。
-
getUniqueExpression
public String getUniqueExpression()
单值专题图字段表达式。用于制作单值专题图的字段或字段表达式。该字段可以为要素的某一属性(如地质图中的年代或成份),其值的数据类型可以为数值型或字符型。- 返回:
- 单值专题图字段表达式。
- 默认值:
- 默认值为一个空字符串。
-
setUniqueExpression
public void setUniqueExpression(String value)
设置单值专题图字段表达式。用于制作单值专题图的字段或字段表达式。该字段可以为要素的某一属性(如地质图中的年代或成份),其值的数据类型可以为数值型或字符型。- 参数:
value- 指定单值专题图字段表达式。
-
getDefaultStyle
public GeoStyle getDefaultStyle()
返回单值专题图的默认风格。对于那些未在单值专题图子项之列的对象使用该风格显示。如未设置,则使用图层默认风格显示。- 返回:
- 单值专题图的默认风格。
- 默认值:
- 默认值为{FillBackColor=Color [A=255, R=255, G=255, B=255],FillForeColor=Color [A=255, R=189, G=235, B=255],FillGradientAngle=0,FillGradientMode=None,FillGradientOffsetRatioX=0,FillGradientOffsetRatioY=0,FillOpaqueRate=100,FillSymbolID=0,LineColor=Color [A=255, R=0, G=0, B=0],LineSymbolID=0,LineWidth=0.1,MarkerAngle=0,MarkerSize={Width=2.4,Height=-1},MarkerSymbolID=0}。
-
setDefaultStyle
public void setDefaultStyle(GeoStyle style)
设置单值专题图的默认风格。对于那些未在单值专题图子项之列的对象使用该风格显示。如未设置,则使用图层默认风格显示。- 参数:
style- 指定单值专题图的默认风格。
-
getCustomMarkerSizeExpression
public String getCustomMarkerSizeExpression()
返回一个字段表达式,该字段表达式用于控制对象对应的点单值题图中点符号的大小,字段表达式中的字段必须为数值型字段。通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的大小统一显示。
该项设置仅对点单值专题图有效。
- 返回:
- 返回一个字段表达式。
-
setCustomMarkerSizeExpression
public void setCustomMarkerSizeExpression(String value)
设置一个字段表达式,该字段表达式用于控制对象对应的点单值题图中点符号的大小,字段表达式中的字段必须为数值型字段。通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的大小统一显示。
该项设置仅对点单值专题图有效。
- 参数:
value- 返回一个字段表达式。可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的大小统一显示。
-
getCustomMakerColorExpression
public String getCustomMakerColorExpression()
获取自定义点符号颜色表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的点颜色统一进行显示。
该项设置仅对点单值专题图有效。
- 返回:
- 自定义点符号颜色表达式
- 抛出:
IllegalStateException- 当前对象已被释放
-
setCustomMakerColorExpression
public void setCustomMakerColorExpression(String value)
设置自定义点符号颜色表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的点颜色统一进行显示。
该项设置仅对点单值专题图有效。
- 参数:
value- 自定义点符号颜色表达式- 抛出:
IllegalStateException- 当前对象已被释放IllegalArgumentException- 参数异常
-
getCustomLineColorExpression
public String getCustomLineColorExpression()
获取自定义线符号颜色表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的线颜色统一进行显示。
该项设置仅对线单值专题图有效。
- 返回:
- 自定义线符号颜色表达式
- 抛出:
IllegalStateException- 当前对象已被释放
-
setCustomLineColorExpression
public void setCustomLineColorExpression(String value)
设置自定义线符号颜色表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的线颜色统一进行显示。
该项设置仅对线单值专题图有效。
- 参数:
value- 自定义线符号颜色表达式- 抛出:
IllegalStateException- 当前对象已被释放IllegalArgumentException- 参数异常
-
getCustomLineWidthExpression
public String getCustomLineWidthExpression()
获取自定义线符号线宽表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的线宽统一进行显示。
该项设置仅对线单值专题图有效。
- 返回:
- 自定义线符号线宽表达式
- 抛出:
IllegalStateException- 当前对象已被释放
-
setCustomLineWidthExpression
public void setCustomLineWidthExpression(String value)
设置自定义线符号线宽表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的线宽统一进行显示。
该项设置仅对线单值专题图有效。
- 参数:
value- 自定义线符号线宽表达式- 抛出:
IllegalStateException- 当前对象已被释放IllegalArgumentException- 参数异常
-
getCustomMakerIdExpression
public String getCustomMakerIdExpression()
获取自定义点符号风格表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的符号风格统一进行显示。
该项设置仅对点单值专题图有效。
- 返回:
- 自定义点符号风格表达式
- 抛出:
IllegalStateException- 当前对象已被释放
-
setCustomMakerIdExpression
public void setCustomMakerIdExpression(String value)
设置自定义点符号风格表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的符号风格统一进行显示。
该项设置仅对点单值专题图有效。
- 参数:
value- 自定义点符号风格表达式- 抛出:
IllegalStateException- 当前对象已被释放IllegalArgumentException- 参数异常
-
getCustomLineMakerIdExpression
public String getCustomLineMakerIdExpression()
获取自定义线符号风格表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的符号风格统一进行显示。
该项设置仅对线单值专题图有效。
- 返回:
- 自定义线符号风格表达式
- 抛出:
IllegalStateException- 当前对象已被释放
-
setCustomLineMakerIdExpression
public void setCustomLineMakerIdExpression(String value)
设置自定义线符号风格表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的符号风格统一进行显示。
该项设置仅对线单值专题图有效。
- 参数:
value- 自定义线符号风格表达式- 抛出:
IllegalStateException- 当前对象已被释放IllegalArgumentException- 参数异常
-
getCustomMarkerAngleExpression
public String getCustomMarkerAngleExpression()
返回一个字段表达式,该字段表达式用于控制对象对应的点单值题图中点符号的旋转角度,字段表达式中的字段必须为数值型字段。通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的角度统一进行旋转。
该项设置仅对点单值专题图有效。
- 返回:
- 返回一个字段表达式。
-
setCustomMarkerAngleExpression
public void setCustomMarkerAngleExpression(String value)
设置一个字段表达式,该字段表达式用于控制对象对应的点单值题图中点符号的旋转角度,字段表达式中的字段必须为数值型字段。通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的角度统一进行旋转。
该项设置仅对点单值专题图有效。
- 参数:
value- 返回一个字段表达式。可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的角度统一进行旋转。
-
getCustomTransparentExpression
public String getCustomTransparentExpression()
获取自定义透明度表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的透明度统一进行显示。
该项设置仅对面单值专题图有效。
- 返回:
- 自定义透明度表达式
- 抛出:
IllegalStateException- 当前对象已被释放
-
setCustomTransparentExpression
public void setCustomTransparentExpression(String value)
设置自定义透明度表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的透明度统一进行显示。
该项设置仅对面单值专题图有效。
- 参数:
value- 自定义透明度表达式- 抛出:
IllegalStateException- 当前对象已被释放IllegalArgumentException- 参数异常
-
getCustomRegionFillSymbolExpression
public String getCustomRegionFillSymbolExpression()
获取自定义面填充风格表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充风格统一进行显示。
该项设置仅对面单值专题图有效。
- 返回:
- 自定义面填充风格表达式
- 抛出:
IllegalStateException- 当前对象已被释放
-
setCustomRegionFillSymbolExpression
public void setCustomRegionFillSymbolExpression(String value)
获取自定义面填充风格表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充风格统一进行显示。
该项设置仅对面单值专题图有效。
- 参数:
value- 自定义面填充风格表达式- 抛出:
IllegalStateException- 当前对象已被释放IllegalArgumentException- 参数异常
-
getCustomRegionForeColorExpression
public String getCustomRegionForeColorExpression()
获取自定义面填充前景色表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充前景色统一进行显示。
该项设置仅对面单值专题图有效。
- 返回:
- 自定义面填充前景色表达式
- 抛出:
IllegalStateException- 当前对象已被释放
-
setCustomRegionForeColorExpression
public void setCustomRegionForeColorExpression(String value)
设置自定义面填充前景色表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充前景色统一进行显示。
该项设置仅对面单值专题图有效。
- 参数:
value- 自定义面填充前景色表达式- 抛出:
IllegalStateException- 当前对象已被释放IllegalArgumentException- 参数异常
-
getCustomRegionBackColorExpression
public String getCustomRegionBackColorExpression()
获取自定义面填充背景色表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充背景色统一进行显示。
该项设置仅对面单值专题图有效。
- 返回:
- 自定义面填充背景色表达式
- 抛出:
IllegalStateException- 当前对象已被释放
-
setCustomRegionBackColorExpression
public void setCustomRegionBackColorExpression(String value)
设置自定义面填充背景色表达式通过该接口可以指定一个字段也可以指定一个字段表达式;还可以指定一个数值,此时所有专题图子项将以数值指定的填充背景色统一进行显示。
该项设置仅对面单值专题图有效。
- 参数:
value- 自定义面填充背景色表达式- 抛出:
IllegalStateException- 当前对象已被释放IllegalArgumentException- 参数异常
-
getMateMode
public ThemeUniqueMateMode getMateMode()
获取自定义风格表达式的匹配模式,默认为ID匹配。ThemeUniqueMateMode- 返回:
- 自定义风格表达式的匹配模式
- 抛出:
IllegalStateException- 当前对象已被释放
-
setMateMode
public void setMateMode(ThemeUniqueMateMode mateMode)
设置自定义风格表达式的匹配模式,默认为ID匹配。ThemeUniqueMateMode- 参数:
mateMode- 自定义风格表达式的匹配模式- 抛出:
IllegalStateException- 当前对象已被释放IllegalArgumentException- 参数异常
-
getColorsName
public String getColorsName()
获取颜色方案名称- 返回:
- 颜色方案名称
- 抛出:
IllegalStateException- 当前对象已被释放
-
setColorsName
public void setColorsName(String value)
设置颜色方案名称- 参数:
value- 颜色方案名称- 抛出:
IllegalStateException- 当前对象已被释放IllegalArgumentException- 参数异常
-
add
public int add(ThemeUniqueItem item)
添加一个单值专题图子项到单值专题图子项列表中。- 参数:
item- 将被添加的单值专题图子项。- 返回:
- 如果添加成功返回被添加子项在序列中的序号,否则返回 -1。
- 示范代码:
- 以下代码示范了如何添加单值专题图子项到单值专题图中。
public int addTest() { // 实例化单值专题图子项,并进行对象设置 ThemeUnique theme = new ThemeUnique(); ThemeUniqueItem item = new ThemeUniqueItem(); item.setCaption("Caption"); item.setVisible(false); item.setUnique("Unique"); // 添加单值专题图子项 theme.add(item); // 返回单值专题图子项个数 return (theme.getCount()); }
-
insert
public boolean insert(int index, ThemeUniqueItem item)将给定的单值专题图子项插入到指定序号的位置。- 参数:
index- 指定的单值专题图子项序列的序号。item- 将被插入的单值专题图子项。- 返回:
- 如果插入成功返回 true,否则返回 false。
-
remove
public boolean remove(int index)
删除一个指定序号的单值专题图子项。- 参数:
index- 指定的将被删除的单值专题图子项序列的序号。- 返回:
- 如果删除成功,返回 true;否则返回 false。
-
clear
public void clear()
删除所有单值专题图子项。执行该方法后,所有的单值专题图子项都被释放,不再可用。
-
makeDefault
public static ThemeUnique makeDefault(DatasetVector dataset, String uniqueExpression)
根据给定的矢量数据集和单值专题图字段表达式生成默认的单值专题图。- 参数:
dataset- 给定的矢量数据集。uniqueExpression- 单值专题图字段表达式。- 返回:
- 根据参数构造得到一个新的单值专题图类的对象实例。
-
makeDefault
public static ThemeUnique makeDefault(DatasetVector dataset, String uniqueExpression, ColorGradientType colorGradientType)
根据给定的矢量数据集、单值专题图字段表达式和颜色渐变模式生成默认的单值专题图。- 参数:
dataset- 给定的矢量数据集。uniqueExpression- 单值专题图字段表达式。colorGradientType- 颜色渐变模式。- 返回:
- 根据参数构造得到一个新的单值专题图类的对象实例。
- 示范代码:
- 以下示例根据给定的矢量数据集、单值专题图字段表达式和颜色渐变模式生成默认的单值专题图。
public void makeDefaultTest() { // 打开数据源,得到给定World名称的数据集datasetVector Workspace workspace = new Workspace(); String path = "G:/World/World.udb"; DatasourceConnectionInfo datasourceConnectionInfo = new DatasourceConnectionInfo(path, "World", ""); Datasource datasource = workspace.getDatasources().open(datasourceConnectionInfo); DatasetVector datasetVector = (DatasetVector) datasource.getDatasets().get("World"); // 生成默认的单值专题图 ThemeUnique theme = new ThemeUnique(); theme = ThemeUnique.makeDefault(datasetVector, "SmID",ColorGradientType.YELLOWRED); // 添加到图层显示 MapControl mapControl = new MapControl(workspace); Layer layer = mapControl.getMap().getLayers().add(datasetVector, theme, true); mapControl.getMap().refresh(); // 释放资源 mapControl.dispose(); workspace.dispose(); }
-
makeDefault
public static ThemeUnique makeDefault(DatasetVector dataset, String uniqueExpression, ColorGradientType colorGradientType, JoinItems joinItems)
根据给定的矢量数据集、单值专题图字段表达式、颜色渐变模式和外部表连接项生成默认的单值专题图。注意:通过连接外部表的方式制作专题图时,对于 UDB 数据源,连接类型不支持内连接,即不支持
JoinType.INNERJOIN连接类型。- 参数:
dataset- 给定的矢量数据集。uniqueExpression- 单值专题图字段表达式。colorGradientType- 颜色渐变模式。joinItems- 外部表连接项。如果要将制作的专题图添加到地图中,作为地图中的图层,需要对该专题图图层进行以下设置,通过该专题图图层对应的 Layer 对象的 setDisplayFilter 方法,该方法中的 queryParameter 参数为 QueryParameter 对象,这里需要通过 QueryParameter 对象的 setJoinItems 方法,将专题的外部表连接项(即当前方法的 joinItems参数)指定给该专题图图层对应的 Layer 对象,这样所做的专题图在地图中显示才正确。
- 返回:
- 根据参数构造得到一个新的单值专题图类的对象实例。
-
makeDefault
public static ThemeUnique makeDefault(DatasetVector dataset, String colorField, Colors colors)
根据指定的面数据集、颜色字段名称、颜色生成默认的四色单值专题图。四色单值专题图是指在一幅地图上,只用四种颜色就能使具有公共边的面对象着上不同的颜色。
生成四色单值专题图的输入数据必须满足,二维平面不存在交叉直线,只存在共点直线。
注意:对于面数据集复杂度低的情形下,采用四种颜色即可生成四色单值专题图;若面数据集复杂度高,则着色结果可能为五色。
- 参数:
dataset- 指定的面数据集。由于该构造函数将修改面数据集的属性信息,因此,需保证 dataset 为非只读。colorField- 着色字段的名称。着色字段必须为整型字段。它可以为面数据集中已有属性字段,也可以是自定义的其它字段。若为已存在属性字段,需保证该字段类型为整型,系统将修改该字段的属性值,并分别赋值为1、2、3、4;若为自定义的其它字段,需保证字段名合法,则系统首先在面数据集中创建该字段,并分别赋值为1、2、3、4。由此,着色字段已分别赋值为1、2、3、4,代表着四种不同的颜色,根据该字段的值即可生成四色专题图。colors- 用户传入的用来制作专题图的颜色。系统对传入颜色的数目不做规定,比如,用户只传入了一种颜色,则在生成专题图时,系统会自动补齐出图所需的颜色。- 返回:
- 生成的四色单值专题图。
-
makeDefault
public static ThemeUnique makeDefault(String[] values, String uniqueExpression, ColorGradientType colorGradientType, JoinItems joinItems)
根据给定单值、单值专题图字段表达式、颜色渐变模式和外部表连接项生成默认的单值专题图。- 参数:
values- 单值uniqueExpression- 单值专题图字段表达式colorGradientType- 颜色渐变模式joinItems- 外部表连接项- 返回:
- 生成的单值专题图
- 抛出:
IllegalStateException- 当前对象已被释放
-
indexOf
public int indexOf(String unique)
返回单值专题图中指定子项单值在当前序列中的序号。- 参数:
unique- 给定的单值专题图子项单值。- 返回:
- 专题图子项在序列中的序号值。如果该值不存在,就返回-1。
-
reverseStyle
public void reverseStyle()
对单值专题图中子项的风格进行反序显示。
-
dispose
public void dispose()
释放对象所占用的资源。调用该方法之后,此对象不再可用。
-
fromXML
public boolean fromXML(String xml)
根据传入的 XML 字符串重新构造对象。
-
setDefaultStyleVisible
public void setDefaultStyleVisible(boolean value)
设置单值专题图默认风格是否可见。- 参数:
value- 单值专题图默认风格是否可见。
-
isDefaultStyleVisible
public boolean isDefaultStyleVisible()
返回单值专题图默认风格是否可见。- 返回:
- 单值专题图默认风格是否可见。
-
getOffsetX
public String getOffsetX()
返回点、线、面图层制作的单值专题图中的对象相对于原来位置的水平偏移量。偏移量的单位由 isOffsetFixed()的设置决定,参数为True表示采用设备单位,否则采用地理坐标单位。
- 返回:
- 点、线、面图层制作的单值专题图中的对象相对于原来位置的水平偏移量。
-
setOffsetX
public void setOffsetX(String value)
设置点、线、面图层制作的单值专题图中的对象相对于原来位置的水平偏移量。偏移量的单位由 isOffsetFixed()的设置决定,参数为True表示采用设备单位,否则采用地理坐标单位。
- 参数:
value- 点、线、面图层制作的单值专题图中的对象相对于原来位置的水平偏移量。- 示范代码:
- 以下代码示范了如何设置单值专题图中对象的水平偏移量。
public void OffsetXTest() { // 打开数据源,得到给定World名称的数据集datasetVector Workspace workspace = new Workspace(); String path = "G:/World/World.udb"; DatasourceConnectionInfo datasourceConnectionInfo = new DatasourceConnectionInfo(path, "World", ""); Datasource datasource = workspace.getDatasources().open(datasourceConnectionInfo); DatasetVector datasetVector = (DatasetVector) datasource.getDatasets().get("World"); // 生成默认的单值专题图 ThemeUnique theme = new ThemeUnique(); theme = ThemeUnique.makeDefault(datasetVector, "SmID",ColorGradientType.YELLOWRED); //设置单值专题图中对象的水平偏移量 theme.setOffsetX("10000"); // 添加到图层显示 MapControl mapControl = new MapControl(workspace); Layer layer = mapControl.getMap().getLayers().add(datasetVector, theme, true); mapControl.getMap().refresh(); // 释放资源 mapControl.dispose(); workspace.dispose(); }
-
getOffsetY
public String getOffsetY()
返回点、线、面图层制作的单值专题图中的对象相对于原来位置的垂直偏移量。偏移量的单位由 isOffsetFixed()的设置决定,参数为True表示采用设备单位,否则采用地理坐标单位。
- 返回:
- 点、线、面图层制作的单值专题图中的对象相对于原来位置的垂直偏移量。
-
setOffsetY
public void setOffsetY(String value)
设置点、线、面图层制作的单值专题图中的对象相对于原来位置的垂直偏移量。偏移量的单位由 isOffsetFixed()的设置决定,参数为True表示采用设备单位,否则采用地理坐标单位。
- 参数:
value- 点、线、面图层制作的单值专题图中的对象相对于原来位置的垂直偏移量。- 示范代码:
- 以下代码示范了如何设置单值专题图中对象的垂直偏移量。
public void OffsetYTest() { // 打开数据源,得到给定World名称的数据集datasetVector Workspace workspace = new Workspace(); String path = "G:/World/World.udb"; DatasourceConnectionInfo datasourceConnectionInfo = new DatasourceConnectionInfo(path, "World", ""); Datasource datasource = workspace.getDatasources().open(datasourceConnectionInfo); DatasetVector datasetVector = (DatasetVector) datasource.getDatasets().get("World"); // 生成默认的单值专题图 ThemeUnique theme = new ThemeUnique(); theme = ThemeUnique.makeDefault(datasetVector, "SmID",ColorGradientType.YELLOWRED); //设置单值专题图中对象的垂直偏移量 theme.setOffsetY("10000"); // 添加到图层显示 MapControl mapControl = new MapControl(workspace); Layer layer = mapControl.getMap().getLayers().add(datasetVector, theme, true); mapControl.getMap().refresh(); // 释放资源 mapControl.dispose(); workspace.dispose(); }
-
isOffsetFixed
public boolean isOffsetFixed()
返回True表示采用设备单位,否则采用地理坐标单位。- 返回:
- 是否固定偏移量。
-
setOffsetFixed
public void setOffsetFixed(boolean value)
参数为True表示采用设备单位,否则采用地理坐标单位。- 参数:
value- 是否采用设备单位
-
getTrafficConditionOffset
public double getTrafficConditionOffset()
获取制作路况的偏移量- 返回:
- 制作路况的偏移量
- 抛出:
IllegalStateException- 当前对象已被释放
-
setTrafficConditionOffset
public void setTrafficConditionOffset(double value)
设置制作路况的偏移量- 参数:
value- 制作路况的偏移量- 抛出:
IllegalStateException- 当前对象已被释放
-
getTrafficConditionExpress
public String getTrafficConditionExpress()
获取制作路况字段表达式- 返回:
- 制作路况字段表达式
- 抛出:
IllegalStateException- 当前对象已被释放
-
setTrafficConditionExpress
public void setTrafficConditionExpress(String value)
设置制作路况字段表达式- 参数:
value- 制作路况字段表达式- 抛出:
IllegalStateException- 当前对象已被释放
-
combineGroup
public int combineGroup(int[] indexs)
- 参数:
indexs-- 返回:
- 返回组index
-
splitGroup
public int[] splitGroup(int parentIndex)
拆分- 参数:
parentIndex- 组序号- 返回:
-
-
Copyright © 2021–2025 SuperMap. All rights reserved.