一、加载地图控件和默认场景 |
SceneControl 三维场景控件,主要用来浏览三维场景、进行动态飞行浏览、控制图层等三维操作的工作窗口。
一个三维场景控件(SceneControl)对应一个三维场景(Scene),即一个三维场景窗口中只能显示一个三维场景。
在本节内容主要展示了,如何加载三维场景控件,并且打开默认的三维场景。
接口 | 说明 | |
---|---|---|
layer3DServicesList | 获取 SuperMap iServer 8C(2017) 服务端发布的三维图层集合服务列表。 | |
asyncHelper | 设置当前设置的异步助手。使得用户可以通过异步下载的方式获取场景服务中的图层。 | |
scene | 获取三维场景。一个三维场景控件中只支持一个三维场景,但是可以使用 scene 中 open 接口打开不同的 scene,在打开新场景前需要关闭旧场景。 | |
sceneAction | 获取或设置用户当前操作类型。 | |
sceneServicesList | 获取 SuperMap iServer 8C(2017) |
接口 | 说明 | |
---|---|---|
addEvent | 在地图控件中添加事件,将事件与回调函数 handler 绑定。即当 eventName 指定的事件发生时,完成 handler 回调函数的操作。 | |
checkPluginVersion | 判断当地控件版本是否为最新。若不是最新版本,则获取新版本的下载地址。 | |
getPluginVersion | 获取本地插件的版本号。 | |
pixelToGlobe | 将屏幕二维点 Point 转换成地理坐标系下的三维点 Point3D。 | |
removeEvent | 移除与事件绑定的指定回调函数 handler。 | |
resetTerrain | 重置地形图层。对地形图层进行增、删、可见不可见设置时都需要调用此函数刷新地形显示。 | |
save | 保存当前场景配置为 GML 标准的 XML 文件,并上传到服务器。 | |
setRefreshRaster | 设置实时栅格化是否刷新。在三维系统中如果出现栅格数据显示问题,可以调用该函数仅刷新栅格数据的显示。 | |
viewEntire | 全幅显示三维地图场景。 |
在任意位置新建文件夹 “GettingStarted”,用户也可自定义该文件夹名字。
将 “lib” 脚本库文件夹和 samplecode/samplecode 文件夹中的“images” 图片文件夹放入 “GettingStarted” 文件夹下。
在 “GettingStarted” 文件夹下创建一个名为 “Scripts” 的文件夹用于存放脚本文件。
然后在 “Scripts” 下创建名为 “SuperMap.Include.js” 和 “GettingStarted.js” 两个脚本文件,其中 “GettingStarted.js” 文件实现具体的功能,“SuperMap.Include.js” 文件是代码库引用文件列表。需要注意的是两个 js 文件都需要保存为 UTF-8 格式。在“SuperMap.Include.js” 文件夹中添加以下代码:
JavaScript | 拷贝代码 |
---|---|
|
JavaScript | 拷贝代码 |
---|---|
|
JavaScript | 拷贝代码 |
---|---|
|
图1 加载地图控件和默认场景