在上一個章節,我們只用了短短幾行程式碼就建立了一個簡單的地圖,而在這段程式碼內,我們看到了兩個物件:UMapUlatLng。凡是你必須要使用到一個物件時,絕對不能直接使用,就好像去網咖用電腦,我們能直接坐下就開始玩遊戲嗎?當然不行!所以我們必須先去櫃台申請開台才能用。而我們在使用物件時,也是要跟電腦申請一個記憶體位置給物件使用。申請的方式就是使用關鍵字new。讓我們來回憶一下:

 var map = new UMap(document.getElementById('id_map'));
 map.centerAndZoom(new ULatLng(25.035405, 121.520255), 9);


第一行我們建立了一個UMap的物件放到變數map裡,所以我們之後是使用map來做動作。
第二行我們建立了一個ULatLng物件,直接使用。這種方法是比較建議使用在只會出現一次的物件,如果這個相同的物件會出現兩次以上,比較建議使用以下用法:

var position = new ULatLng(25.035405, 121.520255);
map.centerAndZoom(position, 9);

這樣position這個變數就可以重複使用,而不用每次都在new一個物件,這樣很浪費記憶體空間。當然,前提是ULatLng裡面的經緯度是一樣的。

接下來我們先來看看ULatLng這個物件有什麼功能可以使用:
(表格內容取自 UrMap API文件 )

建構式說明
ULatLng(lat, lng)建立一個經緯度坐標。lat 是緯度(latitude),lng 是經度(longitude)。

函式說明
lat()取得這個點的緯度值(float)。
lng()取得這個點的經度值(float)。
moveTo(lat, lng)將這個點的坐標改變為 lat 緯度及 lng 經度。

所謂的建構式,就是當我們要建立這個物件時必須給他的參數,就好像:

var position = new ULatLng(25.035405, 121.520255);

我們必須在ULatLng裡擺上lat(緯度)和lng(經度)兩個參數。

至於函式,就是我們可以使用的功能,以下我們就來對這三個函式做點介紹:

var latitude = position.lat();
var longitude = position.lng();
position.moveTo(25.123321, 121.321123);

我們在之前使用變數position建立了一個ULatLng物件,緯度及經度為25.035405和121.520255。
第一行我們取得了position的緯度放在latitude裡面,所以latitude的值是25.035405。
第二行我們取得了position的經度放在logitude裡面,所以longitude的值是121.520255。
第三行我們把position移動到25.123321, 121.321123的位置。

 沒錯,就是這麼簡單!現在我們可以嘗試自己去看一下 UrMap API文件 ,看不懂?沒關係,下一章我將介紹UMap這個物件。


想想看:

var position = new ULatLng(25.035405, 121.520255);
var latitude;
var longitude;
position.moveTo(25.123321, 121.321123);
latitude = position.lat();
longitude = position.lng();

這樣latitude和longitude的結果會是如何呢?

arrow
arrow
    全站熱搜

    hellolucky 發表在 痞客邦 留言(1) 人氣()