高德地圖api(基礎版)

高德地圖使用的基礎方法

第一步:申請高德地圖key碼

申請地址:http://lbs.amap.com/dev/key

申請高德地圖key碼

第二步:引入高德地圖JavaScript API入口腳本:

把key“您申請的key值”替換成申請的key碼

<script type="text/javascript" src="http://webapi.amap.com/maps?v=1.3&key=您申請的key值"></script><script id="amap_main_js" src="http://webapi.amap.com/maps/main?v=1.3&key=您申請的key值&m=http,map,anip,layers,overlay0,brender,mrender,mouse,vectorlayer,overlay,wgl,sync&vrs=1.3.21.1" type="text/javascript"></script>

第三步:添加容器、設定容器樣式

#container {width:300px; height: 180px; } 
<div id="container"></div> 

第四步:開始創建地圖

  1. 生成一副簡單地圖只需要一句代碼,將我們剛剛創建的div的id傳給Map的構造函數即可,這個時候API將根據用戶所在的城市自動進行地圖中心點和級別的設定:var map = new AMap.Map('container');
  2. 設定地圖中心和級別
    我們一般需要給地圖按需設定中心點和坐標等屬性,這里可以通過兩種方式,第一種,直接在地圖初始化的時候傳入相關屬性,center屬性的值可以使經緯度的二元數組,也可以是AMap.LngLat對象,要求經度值在前,緯度值在后:
var map =  new AMap.Map( 'container' ,{
zoom: 10,
center: [116.39,39.9]
});

也可以在地圖初始化過后,任何需要的地方通過方法來改變地圖的中心點和級別

var map =  new AMap.Map( 'container' );
map.setZoom(10);
map.setCenter([116.39,39.9]);
Map基本參數表
  1. 點標記的創建、添加與刪除
//點標記的創建、添加
var marker =  new AMap.Marker({
 position: [116.480983, 39.989628],
 map:map
});
//也可以在創建之后按需更改這些屬性:
var marker =  new AMap.Marker();
marker.setMap(map);
//移除的話,同樣使用setMap方法,不傳參數或者傳入空參數:
marker.setMap();
標記點

第五步:添加信息窗口

信息窗體一樣可以在創建的時候設定內容、偏移量、大小等屬性,offset是信息窗體的錨點以position為基準位置的像素偏移量,content除了使用字符串的形式外也可以直接設定為某個創建好的DOM節點:

//信息窗體顯示
var infowindow = new AMap.InfoWindow({
  content:  '<h3>北京</h3><div>北京首都歡迎你!</div>',
  offset:  new AMap.Pixel(0, -30),
  size: new AMap.Size(230,0)
})
//監聽事件讓信息窗體顯示
infowindow.open(map,new AMap.LngLat(116.480983, 39.989628));
  // 也可以通過事件監聽,在需要的時候才將信息窗體顯示出來,比如在marker被單擊的時候顯示
var clickHandle = AMap.event.addListener(marker, 'click', function() {
  infowindow2.open(map, marker.getPosition())
})
//信息框移除
// AMap.event.removeListener(clickHandle);
使用高級信息窗體
// 高級信息框
AMap.plugin('AMap.AdvancedInfoWindow',function(){
  var infowindow = new AMap.AdvancedInfoWindow({
    content: '<h3 class="title">高德地圖</h3>'+
             '<div class="content">高德是中國領先的數字地圖內容、'+
             '導航和位置服務解決方案提供商。</div>',
    offset: new AMap.Pixel(0, -30),
    asOrigin:false
  });
  infowindow.open(map,new AMap.LngLat(116.480983, 39.989628));
})
//綁定事件信息窗體顯示
infowindow.open(map,new AMap.LngLat(116.480983, 39.989628));
var clickHandle = AMap.event.addListener(marker, 'click', function() {
    infowindow2.open(map, marker.getPosition())
})
信息框

第六步:添加工具條和比例尺

AMap.plugin(['AMap.ToolBar','AMap.Scale'],function(){
    //TODO  創建控件并添加
    var toolBar = new AMap.ToolBar();
    var scale = new AMap.Scale();
    map.addControl(toolBar);
    map.addControl(scale);
})
//要移除控件的時候調用地圖的removeControl方法即可
//map.removeControl(toolBar);
添加工具條和比例尺

第七步:添加鷹眼

// 顯示鷹眼
AMap.plugin([AMap.OverView'],
    function(){
        map.addControl(new AMap.OverView({isOpen:true}));
});
鷹眼控件

第八步:室內地圖

  1. 場景一:使用默認室內地圖
function init(){
   var map = new AMap.Map('container', {
       resizeEnable: true,
       center: [117.000923, 36.675807],
       zoom: 6
   });
   // 添加室內地圖
   map.on('indoor_create',function(){
       map.indoorMap.showIndoorMap('B000A856LJ',5);
   })
}

![室內地圖](http://upload-images.jianshu.io/upload_images/1986499-f7572eb761210cea.png? imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

  1. 場景二:單獨或者疊加顯示某個商場的室內地圖
    要實現上述功能,首先引入室內地圖插件,初始化室內底圖對象,通過設置地圖的layers屬性(這里將地圖設置為只顯示室內地圖)。然后通過設定室內建筑ID使地圖顯示到指定的室內區域,這里我們展示朝陽大悅城:
    map.on('indoor_create',function(){
        // 商場一樓
        map.indoorMap.showIndoorMap('B000A856LJ',1);
        AMap.plugin(['AMap.IndoorMap'], function() {
            var indoorMap = new AMap.IndoorMap({alwaysShow:true});
            //設定在沒有矢量底圖的時候也顯示,默認情況下室內圖僅在有矢量底圖的時候顯示
            var map = new AMap.Map('mapDiv', {
                resizeEnable: true,
                showIndoorMap:false,//隱藏地圖自帶的室內地圖圖層
                layers:[indoorMap]

            });
        });
    })

我們可以在showIndoorMap方法里同時指定室內地圖的展示樓層為商鋪對應的樓層,比如聯想專賣店在朝陽大悅城的五層: indoorMap.showIndoorMap('B0FFFAB6J2',5); 我們也可以將室內地圖和其他圖層疊加使用,只需要修改上面示例代碼中map的layers屬性或者調用其他圖層的setMap方法: layers:[indoorMap,new AMap.TileLayer()] //或者 new AMap.TileLayer().setMap(map);

商場室內地圖

未完待續...(參考高德地圖開發入門指導)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,156評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,401評論 3 415
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,069評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,873評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,635評論 6 408
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,128評論 1 323
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,203評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,365評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,881評論 1 334
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,733評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,935評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,475評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,172評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,582評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,821評論 1 282
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,595評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,908評論 2 372

推薦閱讀更多精彩內容

  • 本文把高德地圖的鼠標點擊獲取經緯度與點標記與地理編碼融合到了一起 首先要創建自己的應用,并且添加key(服務用到的...
    RocaLee閱讀 2,931評論 0 2
  • 項目中用到地圖的地方越來越多,從O2O商城、出行、交通、單車等無處不在使用地圖,以下是在多個項目中集成高德地圖常用...
    倔強的爐包閱讀 18,477評論 6 21
  • 因為要做一個地圖操作的項目,需要用到這個地圖庫,但是查詢官方API麻煩,而且這個地圖框架的API做的用起來確實太麻...
    虛幻的銹色閱讀 33,961評論 1 15
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,781評論 18 139
  • 很多人都會遇到這種情況,在學習過程中,遇到一些問題一直繞不過去,導致停止不前了,但又找不到突破口,從而出現半途而廢...
    王梓文閱讀 1,736評論 5 9