类 LayerSettingGrid
- java.lang.Object
-
- com.supermap.mapping.LayerSetting
-
- com.supermap.mapping.LayerSettingGrid
-
public class LayerSettingGrid extends LayerSetting
栅格图层设置类。
图层分为普通图层和专题图层,栅格图层设置是针对普通图层而言的。栅格图层采用颜色表来显示其像元, 普通图层的风格通过
Layer.getAdditionalSetting()和Layer.setAdditionalSetting()方法来返回或设置。SuperMap 的颜色表是按照 8 比特的 RGB 彩色坐标系来显示像元的,您可以根据像元的属性值来设置其显示颜色值,从而形象直观地表示栅格数据反映的现象。- 示范代码:
- 以下代码示范了如何设置 DEM 栅格数据集的样式风格,并将其保存到以 GRID 命名的地图中。
假设打开了一个工作空间
workspace对象,工作空间中存在一个数据源 datasource 对象,该数据源中存在一个名为 DEM 的数据集。地图对象 map 已关联 workspace。public void layerSettingGridTest() { // 返回名称为 DEM 的栅格数据集 DatasetGrid dataset = (DatasetGrid) datasource.getDatasets().get("DEM"); Layer layer1 = m_mapControl.getMap().getLayers().add(dataset, true); // 构造一个 Colors 对象并将各种颜色值添加到其中 Colors colors = new Colors(); colors.add(java.awt.Color.blue); colors.add(java.awt.Color.black); colors.add(java.awt.Color.gray); colors.add(java.awt.Color.orange); // 构造一个 LayerSettingGrid 对象,并设置颜色表和无值数据的颜色 LayerSettingGrid layerSettingGrid = new LayerSettingGrid(); layerSettingGrid.setColorTable(colors); layerSettingGrid.setSpecialValueColor(java.awt.Color.pink); layerSettingGrid.setOpaqueRate(100); // 得到图层并设置图层的样式风格 layer1.setAdditionalSetting(layerSettingGrid); // 刷新地图 map.refresh(); // 保存地图为 GRID,保存工作空间 workspace.getMaps().add(workspace.getMaps().getAvailableMapName("grid"), map.toXML()); workspace.save(); // 释放资源 map.dispose(); dataset.close(); }
-
-
构造器概要
构造器 构造器和说明 LayerSettingGrid()默认构造函数,构造一个新的LayerSettingGrid对象。LayerSettingGrid(LayerSettingGrid layerSettingGrid)根据已存在的栅格图层设置类的对象来构造一个新的栅格图层设置类的对象。
-
方法概要
所有方法 实例方法 具体方法 已过时的方法 限定符和类型 方法和说明 ColorgetBackgroundColor()获取背景颜色doublegetBackgroundValue()获取图像背景值intgetBrightness()返回 Grid 图层的亮度,值域范围为 -100 到 100,增加亮度为正,降低亮度为负。ColorDictionarygetColorDictionary()返回图层的颜色对照表。ColorsgetColorTable()返回颜色表。intgetContrast()返回 Grid 图层的对比度,值域范围为 -100 到 100,增加对比度为正,降低对比度为负。ImageDisplayModegetDisplayMode()已过时。doublegetGamma()返回栅格图层的Gamma值,范围在 0 到 10 之间(包含 0和10),数值精度为小数点后两位。ImageInterpolationModegetImageInterpolationMode()返回显示图像时使用的插值算法。ImageStretchOptiongetImageStretchOption()获取图像拉伸选项doublegetNoDataValue()获取无值ColorgetNoDataValueColor()获取无值显示的颜色intgetOpaqueRate()返回 Grid 图层显示不透明度。doublegetSpecialValue()已过时。ColorgetSpecialValueColor()已过时。ColorgetTransparentColor()获取图像透明色intgetTransparentColorTolerance()获取透明色容限LayerSettingTypegetType()返回此图层的类型。booleanisBackgroundReplace()获取是否背景替换booleanisBackgroundTransparent()获取图像是否背景透明booleanisColorDictionaryAutoInterpolation()获取颜色对照表是否自动插值booleanisNoDataValueTransparent()无值是否透明显示booleanisSpecialValueTransparent()已过时。booleanisTransparentColorEnabled()获取是否开启透明值voidsetBackgroundColor(Color value)设置背景颜色值voidsetBackgroundReplace(boolean value)设置是否背景替换voidsetBackgroundTransparent(boolean value)设置是否背景透明voidsetBackgroundValue(double value)设置图像背景值voidsetBrightness(int brightness)设置 Grid 图层的亮度,值域范围为 -100 到 100,增加亮度为正,降低亮度为负。voidsetColorDictionary(ColorDictionary clrDict)设置图层的颜色对照表。voidsetColorDictionaryAutoInterpolation(boolean isColorDictionaryAutoInterpolation)设置颜色对照表是否自动插值voidsetColorTable(Colors colorTable)设置颜色表。voidsetContrast(int contrast)设置 Grid 图层的对比度,值域范围为 -100 到 100,增加对比度为正,降低对比度为负。voidsetDisplayMode(ImageDisplayMode displayMode)已过时。voidsetGamma(double value)设置栅格图层的Gamma值,范围在 0 到 10 之间(包含 0和10),数值精度为小数点后两位。voidsetImageInterpolationMode(ImageInterpolationMode value)设置显示图像时使用的插值算法。voidsetImageStretchOption(ImageStretchOption imageStretchOption)设置图像拉伸选项voidsetNoDataValue(double value)设置无值voidsetNoDataValueColor(Color value)设置无值显示的颜色voidsetNoDataValueTransparent(boolean value)设置无值是否透明显示voidsetOpaqueRate(int opaqueRate)设置 Grid 图层显示的不透明度。voidsetSpecialValue(double value)已过时。voidsetSpecialValueColor(Color value)已过时。voidsetSpecialValueTransparent(boolean specialValueTransparent)已过时。voidsetTransparentColor(Color value)设置图像透明色voidsetTransparentColorEnabled(boolean value)设置是否开启透明值voidsetTransparentColorTolerance(int value)设置透明色容限
-
-
-
构造器详细资料
-
LayerSettingGrid
public LayerSettingGrid()
默认构造函数,构造一个新的LayerSettingGrid对象。
-
LayerSettingGrid
public LayerSettingGrid(LayerSettingGrid layerSettingGrid)
根据已存在的栅格图层设置类的对象来构造一个新的栅格图层设置类的对象。- 参数:
layerSettingGrid- 指定的栅格图层设置类对象。
-
-
方法详细资料
-
getType
public LayerSettingType getType()
返回此图层的类型。- 指定者:
getType在类中LayerSetting
-
getColorTable
public Colors getColorTable()
返回颜色表。- 返回:
- 颜色表。
- 默认值:
- 默认值为 {Count=0}。
-
setColorTable
public void setColorTable(Colors colorTable)
设置颜色表。- 参数:
colorTable- 颜色表。
-
getColorDictionary
public ColorDictionary getColorDictionary()
返回图层的颜色对照表。支持对获取的颜色对照表的颜色值和高程值灵活的编辑。
注意:在图层中如果没有设置颜色对照表,显示前把颜色表转换成颜色对照表,在图层显示时如果颜色表与颜色对照表相同,以颜色表显示,如果不同,以颜色对照表方式显示。
对颜色表的编辑不再影响图层的显示,图层的显示效果由颜色对照表控制。
- 返回:
- 图层的颜色对照表。
-
setColorDictionary
public void setColorDictionary(ColorDictionary clrDict)
设置图层的颜色对照表。- 参数:
clrDict- 用于指定图层的颜色对照表。
-
getSpecialValueColor
@Deprecated public Color getSpecialValueColor()
已过时。返回栅格数据集特殊值数据的颜色。- 返回:
- 栅格数据集特殊值数据的颜色。
- 默认值:
- 默认值为 Color.black。
-
setSpecialValueColor
@Deprecated public void setSpecialValueColor(Color value)
已过时。设置栅格数据集特殊值数据的颜色。- 参数:
value- 栅格数据集特殊值数据的颜色。
-
getSpecialValue
@Deprecated public double getSpecialValue()
已过时。返回图层的特殊值。在新增一个 Grid 图层时,该方法的返回值与数据集的 NoValue 属性值相等。
- 返回:
- 图层的特殊值。
-
setSpecialValue
@Deprecated public void setSpecialValue(double value)
已过时。设置图层的特殊值。- 参数:
value- 图层的特殊值。
-
getBrightness
public int getBrightness()
返回 Grid 图层的亮度,值域范围为 -100 到 100,增加亮度为正,降低亮度为负。亮度值可以保存到工作空间。- 返回:
- Grid 图层的亮度。
- 默认值:
- 默认值为 0。
-
setBrightness
public void setBrightness(int brightness)
设置 Grid 图层的亮度,值域范围为 -100 到 100,增加亮度为正,降低亮度为负。亮度值可以保存到工作空间。- 参数:
brightness- Grid 图层的亮度。
-
getContrast
public int getContrast()
返回 Grid 图层的对比度,值域范围为 -100 到 100,增加对比度为正,降低对比度为负。对比度值可以保存到工作空间。- 返回:
- Grid 图层的对比度。
- 默认值:
- 默认值为 0。
-
setContrast
public void setContrast(int contrast)
设置 Grid 图层的对比度,值域范围为 -100 到 100,增加对比度为正,降低对比度为负。对比度值可以保存到工作空间。- 参数:
contrast- Grid 图层的对比度。
-
getOpaqueRate
public int getOpaqueRate()
返回 Grid 图层显示不透明度。不透明度为一个 0-100 之间的数。0 为不显示;100 为完全不透明。只对栅格图层有效,在地图旋转的情况下也有效。- 返回:
- Grid 图层显示不透明度。
- 默认值:
- 默认值为 100。
-
setOpaqueRate
public void setOpaqueRate(int opaqueRate)
设置 Grid 图层显示的不透明度。不透明度为一个 0-100 之间的数。0 为不显示;100 为完全不透明。只对栅格图层有效,在地图旋转的情况下也有效。- 参数:
opaqueRate- Grid 图层显示的不透明度。
-
isSpecialValueTransparent
@Deprecated public boolean isSpecialValueTransparent()
已过时。返回图层的特殊值(SpecialValue)所处区域是否透明。- 返回:
- 一个布尔值,图层的特殊值(SpecialValue)所处区域透明返回 true,否则返回 false。
- 默认值:
- 默认值为 false。
-
setSpecialValueTransparent
@Deprecated public void setSpecialValueTransparent(boolean specialValueTransparent)
已过时。设置图层的特殊值(SpecialValue)所处区域是否透明。- 参数:
specialValueTransparent- 图层的特殊值(SpecialValue)所处区域是否透明。
-
isColorDictionaryAutoInterpolation
public boolean isColorDictionaryAutoInterpolation()
获取颜色对照表是否自动插值- 返回:
- 返回是否插值
- 抛出:
IllegalStateException- 当前对象已被释放
-
setColorDictionaryAutoInterpolation
public void setColorDictionaryAutoInterpolation(boolean isColorDictionaryAutoInterpolation)
设置颜色对照表是否自动插值- 参数:
isColorDictionaryAutoInterpolation- 是否插值- 抛出:
IllegalStateException- 当前对象已被释放
-
getImageInterpolationMode
public ImageInterpolationMode getImageInterpolationMode()
返回显示图像时使用的插值算法。- 返回:
- 返回显示图像时使用的插值算法。
-
setImageInterpolationMode
public void setImageInterpolationMode(ImageInterpolationMode value)
设置显示图像时使用的插值算法。- 参数:
value- 指定的插值算法。
-
getImageStretchOption
public ImageStretchOption getImageStretchOption()
获取图像拉伸选项- 返回:
- ImageStretchOption 影像拉伸选项
-
setImageStretchOption
public void setImageStretchOption(ImageStretchOption imageStretchOption)
设置图像拉伸选项- 参数:
imageStretchOption- 图像拉伸选项- 抛出:
IllegalStateException- 当前对象已被释放UnsupportedOperationException- 不支持的操作IllegalArgumentException- 非法参数
-
getDisplayMode
@Deprecated public ImageDisplayMode getDisplayMode()
已过时。获取图像显示模式- 返回:
- 显示模式
-
setDisplayMode
@Deprecated public void setDisplayMode(ImageDisplayMode displayMode)
已过时。设置图像显示模式- 参数:
displayMode- 显示模式
-
getTransparentColor
public Color getTransparentColor()
获取图像透明色- 返回:
- Color 图像透明色
- 抛出:
IllegalStateException- 当前对象已被释放
-
setTransparentColor
public void setTransparentColor(Color value)
设置图像透明色- 参数:
value- 透明颜色值- 抛出:
IllegalStateException- 当前对象已被释放
-
getTransparentColorTolerance
public int getTransparentColorTolerance()
获取透明色容限- 返回:
- 容限值
- 抛出:
IllegalStateException- 当前对象已被释放
-
setTransparentColorTolerance
public void setTransparentColorTolerance(int value)
设置透明色容限- 参数:
value- 透明色容限值- 抛出:
IllegalStateException- 当前状态异常
-
isTransparentColorEnabled
public boolean isTransparentColorEnabled()
获取是否开启透明值- 返回:
- 返回是否开启
- 抛出:
IllegalStateException- 当前对象已被释放
-
setTransparentColorEnabled
public void setTransparentColorEnabled(boolean value)
设置是否开启透明值- 参数:
value- 是否开启- 抛出:
IllegalStateException- 当前对象已被释放
-
getBackgroundValue
public double getBackgroundValue()
获取图像背景值- 返回:
- 背景值
- 抛出:
IllegalStateException- 当前对象已被释放
-
setBackgroundValue
public void setBackgroundValue(double value)
设置图像背景值- 参数:
value- 背景值- 抛出:
IllegalStateException- 当前对象已被释放
-
isBackgroundTransparent
public boolean isBackgroundTransparent()
获取图像是否背景透明- 返回:
- 是否透明
- 抛出:
IllegalStateException- 当前对象已被释放
-
setBackgroundTransparent
public void setBackgroundTransparent(boolean value)
设置是否背景透明- 参数:
value- 是否透明- 抛出:
IllegalStateException- 当前对象已被释放
-
isBackgroundReplace
public boolean isBackgroundReplace()
获取是否背景替换- 返回:
- 是否背景替换
- 抛出:
IllegalStateException- 当前对象已被释放
-
setBackgroundReplace
public void setBackgroundReplace(boolean value)
设置是否背景替换- 参数:
value- 是否替换- 抛出:
IllegalStateException- 当前对象已被释放
-
getBackgroundColor
public Color getBackgroundColor()
获取背景颜色- 返回:
- 背景颜色值
- 抛出:
IllegalStateException- 当前对象已被释放
-
setBackgroundColor
public void setBackgroundColor(Color value)
设置背景颜色值- 参数:
value- 颜色值- 抛出:
IllegalStateException- 当前对象已被释放
-
getNoDataValue
public double getNoDataValue()
获取无值- 返回:
- 无值
-
setNoDataValue
public void setNoDataValue(double value)
设置无值- 参数:
value- 无值
-
getNoDataValueColor
public Color getNoDataValueColor()
获取无值显示的颜色- 返回:
- 无值显示的颜色
-
setNoDataValueColor
public void setNoDataValueColor(Color value)
设置无值显示的颜色- 参数:
value- 无值显示的颜色
-
isNoDataValueTransparent
public boolean isNoDataValueTransparent()
无值是否透明显示- 返回:
- true 表示透明显示;false表示不透明显示。
-
setNoDataValueTransparent
public void setNoDataValueTransparent(boolean value)
设置无值是否透明显示- 参数:
value- true 表示透明显示;false表示不透明显示。
-
getGamma
public double getGamma()
返回栅格图层的Gamma值,范围在 0 到 10 之间(包含 0和10),数值精度为小数点后两位。通过Gamma参数能够实现影像/栅格非线性亮度和对比度调整,从而增强图像显示细节,改善影像/栅格数据的显示质量。
当Gamma值等于1时,图像没有进行Gamma校正。当Gamma值大于1时,图像的暗部区域对比度增加,细节更加突出,但亮部区域的细节会有所损失,整体图像变亮。当Gamma值小于1时,图像的亮部区域对比度增加,细节更加突出,但暗部区域的细节会有所损失,整体图像变暗。
应用栅格函数的影像/栅格图层不支持Gamma校正。
使用 SuperMap GIS 11.3.0 及以上版本制作的影像/栅格地图应用了Gamma校正,当使用低于 SuperMap GIS 11.3.0 版本打开地图时,Gamma校正失效,且保存地图、输出地图模板和图层属性模板结果中Gamma校正信息会丢失。
- 返回:
- 栅格图层的Gamma值,范围在 0 到 10 之间(包含 0和10),数值精度为小数点后两位。
- 从以下版本开始:
- 11.3.0
- 默认值:
- 默认值为 1。
-
setGamma
public void setGamma(double value)
设置栅格图层的Gamma值,范围在 0 到 10 之间(包含 0和10),数值精度为小数点后两位。通过Gamma参数能够实现影像/栅格非线性亮度和对比度调整,从而增强图像显示细节,改善影像/栅格数据的显示质量。
当Gamma值等于1时,图像没有进行Gamma校正。当Gamma值大于1时,图像的暗部区域对比度增加,细节更加突出,但亮部区域的细节会有所损失,整体图像变亮。当Gamma值小于1时,图像的亮部区域对比度增加,细节更加突出,但暗部区域的细节会有所损失,整体图像变暗。
应用栅格函数的影像/栅格图层不支持Gamma校正。
使用 SuperMap GIS 11.3.0 及以上版本制作的影像/栅格地图应用了Gamma校正,当使用低于 SuperMap GIS 11.3.0 版本打开地图时,Gamma校正失效,且保存地图、输出地图模板和图层属性模板结果中Gamma校正信息会丢失。
- 参数:
value- 栅格图层的Gamma值,范围在 0 到 10 之间(包含 0和10);数值精度为小数点后两位,超出此精度的数值将进行四舍五入处理。- 抛出:
IllegalArgumentException- Gamma值小于0或者大于10,超出有效值范围。- 从以下版本开始:
- 11.3.0
-
-
Copyright © 2021–2025 SuperMap. All rights reserved.