c15_xyz.html 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. <!-- 2017-12-4 14:24:10 | 修改 木遥(微信: http://marsgis.cn/weixin.html ) -->
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=0,minimum-scale=1.0,maximum-scale=1.0" />
  7. <meta name="apple-touch-fullscreen" content="yes" />
  8. <meta name="apple-mobile-web-app-capable" content="yes" />
  9. <meta name="apple-mobile-web-app-status-bar-style" content="black" />
  10. <meta name="format-detection" content="telephone=no" />
  11. <meta name="x5-fullscreen" content="true" />
  12. <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
  13. <!-- 标题及搜索关键字 -->
  14. <meta name="keywords" content="火星科技,cesium,3D,GIS,marsgis,三维,地球,地图,开发,框架,系统,示例,资料,模型,离线,外包,合肥,安徽,中国" />
  15. <meta
  16. name="description"
  17. content="火星科技 合肥火星 合肥火星科技 合肥火星科技有限公司 leaflet leaflet框架 leaflet开发 cesium cesium开发 cesium框架 三维 地球 模型 gis marsgis 地图离线 地图开发 地图框架 地图外包 框架 开发 外包 地图离线 二维地图 三维地图 全景漫游 地理信息系统 云GIS 三维GIS GIS平台 WebGIS"
  18. />
  19. <link rel="shortcut icon" type="image/x-icon" href="" />
  20. <title>xyz金字塔瓦片 </title>
  21. <script
  22. type="text/javascript"
  23. src="../lib/include-lib.js"
  24. libpath="../lib/"
  25. include="jquery,font-awesome,bootstrap,layer,haoutil,mars3d"
  26. ></script>
  27. <link href="css/style.css" rel="stylesheet" />
  28. </head>
  29. <body class="dark">
  30. <div id="mars3dContainer" class="mars3d-container"></div>
  31. <div class="infoview">
  32. <input id="btnAddLayer" type="button" class="btn btn-primary" value="叠加图层" onclick="addLayer()" />
  33. <input id="btnRemoveLayer" type="button" class="btn btn-primary" value="移除图层" onclick="removeLayer()" />
  34. </div>
  35. <script type="text/javascript">
  36. "use script"; //开发环境建议开启严格模式
  37. //xyz图层url所支持的字符串模版:
  38. // {z}: 切片方案中切片的级别。零级是四叉树金字塔的根。
  39. // {x}:切片方案中的图块X坐标,其中0是最西端的图块。
  40. // {y}: 切片方案中的图块Y坐标,其中0是最北的图块。
  41. // {s}:可用的子域之一,用于克服浏览器对每个主机的并发请求数的限制。
  42. // {reverseX}: 切片方案中的图块X坐标,其中0是最东的图块。
  43. // {reverseY}:切片方案中的图块Y坐标,其中0是最南端的图块。
  44. // {reverseZ}:在切片方案中切片的级别,其中级别0是四叉树金字塔的最大级别。为了使用reverseZ,必须定义maximumLevel。
  45. // {westDegrees}: 瓦片图块在测地角度上的西边缘。
  46. // {southDegrees}:瓦片图块在测地角度上的南边缘。
  47. // {eastDegrees}:以大地测量度表示的图块的东边缘。
  48. // {northDegrees}: 瓦片图块在测地角度上的北边缘。
  49. // {westProjected}:图块方案的墨卡托投影坐标中图块的西边缘。
  50. // {southProjected}: 图块方案的墨卡托投影坐标中图块的南边缘。
  51. // {eastProjected}: :图块方案的墨卡托投影坐标中图块的东边缘。
  52. // {northProjected}:图块方案的墨卡托投影坐标中图块的北边缘。
  53. // {width}:每个图块的宽度(以像素为单位)。
  54. // {height}: 每个图块的高度(以像素为单位)。
  55. $(document).ready(function () {
  56. if (!mars3d.Util.webglreport()) {
  57. mars3d.Util.webglerror();
  58. return;
  59. }
  60. initMap();
  61. });
  62. var map;
  63. function initMap() {
  64. //创建三维地球场景
  65. map = new mars3d.Map("mars3dContainer", {
  66. scene: {
  67. center: { lat: 22.43392, lng: 113.23887, alt: 8157553, heading: 354, pitch: -82 },
  68. },
  69. control: {
  70. baseLayerPicker: true, //basemaps底图切换按钮
  71. homeButton: true, //视角复位按钮
  72. sceneModePicker: true, //二三维切换按钮
  73. defaultContextMenu: true, //右键菜单
  74. locationBar: { fps: true }, //状态栏
  75. },
  76. terrain: {
  77. url: "//data.mars3d.cn/terrain",
  78. show: true,
  79. },
  80. //方式1:在创建地球前的参数中配置
  81. basemaps: [
  82. {
  83. name: "电子地图",
  84. icon: "img/basemaps/google_vec.png",
  85. type: "xyz",
  86. url: "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
  87. subdomains: "abc",
  88. show: true,
  89. },
  90. {
  91. name: "影像地图",
  92. icon: "img/basemaps/gaode_img.png",
  93. type: "xyz",
  94. url: "//data.mars3d.cn/tile/googleImg/{z}/{x}/{y}.jpg",
  95. maximumLevel: 12,
  96. },
  97. {
  98. name: "EPSG4490影像",
  99. icon: "img/basemaps/tdt_img.png",
  100. type: "xyz",
  101. url: "http://t3.tianditu.gov.cn/img_c/wmts?service=WMTS&version=1.0.0&request=GetTile&tilematrix={z}&layer=img&style=default&tilerow={y}&tilecol={x}&tilematrixset=c&format=tiles&tk=6c99c7793f41fccc4bd595b03711913e",
  102. crs: "EPSG:4490", //标识坐标系
  103. },
  104. ],
  105. });
  106. }
  107. //叠加的图层
  108. var tileLayer;
  109. function addLayer() {
  110. removeLayer();
  111. //方式2:在创建地球后调用addLayer添加图层(直接new对应type类型的图层类)
  112. tileLayer = new mars3d.layer.XyzLayer({
  113. url: "//data.mars3d.cn/tile/dizhiChina/{z}/{x}/{y}.png",
  114. minimumLevel: 0,
  115. maximumLevel: 10,
  116. rectangle: { xmin: 69.706929, xmax: 136.560941, ymin: 15.831038, ymax: 52.558005 },
  117. opacity: 0.7,
  118. center: { lat: 22.43392, lng: 113.23887, alt: 8157553, heading: 354, pitch: -82 },
  119. flyTo: true,
  120. });
  121. map.addLayer(tileLayer);
  122. }
  123. function removeLayer() {
  124. if (tileLayer) {
  125. map.removeLayer(tileLayer, true);
  126. tileLayer = null;
  127. }
  128. }
  129. </script>
  130. </body>
  131. </html>