行政區定位

行政區定位

TGOS MAP API(iOS)行政區定位功能以服務方式提供。

傳送之參數說明如下:

op:定位服務類別。鍵入dist進行行政區定位。

district :行政區名稱。

Nogeometrytrue值時,不回傳geometry,減少資料流量,否則設定為false

回傳結果說明如下:

geometry:空間資料(TWD97中央經線121)

COUNTY:地標所在縣市。

TOWN:地標所在鄉鎮市區。

XX坐標(TWD97中央經線121) 

YY坐標(TWD97中央經線121) 

EX坐標(WGS84) 

NY坐標(WGS84) 

maxX:圖形範圍X最大值(TWD97中央經線121)

maxY:圖形範圍Y最大值(TWD97中央經線121)

maxE:圖形範圍X最大值(WGS84)

maxN:圖形範圍Y最大值(WGS84)

minX:圖形範圍X最小值(TWD97中央經線121)

minY:圖形範圍Y最小值(TWD97中央經線121)

minE:圖形範圍X最小值(WGS84)

minN:圖形範圍Y最小值(WGS84)

程式範例如下:

NSString* addresslocator2 = @"http://gis.tgos.tw/addresslocator/locate.aspx?op=dist&format=json&nogeometry=true&district=";

 

- (IBAction)RegionClick:(id)sender {

[self clearMarker];

NSString * seachStr = [addresslocator2 stringByAppendingString:[self.RegionET.text  

//串接服務網址

stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];

NSURL * url = [NSURL URLWithString:seachStr];

 

NSError *error;

NSDictionary *ServiceJson = [NSJSONSerialization JSONObjectWithData:[NSData dataWithContentsOfURL:url]

options:NSJSONReadingMutableLeaves

error:&error];

if (error == nil) {

NSMutableDictionary *Info =[ServiceJson objectForKey:@"Information"];

NSLog(@"字典裡面的內容為--%@", Info );

TGMarkerOptions *opt = [[TGMarkerOptions alloc] init]; 

//建立TGMarkerOptions

opt.position = CLLocationCoordinate2DMake([[Info objectForKey:@"N"] doubleValue],[[Info objectForKey:@"E"] doubleValue]);

//坐標需用WGS84

opt.title = [Info objectForKey:@"county"];  //設定標題

opt.snippet = [Info objectForKey:@"town"];  //設定內文

opt.draggable = NO;  //設定可否拖曳

[MarkerList addObject:[mapView_ addMarkerWithOptions:opt]];

TGLatLngBounds *bounds = [[TGLatLngBounds alloc] initWithCoordinate: CLLocationCoordinate2DMake([[Info objectForKey:@"maxN"] doubleValue],[[Info objectForKey:@"minE"] doubleValue])

andCoordinate: CLLocationCoordinate2DMake([[Info objectForKey:@"minN"] doubleValue],[[Info objectForKey:@"maxE"] doubleValue])];

TGViewerUpdate *update = [TGViewerUpdate fitBounds:bounds]; 

//依照TGLatLngBounds的設置顯示於地圖上

[mapView_ moveViewer:update];

}

}

服務使用範例如下:

http://gis.tgos.tw/addresslocator/locate.aspx?op=dist&district=新北市板橋區&nogeometry=true

 

 

回到上方