MchMap

引入及初始化

基本用法:

在html文件中引入

"https://mhc.ixiera.com/mhc/Cesium-1.120/Build/Cesium/Cesium.js"和"https://mhc.ixiera.com/mhc/Cesium3DTile.js"

并添加一个div容器,设置id属性

创建实例:MchCesium.init(containerId)

代码示例:

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <script src="https://mhc.ixiera.com/mhc/main.js"></script>
        <script src="https://mhc.ixiera.com/mhc/Cesium-1.120/Build/Cesium/Cesium.js"></script>
        <script src="https://mhc.ixiera.com/mhc/Cesium3DTile.js"></script>
        <title>初始化地图</title>
    </head>
    <body>
        <div id="cesiumContainer"></div>
        <script>
            MchCesium.init('cesiumContainer')
        </script>
    </body>

</html>

高级使用方法

参数说明(为了兼容老版本)

参数数据类型是否必填说明
containerIdString必填三维地图容器 DOM 的 id(不带 #)
arg2Boolean | Object选填兼容参数,见下方"三种写法"
arg3Object选填当第二个参数是 Boolean 时,作为配置对象传入

三种写法(自动识别)

//  写法一:只传容器 id(推荐)
MchCesium.init('cesiumContainer');

//  写法二:老项目兼容(第二个参数传 Boolean,当前版本已无实际作用)
//   保留目的是让历史页面 MchCesium.init('map', true) 不报错、行为不变
MchCesium.init('task_manage_detail_map', true);
MchCesium.init('task_manage_detail_map', false);

//  写法三:第二个参数直接传配置对象
MchCesium.init('cesiumContainer', { doubleClickTrack: true });

//  写法四:老写法 + 配置对象
MchCesium.init('cesiumContainer', true, { lowResource: true });

升级提示:早期版本中,第二个参数 ifloadgeo(是否加载地理数据)在函数内部从未被使用,属于历史遗留参数。当前版本保留该参数仅为兼容旧调用不报错,其值会被自动忽略。若需控制场景开关,请使用第三个参数(或第二个位置传对象)

配置项 options

参数数据类型默认值说明
doubleClickTrackBooleanfalse双击 Entity 是否允许 Cesium 默认的追踪行为
true:双击任意 Entity(Label / Marker / Polygon / Rectangle / Polyline / Circle 等),相机会自动飞入并围绕该实体旋转(即 Cesium 原生"旋转模式")
false:默认,双击不会锁死相机,左键平移 / Ctrl+左键旋转 / 滚轮缩放 全部正常
lowResourceBooleanfalse一键关闭所有高消耗场景开关(三维模型(3D Tiles)占据视野,不需要地球背景)

doubleClickTrack示例

// 页面加载时决定MchCesium.init('map', { doubleClickTrack: true });// 页面运行中动态切换MchCesium.init('map');MchCesium.setDoubleClickTrackEnabled(true);   // 打开MchCesium.setDoubleClickTrackEnabled(false);  // 关闭

setDoubleClickTrackEnabled 在 init 之后调用才有效;在 init 之前调用会被 init 里的初始值覆盖。

lowResource示例

MchCesium.init('map', { lowResource: true });

 

效果展示:

本文档来自—MCHMAP 丨 地图引擎平台