2012-03-20 3 views
6

В разделе Displaying Overlays on a Map руководства по программированию местоположения для определения местоположения есть пример, который «показывает заполненный и поглаженный накладной, покрывающий состояние Колорадо».Данные наложения iOS (MKPolygon) для всех штатов США?

// Define an overlay that covers Colorado. 
CLLocationCoordinate2D points[4]; 

points[0] = CLLocationCoordinate2DMake(41.000512, -109.050116); 
points[1] = CLLocationCoordinate2DMake(41.002371, -102.052066); 
points[2] = CLLocationCoordinate2DMake(36.993076, -102.041981); 
points[3] = CLLocationCoordinate2DMake(36.99892, -109.045267); 

MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:4]; 
poly.title = @"Colorado"; 

[map addOverlay:poly]; 

Вопрос Есть ли источник данных координат для всех 50 штатов США, используя эти же данные широты/долготы легко и свободно доступны?

ответ

8

Рана поиск Google для нам состояние контур гео координатами и нашел StackOverflow вопроса Geographical boundaries of states/provinces -> Google Maps Polygon, который имеет ответ, связывающий на XML for US state polygons (данные колорадских ниже).

<state name="Colorado" colour="#880000"> 
    <point lat="37.0004" lng="-109.0448"/> 
    <point lat="36.9949" lng="-102.0424"/> 
    <point lat="41.0006" lng="-102.0534"/> 
    <point lat="40.9996" lng="-109.0489"/> 
    <point lat="37.0004" lng="-109.0448"/> 
</state> 

Я также нашел US State and Country border coordinates со ссылкой на NationalAtlas.com, First Level Administrative Boundaries (States), United States, 2005, но данные выглядят гораздо более точным, чем мне нужно.

Другим источником данных является The State Border Data Set, который связан с файлом с «географическими координатами сегментов линии, составляющими границы состояний» (данные в Колорадо ниже).

bordindx, st1st2, milemark, lat, long, st1, st2, 
19 ,CO-NE ,0 ,40.003 ,102.051 ,08 ,31 , 
19 ,CO-NE ,68.95 ,41.002 ,102.051 ,08 ,31 , 
19 ,CO-NE ,173.19 ,41.001 ,104.053 ,08 ,31 , 
20 ,CO-NM ,0 ,36.999 ,109.044 ,08 ,35 , 
20 ,CO-NM ,333 ,37 ,103.001 ,08 ,35 , 
21 ,CO-OK ,0 ,37 ,103.001 ,08 ,40 , 
21 ,CO-OK ,52.89 ,36.993 ,102.041 ,08 ,40 , 
22 ,CO-UT ,0 ,41 ,109.049 ,08 ,49 , 
22 ,CO-UT ,276.11 ,36.999 ,109.044 ,08 ,49 , 
23 ,CO-WY ,0 ,41.001 ,104.053 ,08 ,56 , 
23 ,CO-WY ,260.18 ,41 ,109.049 ,08 ,56 , 

Update: Я поставил изысканную версию states.xml, а также код Objective-C на kjhsoftware/us-state-polygons GitHub репо.

+2

Используя некоторые из этого, я создал образец проекта, который делает это наложение: https://github.com/HunterHillegas/MapKitUSA – Hunter

Смежные вопросы