下载mars3d源码包

<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>地图测试</title>
    <script type="text/javascript" src="/lib/include-lib.js" libpath="/lib/" include="jquery,layer,toastr,font-awesome,bootstrap,bootstrap-table,layer,haoutil,mars3d"></script>
    <link href="/css/style.css" rel="stylesheet" />
</head>
<body>
    <div id="mars3dContainer" class="mars3d-container"></div>
</body>
</html>

$(function () {
    $.map3d = new mars3d.Map('mars3dContainer', {
        scene: GetScene(),
        control: GetControl(),
        terrain: GetTerrain(),
        basemaps: GetBasemaps(),
    })
    Get3dtiles($.map3d);
})

function Get3dtiles(map) {
    map.fixedLight = true // 固定光照,避免gltf模型随时间存在亮度不一致。
    var translation = Cesium.Cartesian3.fromArray([0.0, 0.0, -0.0]);
    var Matrix4 = Cesium.Matrix4.fromTranslation(translation);
    const tiles3dLayer = new mars3d.layer.TilesetLayer({
        name: "地图",
        url: "/3dtiles/tileset.json",
         maximumMemoryUsage: 1024,
        flyTo: true,

})
    map.addLayer(tiles3dLayer);
}
function GetScene() {
    return {
        center: { lat: 22.9, lng: 112.0, alt: 3185.5, heading: 360, pitch: -45 },
        shadows: false, //是否启用日照阴影
        removeDblClick: true, //是否移除Cesium默认的双击事件
        //以下是Cesium.Viewer所支持的options【控件相关的写在另外的control属性中】
        sceneMode: 3, //3等价于Cesium.SceneMode.SCENE3D,
        //以下是Cesium.Scene对象相关参数
        showSun: false, //是否显示太阳
        showMoon: false, //是否显示月亮
        showSkyBox: false, //是否显示天空盒
        showSkyAtmosphere: false, //是否显示地球大气层外光圈
        fog: false, //是否启用雾化效果
        fxaa: false, //是否启用抗锯齿

//以下是Cesium.Globe对象相关参数
        globe: {
            depthTestAgainstTerrain: false, //是否启用深度监测,启用状态下,模型会根据局部高度显示
            //baseColor: '#546a53', //地球默认背景色
            showGroundAtmosphere: false, //是否在地球上绘制的地面大气
            enableLighting: false //是否显示昼夜区域
        },
        //以下是Cesium.ScreenSpaceCameraController对象相关参数
        cameraController: {
            zoomFactor: 3.0, //鼠标滚轮放大的步长参数
            minimumZoomDistance: 1, //地球放大的最小值(以米为单位)
            maximumZoomDistance: 50000000, //地球缩小的最大值(以米为单位)
            enableRotate: true, //2D和3D视图下,是否允许用户旋转相机
            enableTranslate: true, //2D和哥伦布视图下,是否允许用户平移地图
            enableTilt: true, // 3D和哥伦布视图下,是否允许用户倾斜相机
            enableZoom: true, // 是否允许 用户放大和缩小视图
            enableCollisionDetection: false //是否允许 地形相机的碰撞检测
        }
    }
}
function GetControl() {
    return {
        baseLayerPicker: true, //basemaps底图切换按钮
        homeButton: true, //视角复位按钮
        sceneModePicker: true, //二三维切换按钮
        navigationHelpButton: true, //帮助按钮
        fullscreenButton: true, //全屏按钮 
        "vrButton": false,
        "animation": false,
        "timeline": false,
        "infoBox": false,
        "geocoder": false,
        "selectionIndicator": false,
        "contextmenu": { "hasDefault": true },//右键菜单
        "mouseDownView": true,
        "zoom": { "insertIndex": 1 },
        "compass": { "bottom": "toolbar", "left": "5px" },
        "distanceLegend": { "left": "100px", "bottom": "2px" },
        "locationBar": {
            "fps": true,
            "crs": "CGCS2000_GK_Zone_3",
            "crsDecimal": 0,
            "template": "<div>经度:{lng}</div> <div>纬度:{lat}</div> <div class='hide1000'>横{crsx}  纵{crsy}</div> <div>海拔:{alt}米</div> <div class='hide700'>层级:{level}</div><div>方向:{heading}°</div> <div>俯仰角:{pitch}°</div><div class='hide700'>视高:{cameraHeight}米</div>"
        }
    }
}
function GetTerrain() {
    return {
        "url": "//data.mars3d.cn/terrain",
        "show": true
    }
}
function GetBasemaps() {
    return [
        { "id": 10, "name": "地图底图", "type": "group" },
        {
            "id": 2021,
            "pid": 10,
            "name": "天地图影像",
            "icon": "/img/basemaps/tdt_img.png",
            "type": "group",
            "layers": [
                { "name": "底图", "type": "tdt", "layer": "img_d" },
                { "name": "注记", "type": "tdt", "layer": "img_z" }
            ],
            "show": true
        },
        {
            "pid": 10,
            "name": "高德影像",
            "type": "group",
            "icon": "/img/basemaps/gaode_img.png",
            "layers": [
                { "name": "底图", "type": "gaode", "layer": "img_d" },
                { "name": "注记", "type": "gaode", "layer": "img_z" }
            ],
        },
        {
            "pid": 10,
            "name": "高德电子",
            "type": "gaode",
            "icon": "/img/basemaps/gaode_vec.png",
            "layer": "vec"
        },
        {
            "pid": 10,
            "name": "本地地图",
            "icon": "/img/basemaps/gaode_img.png",
            "type": "xyz",
            "url": "/mars3d-data/tile/googleImg/{z}/{x}/{y}.jpg",
        },
    ]
}

