com.supermap.mapping
类 LayerSettingImage
- java.lang.Object
-
- com.supermap.mapping.LayerSetting
-
- com.supermap.mapping.LayerSettingImage
-
public class LayerSettingImage extends LayerSetting
LayerSettingImage, 影像图层设置类。
该类主要用于设置影像图层的显示风格,获取和设置影像图层的透明背景色、透明色的容限和是否允许透明等特性。 影像数据只对应普通图层,其风格设置实例可以通过
Layer.getAdditionalSetting()来获得; 也可以新创建一个对象, 通过Layer.setAdditionalSetting(LayerSetting)方法来设置。 在修改图层显示效果后,需要调用Map.refresh()方法来刷新地图。
-
-
构造器概要
构造器 构造器和说明 LayerSettingImage()默认构造函数,构造一个新的 LayerSettingImage 对象LayerSettingImage(LayerSettingImage layerSettingImage)构造函数, 根据指定的LayerSettingImage对象,构造一个新的实例,新实例时传入对象的一个拷贝。
-
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 voidadd(Datasource datasource, java.lang.String strSLDFilePath)通过SLD文件,向图层集合中添加图层java.lang.String[]getAllSubLayers()获取所有图层的集合,返回字符串数组。intgetCacheMaxSize()获取图层的最大缓存数int[]getDisplayBandIndexes()获取当前影像图层的波段索引ColorSpaceTypegetDisplayColorSpace()获取影像图层的色彩显示模式ImageDisplayModegetDisplayMode()返回影像显示模式ImageStretchOptiongetImageStretchOption()获取影像拉伸参数 如果存在颜色表,且颜色表的数量不为0,则会使用颜色表显示影像,此时拉伸方式均不起作用, 如果没有颜色表或者数量为0,则支持拉伸显示。java.lang.StringgetMapLayersID()获取地图指定图层集合(针对Rest服务).doublegetSpecialValue()获取特殊值ColorgetSpecialValueColor()获取特殊颜色ColorgetTransparentColor()获取当前指定的透明背景色intgetTransparentColorTolerance()获取当前透明背景色的容限值 透明容限值范围为[0,255],当该值为0时, 仅指定的颜色可以透明显示;当该值为255时, 所有颜色都将透明显示。LayerSettingTypegetType()获取该图层的类型, 继承并重新实现LayerSetting.getType()方法java.lang.String[]getVisibleSubLayers()获取当前可见图层的集合,返回字符串数组。booleanisImageBKColorReplace()背景色是否允许颜色替换booleanisImageSpecialValueReplace()是否允许特殊值替换booleanisSpecialValueTransparent()特殊值是否透明booleanisTransparent()当前影像图层背景色是否透明显示 当其值为true时,setTransparentColor(Color)指定的颜色透明。voidsetCacheMaxSize(int nMaxSize)设置图层的最大缓存数voidsetDisplayBandIndexes(int[] bandIndexes)设置当前影像图层显示的波段索引。voidsetDisplayColorSpace(ColorSpaceType colorSpace)设置影像图层的色彩显示模式。voidsetDisplayMode(ImageDisplayMode displayMode)设置影像显示模式voidsetImageBKColorReplace(boolean value)背景色是否替换voidsetImageSpecialValueReplace(boolean value)设置特殊值颜色是否替换voidsetImageStretchOption(ImageStretchOption imageStretchOption)设置图层多波段Image的拉伸方式voidsetMapLayersID(java.lang.String layersID)设置地图指定图层集合(针对Rest服务)。voidsetSpecialValue(double value)设置特殊值voidsetSpecialValueColor(Color value)设置特殊颜色voidsetSpecialValueTransparent(boolean value)设置特殊值是否透明voidsetTransparent(boolean transparentEnable)设置影像图层背景色是否透明显示voidsetTransparentColor(Color color)设置影像图层中需要透明显示的背景色 除了设需要透明显示的颜色外,还需要通过setTransparent(boolean)来允许透明显示该颜色voidsetTransparentColorTolerance(int value)设置透明背景色的容限 透明容限值范围为[0,255],当该值为0时, 仅指定的颜色可以透明显示;当该值为255时, 所有颜色都将透明显示。voidsetVisibleSubLayers(java.lang.String[] subLayers)设置当前可见图层的集合。
-
-
-
构造器详细资料
-
LayerSettingImage
public LayerSettingImage()
默认构造函数,构造一个新的 LayerSettingImage 对象
-
LayerSettingImage
public LayerSettingImage(LayerSettingImage layerSettingImage)
构造函数, 根据指定的LayerSettingImage对象,构造一个新的实例,新实例时传入对象的一个拷贝。- 参数:
layerSettingImage- 指定的LayerSettingImage对象
-
-
方法详细资料
-
getType
public LayerSettingType getType()
获取该图层的类型, 继承并重新实现LayerSetting.getType()方法- 指定者:
getType在类中LayerSetting- 返回:
- 返回图层类型
LayerSettingType。 如果没有关联图层,返回null。
-
isTransparent
public boolean isTransparent()
当前影像图层背景色是否透明显示 当其值为true时,setTransparentColor(Color)指定的颜色透明。 默认不透明, 即返回false。- 返回:
- 返回loolean值, 表示影像图层背景是否透明
-
setTransparent
public void setTransparent(boolean transparentEnable)
设置影像图层背景色是否透明显示- 参数:
transparentEnable- boolean类型, 表示影像图层背景色是否透明。 当其值为true时,setTransparentColor(Color)指定的颜色透明。
-
getTransparentColor
public Color getTransparentColor()
获取当前指定的透明背景色- 返回:
Color类型, 返回当指定的透明背景色。 如果是新创建的对象,则返回null
-
setTransparentColor
public void setTransparentColor(Color color)
设置影像图层中需要透明显示的背景色除了设需要透明显示的颜色外,还需要通过
setTransparent(boolean)来允许透明显示该颜色- 参数:
color-Color类型, 需要透明显示的背景色
-
getTransparentColorTolerance
public int getTransparentColorTolerance()
获取当前透明背景色的容限值透明容限值范围为[0,255],当该值为0时, 仅指定的颜色可以透明显示;当该值为255时, 所有颜色都将透明显示。 默认值为0。
- 返回:
- int类型,返回当前透明背景色的容限值
-
setTransparentColorTolerance
public void setTransparentColorTolerance(int value)
设置透明背景色的容限透明容限值范围为[0,255],当该值为0时, 仅指定的颜色可以透明显示;当该值为255时, 所有颜色都将透明显示。
当且仅当
isTransparent()的值为true时, 该设置才有效。- 参数:
value- int类型, 需要设置的透明背景色容限值。 如果value<0,则实际设置为0; 如果value>255,则实际设置为255;
-
getAllSubLayers
public java.lang.String[] getAllSubLayers()
获取所有图层的集合,返回字符串数组。- 返回:
- 图层名称集合。
-
getVisibleSubLayers
public java.lang.String[] getVisibleSubLayers()
获取当前可见图层的集合,返回字符串数组。- 返回:
- 图层名称集合
-
setVisibleSubLayers
public void setVisibleSubLayers(java.lang.String[] subLayers)
设置当前可见图层的集合。- 参数:
subLayers- 图层名称集合。
-
setMapLayersID
public void setMapLayersID(java.lang.String layersID)
设置地图指定图层集合(针对Rest服务)。- 参数:
layersID- 指定图层集合的ID.
-
getMapLayersID
public java.lang.String getMapLayersID()
获取地图指定图层集合(针对Rest服务).- 返回:
- 地图指定图层集合。
-
getDisplayBandIndexes
public int[] getDisplayBandIndexes()
获取当前影像图层的波段索引- 返回:
- 返回当前影像图层显示的波段索引
-
setDisplayBandIndexes
public void setDisplayBandIndexes(int[] bandIndexes)
设置当前影像图层显示的波段索引。假设当前影像图层有若干波段, 当需要按照设置的色彩模式(如 RGB)设置显示波段时, 指定色彩(如 RGB 中的红色、绿色、蓝色)对应的波段索引(如0,2,1)即可。- 参数:
bandIndexes- 当前影像图层显示的波段索引
-
getDisplayMode
public ImageDisplayMode getDisplayMode()
返回影像显示模式- 返回:
- 影像显示模式 默认值: 默认值与数据集的波段数保持一致,如果数据集为多波段,则默认为组合模式,否则,默认为拉伸模式。
-
setDisplayMode
public void setDisplayMode(ImageDisplayMode displayMode)
设置影像显示模式- 参数:
displayMode- 影像显示模式,多波段支持两种显示模式,单波段只支持拉伸显示模式
-
getDisplayColorSpace
public ColorSpaceType getDisplayColorSpace()
获取影像图层的色彩显示模式- 返回:
- 影像图层的色彩显示模式,默认为RGB
-
setDisplayColorSpace
public void setDisplayColorSpace(ColorSpaceType colorSpace)
设置影像图层的色彩显示模式。它会根据影像图层当前的色彩格式和显示的波段将该影像图层以该色彩模式进行显示。 目前只支持RGB/RGBA两种- 参数:
colorSpace- 影像图层的色彩显示模式
-
getImageStretchOption
public ImageStretchOption getImageStretchOption()
获取影像拉伸参数 如果存在颜色表,且颜色表的数量不为0,则会使用颜色表显示影像,此时拉伸方式均不起作用, 如果没有颜色表或者数量为0,则支持拉伸显示。- 返回:
- ImageStretchOption 影像拉伸参数
-
setImageStretchOption
public void setImageStretchOption(ImageStretchOption imageStretchOption)
设置图层多波段Image的拉伸方式- 参数:
imageStretchOption- 拉伸参数
-
add
public void add(Datasource datasource, java.lang.String strSLDFilePath)
通过SLD文件,向图层集合中添加图层- 参数:
datasource- 数据所在的数据源strSLDFilePath- SLD文件路径
-
setCacheMaxSize
public void setCacheMaxSize(int nMaxSize)
设置图层的最大缓存数- 参数:
nMaxSize- 最大缓存数
-
getCacheMaxSize
public int getCacheMaxSize()
获取图层的最大缓存数- 返回:
- 最大缓存数
-
getSpecialValueColor
public Color getSpecialValueColor()
获取特殊颜色- 返回:
-
setSpecialValueColor
public void setSpecialValueColor(Color value)
设置特殊颜色- 参数:
value-
-
getSpecialValue
public double getSpecialValue()
获取特殊值- 返回:
-
setSpecialValue
public void setSpecialValue(double value)
设置特殊值- 参数:
value-
-
isSpecialValueTransparent
public boolean isSpecialValueTransparent()
特殊值是否透明- 返回:
-
setSpecialValueTransparent
public void setSpecialValueTransparent(boolean value)
设置特殊值是否透明- 参数:
value-
-
isImageBKColorReplace
public boolean isImageBKColorReplace()
背景色是否允许颜色替换- 返回:
-
setImageBKColorReplace
public void setImageBKColorReplace(boolean value)
背景色是否替换- 参数:
value-
-
isImageSpecialValueReplace
public boolean isImageSpecialValueReplace()
是否允许特殊值替换- 返回:
-
setImageSpecialValueReplace
public void setImageSpecialValueReplace(boolean value)
设置特殊值颜色是否替换- 参数:
value-
-
-