类 TerrainLayer
- java.lang.Object
-
- com.supermap.data.InternalHandle
-
- com.supermap.realspace.TerrainLayer
-
public class TerrainLayer extends com.supermap.data.InternalHandle
地形图层类。该类包含了地形图层对象的相关方法。
- 示范代码:
- 以下代码示范了如何将地形数据添加到三维场景中,即将SCT文件加入到三维场景中显示,假设已经存在SCT文件以及用于显示的缓存文件。
public void TestTerrainLayer() { // 返回三维场景窗口的三维场景对象,并进行三维场景的设置 SceneControl sceneControl = new SceneControl(); Scene sceneObject = sceneControl.getScene(); sceneObject.getAtmosphere().setVisible(true); sceneObject.setTerrainExaggeration(8); // 返回三维场景中的地形图层集合,并添加地形图层到地形图层集合中 TerrainLayers terrainLayers = sceneObject.getTerrainLayers(); TerrainLayer terrainLayer = terrainLayers.add("\\\\Dem.sct",true); terrainLayer.setVisible(true); // 将已有的SCI文件添加到三维场景中,作为影像图层与地形图层叠加显示在三维场景窗口中 Layer3D layerSCI = sceneObject.getLayers().add("\\\\beijing\\Image.sci",Layer3DType.KML,true); Layer3DSettingImage layer3DSettingImage = (Layer3DSettingImage) layerImage.getAdditionalSetting(); Rectangle2D viewRegion = layer3DSettingSCI.getBounds(); sceneObject.ensureVisible(viewRegion); sceneObject.refresh(); // 返回地形图层的信息并输出 String filePathSCT = terrainLayer.getSCTFile(); System.out.println("SCT文件的全路径为:" + filePathSCT); // 释放占用的资源 sceneControl.dispose(); }
-
-
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 int
getBeginLevel()
获取开始层数。Rectangle2D
getBounds()
返回地形图层数据的地理范围。String
getCaption()
返回地形图层的标题。String
getDataName()
返回地形数据的全路径。Dataset
getDataset()
返回地形图层所在的数据集。String
getDescription()
返回地形图层的描述信息。int
getEndLevel()
获取结束层数。boolean
getIsShowGlobe()
获取TIN地形是否显示无效值 。double
getLODRangeScale()
获取地形的LOD层级切换距离缩放系数。double
getMaxHeight()
获取该地形图层的最大高度值。double
getMinHeight()
获取该地形图层的最小高度值。String
getName()
返回地形图层的名称。String
getPassword()
返回密码字符串。TerrainType
getType()
获取地形类型。boolean
isVisible()
返回该图地形层是否可视。void
setCaption(String value)
设置地形图层的标题。void
setDescription(String value)
设置地形图层的描述信息。void
setIsShowGlobe(boolean value)
设置TIN地形是否显示无效值 。void
setLODRangeScale(double value)
设置地形的LOD层级切换距离缩放系数。void
setVisible(boolean value)
设置该图地形层是否可视。
-
-
-
方法详细资料
-
getName
public String getName()
返回地形图层的名称。- 返回:
- 地形图层的名称。
-
getCaption
public String getCaption()
返回地形图层的标题。- 返回:
- 地形图层的标题。
-
setCaption
public void setCaption(String value)
设置地形图层的标题。- 参数:
value
- 地形图层的标题。
-
getDescription
public String getDescription()
返回地形图层的描述信息。- 返回:
- 地形图层的描述信息。
-
setDescription
public void setDescription(String value)
设置地形图层的描述信息。- 参数:
value
- 地形图层的描述信息。
-
isVisible
public boolean isVisible()
返回该图地形层是否可视。- 返回:
- 该图地形层可视返回 true;否则返回 false。
-
setVisible
public void setVisible(boolean value)
设置该图地形层是否可视。- 参数:
value
- 一个布尔值指定该图地形层是否可视。
-
getDataName
public String getDataName()
返回地形数据的全路径。通过该地形数据返回相关信息,加载地形数据作为地形图层显示在三维场景窗口中。SCT(SuperMap Cache Terrain)是 SuperMap 自己的一种文件格式,是将数据量大的地形数据预处理形成缓存目录,即将数据量大的地形数据按照全球格网剖分模型,采用四叉树剖分法对大数据量的地形数据进行分层分块。SuperMap 的四叉树格网是按经纬网建立的全球统一格网剖分模型,范围上从经度-180度到180度分成列,从纬度-90度到90度分成行,随着视点的移动缩放,格网也就一分为四按四叉树分割原理进行分割,行列数各扩大2倍。
对于地形数据,SuperMap 分割的数据是合法的 SuperMap Dem/Grid 经纬度数据集,在最底层(根据使用习惯,最底层的地形数据应该是最清晰的)满足的150*150的尺寸大小,每个文件都是二进制 bit 流组成的 *.bil 格式文件,大小是 44KB。分层分块后所得的每一个 bil 文件的编号为这个文件所在全球格网的行列号。
另外,保存分层分块数据的缓存目录结果,类似金字塔。层:存放数据的根节点,每层存放了不同比例尺下的数据;行列:按照全球统一格网对球体进行剖分,会将球体剖分成 N 行 2N 列,行列号也组成了每个数据文件的名字。
形成缓存目录后,在缓存目录中同时生成的一个文件,该文件对生成的缓存进行了详细描述。例如缓存层数、缓存地理范围、缓存文件类型等,而这个文件就是 SCT 文件,该文件可以使用文本浏览器打开浏览。系统通过加载 SCT 文件,获得缓存信息,从而将预处理后的地形数据作为一个图层显示在三维场景窗口中,我们称该图层为地形图层。
其中,预处理生成的缓存文件扩展名为 *.bil。
- 返回:
- 地形数据的全路径。
-
getBounds
public Rectangle2D getBounds()
返回地形图层数据的地理范围。SCT(SuperMap Cache Terrain)是 SuperMap 自己的一种文件格式,是将数据量大的地形数据预处理形成缓存目录,即将数据量大的地形数据按照全球格网剖分模型,采用四叉树剖分法对大数据量的地形数据进行分层分块。SuperMap 的四叉树格网是按经纬网建立的全球统一格网剖分模型,范围上从经度-180度到180度分成列,从纬度-90度到90度分成行,随着视点的移动缩放,格网也就一分为四按四叉树分割原理进行分割,行列数各扩大2倍。
对于地形数据,SuperMap 分割的数据是合法的 SuperMap Dem/Grid 经纬度数据集,在最底层(根据使用习惯,最底层的地形数据应该是最清晰的)满足的150*150的尺寸大小,每个文件都是二进制 bit 流组成的 *.bil 格式文件,大小是 44KB。分层分块后所得的每一个 bil 文件的编号为这个文件所在全球格网的行列号。
另外,保存分层分块数据的缓存目录结果,类似金字塔。层:存放数据的根节点,每层存放了不同比例尺下的数据;行列:按照全球统一格网对球体进行剖分,会将球体剖分成 N 行 2N 列,行列号也组成了每个数据文件的名字。
形成缓存目录后,在缓存目录中同时生成的一个文件,该文件对生成的缓存进行了详细描述。例如缓存层数、缓存地理范围、缓存文件类型等,而这个文件就是 SCT 文件,该文件可以使用文本浏览器打开浏览。系统通过加载 SCT 文件,获得缓存信息,从而将预处理后的地形数据作为一个图层显示在三维场景窗口中,我们称该图层为地形图层。
其中,预处理生成的缓存文件扩展名为 *.bil。
- 返回:
- 地形图层数据的地理范围。
-
getPassword
public String getPassword()
返回密码字符串。- 返回:
- 密码字符串。
-
getDataset
public Dataset getDataset()
返回地形图层所在的数据集。- 返回:
- 返回地形图层所在的数据集。
-
getType
public TerrainType getType()
获取地形类型。- 返回:
-
getBeginLevel
public int getBeginLevel()
获取开始层数。- 返回:
-
getEndLevel
public int getEndLevel()
获取结束层数。- 返回:
-
getIsShowGlobe
public boolean getIsShowGlobe()
获取TIN地形是否显示无效值 。- 返回:
-
setIsShowGlobe
public void setIsShowGlobe(boolean value)
设置TIN地形是否显示无效值 。- 参数:
value
-
-
getLODRangeScale
public double getLODRangeScale()
获取地形的LOD层级切换距离缩放系数。- 返回:
-
setLODRangeScale
public void setLODRangeScale(double value)
设置地形的LOD层级切换距离缩放系数。- 参数:
value
-
-
getMaxHeight
public double getMaxHeight()
获取该地形图层的最大高度值。- 返回:
-
getMinHeight
public double getMinHeight()
获取该地形图层的最小高度值。- 返回:
-
-
Copyright © 2021–2024 SuperMap. All rights reserved.