mapbox高德地图与相机

news2025/2/25 15:58:00

高德地图与相机

  • 演示效果
  • 引入 CDN 链接
  • 地图显示
    • 创建地图实例
    • 定义地图数据源
    • 配置地图图层
  • 设置地图样式
  • 实现代码

1. 演示效果

本案例使用Mapbox GL JavaScript库创建高德地图。

image-20240226200444850

2. 引入 CDN 链接

<script src="https://api.mapbox.com/mapbox-gl-js/v2.12.0/mapbox-gl.js"></script>
<link
  href="https://api.mapbox.com/mapbox-gl-js/v2.12.0/mapbox-gl.css"
  rel="stylesheet"
/>

3. 地图显示

3.1. 创建地图实例

// 2.1 创建地图实例
const map = new mapboxgl.Map({
  // 在这个对象中,我们填入一些地图相关的参数设置
  container: "map", //地图容器
  style: {
    version: 8,
    // 2.2 定义地图数据源
    sources: {
      // 栅格瓦片
      // 定义数据源类型
      "raster-tiles": {
        // 定义类型,raster栅格,vector矢量
        type: "raster",
        // 地图服务
        tiles: [
          "http://webrd01.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",
        ],
        tilesSize: 256,
      },
    },
    // 2.3 配置地图图层
    layers: [
      {
        id: "tile-raster",
        type: "raster",
        source: "raster-tiles",
        minzoom: 0,
        maxzoom: 22,
      },
    ],
  }, //地图风格,底图数据源
  // 水平角
  bearing: 45,
  // 俯仰角
  pitch: 80,
  center: [114.3, 30.5], //默认注视的坐标点
  zoom: 12, //当前展示的地图级别
  projection: "globe", //地图投影模式
});
xxxxxxxxxx; // 2.1 创建地图实例        const map = new mapboxgl.Map({          // 在这个对象中,我们填入一些地图相关的参数设置          container: "map", //地图容器          style: {            version: 8,            // 2.2 定义地图数据源            sources: {              // 栅格瓦片              // 定义数据源类型              "raster-tiles": {                // 定义类型,raster栅格,vector矢量                type: "raster",                // 地图服务                tiles: [                  "http://webrd01.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",                ],                tilesSize: 256,              },            },            // 2.3 配置地图图层            layers: [              {                id: "tile-raster",                type: "raster",                source: "raster-tiles",                minzoom: 0,                maxzoom: 22,              },            ],          }, //地图风格,底图数据源          // 水平角          bearing: 45,          // 俯仰角          pitch: 80,          center: [114.3, 30.5], //默认注视的坐标点          zoom: 12, //当前展示的地图级别          projection: "globe", //地图投影模式        });const map = new mapboxgl.Mapjs

3.2. 定义地图数据源

            sources: {
              // 栅格瓦片
              // 定义数据源类型
              "raster-tiles": {
                // 定义类型,raster栅格,vector矢量
                type: "raster",
                // 地图服务
                tiles: [
                  "http://webrd01.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",
                ],
                tilesSize: 256,
              },
            },

3.3. 配置地图图层

            layers: [
              {
                id: "tile-raster",
                type: "raster",
                source: "raster-tiles",
                minzoom: 0,
                maxzoom: 22,
              },
            ],

4. 设置地图样式

地图加载完毕之后,有一个回调事件,我们在回调事件中添加大气层

map.on("style.load", () => {
  map.setFog({
    // 设置大气层颜色
    color: "#ffffff",
    // 大气层之上的颜色
    "high-color": "#f7c124",
    // 星空颜色
    "space-color": "#007abb",
  });
});

5. 实现代码

