com.supermap.data.processing
类 VectorCacheBuilder
- java.lang.Object
-
- com.supermap.data.InternalHandle
-
- com.supermap.data.InternalHandleDisposable
-
- com.supermap.data.processing.VectorCacheBuilder
-
- 所有已实现的接口:
- IDisposable
public class VectorCacheBuilder extends com.supermap.data.InternalHandleDisposable矢量瓦片生成类,该类主要用于为矢量数据生成供三维场景发布使用的矢量瓦片,其配置文件为 *.scv 格式。scv矢量瓦片目前已经废弃,使用OSGBVectorCacheBuilder替代若需要生成瓦片的原始数据集的数量较大,如100,1000,建议用户将这些数据集配成一张地图,然后生成二维或三维地图瓦片,关于二三维地图瓦片的生成可参见 MapCacheBuilder、MapCache3DBuilder 类。
关于矢量瓦片的详细介绍请参见《二三维瓦片》技术文档。
在原始数据集数据量较大的情况下(记录大于1000条),可先对原始数据建立空间索引,采用这种方法可使得生成瓦片的效率大幅提高,如何对矢量数据集建立索引可参考
DatasetVector.buildSpatialIndex()方法。- 示范代码:
- 以下代码示范如何在数据量大的情况下快速生成矢量瓦片。假设打开一个工作空间
workspace对象,工作空间中存在一个数据源datasource对象,此数据源中包含一个名为 OlympicGreen 的 CAD 模型数据集 dataset_olympicGreen。public void buildSCV(DatasetVector dataset_olympicGreen) { // 对CAD模型数据集建立空间索引,由于复合数据集不支持多级网格索引,因此对其建立R树索引 dataset_olympicGreen.buildSpatialIndex(SpatialIndexType.RTREE); VectorCacheBuilder cacheBuilder = new VectorCacheBuilder(); // 设置瓦片名称 cacheBuilder.setCacheName("model"); // 设置瓦片存储路径 cacheBuilder.setOutputFolder("../OlympicGreen/"); // 设置用于创建瓦片的CAD模型数据集 cacheBuilder.setDataset(dataset_olympicGreen); // 设置开始生成瓦片的层数 cacheBuilder.setLevel(13); // 生成瓦片 if(cacheBuilder.build()){ System.out.println("生成瓦片成功!"); } else{ System.out.println("生成瓦片失败!"); } }
-
-
构造器概要
构造器 构造器和说明 VectorCacheBuilder()构造一个新的矢量瓦片生成类对象。VectorCacheBuilder(DatasetVector dataset, String outputFolder, String cacheName)根据指定的参数,构造一个新的矢量瓦片生成类对象。VectorCacheBuilder(Recordset recordset, String outputFolder)根据指定的参数,构造一个新的矢量瓦片生成类对象。VectorCacheBuilder(Recordset recordset, String outputFolder, String cacheName)根据指定的参数,构造一个新的矢量瓦片生成类对象。
-
方法概要
所有方法 静态方法 实例方法 具体方法 已过时的方法 限定符和类型 方法和说明 voidaddSteppedListener(SteppedListener l)添加一个用于接收进度条事件(SteppedEvent)的监听器。BooleanaddTileInfoToConfigFile(double scale, int row, int col)已过时。booleanbuild()创建矢量瓦片。booleanbuildTexture(String texPath, int level)已过时。booleanbuildWithoutConfigFile()已过时。String[]computeFileName()已过时。booleancomputeLevel()已过时。voiddispose()释放该对象所占用的资源。booleanfromConfigFile(String path)已过时。Rectangle2DgetBounds()返回生成瓦片的地理范围。StringgetCacheName()返回生成瓦片的配置文件的名称。CompressedTextureTypegetCompressedTextureType()返回生成模型瓦片时的压缩纹理的格式。ArrayList<byte[]>getConfigStream(ConfigType configType)已过时。DatasetVectorgetDataset()返回需要生成瓦片的矢量数据集。PrjCoordSysTypegetDynamicPrjCoordSysType()返回动态投影坐标系类型。EncodeTypegetEncodeType()返回生成瓦片文件的压缩类型。String[]getFieldNames()已过时。intgetLevel()已过时。StringgetOutputFolder()返回生成瓦片的存储路径。doublegetOutputScale()获取矢量瓦片的比例尺。StringgetPassword()返回用于为地图对象创建瓦片时对数据进行加密的密码。RecordsetgetRecordset()返回需要生成瓦片的记录集。StorageTypegetStorageType()返回瓦片存储方式。Tile[]getTiles(Rectangle2D tileBounds, double scale, VectorCacheTileType eTileType)已过时。doublegetTileWidth()获取TileWidthintgetUpdateSize()已过时。VectorCacheTileTypegetVectorCacheTileType()已过时。BooleanisTileExistsInConfigFile(double scale, int row, int col)已过时。voidremoveSteppedListener(SteppedListener l)移除一个用于接收进度条事件(SteppedEvent)的监听器。voidsetBounds(Rectangle2D value)设置生成瓦片的地理范围。voidsetCacheName(String value)设置生成瓦片的配置文件的名称。voidsetCompressedTextureType(CompressedTextureType value)已过时。voidsetDataset(DatasetVector value)已过时。voidsetDynamicPrjCoordSysType(PrjCoordSysType prjType)设置动态投影坐标系。voidsetEncodeType(EncodeType encodeType)已过时。voidsetFieldNames(String[] value)已过时。static voidsetIsDisposable(com.supermap.data.InternalHandleDisposable obj, boolean disposable)voidsetLevel(int value)已过时。voidsetOutputFolder(String value)设置生成瓦片的存储路径。voidsetOutputScale(double scale)已过时。voidsetPassword(String value)设置用于为地图对象创建瓦片时对数据进行加密的密码。voidsetRecordset(Recordset value)已过时。voidsetStorageType(StorageType value)已过时。voidsetTileWidth(double tileWidthValue)设置TileWidthvoidsetUpdateSize(int value)已过时。voidsetVectorCacheTileType(VectorCacheTileType eTileType)已过时。booleantoConfigFile(String path)已过时。
-
-
-
构造器详细资料
-
VectorCacheBuilder
public VectorCacheBuilder()
构造一个新的矢量瓦片生成类对象。
-
VectorCacheBuilder
public VectorCacheBuilder(Recordset recordset, String outputFolder)
根据指定的参数,构造一个新的矢量瓦片生成类对象。该构造函数生成的瓦片对象的名字与 Recordset 对应的 Dataset 的名称相同。
- 参数:
recordset- 用于生成瓦片的记录集。outputFolder- 生成瓦片的存储路径。
-
VectorCacheBuilder
public VectorCacheBuilder(Recordset recordset, String outputFolder, String cacheName)
根据指定的参数,构造一个新的矢量瓦片生成类对象。- 参数:
recordset- 用于生成瓦片的记录集。outputFolder- 生成瓦片的存储路径。cacheName- 生成瓦片的配置文件的名称。
-
VectorCacheBuilder
public VectorCacheBuilder(DatasetVector dataset, String outputFolder, String cacheName)
根据指定的参数,构造一个新的矢量瓦片生成类对象。- 参数:
dataset- 用于生成瓦片的矢量数据集。outputFolder- 生成瓦片的存储路径。cacheName- 生成瓦片的配置文件的名称。
-
-
方法详细资料
-
getRecordset
public Recordset getRecordset()
返回需要生成瓦片的记录集。- 返回:
- 需要生成瓦片的记录集。
-
setRecordset
@Deprecated public void setRecordset(Recordset value)
已过时。
-
getDataset
public DatasetVector getDataset()
返回需要生成瓦片的矢量数据集。- 返回:
- 需要生成瓦片的矢量数据集。
-
setDataset
@Deprecated public void setDataset(DatasetVector value)
已过时。
-
getFieldNames
@Deprecated public String[] getFieldNames()
已过时。
-
setFieldNames
@Deprecated public void setFieldNames(String[] value)
已过时。
-
getBounds
public Rectangle2D getBounds()
返回生成瓦片的地理范围。- 返回:
- 生成瓦片的地理范围。
-
setBounds
public void setBounds(Rectangle2D value)
设置生成瓦片的地理范围。- 参数:
value- 生成瓦片的地理范围。
-
getCacheName
public String getCacheName()
返回生成瓦片的配置文件的名称。- 返回:
- 生成瓦片的配置文件的名称。
-
setCacheName
public void setCacheName(String value)
设置生成瓦片的配置文件的名称。- 参数:
value- 生成瓦片的配置文件的名称。
-
getOutputFolder
public String getOutputFolder()
返回生成瓦片的存储路径。- 返回:
- 生成瓦片的存储路径。
-
setOutputFolder
public void setOutputFolder(String value)
设置生成瓦片的存储路径。- 参数:
value- 生成瓦片的存储路径。
-
getStorageType
public StorageType getStorageType()
返回瓦片存储方式。- 返回:
- 瓦片存储方式。
- 默认值:
- 默认值为
StorageType.Original,即原始模式。
-
setStorageType
@Deprecated public void setStorageType(StorageType value)
已过时。
-
getLevel
@Deprecated public int getLevel()
已过时。
-
setLevel
@Deprecated public void setLevel(int value)
已过时。
-
getUpdateSize
@Deprecated public int getUpdateSize()
已过时。
-
setUpdateSize
@Deprecated public void setUpdateSize(int value)
已过时。
-
getPassword
public String getPassword()
返回用于为地图对象创建瓦片时对数据进行加密的密码。在添加图层时,需要使用该密码才能成功添加。如果使用默认值,便可不指定密码便能打开。该密码不会写到瓦片数据的配置文件中,同时,
fromConfigFile()方法也不会还原该密码。- 返回:
- 一个布尔值,若创建地图瓦片成功返回 true,否则返回 false。
- 默认值:
- 默认值为一个空的字符串。
-
setPassword
public void setPassword(String value)
设置用于为地图对象创建瓦片时对数据进行加密的密码。在添加图层时,需要使用该密码才能成功添加。如果使用默认值,便可不指定密码便能打开。该密码不会写到瓦片数据的配置文件中,同时,
fromConfigFile()方法也不会还原该密码。注意:当 StorageType.Original 时,该方法是无效的;当 StorageType.Compact 时,该方法才有效。
- 参数:
value- 用于为地图对象创建瓦片时对数据进行加密的密码。
-
build
public boolean build()
创建矢量瓦片。- 返回:
- 一个布尔值,若创建瓦片成功返回 true,否则返回 false。
-
buildWithoutConfigFile
@Deprecated public boolean buildWithoutConfigFile()
已过时。
-
buildTexture
@Deprecated public boolean buildTexture(String texPath, int level)
已过时。
-
computeFileName
@Deprecated public String[] computeFileName()
已过时。
-
computeLevel
@Deprecated public boolean computeLevel()
已过时。
-
toConfigFile
@Deprecated public boolean toConfigFile(String path)
已过时。
-
fromConfigFile
@Deprecated public boolean fromConfigFile(String path)
已过时。
-
dispose
public void dispose()
释放该对象所占用的资源。当调用该方法之后,此对象不再可用。
-
addSteppedListener
public void addSteppedListener(SteppedListener l)
添加一个用于接收进度条事件(SteppedEvent)的监听器。- 参数:
l- 一个用于接收进度条事件的监听器。
-
removeSteppedListener
public void removeSteppedListener(SteppedListener l)
移除一个用于接收进度条事件(SteppedEvent)的监听器。- 参数:
l- 一个用于接收进度条事件的监听器。
-
getEncodeType
public EncodeType getEncodeType()
返回生成瓦片文件的压缩类型。矢量瓦片仅支持None和LZW两种压缩格式,即:仅支持 EncodeType.LZW 或 EncodeType.NONE 类型。
- 返回:
- 生成瓦片文件的压缩类型。
- 默认值:
- 默认值为
EncodeType.LZW,即ZIP压缩模式。
-
setEncodeType
@Deprecated public void setEncodeType(EncodeType encodeType)
已过时。瓦片压缩方式
-
getCompressedTextureType
public CompressedTextureType getCompressedTextureType()
返回生成模型瓦片时的压缩纹理的格式。对压缩纹理的格式的详细介绍请参见CompressedTextureType枚举类的说明。- 默认值:
- 默认值为
CompressedTextureType.DDS。
-
setCompressedTextureType
@Deprecated public void setCompressedTextureType(CompressedTextureType value)
已过时。模型瓦片压缩纹理类型
-
getVectorCacheTileType
@Deprecated public VectorCacheTileType getVectorCacheTileType()
已过时。瓦片类型
-
setVectorCacheTileType
@Deprecated public void setVectorCacheTileType(VectorCacheTileType eTileType)
已过时。瓦片类型
-
setOutputScale
@Deprecated public void setOutputScale(double scale)
已过时。
-
getOutputScale
public double getOutputScale()
获取矢量瓦片的比例尺。
-
getDynamicPrjCoordSysType
public PrjCoordSysType getDynamicPrjCoordSysType()
返回动态投影坐标系类型。- 返回:
- 返回动态投影坐标系类型。
-
setDynamicPrjCoordSysType
public void setDynamicPrjCoordSysType(PrjCoordSysType prjType)
设置动态投影坐标系。- 参数:
prjType- 动态投影坐标系类型。
-
isTileExistsInConfigFile
@Deprecated public Boolean isTileExistsInConfigFile(double scale, int row, int col)
已过时。
-
addTileInfoToConfigFile
@Deprecated public Boolean addTileInfoToConfigFile(double scale, int row, int col)
已过时。
-
getTiles
@Deprecated public Tile[] getTiles(Rectangle2D tileBounds, double scale, VectorCacheTileType eTileType)
已过时。根据bound动态切图获取瓦片数据
-
getTileWidth
public double getTileWidth()
获取TileWidth
-
setTileWidth
public void setTileWidth(double tileWidthValue)
设置TileWidth
-
getConfigStream
@Deprecated public ArrayList<byte[]> getConfigStream(ConfigType configType)
已过时。获得ConfigData- 参数:
configType-- 返回:
-
setIsDisposable
public static void setIsDisposable(com.supermap.data.InternalHandleDisposable obj, boolean disposable)
-
-
Copyright © 2021–2025 SuperMap. All rights reserved.