2012-11-25 4 views
4

폴리 라인으로 표시하려는 GeoCoordinate 오브젝트가 여러 개 있습니다 (사람이 찍은 경로 표시). (모든 라인을 표시하지 않습니다)geocoordinate 오브젝트의 폴리 라인 표시

내 실패한 시도 :

var map = new Map(); // Nokia Maps 
var layer = new MapLayer(); 
var overlay = new MapOverlay(); 
var polyline = new MapPolyline(); 

var gc = new GeoCoordinateCollection(); 
foreach(var geo in MyGeoCoordinateList) { 
    gc.Add(geo); 
} 

polyline.Path = gc; 
polyline.StrokeColors = Colors.Red; 
polyline.StrokeThickness = 3; 

overlay.Content = polyline; 

layer.Add(overlay); 
map.Layers.Add(layer); 
LayoutRoot.Children.Add(map); 

답변

2

은 내가 웨이 포인트의 모두 통과하는 GeoQuery를 사용, 같은 일을하고 싶었다. 쿼리는 내가 UI에 표시 한 경로를 생성했습니다.

var query = new RouteQuery(); 
query.Waypoints = new[] 
{ 
    new GeoCoordinate(40.7840553533410,-73.9764425910787), 
    new GeoCoordinate(40.7833068308611,-73.9745997113487), 
    new GeoCoordinate(40.7826229881351,-73.9730985576614), 
    new GeoCoordinate(40.7821147220884,-73.9719513345183), 
    new GeoCoordinate(40.7809503161196,-73.9724639235822), 
    new GeoCoordinate(40.7803311395532,-73.9721954245488), 
    new GeoCoordinate(40.7795640919224,-73.9729398991417), 
}; 
query.TravelMode = TravelMode.Walking; 
var result = await query.GetRouteAsync(); 
var mapRoute = new MapRoute(result); 
mapRoute.Color = Colors.Magenta; 
mainMap.AddRoute(mapRoute); 

메인 맵은 내 UI의지도 컨트롤입니다. 쿼리는 사용 가능한 경로를 따르는 경로를 만듭니다 (도보 경로로 표시 했으므로 중앙 공원에서 발 경로를 사용함). A와

var map = new Map(); // Nokia Maps 
var polyline = new MapPolyline(); 

var gc = new GeoCoordinateCollection(); 
foreach(var geo in MyGeoCoordinateList) { 
    gc.Add(geo); 
} 

polyline.Path = gc; 
polyline.StrokeColors = Colors.Red; 
polyline.StrokeThickness = 3; 

map.MapElements.Add(polyline); 
LayoutRoot.Children.Add(map); 

:

+0

훌륭하게 작동합니다. 이걸 정확하게 만드는 것이 그렇게 간단하지 않았다는 것을 전혀 모르고있었습니다. 감사합니다 – zyash

3

그것은 당신이 즉, MapElements 객체에 폴리 라인을 추가해야합니다 (단순히 마이크 브라운의 예에서와 같이 도로를 포인트를 연결하고 따르지 않는) 경로를 표시하는 것으로 나타났다 보너스는보기 포트의 포인트가 포함되도록지도를 설정하는 방법입니다 (멋진 애니메이션 사용).

map.SetView(LocationRectangle.CreateBoundingRectangle(MyGeoCoordinateList, MapAnimationKind.Parabolic); 
+0

정확히 내가 필요했던 것, thx! – maddob

관련 문제