com.supermap.data.processing
类 MapCache3DBuilder

java.lang.Object
  继承者 com.supermap.data.processing.MapCache3DBuilder

已过时。 该类已经过时,使用 MapCacheBuilder 替代。三维地图缓存生成类,该类主要用于为地图生成供三维场景发布使用的三维地图缓存,其配置文件为 *.sci3d 格式。三维地图缓存的金字塔文件目录结构与影像缓存一致。

三维缓存是一种用于改善三维场景浏览用户体验的优化策略。服务器端创建了三维缓存之后,客户端用户的每一次地图浏览,比如平移、放大、缩小地图,都会向服务器端发送一个 URL 请求,此时,服务器端按照匹配的条件,将已缓存的数据返回到客户端。

需要注意的是,由于三维地图缓存按经纬度坐标系全球剖分,因此只支持经纬度坐标系,在打开地图数据后必须设置为动态投影(WGS1984)。若地图为投影坐标系,用户可使用 SuperMap Deskpro .NET 6R 产品将坐标系转换为经纬度坐标系后,再生成缓存。

关于三维地图缓存的详细介绍请参见《二三维缓存》技术文档。

public class MapCache3DBuilder
extends java.lang.Object


构造方法摘要
MapCache3DBuilder()
          已过时。 构造一个新的三维缓存生成类对象。
MapCache3DBuilder(Map map, java.lang.String outputFolder)
          已过时。 根据给定的参数,构造一个新的三维缓存生成类对象。
MapCache3DBuilder(Map map, java.lang.String outputFolder, java.lang.String name)
          已过时。 根据给定的参数,构造一个新的三维缓存生成类对象。
 
方法摘要
 void addSteppedListener(SteppedListener l)
          已过时。 添加一个用于接收进度条事件(SteppedEvent)的监听器。
 boolean build()
          已过时。 创建地图缓存。
 boolean buildWithoutConfigFile()
          已过时。 为地图对象创建三维地图缓存。
static boolean compressTextureAndGeometry(java.lang.String scpPath, java.lang.String outputFolder, CompressedTextureType compressedTextureType, VertexOptimizationType vertexOptimizationType, int threadCount)
          已过时。 精模缓存纹理和几何再压缩
 java.lang.String[] computeImageFileName()
          已过时。 返回计算得到的各个层上的缓存图片名称列表。
 java.lang.String[] computeImageFileName(int specialLevel)
          已过时。 根据参数指定的缓存层数计算该层下的缓存图片名称列表。
 boolean computeLevel()
          已过时。 计算生成缓存的数据集所适合的缓存层数。
 void dispose()
          已过时。 释放该对象所占用的资源。
 boolean fromConfigFile(java.lang.String filename)
          已过时。 导入缓存文件,根据缓存数据的配置文件中的内容来指定相关设置的值。
 int getBeginLevel()
          已过时。 返回开始生成缓存的层数。
 Rectangle2D getBounds()
          已过时。 返回导出的地理范围。
 boolean getBuildFromOriginalResolution()
          已过时。 获取是否由精细层缓存往上合并
 java.lang.String getCacheName()
          已过时。 返回生成缓存的配置文件的名称。
 GeoRegion getClipRegion()
          已过时。 返回用于生成缓存的多边形区域。
 int getEndLevel()
          已过时。 返回结束生成缓存的层数。
 int getImageCompress()
          已过时。 返回缓存图片的压缩率,默认为 75。
 CacheImageSize getImageSize()
          已过时。 返回缓存图片的大小,默认为 CacheImageSize.SIZE256
 CacheImageType getImageType()
          已过时。 返回缓存图片的类型。
 Map getMap()
          已过时。 返回用于创建缓存的地图。
 java.lang.String getOutputFolder()
          已过时。 返回生成缓存的路径。
 java.lang.String getPassword()
          已过时。 返回用于创建缓存时对数据进行加密的密码。
 StorageType getStorageType()
          已过时。 返回缓存的存储方式。
 MapTilingMode getTilingMode()
          已过时。 获取地图生成缓存的剖分方式。
 boolean isCalTangentAndBinormal()
          已过时。 获取获是否重新计算切线、副切线
 boolean isFillMargin()
          已过时。 返回缓存图片是否填充空白区域,true,表示填充空白区域;false,表示不填充。
 boolean isTransparent()
          已过时。 返回缓存图片是否背景透明。
 void removeSteppedListener(SteppedListener l)
          已过时。 移除一个用于接收进度条事件(SteppedEvent)的监听器。
 void setBeginLevel(int value)
          已过时。 设置开始生成缓存的层数。
 void setBounds(Rectangle2D rectangle2D)
          已过时。 设置导出的地理范围。
 void setBuildFromOriginalResolution(boolean buildFromOriginalResolution)
          已过时。 设置是否由精细层缓存往上合并
 void setCacheName(java.lang.String value)
          已过时。 设置生成缓存的配置文件的名称。
 void setCalTangentAndBinormal(boolean isCalTangentAndBinormal)
          已过时。 设置是否重新计算切线、副切线
 void setClipRegion(GeoRegion geoRegion)
          已过时。 设置用于生成缓存的多边形区域。
 void setEndLevel(int value)
          已过时。 设置结束生成缓存的层数。
 void setFillMargin(boolean bool)
          已过时。 设置缓存图片是否填充空白区域,true,表示填充空白区域;false,表示不填充。
 void setImageCompress(int value)
          已过时。 设置缓存图片的压缩率。
 void setImageSize(CacheImageSize cacheImageSize)
          已过时。 设置缓存图片的大小,默认为 CacheImageSize.SIZE256
 void setImageType(CacheImageType cacheImageType)
          已过时。 设置缓存图片的类型。
 void setMap(Map map)
          已过时。 设置需要生成缓存的地图。
 void setOutputFolder(java.lang.String value)
          已过时。 设置生成缓存的路径。
 void setPassword(java.lang.String value)
          已过时。 设置用于创建缓存时对数据进行加密的密码。
 void setStorageType(StorageType storageType)
          已过时。 设置缓存的存储方式
 void setTilingMode(MapTilingMode mode)
          已过时。 设置地图生成缓存的剖分方式。
 void setTransparent(boolean value)
          已过时。 设置缓存图片是否背景透明。
 boolean toConfigFile(java.lang.String filename)
          已过时。 将对象的相关属性信息写到指定的文件中,文件的后缀名为 .sci3d,即缓存数据的配置文件。
 
