• 【转】【完全开源】百度地图Web service API C#.NET版,带地图显示控件、导航控件、POI查找控件


    【转】【完全开源】百度地图Web service API C#.NET版,带地图显示控件、导航控件、POI查找控件

    目录

    概述

    源代码主要包含三个项目,BMap.NET、BMap.NET.WindowsForm以及BMap.NET.WinformDemo。

    • BMap.NET

      对百度地图Web Service API 的一些封装,每个接口返回的都是JObject类型(参见Json.NET);

    • BMap.NET.WindowsForm(开始少写了一个s ,后来一直没改)

      提供一系列可以在Winform中使用的控件,包括地图显示控件、导航控件、POI查找控件等等;

    • BMap.NET.WinfromDemo

      一个简单的Demo,演示如何使用各个控件。

    本项目完全基于C#.NET,没有使用JavaScript等其他脚本。所有轮子都是手工打造。

    Github地址

    1.带提示的搜索输入框

    2.位置查询

    3.导航

    4.添加标记、绘图

    5.区域搜索

    6.快速切换城市

    功能

    BMap.NET包含以下功能:

    • POI查找
    • 位置建议
    • 地理(逆)编码
    • 导航(公交、驾车、步行)
    • IP定位
    • 坐标转换(墨卡托、GPS、火星、百度坐标)

    BMap.NET.WindowsForm中包含以下功能:

    • 地图显示(拖拽、缩放等基本操作)
    • 选择地图模式(卫星、普通、路网)
    • 设置地图加载模式(本地、本地优先、服务器)
    • 绘图
    • 距离测量
    • 添加标记
    • 截图
    • 位置输入搜索控件
    • 导航控件
    • 位置列表控件

    不包含以下功能:

    • 3D地图
    • 街景图
    • 导航不会考虑实时的路况信息(也没考虑公交首末班车的发车时间)

    另外,本项目只针对百度地图,因此在扩展性方面严重不足,跟GMap.NET相比较差很远。不过你可以自己修改代码以满足你的要求。

    如何使用

    BMap.NET使用很简单,每个接口均返回JObject类型(代表一个json数据),就不多说了。

    BMap.NET.WindowsForm中只公开5个控件:BPlaceBox,BMapControl,BPlacesBoard,BDirectionBoard以及BTabControl。使用时只需要将其拖进窗体设计器,然后简单地设置一下他们的属性,让它们相互关联起来:

    1.BPlaceBox属性设置

    2.BMapControl属性设置

    3.BPlacesBoard属性设置

    4.BDirectionBoard属性设置

    之后按F5运行即可,不需要编写任何代码。

    注意BTabControl控件只是为了模仿百度地图官网左侧的Tab效果,负责组织BPlacesBoard和BDirectionBoard控件。

    参考帮助

    1.百度地图API文档

    2.Json.NET

    3.Json可视化

    说明:

    1)本篇文章只是简单的介绍一些本项目大概内容,之后会介绍几个关键技术,比如百度坐标转换、百度地图瓦片行列号计算(百度地图与其他地图不一样)等。如果有需要的朋友可以关注本博客。

    2)项目中我自己知道的就有好几个bug,由于担心百度地图API升级导致之前写好的功能不能使用,所以快马加鞭完成一版。之后我会继续完善本项目。

    注意:本项目及其所有源代码均遵循MIT开源协议。觉得有帮助的可以点个赞,开源有益。

  • 相关阅读:
    Unity Find 使用规则
    Unity UGUI
    Unity UGUI
    Unity UGUI
    Unity UGUI
    机器学习:支持向量机识别手写英文字母 SMO算法实现二元分类器
    机器学习:朴素贝叶斯分类器实现二分类(伯努利型) 代码+项目实战
    机器学习:基于CART算法的决策树——分类树与回归树
    机器学习:决策树——分类树 ID3算法 代码+案例
    JAVA
  • 原文地址:https://www.cnblogs.com/RYouHoo-923/p/8306140.html
Copyright © 2020-2023  润新知