<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>高德地图&相机</title>
    <!-- 1.引入CDN链接 -->
    <script src="https://api.mapbox.com/mapbox-gl-js/v2.12.0/mapbox-gl.js"></script>
    <link
      href="https://api.mapbox.com/mapbox-gl-js/v2.12.0/mapbox-gl.css"
      rel="stylesheet"
    />
    <style>
      * {
        margin: 0;
        padding: 0;
      }
      #map {
        width: 100vw;
        height: 100vh;
      }
    </style>
  </head>
  <body>
    <div id="map"></div>
    <script>
      // 2.地图显示
      window.onload = () => {
        // 注册token
        mapboxgl.accessToken =
          "pk.eyJ1IjoiY2hlbmdjaGFvODg2NiIsImEiOiJjbGhzcWowMHUwYTNyM2VwNXZhaXhjd3Q4In0.FEh2q7sEW88Z1B5GcK_TDg";

        // 2.1 创建地图实例
        const map = new mapboxgl.Map({
          // 在这个对象中,我们填入一些地图相关的参数设置
          container: "map", //地图容器
          style: {
            version: 8,
            // 2.2 定义地图数据源
            sources: {
              // 栅格瓦片
              // 定义数据源类型
              "raster-tiles": {
                // 定义类型,raster栅格,vector矢量
                type: "raster",
                // 地图服务
                tiles: [
                  "http://webrd01.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",
                ],
                tilesSize: 256,
              },
            },
            // 2.3 配置地图图层
            layers: [
              {
                id: "tile-raster",
                type: "raster",
                source: "raster-tiles",
                minzoom: 0,
                maxzoom: 22,
              },
            ],
          }, //地图风格,底图数据源
          // 水平角
          bearing: 45,
          // 俯仰角
          pitch: 80,
          center: [114.3, 30.5], //默认注视的坐标点
          zoom: 12, //当前展示的地图级别
          projection: "globe", //地图投影模式
        });

        // 3.设置地图样式
        // 地图加载完毕之后,有一个回调事件,我们在回调事件中添加大气层
        map.on("style.load", () => {
          map.setFog({
            // 设置大气层颜色
            color: "#ffffff",
            // 大气层之上的颜色
            "high-color": "#f7c124",
            // 星空颜色
            "space-color": "#007abb",
          });
        });
      };
    </script>
  </body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1473865.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

华为算法题 go语言或者python

1 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返…

端侧显著性检测新高度,OPPO提出面向真实场景的PSUNet

https://arxiv.org/abs/2312.07100 在高分辨率场景下&#xff0c;现有的显著目标检测方法难以同时满足快速推理和准确结果的要求。它们受到用于高分辨率图像的公共数据集和高效网络模块的质量的限制。 为了缓解这些问题&#xff0c;我们构建一个显著对象匹配数据集HRSON和一个…

Windows已经安装了QT 6.3.0,如何再安装一个QT 5.12

要在Windows上安装Qt 5.12&#xff0c;您可以按照以下步骤操作&#xff1a; 下载Qt 5.12&#xff1a;访问Qt官方网站或其他可信赖的来源&#xff0c;下载Qt 5.12的安装包。 下载安装地址 下载安装详细教程 安装问题点 qt安装时“Error during installation process(qt.tools…

蒋勤勤48岁亮相,新穿法惊艳全场:上商务下夜店。

♥ 为方便您进行讨论和分享&#xff0c;同时也为能带给您不一样的参与感。请您在阅读本文之前&#xff0c;点击一下“关注”&#xff0c;非常感谢您的支持&#xff01; 文 |猴哥聊娱乐 编 辑|徐 婷 校 对|侯欢庭 蒋勤勤与陈建斌的恩爱典范&#xff0c;娱乐圈中的爱情佳话。虽…

2024年首个iOS AI病毒来了!偷人脸照片,转银行卡余额...

目录 这个病毒如何感染用户手机&#xff1f; 这个AI病毒有哪些危害特征&#xff1f; 2023年有个类似的病毒出现 银行和个人怎么防御AI病毒&#xff1f; 针对金融机构 针对个人用户 2024年2月15日&#xff0c;国外安全公司Group-IB宣布&#xff0c;发现一个名为“GoldPickaxe”的…

初谈软件工程(一)

我就读于兰州交通大学的软件工程专业。虽然在全国众多的985、211高校中&#xff0c;兰州交通大学可能并不显眼&#xff0c;似乎未能跻身这些所谓的“顶尖”行列就意味着不被认可。然而&#xff0c;在甘肃省的教育领域中&#xff0c;它无疑是一座璀璨的明珠&#xff0c;名列前茅…

Airflow【实践 01】Airflow官网+自测源代码举例(简化安装+官方及自测python代码)

Airflow官网自测源代码举例 1.准备1.1 安装1.2 查询DAG目录 2.官方3.自测4.总结 官方网站地址&#xff1a; https://airflow.apache.org/docs/apache-airflow/2.7.2/&#xff0c;本文是基于 2.7.2版本进行的说明。 1.准备 1.1 安装 上一篇的 Quick Start 有详细的安装过程&…

经营分析到底要做什么?

​做经营分析&#xff0c;不是只看数据这么简单&#xff0c;我们要从目标-分析-决策-预警&#xff0c;全流程实现。 基于数据中台底座&#xff0c;实现从制定战略目标到执行落地的数据应用闭环。主要从四个维度来做&#xff1a; 第一步&#xff0c;就是基于预算管理进行战略目…

【书籍分享 • 第三期】虚拟化与容器技术

文章目录 一、本书内容二、读者对象三、编辑推荐四、前言4.1 云计算技术的发展4.2 KVM、Docker4.3 本书内容简介4.4 作者简介 五、粉丝福利 一、本书内容 《虚拟化与容器技术》通过深入浅出的方式介绍KVM虚拟化技术与Docker容器技术的概念、原理及实现方法&#xff0c;内容包括…