从类 java.lang.Object 继承的方法
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

MapCache3DBuilder

public MapCache3DBuilder()
已过时。 
构造一个新的三维缓存生成类对象。


MapCache3DBuilder

public MapCache3DBuilder(Map map,
                         java.lang.String outputFolder)
已过时。 
根据给定的参数,构造一个新的三维缓存生成类对象。

该构造函数生成的缓存对象的名字与地图的名称相同,在执行该构造函数后会自动执行 computeLevel 的方法。

参数:
map - 指定的要生成缓存的地图。
outputFolder - 指定的生成缓存的路径。

MapCache3DBuilder

public MapCache3DBuilder(Map map,
                         java.lang.String outputFolder,
                         java.lang.String name)
已过时。 
根据给定的参数,构造一个新的三维缓存生成类对象。

参数:
map - 要生成缓存的地图。
outputFolder - 生成缓存的路径。
name - 生成缓存的名称。
方法详细信息

getMap

public Map getMap()
已过时。 
返回用于创建缓存的地图。

返回:
用于创建缓存的地图。
默认值:
默认值为 null。

setMap

public void setMap(Map map)
已过时。 
设置需要生成缓存的地图。

参数:
map - 需要生成缓存的地图。

getBounds

public Rectangle2D getBounds()
已过时。 
返回导出的地理范围。该方法进行必须设置。

返回:
导出的地理范围。
默认值:
默认值为(-180,-90,180,90),即全球范围。

setBounds

public void setBounds(Rectangle2D rectangle2D)
已过时。 
设置导出的地理范围。该方法进行必须设置。

参数:
rectangle2D - 导出的地理范围。

getCacheName

public java.lang.String getCacheName()
已过时。 
返回生成缓存的配置文件的名称。

返回:
生成缓存的配置文件的名称。
默认值:
默认值为 "UntitledCache"。

setCacheName

public void setCacheName(java.lang.String value)
已过时。 
设置生成缓存的配置文件的名称。

参数:
value - 生成缓存的配置文件的名称。

getImageSize

public CacheImageSize getImageSize()
已过时。 
返回缓存图片的大小,默认为 CacheImageSize.SIZE256

返回:
缓存图片的大小,默认为 CacheImageSize.SIZE256
默认值:
默认值为 CacheImageSize.SIZE256

