百度地图 ( 一 ) 显示地图

news2024/11/17 3:00:01

1.百度地图

百度地图开放平台 https://lbsyun.baidu.com/

使用百度地图时导入JavaScript包

<script type="text/javascript"   src="http://api.map.baidu.com/api?v=2.0&ak=您的密钥"></script>

1.1.如何申请 ak 密钥

在 开发平台 找 控制台 / 应用管理 / 我的应用 创建 访问应用(AK) 密钥
在这里插入图片描述

1.2.参考代码

在 开发平台 找 开发文档 / JavaScript API 可以得到 百度地图 各种应用的 DEMO

在这里插入图片描述

2.展示地图

2.1.显示地图

导入 JavaScript 包

<script type="text/javascript"
        src="http://api.map.baidu.com/api?v=2.0&ak=bfnV92gwMphakBP0m8usEhzq7bxwCB1s"></script>
<script th:src="@{/js/jquery-3.2.1.min.js}"  src="../../static/js/jquery-3.2.1.min.js"></script>

增加 样式 设置

<style type="text/css">
    body, html,#allmap {
        width: 100%;
        height: 100%;
        overflow: hidden;
        margin:0;
        font-family:"微软雅黑";
    }
</style>

页面 HTML 元素

    <div id="allmap"></div> <!--地图div-->

增加javascript 代码

默认打开的地址 , 可以通过 传入的 经纬度或者地址名字两种方式

<script  type="text/javascript"  >
    map = new BMap.Map("allmap");

    // 设置中心点坐标和放大倍数
    // 以 经纬度 定位
    // var point = new BMap.Point(lng, lat);
    // map.centerAndZoom(point, 12);
    // 以 地名 定位
    map.centerAndZoom('哈尔滨市', 12);

    map.enableScrollWheelZoom();    //启用滚轮放大缩小,默认禁用
    map.enableContinuousZoom();    //启用地图惯性拖拽,默认禁用
    map.addControl(new BMap.NavigationControl());  //添加默认缩放平移控件
    map.addControl(new BMap.ScaleControl());          //比例尺
    map.addControl(new BMap.OverviewMapControl()); //添加默认缩略地图控件
    map.addControl(new BMap.OverviewMapControl({isOpen: true, anchor: BMAP_ANCHOR_BOTTOM_RIGHT}));   //右下角,打开缩略地图
    // map.addControl(new BMap.MapTypeControl());        //地图类型 三维方式 有错误

</script>

2.2.搜索地址

页面增加 元素

地名:<input type="text" name="modalAddr">
<input type="button" value="查询"  onclick="searchByStationName()"> 
经度:<input name="acLng" type="text">
纬度:<input name="acLat" type="text">

增加 处理函数

function searchByStationName() {

    localSearch = new BMap.LocalSearch(map); // 创建 搜索对象
    localSearch.enableAutoViewport();     //允许自动调节窗体大小

    /*
     清理 信息
    */
    map.clearOverlays();//清空原来的标注
    $("input[name='acLng']").val("");
    $("input[name='acLat']").val("");
    // 得到查询地址
    var keyword = $("input[name='modalAddr']").val();
    // 搜索结果 回调函数
    localSearch.setSearchCompleteCallback(function (searchResult) {
        console.log(searchResult)
        // 取满足条件中的第0个
        var poi = searchResult.getPoi(0);
        console.log(poi.address)
        map.centerAndZoom(poi.point, 15);

        // 创建一个标注,为要查询的地方对应的经纬度
        var marker = new BMap.Marker(new BMap.Point(poi.point.lng, poi.point.lat));  
        if (marker != null && marker != undefined) {
            $("input[name='acLng']").val(poi.point.lng);
            $("input[name='acLat']").val(poi.point.lat);
        }
        //标注点可拖拽
        marker.enableDragging();

        // 标注 绑定拖拽事件
        marker.addEventListener("dragging", function (msg) {
            $("input[name='acLng']").val(msg.point.lng);
            $("input[name='acLat']").val(msg.point.lat);
        });
        // 显示 覆盖物
        map.addOverlay(marker);

        // 用于显示的信息
        var content = keyword + "<br/><br/>经度:" + poi.point.lng + "<br/>纬度:" + poi.point.lat;
        // 点击显示内容
        var infoWindow = new BMap.InfoWindow("<p style='font-size:14px;'>" + content + "</p>");
        // 绑定点击事件
        marker.addEventListener("click", function () {
            this.openInfoWindow(infoWindow);
        });
        // 标注 绑定拖拽释放事件
        marker.addEventListener("dragend", function () {
            alert("lng:" + this.getPosition().lng + "    " + "lat:" + this.getPosition().lat)
        });
    }); 

    localSearch.search(keyword);
}

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

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