图片录入设备、方式与质量对图片转Excel的影响

随着数字化时代的到来&#xff0c;图片已经成为人们日常生活中不可或缺的一部分。在各行各业中&#xff0c;图片的应用越发广泛&#xff0c;从而促使了图片处理技术的快速发展。然而&#xff0c;图片的质量对于后续数据处理和分析的准确性和可靠性有着至关重要的影响。本文将从…

Java设计模式 | 七大原则之依赖倒转原则

依赖倒转原则&#xff08;Dependence Inversion Principle&#xff09; 基本介绍 高层模块不应该依赖低层模块&#xff0c;二者都应该依赖其抽象&#xff08;接口/抽象类&#xff09;抽象不应该依赖细节&#xff0c;细节应该依赖抽象依赖倒转&#xff08;倒置&#xff09;的…

源聚达科技:新手做抖音店铺到底要多久回本

在数字化浪潮中&#xff0c;抖音店铺如雨后春笋般涌现。新手商家涉足其中&#xff0c;常怀揣一问&#xff1a;何时能够回本?此问题非一日可答&#xff0c;涉及因素众多&#xff0c;但透过分析与经验&#xff0c;仍可略窥端倪。 选品策略。若产品契合市场需求&#xff0c;且具备…

动态规划课堂2-----路径问题

目录 引言&#xff1a; 例题1&#xff1a;不同路径 例题2&#xff1a;不同路径II 例题3&#xff1a;礼物的最⼤价值 例题4&#xff1a;下降路径最⼩和 例题5&#xff1a;最小路径和 结语&#xff1a; 引言&#xff1a; 在学习完动态规划斐波那契数列模型后&#xff0c;…

前端Vue项目无法启动服务,提示无 ‘dev‘ npm的脚本问题解决

目录 一、问题详情 二、问题解决 一、问题详情 上周还能运行的项目&#xff0c;今天突然无法执行了&#xff0c;连最基本的启动按钮也没有了&#xff0c;所有的项目本地都突然跑不起来了&#xff0c;附上截图。 二、问题解决 后来排查的根本原因有点奇葩&#xff0c;是因为…

如何保护企业免受人工智能网络钓鱼攻击

文章目录 前言一、生成式人工智能带来了新的网络安全威胁二、人工智能将使网络钓鱼攻击变得更加危险三、企业如何阻止人工智能驱动的网络钓鱼四、网络钓鱼模拟确保责任感和适应性前言 网络钓鱼是网络犯罪分子社会工程武器库中的超级武器。网络钓鱼尤其危险,因为它是网络犯罪分…

docker 容器内服务随容器自动启动

docker 容器内服务随容器自动启动 1. 背景2. 准备工作3. 方式一&#xff0c;直接修改.bashrc文件&#xff08;简单粗暴&#xff09;4. 方式二&#xff0c;编写启动脚本加入.bashrc文件&#xff08;文明一点&#xff09;5. 导出容器制作镜像6. 测试导出容器&#xff0c;nginx服务…

动态规划之第 N 个泰波那契数/三步问题【leetCode】【算法】

动态规划动态规划之第 N 个泰波那契数/三步问题 动态规划LeetCode题目第 N 个泰波那契数求解1求解2&#xff08;滚动数组&#xff09; 三步问题求解1求解2&#xff08;滚动数组&#xff09; 动态规划 如果问题是由重叠的子问题构成的&#xff0c;那就可以用动态规划&#xff08…

python Matplotlib Tkinter-->tab切换3

环境 python:python-3.12.0-amd64 包: matplotlib 3.8.2 pillow 10.1.0 import matplotlib.pyplot as plt from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2Tk import tkinter as tk import tkinter.messagebox as messagebox import …

云呐智能化运维技术支持是做什么的?运维监控一体化是什么

智能化运维技术支持的具体职责和工作内容&#xff0c;包括但不限于故障诊断、系统维护、数据分析等方面的任务。同时&#xff0c;阐述智能化运维监控一体化的概念&#xff0c;包括其目标、实现方式以及如何通过集成监控和管理流程来提高运维效率的优势。包含对智能化运维技术支…

【ArcGIS】重采样栅格像元匹配问题:不同空间分辨率栅格数据统一

重采样栅格像元匹配问题&#xff1a;不同空间分辨率栅格数据统一 原始数据数据1&#xff1a;GDP分布数据2.1&#xff1a;人口密度数据2.2&#xff1a;人口总数数据3&#xff1a;土地利用类型 数据处理操作1&#xff1a;将人口密度数据投影至GDP数据&#xff08;栅格数据的投影变…