setImageSize

public void setImageSize(CacheImageSize cacheImageSize)
已过时。 
设置缓存图片的大小,默认为 CacheImageSize.SIZE256

参数:
cacheImageSize - 缓存图片的大小,默认为 CacheImageSize.SIZE256

getClipRegion

public GeoRegion getClipRegion()
已过时。 
返回用于生成缓存的多边形区域。

返回:
用于生成缓存的多边形区域。
默认值:
默认值为 null。

setClipRegion

public void setClipRegion(GeoRegion geoRegion)
已过时。 
设置用于生成缓存的多边形区域。

参数:
geoRegion - 用于生成缓存的多边形区域。

getImageCompress

public int getImageCompress()
已过时。 
返回缓存图片的压缩率,默认为 75。

返回:
缓存图片的压缩率,默认为 75。
默认值:
默认值为 75。

setImageCompress

public void setImageCompress(int value)
已过时。 
设置缓存图片的压缩率。

参数:
value - 缓存图片的压缩率。

getOutputFolder

public java.lang.String getOutputFolder()
已过时。 
返回生成缓存的路径。

返回:
生成缓存的路径。
默认值:
默认值为一个空字符串。

setOutputFolder

public void setOutputFolder(java.lang.String value)
已过时。 
设置生成缓存的路径。

参数:
value - 生成缓存的路径。

isTransparent

public boolean isTransparent()
已过时。 
返回缓存图片是否背景透明。默认为 false。

返回:
缓存图片是否背景透明。
默认值:
默认为 false。

setTransparent

public void setTransparent(boolean value)
已过时。 
设置缓存图片是否背景透明。默认为 false。

参数:
value - 缓存图片是否背景透明。

getImageType

public CacheImageType getImageType()
已过时。 
返回缓存图片的类型。

返回:
缓存图片的类型,默认为 CacheImageType.JPG
默认值:
默认值为 CacheImageType.JPG

setImageType

public void setImageType(CacheImageType cacheImageType)
已过时。 
设置缓存图片的类型。

参数:
cacheImageType - 缓存图片的类型,默认为 CacheImageType.PNG

getStorageType

public StorageType getStorageType()
已过时。 
返回缓存的存储方式。

返回:
缓存的存储方式。
默认值:
默认值为 StorageType.Original ,即原始模式。

setStorageType

public void setStorageType(StorageType storageType)
已过时。 
设置缓存的存储方式

参数:
storageType - 缓存的存储方式。

getBeginLevel

public int getBeginLevel()
已过时。 
返回开始生成缓存的层数。

层是存放数据的根节点,每层存放了不同比例尺下的数据,开始的层数用来指定显示数据的最小分辨率。

返回:
开始生成缓存的层数。
默认值:
默认值为 0。

setBeginLevel

public void setBeginLevel(int value)
已过时。 
设置开始生成缓存的层数。

层是存放数据的根节点,每层存放了不同比例尺下的数据,开始的层数用来指定显示数据的最小分辨率。

参数:
value - 开始生成缓存的层数。

getEndLevel

public int getEndLevel()
已过时。 
返回结束生成缓存的层数。

层是存放数据的根节点,每层存放了不同比例尺下的数据,结束的层数用来指定显示数据的最高分辨率。

返回:
结束生成缓存的层数。
默认值:
默认值为 4。

setEndLevel

public void setEndLevel(int value)
已过时。 
设置结束生成缓存的层数。

层是存放数据的根节点,每层存放了不同比例尺下的数据,结束的层数用来指定显示数据的最高分辨率。

参数:
value - 结束生成缓存的层数。

build

public boolean build()
已过时。 
创建地图缓存。

返回:
一个布尔值,创建缓存成功返回 true,否则返回 false。

computeLevel

public boolean computeLevel()
已过时。 
计算生成缓存的数据集所适合的缓存层数。

在有参构造函数中会自动调用该方法。但用户在调用 setMap() 方法时,将不会自动执行该方法。

返回:
一个布尔值,计算成功返回 true,否则返回 false。

computeImageFileName

public java.lang.String[] computeImageFileName()
已过时。 
返回计算得到的各个层上的缓存图片名称列表。

返回:
计算得到的各个层上的缓存图片名称列表。

computeImageFileName

public java.lang.String[] computeImageFileName(int specialLevel)
已过时。 
根据参数指定的缓存层数计算该层下的缓存图片名称列表。

