接口 Realspace
-
- 所有已知实现类:
- RealspaceImpl
public interface Realspace
三维服务组件接口。
三维服务组件是一类 GIS 服务组件,封装了与三维相关的 GIS 功能。
在 SuperMap iServer 中,三维(Realspace)包括三维数据和三维场景(Scene)两个组成部分,三维数据提供了具体的数据, 三维场景提供了对三维数据的展现,形式上等同于二维中的数据和地图。
三维数据包括矢量数据、地图、影像、地形、模型、KML 数据等,目前 SuperMap iServer 不仅支持发布这些源数据,还支持发布对这些源数据进行预处理之后生成的三维缓存数据,该数据在缓存预处理过程中进行了分层和分块处理; 对于 KML 数据而言,对应一个 KML 数据。
三维场景的主体是一个模拟地球的三维球体(半径为6378137 米),该球体具有地理参考,球体上的点采用经纬度进行定位, 并且可以通过三维场景提供的球体上的经纬网格,方便地浏览;同时,使用全球的遥感影像图作为背景覆盖在球体表面, 增强三维球体模拟的逼真性;除此之外,三维场景还模拟了地球所处的环境,包括:宇宙的星空,地球的大气环境,地球表面的雾环境等。 三维场景还提供了相机的设置,相机可以用来控制对球体的观测角度、方位和观测范围,从而以不同的视角呈现球体的不同部位。 SuperMap iServer 通过
SceneInfo
对象来表达三维场景的信息。 三维场景用于加载三维图层(Layer3D
),一个三维图层对应一个三维数据。
-
-
方法概要
方法 限定符和类型 方法和说明 boolean
cleanCacheData(java.lang.String dataName)
清除动态发布数据的缓存。java.lang.String
getCacheAccessKey()
返回用于对缓存数据进行加密的密码。RealspaceDataResult
getData(RealspaceDataParam dataParam)
获取三维瓦片数据结果。RealspaceDataResult
getData(java.lang.String sceneName, java.lang.String layerName, RealspaceDataParam dataParam)
根据场景名以及图层名及瓦片 参数三维瓦片数据结果。byte[]
getDataConfig(java.lang.String dataName)
根据名称获取三维缓存数据的配置文件。byte[]
getDataConfig(java.lang.String dataName, CompressType compressType)
根据名称获取三维缓存数据的配置文件。java.util.List<RealspaceDataInfo>
getDataInfos()
获取所有的三维数据信息。java.lang.String
getDataVersion(java.lang.String dataName, int xIndex, int yIndex, int level, java.lang.String fileExtension)
根据索引获取瓦片数据的最新版本号。java.lang.String
getDataVersion(java.lang.String dataName, java.lang.String relativePath)
根据相对路径获取瓦片数据的最新版本号。java.lang.String
getLayerExtendXML(java.lang.String sceneName, java.lang.String layerName)
获取指定图层的图层扩展信息PrjCoordSys
getLayerPrj(java.lang.String sceneName, java.lang.String layerName)
获取指定图层的投影信息byte[]
getModelIndex(java.lang.String dataName)
根据名称获取三维模型缓存数据的模型索引文件。java.util.List<OfflineDataInfo>
getOfflineDataPaths(java.lang.String sceneName, java.lang.String layerName)
获取特定三维场景下特定三维图层所有的离线数据路径SceneInfo
getSceneInfo(java.lang.String sceneName)
根据三维场景的名称,获取三维场景的信息。java.util.List<java.lang.String>
getSceneNames()
返回所有可用的三维场景的名称。RealspaceTilesRevisionInfo
getTilesRevisionInfo(java.lang.String dataName, long revisionNumber)
获取指定版本号的瓦片变更 信息。byte[]
getVectorIndex(java.lang.String dataName)
根据名称获取三维矢量缓存数据的索引文件。boolean
isCacheCanReuse()
三维缓存是否允许拷贝和重用。boolean
isDataAvailable(java.lang.String dataName)
三维数据是否可用。boolean
isSceneAvailable(java.lang.String sceneName)
三维场景是否可用。boolean
isSecurityEnabled()
是否启用安全机制。RealspaceDataResult[]
outputDataToMemory(java.lang.String sceneName, java.lang.String layerName, Output3DDataToMemoryParam dataParam)
根据场景名以及图层名将三维瓦片生成到内存中
-
-
-
方法详细资料
-
getSceneNames
java.util.List<java.lang.String> getSceneNames() throws RealspaceException
返回所有可用的三维场景的名称。- 返回:
- 可用的场景名称列表。
- 抛出:
RealspaceException
- 三维异常信息。
-
getSceneInfo
SceneInfo getSceneInfo(java.lang.String sceneName) throws RealspaceException
根据三维场景的名称,获取三维场景的信息。- 参数:
sceneName
- 三维场景的名称。- 返回:
- 三维场景信息。
- 抛出:
RealspaceException
- 三维异常信息。
-
getData
RealspaceDataResult getData(RealspaceDataParam dataParam) throws RealspaceException
获取三维瓦片数据结果。- 参数:
dataParam
- 瓦片参数。- 抛出:
RealspaceException
-
getData
RealspaceDataResult getData(java.lang.String sceneName, java.lang.String layerName, RealspaceDataParam dataParam) throws RealspaceException
根据场景名以及图层名及瓦片 参数三维瓦片数据结果。- 参数:
sceneName
- 场景名。layerName
- 图层名。dataParam
- 瓦片参数。- 抛出:
RealspaceException
-
getDataVersion
java.lang.String getDataVersion(java.lang.String dataName, int xIndex, int yIndex, int level, java.lang.String fileExtension) throws RealspaceException
根据索引获取瓦片数据的最新版本号。- 参数:
dataName
- 对应 SuperMap 三维场景中的三维图层的名称(LayerName)。xIndex
- 瓦片数据在 X 方向的索引。yIndex
- 瓦片数据在 Y 方向的索引。level
- 瓦片数据的层号,仅模型的三维缓存数据需要设置。fileExtension
- 瓦片数据的扩展名。包括 *.png,*.jpg,*.bil等。- 返回:
- 瓦片数据的版本。
- 抛出:
RealspaceException
- 三维异常信息。
-
getDataVersion
java.lang.String getDataVersion(java.lang.String dataName, java.lang.String relativePath) throws RealspaceException
根据相对路径获取瓦片数据的最新版本号。
瓦片数据相对路径的设置有以下情况:
- 对于地形和影像三维缓存数据来说,相对路径从缓存配置文件(SCT 和 SCI3D)所在的目录开始,也就是从缓存层号开始,缓存配置文件同级下存放了分层的缓存数据。比如缓存层号为12,那么相对路径为“12/.../.../缓存文件”。
- 对于模型三维缓存数据来说,相对路径从缓存配置文件的父一级目录开始,即从缓存层号目录开始,模型数据与地形和影像数据不同,在分层目录下存放的不是缓存之后的数据,而是模型缓存文件的索引文件(index),版本号指的也是该索引文件的版本号。
- KML 数据没有版本号。
- 参数:
dataName
- 三维数据的名称。对应 SuperMap 三维场景中的三维图层的名称(LayerName)。relativePath
- 瓦片数据的相对路径。- 返回:
- 瓦片数据的最新版本号。
- 抛出:
RealspaceException
- 三维异常信息。
-
getDataConfig
byte[] getDataConfig(java.lang.String dataName) throws RealspaceException
根据名称获取三维缓存数据的配置文件。- 参数:
dataName
- 三维数据的名称。对应 SuperMap 三维场景中的三维图层的名称(LayerName)。- 返回:
- 三维缓存数据的配置文件。
- 抛出:
RealspaceException
- 三维异常信息。
-
getDataConfig
byte[] getDataConfig(java.lang.String dataName, CompressType compressType) throws RealspaceException
根据名称获取三维缓存数据的配置文件。- 参数:
dataName
- 三维数据的名称。对应 SuperMap 三维场景中的三维图层的名称(LayerName)。- 返回:
- 三维缓存数据的配置文件。
- 抛出:
RealspaceException
- 三维异常信息。
-
getModelIndex
byte[] getModelIndex(java.lang.String dataName) throws RealspaceException
根据名称获取三维模型缓存数据的模型索引文件。
该文件以“index”为文件的扩展名,与模型缓存数据的配置文件(扩展名为“scm”的文件)位于同样的父目录下。
- 参数:
dataName
- 三维数据的名称。对应 SuperMap 三维场景中的三维图层的名称(LayerName)。- 返回:
- 模型的索引文件。
- 抛出:
RealspaceException
- 三维异常信息。
-
getVectorIndex
byte[] getVectorIndex(java.lang.String dataName) throws RealspaceException
根据名称获取三维矢量缓存数据的索引文件。
该文件以“dat”为文件的扩展名,与矢量缓存数据的配置文件(扩展名为“scv”的文件)位于同样的父目录下。
- 参数:
dataName
- 三维数据的名称。对应 SuperMap 三维场景中的三维图层的名称(LayerName)。- 返回:
- 矢量数据的索引文件。
- 抛出:
RealspaceException
- 三维异常信息。
-
getDataInfos
java.util.List<RealspaceDataInfo> getDataInfos() throws RealspaceException
获取所有的三维数据信息。- 返回:
- 三维数据信息。
- 抛出:
RealspaceException
- 三维异常信息。
-
isDataAvailable
boolean isDataAvailable(java.lang.String dataName) throws RealspaceException
三维数据是否可用。- 参数:
dataName
- 三维数据的名称。对应 SuperMap 三维场景中的三维图层的名称(LayerName)。- 返回:
- 三维数据可用返回 true;否则返回 false。
- 抛出:
RealspaceException
- 三维异常信息。
-
isSceneAvailable
boolean isSceneAvailable(java.lang.String sceneName) throws RealspaceException
三维场景是否可用。- 参数:
sceneName
- 三维场景的名称。- 返回:
- 三维场景可用返回 true;否则返回 false。
- 抛出:
RealspaceException
- 三维异常信息。
-
isSecurityEnabled
boolean isSecurityEnabled() throws RealspaceException
是否启用安全机制。
- 返回:
- 安全机制启用则返回 true;否则返回 false。
- 抛出:
RealspaceException
- 三维异常信息。
-
getCacheAccessKey
java.lang.String getCacheAccessKey() throws RealspaceException
返回用于对缓存数据进行加密的密码。
- 返回:
- 返回用于对缓存数据进行加密的密码。
- 抛出:
RealspaceException
- 三维异常信息。
-
cleanCacheData
boolean cleanCacheData(java.lang.String dataName) throws RealspaceException
清除动态发布数据的缓存。- 参数:
dataName
- 需清除缓存的数据名。- 返回:
- 成功清除则返回 true;否则返回 false。
- 抛出:
RealspaceException
- 三维异常信息。
-
getOfflineDataPaths
java.util.List<OfflineDataInfo> getOfflineDataPaths(java.lang.String sceneName, java.lang.String layerName) throws RealspaceException
获取特定三维场景下特定三维图层所有的离线数据路径- 参数:
sceneName
- 三维场景的名称。- 返回:
- 返回离线包位置
- 抛出:
RealspaceException
- 从以下版本开始:
- 6.1.3
-
isCacheCanReuse
boolean isCacheCanReuse()
三维缓存是否允许拷贝和重用。
- 返回:
- 从以下版本开始:
- 6.1.3
-
getTilesRevisionInfo
RealspaceTilesRevisionInfo getTilesRevisionInfo(java.lang.String dataName, long revisionNumber) throws RealspaceException
获取指定版本号的瓦片变更 信息。- 参数:
revisionNumber
- 版本号。- 返回:
- 变更 信息。
- 抛出:
RealspaceException
-
getLayerPrj
PrjCoordSys getLayerPrj(java.lang.String sceneName, java.lang.String layerName) throws RealspaceException
获取指定图层的投影信息- 参数:
sceneName
- 场景名layerName
- 图层名- 返回:
- 图层投影信息
- 抛出:
RealspaceException
- 从以下版本开始:
- 7.1.2
-
getLayerExtendXML
java.lang.String getLayerExtendXML(java.lang.String sceneName, java.lang.String layerName) throws RealspaceException
获取指定图层的图层扩展信息- 参数:
sceneName
- 场景名layerName
- 图层名- 返回:
- 图层扩展信息xml
- 抛出:
RealspaceException
- 从以下版本开始:
- 8.0.2
-
outputDataToMemory
RealspaceDataResult[] outputDataToMemory(java.lang.String sceneName, java.lang.String layerName, Output3DDataToMemoryParam dataParam) throws RealspaceException
根据场景名以及图层名将三维瓦片生成到内存中- 参数:
sceneName
- 场景名layerName
- 图层名dataParam
-- 返回:
- 生成的三维瓦片
- 抛出:
RealspaceException
- 从以下版本开始:
- 7.1.2
-
-