相关文章

ChatGPT注册流程

1.访问官网点击 Sign up https://chat.openai.com/auth/login 2.输入你的邮箱 3.点击Continue下一步: 4.输入密码继续下一步&#xff1a; 5.然后你的邮箱会受到一封邮件&#xff08;如果没收到请检查垃圾邮箱&#xff09;&#xff1a; 6.点击验证邮箱按钮&#xff0c;会跳到…

MySQL 5.7中文乱码与远程链接问题

MySQL 5.7中文乱码与远程链接问题1. MySQL 5.7中文乱码2. 远程链接问题3. 不区分表大小写4. 超过最大连接数5. 时区问题5. GROUP BY 问题配置集合重启MySQL1. MySQL 5.7中文乱码 当我们直接在数据库里面输入中文时&#xff0c;保存后出现&#xff1a; Incorrect string value&…

LeetCode 第 244 场周赛题解

前言 这是 2021-06-06 的一场 LeetCode 周赛&#xff0c;本场周赛的题目相较而以往而言比较简单&#xff0c;基本上想到点上就可以做出来&#xff0c;主要涉及到矩阵的旋转、贪心、滑动窗口、前缀和、二分查找等知识点。 第 244 场周赛链接&#xff1a;https://leetcode-cn.c…

SpringBoot+Vue实现前后端分离的学校快递站点管理系统

文末获取源码 开发语言&#xff1a;Java 使用框架&#xff1a;spring boot 前端技术&#xff1a;JavaScript、Vue.js 、css3 开发工具&#xff1a;IDEA/MyEclipse/Eclipse、Visual Studio Code 数据库&#xff1a;MySQL 5.7/8.0 数据库管理工具&#xff1a;phpstudy/Navicat JD…

机器人开发--雷达lidar

机器人开发--雷达lidar1 介绍2 分类2.1 整体分类2.2 机械式&#xff08;三角&ToF&#xff09;三角测距激光雷达ToF测距激光雷达3 机械式单线ToF激光雷达3.1 扫描原理3.2 不同材料反射率3.3 核心参数参考1 介绍 激光雷达&#xff08;英文&#xff1a;Laser Radar &#xff…

2023最新SSM计算机毕业设计选题大全(附源码+LW)之java制造类企业erp23725

面对老师五花八门的设计要求&#xff0c;首先自己要明确好自己的题目方向&#xff0c;并且与老师多多沟通&#xff0c;用什么编程语言&#xff0c;使用到什么数据库&#xff0c;确定好了&#xff0c;在开始着手毕业设计。 1&#xff1a;选择课题的第一选择就是尽量选择指导老师…

第十四周周报

学习目标&#xff1a; 一、论文“Vector Quantized Diffusion Model for Text-to-Image Synthesis”的Code 二、猫狗识别、人脸识别模型 学习内容&#xff1a; Code 学习时间&#xff1a; 12.4-12.9 学习产出&#xff1a; 一、论文Code 正向过程&#xff1a; 先通过Tam…

Python——学生管理系统

实现学生系统的增&#xff0c;删&#xff0c;查&#xff0c;打印所有学生功能&#xff0c;分别介绍使用列表存储和使用文件存储的代码 使用列表存储 import sys students []def menu():print("1. 新增学生")print("2. 显示学生")print("3. 查找学生…

【OpenCV学习】第10课:形态学操作的应用-图像去掉干扰线丶干扰点

仅自学做笔记用,后续有错误会更改 理论 去干扰线干扰点的操作方法&#xff0c; 大体上与第9课所说的提取水平/垂直线一致&#xff0c; 只是把核改为矩形&#xff0c; 不要线型就行&#xff0c;反正都是通过开操作来实行的。 操作流程&#xff1a; 输入图像&#xff08;一般是…