Cesium,mars3d,3dtiles 3d地图显示相关推荐

  1. Cesium:3D-Tiles模型剖面图分析

    Cesium:3D-Tiles模型剖面图分析 剖面图简介 Cesium代码实现 实现效果 实现思路分析 问题1:如何绘制3D线? 问题2:如何获取剖面的起伏变化? 问题3:如何绘制剖面图? 示例代码 ...

  2. 首次使用Cesium加载3D数据不成功

    接此: https://blog.csdn.net/bcbobo21cn/article/details/110454547 参阅相关教程:Cesium加载3D数据是通过3D Tiles进行: 3D ...

  3. android显示地图代码,Android Studio之高德地图实现定位和3D地图显示(示例代码)

    /**** * 讲诉了高德地图定位和3D地图显示 * * 打包和未打包的情况是不一样的,高德配置是可以配置调试版和发布版 **/ public class MainActivity extends A ...

  4. Android Studio之高德地图实现定位和3D地图显示

    在应用开发中,地图开发是经常需要使用的"组件",国内比较出名的是就是百度地图和高德地图. 此博客讲的是高德地图实现定位和3D地图显示,并标注相应位置,话不多说,先看看效果,在上代码 ...

  5. android------之高德地图实现定位和3D地图显示

    2019独角兽企业重金招聘Python工程师标准>>> 在应用开发中,地图开发是经常需要使用的"组件",国内比较出名的是就是百度地图和高德地图. 此博客讲的是高德 ...

  6. 分享一份3D Tiles数据,供大家学习使用。(Cesium、Earth 3D)

    分享一份3D Tiles数据,供大家学习使用.(Cesium.Earth 3D).数据是长沙市的建筑轮廓盒模型,大家如果有想要别的城市的,可以留言评论. 链接:https://pan.baidu.co ...

  7. Cesium加载3D Tiles数据

    使用原生Cesium加载3D Tiles数据,并实现对图层的选中.样式的修改.图元的隐藏. 实现代码 <!DOCTYPE html> <html lang="en" ...

  8. 首次使用Cesium加载3D数据成功

    接此: https://blog.csdn.net/bcbobo21cn/article/details/111305160 `代码同前文:加载不同的数据,都不能加载出来: var palaceTil ...

  9. cesium 入门学习之一:运行cesium,展示3D地球

    一直都想研究下cesium,今天终于实际行动起来,开始码代码,经过一番折腾,成功展示出3D地球,故分享出来 1.下载cesium cesium的运行时依赖node.js环境,所以小伙伴们需提前装好no ...

最新文章

  1. Docker之HelloWorld篇
  2. python编程入门指南 明日科技-python从入门到项目实践明日科技三剑客书籍视频...
  3. wp7 给TextBox设置圆角边框
  4. 基于VHDL的RISC microprocessor设计
  5. 投影串口测试程序_串口测试方法和步骤
  6. 【渝粤教育】国家开放大学2018年秋季 2604T城市轨道交通行车组织 参考试题
  7. 我国共招过多少博士?多少硕士?数据来了!
  8. linux运行c程序a. out,无法运行已编译的文件 – bash:./ a.out:权限被拒绝. (我试过chmod)...
  9. CTSC2017 APIO2017 THUSC2017 游记
  10. leecode - 入门 -- 双指针秒杀数组/链表题目
  11. ps使用抽出滤镜抠头发
  12. 华为交换机flaping_MAC地址飘移查看及解决方法 一般是网络中存在环路
  13. 英语基础知识:非谓语使用规则上篇
  14. 猿创征文|项目中使用Git,解决一些项目开发中常见的Git问题
  15. 数学建模中的ARMA模型和ARIMA模型的使用实例(含代码)
  16. 安装SQL Server和SQL Server Management Studio(SSMS)
  17. 基于K均值算法的鸢尾花聚类实验(Sklearn实现)
  18. 【记录十七】Sling JCR Resources
  19. python导入pyx文件_初学Python,只会写简单的代码。手头有份Python代码,但是调用C模块生成的.pxd和.pyx文件,运行过程总报错,希望大神指点,调试前该做哪些工作呢?...
  20. 2M误码仪都有哪些功能? TFN T1000M数据误码传输测试仪

热门文章

  1. 分享一些优秀的思维导图作品
  2. 赝势平面波计算机软件,第3章 赝势平面波方法(i).doc
  3. Android HAL层浅析
  4. canvas——绘制解锁图案
  5. mysql 临时文件写满_阿里云数据库MySQL临时文件导致实例空间满的解决办法
  6. 【专题学习】Contiguity(进行中)
  7. MyCat是什么?为什么要用MyCat?
  8. 经典培训小游戏(一)
  9. zdm各命令的功能和作用_ZDM快捷键大全专业功能类
  10. 正达信通ZedaIOT物联网平台设备管理功能浅析