# 地图创建
# 平台入口
在index.html
初始化创建地图所需的div
并引入Fast3D SDK
,示例中id为cesiumContainer
,SDK采用完整版引入方式。
<!DOCTYPE html>
<html class="no-js css-menubar" lang="zh-cn">
<head>
<title>三维地球</title>
<meta charset="utf-8">
<script type="text/javascript" src="lib/include-lib.js" libpath="lib/"
include="jquery,cesium-fast,cesium-GL,toastr,cesium-plugins,cesium-HPU,echarts-gl,leaflet">
</script>
<link href="css/style.css" rel="stylesheet" />
</head>
<body class="dark">
<div id="centerDiv">
<div id="cesiumContainer" class="cesium-container"></div>
</div>
<!--业务代码-->
<script src="js/index.js"></script>
</body>
</html>
# 业务代码
index.js
包含初始化地图以及地图创建前后需要执行的业务代码。
$(document).ready(function() {
beforeCreateMap();
initMap();
})
var viewer;
//初始化地图
function initMap() {
var configfile = haoutil.system.getRequestByName("config", "config.json");
fast3dbase.createMap({
id: 'cesiumContainer',
url:configfile,
infoBox: false, //是否显示点击要素之后显示的信息
layerToMap: layerToMap,
success: function(_viewer, gisdata, jsondata) { //地图成功加载完成后执行
viewer = _viewer;
fast3dbase.widget.init(_viewer, jsondata.widget);
afterCreateMap();
}
});
}
function beforeCreateMap(){
//地图创建前相关代码
}
function afterCreateMap(){
//地图创建后相关代码
}
//config中非底层类库封装类,可以在此加入进行实例化
function layerToMap(item, viewer, layer) {
}
# createMap 参数选项
Option参数 | 参数类型 | 默认值 | 说明 |
---|---|---|---|
id | String | 必须传入 | 地图Div容器的id。 |
url | String | url或data参数必须有一个有值 | 框架规定规范的地图配置信息的Json文件url地址(该json文件中有map3d节点) |
data | Object | url或data参数必须有一个有值 | 框架规定规范的地图配置信息的Json文件Object对象(只需要类似config.json中的map3d节点数据即可) |
success | function | null | success: function (viewer, jsondata) { //viewer为Cesium规范的viewer地图对象 //gisdata为地图创建完成后的一些有用的对象集合,如控件、图层、配置等信息 //jsondata为url或data参数传入后读取到的json数据对象 } |
serverURL | String | 会替换图层中配置的url地址中的$serverURL$参数为该值,用于统一配置url中GIS服务器的ip和端口的变量,方便部署 | |
* | * | * | 支持所有config.json中可以配置的属性 ,此处优秀级高于config.josn,会覆盖config.json中的设置。 |
# url 返回配置
框架规定规范的地图配置信息的Object格式数据,见详细配置