LWUITリード蜂地図開発例:アドレス逆符号化

1732 ワード

アドレス逆符号化は経緯度により対応する地名を検索し、以下の例は経緯度118.77802、32.061699に対応する地名を検索した結果、「中国江蘇省南京市鼓楼区淵声巷41号」となった.
package com.pstreets.gisengine.demo.lwuit;
 
//--------------------------------- IMPORTS ------------------------------------
 
import com.mapdigit.gis.MapPoint;
 
import com.mapdigit.gis.geometry.GeoLatLng;
import com.mapdigit.gis.raster.MapType;
import com.mapdigit.gis.service.IReverseGeocodingListener;
import com.pstreets.gisengine.demo.MapDemoLWUIT;
import com.sun.lwuit.Command;
import com.sun.lwuit.events.ActionEvent;
 
public class MapReverseGeocodingLWUIT extends MapDemoLWUIT
        implements IReverseGeocodingListener{
 
    private Command mapFindAddressCommand;
 
    public void startApp() {
        init();
        canvas.setTitle("Map Reverse Geocoding");
 
        mapFindAddressCommand=new Command("Find Address"){
            public void actionPerformed(ActionEvent evt) {
                 map.getReverseLocations("32.061699,118.777802");
 
            }
        };
        canvas.addCommand(mapFindAddressCommand);
        GeoLatLng center =  new GeoLatLng(32.0616667, 118.7777778);
        map.setCenter(center, 13, MapType.MICROSOFTCHINA);
         map.setReverseGeocodingListener(this);
 
        canvas.show();
    }
 
    public void done(String arg0, MapPoint[] result) {
        if (result != null) {
            map.panTo(result[0].getPoint());
        }
    }
}

注意文字列の緯度フォーマットを使用すると、緯度が前、経度が後で、逆になると、返される地名は空になるか、外国に走ることができます.結果も配列であり、一般的に最初の結果まで、後の結果はより大きな領域または比較的遠い地名である.
LWUITガイド蜂地図開発パッケージVer 2.1ダウンロード