高德地圖api(基礎(chǔ)版)

高德地圖使用的基礎(chǔ)方法

第一步:申請(qǐng)高德地圖key碼

申請(qǐng)地址:http://lbs.amap.com/dev/key

申請(qǐng)高德地圖key碼

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

把key“您申請(qǐng)的key值”替換成申請(qǐng)的key碼

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

第三步:添加容器、設(shè)定容器樣式

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

第四步:開(kāi)始創(chuàng)建地圖

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

也可以在地圖初始化過(guò)后,任何需要的地方通過(guò)方法來(lái)改變地圖的中心點(diǎn)和級(jí)別

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

第五步:添加信息窗口

信息窗體一樣可以在創(chuàng)建的時(shí)候設(shè)定內(nèi)容、偏移量、大小等屬性,offset是信息窗體的錨點(diǎn)以position為基準(zhǔn)位置的像素偏移量,content除了使用字符串的形式外也可以直接設(shè)定為某個(gè)創(chuàng)建好的DOM節(jié)點(diǎn):

//信息窗體顯示
var infowindow = new AMap.InfoWindow({
  content:  '<h3>北京</h3><div>北京首都?xì)g迎你!</div>',
  offset:  new AMap.Pixel(0, -30),
  size: new AMap.Size(230,0)
})
//監(jiān)聽(tīng)事件讓信息窗體顯示
infowindow.open(map,new AMap.LngLat(116.480983, 39.989628));
  // 也可以通過(guò)事件監(jiān)聽(tīng),在需要的時(shí)候才將信息窗體顯示出來(lái),比如在marker被單擊的時(shí)候顯示
var clickHandle = AMap.event.addListener(marker, 'click', function() {
  infowindow2.open(map, marker.getPosition())
})
//信息框移除
// AMap.event.removeListener(clickHandle);
使用高級(jí)信息窗體
// 高級(jí)信息框
AMap.plugin('AMap.AdvancedInfoWindow',function(){
  var infowindow = new AMap.AdvancedInfoWindow({
    content: '<h3 class="title">高德地圖</h3>'+
             '<div class="content">高德是中國(guó)領(lǐng)先的數(shù)字地圖內(nèi)容、'+
             '導(dǎo)航和位置服務(wù)解決方案提供商。</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  創(chuàng)建控件并添加
    var toolBar = new AMap.ToolBar();
    var scale = new AMap.Scale();
    map.addControl(toolBar);
    map.addControl(scale);
})
//要移除控件的時(shí)候調(diào)用地圖的removeControl方法即可
//map.removeControl(toolBar);
添加工具條和比例尺

第七步:添加鷹眼

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

第八步:室內(nèi)地圖

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

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

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

            });
        });
    })

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

商場(chǎng)室內(nèi)地圖

未完待續(xù)...(參考高德地圖開(kāi)發(fā)入門(mén)指導(dǎo))

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

推薦閱讀更多精彩內(nèi)容

  • 本文把高德地圖的鼠標(biāo)點(diǎn)擊獲取經(jīng)緯度與點(diǎn)標(biāo)記與地理編碼融合到了一起 首先要?jiǎng)?chuàng)建自己的應(yīng)用,并且添加key(服務(wù)用到的...
    RocaLee閱讀 2,934評(píng)論 0 2
  • 項(xiàng)目中用到地圖的地方越來(lái)越多,從O2O商城、出行、交通、單車等無(wú)處不在使用地圖,以下是在多個(gè)項(xiàng)目中集成高德地圖常用...
    倔強(qiáng)的爐包閱讀 18,479評(píng)論 6 21
  • 因?yàn)橐鲆粋€(gè)地圖操作的項(xiàng)目,需要用到這個(gè)地圖庫(kù),但是查詢官方API麻煩,而且這個(gè)地圖框架的API做的用起來(lái)確實(shí)太麻...
    虛幻的銹色閱讀 33,964評(píng)論 1 15
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,785評(píng)論 18 139
  • 很多人都會(huì)遇到這種情況,在學(xué)習(xí)過(guò)程中,遇到一些問(wèn)題一直繞不過(guò)去,導(dǎo)致停止不前了,但又找不到突破口,從而出現(xiàn)半途而廢...
    王梓文閱讀 1,736評(píng)論 5 9