python数据分析:湖南省第七次人口普查可视化

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~ 今天案例难度指数: ☆☆☆ 准备 环境使用&#xff1a; Anaconda (python3.9) –> 识别我们写的代码 开发工具&#xff1a; jupyter notebook –> 代码编辑功能敲代码的工具 相关模块&#xff1a; pandas pyechart…

[附源码]计算机毕业设计基于Web的绿色环保网站Springboot程序

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

c# .net iot树莓派/香橙派用到物联网包Iot.Device.bindings 支持设备说明文档

c# .net iot树莓派&#xff08;进口&#xff0c;贵&#xff09;/香橙派&#xff08;国产&#xff0c;功能相同&#xff0c;性价比高&#xff09;用到物联网包Iot.Device.bindings 支持设备说明文档 我们c# .net iot开发树莓派/香橙派都需要用到Iot.Device.bindings、System.De…

RNA-seq 详细教程:假设检验和多重检验(8)

学习目标 了解模型拟合的过程比较两种假设检验方法&#xff08;Wald test vs. LRT&#xff09;了解多重测试校正的重要性了解用于多重测试校正的不同方法1. 模型拟合和假设检验 DESeq2 工作流程的最后一步是对每个基因进行计数并将其拟合到模型中并测试差异表达。 Hypothesis t…

osgEarth各个示例分析目录

概述 由于数字地球项目需要osgEarth的代码知识&#xff0c;故决定学习osgEarth的示例&#xff0c;示例中有很多可以借鉴的内容。以下是分析目录&#xff0c;完全是随机进行的&#xff0c;并没有什么上下文逻辑。 每一篇代码边学习边分析&#xff0c;如果有错误&#xff0c;请…

【Java面试】说说JVM的内存结构以及他们那些会产生内存溢出?

文章目录内存结构内存溢出的产生内存结构 对于JVM的内存结构&#xff0c;我将按照上面两张图配合来讲。 Java Source就是我们的Java源代码&#xff0c;经过JVM编译器编译之后变为Java Class也称Java字节码文件。当我们运行java命令对字节码文件进行运行的时候&#xff0c;将会…

深度学习-三维卷积神经网络(3DCNN)

1. 3DCNN理解 2D卷积仅仅考虑2D图片的空间信息&#xff0c;所以只适用于单张2D图片的视觉理解任务。在处理3D图像或视频时&#xff0c;网络的输入多了一个维度&#xff0c;输入由(c,height,width)(c,height,width)(c,height,width)变为了(c,depth,height,width)(c,depth,height…

计算机毕业设计django基于python学生考试成绩数据分析与可视化系统

项目介绍 随着社会的逐步发展,计算机网络技术对人们工作、生活影响是全面且深入的。基于计算机网络的管理系统越来越受到人们的欢迎,人们可以通过基于网络的管理系统进行实时数据信息查询、管理数据信息等,给人们的生活、工作带来便利。 在学校的日常管理工作中,学生成绩的统计…

【Python计算机视觉】项目实战之图像增强imguag对关键点变换、标注框变化(附源码 超详细必看)

需要源码或运行有问题请点赞关注收藏后评论区留言私信~~~ 一、imgaug简介 imguag使一个用于机器学习实验中图像增强的Python依赖库&#xff0c;支持Python2.7和Python3.4以上的版本&#xff0c;它支持多种图像增强技术&#xff0c;并允许轻松地组合这些技术&#xff0c;具有简…

uniapp中如何使用vuex进行状态管理(登录小案例讲解)

前言 本篇文章来讲解uniapp中如何使用vuex来实现状态管理&#xff0c;后面会讲实现登录状态管理的案例。如果之前学过vuex全家桶的同学那应该没啥问题&#xff0c;在uniapp中使用vuex和vue中基本是一样的。 什么是vuex 简单来说就是vue中的状态管理仓库&#xff0c;对于vuex…

从文件包含到RCE方法

前言 大家在参加众测的行动时&#xff0c;若是发现了以下基础危害不大的漏洞&#xff0c;不建议直接提交的&#xff0c;而是应该想办法看&#xff0c;能不能对该漏洞进行升级&#xff0c;扩大其危害&#xff0c;多拿点奖励。当然&#xff0c;文件包含不算常见&#xff0c;经常…