参数:
specialLevel - 指定的层数。
返回:
计算得到的各个层上的缓存图片名称列表。

toConfigFile

public boolean toConfigFile(java.lang.String filename)
已过时。 
将对象的相关属性信息写到指定的文件中,文件的后缀名为 .sci3d,即缓存数据的配置文件。

setMap() 方法的设置值不会写到文件中。

参数:
filename - 指定文件的路径。
返回:
一个布尔值,若保存缓存配置文件成功返回 true,否则返回 false。

fromConfigFile

public boolean fromConfigFile(java.lang.String filename)
已过时。 
导入缓存文件,根据缓存数据的配置文件中的内容来指定相关设置的值。

该方法不会对 setMap() 方法的设置值进行修改。

参数:
filename - 缓存配置文件的路径。
返回:
一个布尔值,若导入缓存配置文件成功返回 true,否则返回 false。

addSteppedListener

public void addSteppedListener(SteppedListener l)
已过时。 
添加一个用于接收进度条事件(SteppedEvent)的监听器。

参数:
l - 一个用于接收进度条事件的监听器。

removeSteppedListener

public void removeSteppedListener(SteppedListener l)
已过时。 
移除一个用于接收进度条事件(SteppedEvent)的监听器。

参数:
l - 一个用于接收进度条事件的监听器。

buildWithoutConfigFile

public boolean buildWithoutConfigFile()
已过时。 
为地图对象创建三维地图缓存。使用该方法创建缓存不会生成三维地图缓存的配置文件。

返回:
一个布尔值,若创建缓存成功,返回 true,否则返回 false。

getPassword

public java.lang.String getPassword()
已过时。 
返回用于创建缓存时对数据进行加密的密码。在添加图层时,需要使用该密码才能成功添加。如果使用默认值,便可不指定密码便能打开。

该密码不会写到缓存数据的配置文件中,同时,fromConfigFile() 方法也不会还原该密码。

返回:
用于创建缓存时对数据进行加密的密码。
默认值:
默认值为一个空的字符串。

setPassword

public void setPassword(java.lang.String value)
已过时。 
设置用于创建缓存时对数据进行加密的密码。在添加图层时,需要使用该密码才能成功添加。如果使用默认值,便可不指定密码便能打开。

注意:当 StorageType.Original 时,该方法是无效的;当 StorageType.Compact 时,该方法才有效。

参数:
value - 用于创建缓存时对数据进行加密的密码。

dispose

public void dispose()
已过时。 
释放该对象所占用的资源。当调用该方法之后,此对象不再可用。


isFillMargin

public boolean isFillMargin()
已过时。 
返回缓存图片是否填充空白区域,true,表示填充空白区域;false,表示不填充。

返回:
一个布尔值,用来指示缓存图片是否填充空白区域,true,表示填充空白区域;false,表示不填充。

setFillMargin

public void setFillMargin(boolean bool)
已过时。 
设置缓存图片是否填充空白区域,true,表示填充空白区域;false,表示不填充。

参数:
bool - 一个布尔值,用来指示缓存图片是否填充空白区域,true,表示填充空白区域;false,表示不填充。

getTilingMode

public MapTilingMode getTilingMode()
已过时。 
获取地图生成缓存的剖分方式。

返回:
剖分方式

setTilingMode

public void setTilingMode(MapTilingMode mode)
已过时。 
设置地图生成缓存的剖分方式。

参数:
mode - 剖分方式

getBuildFromOriginalResolution

public boolean getBuildFromOriginalResolution()
已过时。 
获取是否由精细层缓存往上合并


setBuildFromOriginalResolution

public void setBuildFromOriginalResolution(boolean buildFromOriginalResolution)
已过时。 
设置是否由精细层缓存往上合并


compressTextureAndGeometry

public static boolean compressTextureAndGeometry(java.lang.String scpPath,
                                                 java.lang.String outputFolder,
                                                 CompressedTextureType compressedTextureType,
                                                 VertexOptimizationType vertexOptimizationType,
                                                 int threadCount)
已过时。 
精模缓存纹理和几何再压缩


isCalTangentAndBinormal

public boolean isCalTangentAndBinormal()
已过时。 
获取获是否重新计算切线、副切线


setCalTangentAndBinormal

public void setCalTangentAndBinormal(boolean isCalTangentAndBinormal)
已过时。 
设置是否重新计算切线、副切线