aaronyang的百度地图API之LBS云与.NET开发 Javascript API 2.0【基本地图的操作】

为了更简单的演示,我们创建个.NET的ASP.NET MVC4项目

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】


 好了,上面都是后话,POI说白了,就是你的用户的数据,很多数据,不过没关系,因为你的数据如果存在百度的LBS云上,那么大数据你就不用考虑的了

在这之前,我们肯定要知道怎样把用户的数据正确的存到LBS上,在这之前我们先学习下 百度提供的 Javascript API。

这个例子很简单:

1.页面上引入 <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你的AK"></script>

然后创建一个div,设置高宽

<div id="container" style="width:100%;height:500px;"></div>

2.添加js代码

      var map = new BMap.Map("container"); //初始化地图

      这里Map方法,还有个参数,地图的初始化设置,具体的还有哪些参数,后面细讲,这里有个maxZoom,就是地图默认缩放级别

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】
   var mapOption = {
            mapType: BMAP_NORMAL_MAP,
            maxZoom: 18,
            drawMargin: 0,
            enableFulltimeSpotClick: true,
            enableHighResolution: true
        }
aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

    var map = new BMap.Map("container",mapOption); //初始化地图

    第二个,设置初始化点,(经度,纬度)

     map.centerAndZoom(new BMap.Point(117.234963,31.858815), 18);//这里的18会影响mapOption中的maxZoom的设置,会覆盖这个值

     我这里的经度纬度是从LBS云,手动标注添加数据拿到的117.234963,31.858815,后面的18是地图缩放界别,数字越大,地图越详细

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

      接下来,你就可以运行项目了,效果图如下:(如果你的地图级别比较小,你可以双击地图,然后可以查看更详细的地图)

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

相关代码:

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】
<h1>第二课 POI数据存储</h1>
@section BaiduApi{
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你的AK"></script>
    }
<br/>
<div id="container" style="width:100%;height:500px;"></div>


<div id="place"></div>

<script type="text/javascript">
    $(function () {
        //百度地图基本配置,也可以没有,保持默认
        var mapOption = {
            mapType: BMAP_NORMAL_MAP,
            maxZoom: 18,
            drawMargin: 0,
            enableFulltimeSpotClick: true,
            enableHighResolution: true
        }

        var map = new BMap.Map("container", mapOption);
        map.centerAndZoom(new BMap.Point(117.234963, 31.858815), 18);

    })



</script>
aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

这里的@section,是我在模板页中设置的,模板页代码如下:

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta charset="utf-8" />
    <title>@ViewBag.Title - 我的 ASP.NET MVC 应用程序</title>
    <link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" />
    <meta name="viewport" content="width=device-width" />
    @Styles.Render("~/Content/css")
    <script src="~/Scripts/jquery-1.8.2.min.js"></script>
    @RenderSection("BaiduApi", required: false)
</head>
<body>
    <header>
        <div class="content-wrapper">
            <div class="float-left">
                <p class="site-title">@Html.ActionLink("AaronYang的百度地图开发", "Index", "Home")</p>
            </div>
            <div class="float-right">


            </div>
        </div>
    </header>
    <div id="body" style="height:1000px">
        @RenderSection("featured", required: false)
        <section class="content-wrapper main-content clear-fix">
            @RenderBody()
        </section>
    </div>
    <footer>
        <div class="content-wrapper">
            <div class="float-left">
                <p>&copy; @DateTime.Now.Year - AaronYang的提升计划</p>
            </div>
        </div>
    </footer>



</body>
</html>
aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

我们继续学习—————http://aaronyang.cnblogs.com


我们假如不知道经纬度怎么办?

我们可以这样做,比如说,合肥,当然这样做,百度先要调用它的接口转换成经纬度,然后才能正确显示,所以肯定不如直接输入经纬度的速度快

注意:这里只能输入城市名字,不能具体到省市某街道,不信自己可以试试

map.centerAndZoom("合肥");

我们来查看当前,默认点的经纬度坐标

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】
    $(function () {
        //百度地图基本配置,也可以没有,保持默认
        var mapOption = {
            mapType: BMAP_NORMAL_MAP,
            maxZoom: 18,
            drawMargin: 0,
            enableFulltimeSpotClick: true,
            enableHighResolution: true
        }

        var map = new BMap.Map("container", mapOption);
        //map.centerAndZoom(new BMap.Point(117.234963, 31.858815), 11);
    
        map.addEventListener(‘load‘, function () {
            $("#place").text("当前中心点经纬度: "+map.getCenter().lng + ‘, ‘ + map.getCenter().lat);
        });
        map.centerAndZoom("合肥");

    })
aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

效果图:

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

启动鼠标滚轮缩放地图:

map.enableScrollWheelZoom();

添加其余控件

      map.addControl(new BMap.NavigationControl());               // 添加平移缩放控件
        map.addControl(new BMap.ScaleControl());                    // 添加比例尺控件
        map.addControl(new BMap.OverviewMapControl());              //添加缩略地图控件
        map.enableScrollWheelZoom();                            //启用滚轮放大缩小
        map.addControl(new BMap.MapTypeControl());          //添加地图类型控件
        //map.setCurrentCity("北京");          // 设置地图显示的城市 此项是必须设置的

 

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

这里有个三维 地图,目前只支持 北京,上海,广州,深圳

3D地图DEMO

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】
        var map = new BMap.Map("container", { mapType: BMAP_PERSPECTIVE_MAP });   //设置3D图为底图
        var point = new BMap.Point(116.4035, 39.915);
        map.setCurrentCity("北京");          // 设置地图显示的城市 此项是必须设置的
        map.centerAndZoom(point, 19);
        map.enableScrollWheelZoom(true);                            //启用滚轮放大缩小
        map.addControl(new BMap.NavigationControl());               // 添加平移缩放控件
        map.addControl(new BMap.ScaleControl());                    // 添加比例尺控件
        map.addControl(new BMap.OverviewMapControl());              //添加缩略地图控件
aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

卫星图 mapType:BMAP_HYBRID_MAP

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

 

 

缩放其他控件的位置控制:

anchor代表什么位置,后面代表控件类型

map.addControl(new BMap.NavigationControl());  //添加默认缩放平移控件
map.addControl(new BMap.NavigationControl({anchor: BMAP_ANCHOR_TOP_RIGHT, type: BMAP_NAVIGATION_CONTROL_SMALL}));  //右上角,仅包含平移和缩放按钮
map.addControl(new BMap.NavigationControl({anchor: BMAP_ANCHOR_BOTTOM_LEFT, type: BMAP_NAVIGATION_CONTROL_PAN}));  //左下角,仅包含平移按钮
map.addControl(new BMap.NavigationControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT, type: BMAP_NAVIGATION_CONTROL_ZOOM}));  //右下角,仅包含缩放按钮

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 
2.0【基本地图的操作】

 

OK!


 

休息一会----http://aaronyang.cnblogs.com的博客

 

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 2.0【基本地图的操作】,布布扣,bubuko.com

aaronyang的百度地图API之LBS云与.NET开发 Javascript API 2.0【基本地图的操作】

上一篇:Java集合List模拟“洗牌”操作


下一篇:javascript:伪协议和onclick 弹出窗口(一)