ườ
Tr
ọ ự ng ĐH Khoa H c T Nhiên TP.HCM
TRUNG TÂM TIN H CỌ
ậ
ả ồ
ị
ạ
ầ
GV Biên so n: Tr n Duy Thanh
L p trình Windows Phone Module 3 – Bài 5: B n đ và đ nh vị
2014
Nội dung
• Kiến trúc bản đồ và định vị
• Maps Task Launchers
• Cách sử dụng Map Control
• Cách tạo Map overlay
• Mở rộng cách tạo đường đi và chỉ dẫn
2
Maps, Location, và Routing
1. Kiến trúc bản đồ và định vị
Thiết lập ID_CAP_MAP, ID_CAP_LOCATION
3
Maps, Location, và Routing
Settings/System/Location/ bật Turn On
2. Maps Task Launchers
• MapsTask
• MapsDirectionsTask
• MapDownloaderTask và MapUpdaterTask
• Xác định vị trí hiện tại trên bản đồ
4
Maps, Location, và Routing
2.1 MapsTask
ộ Thu c tính Mô tả
ụ ượ Công c đ c built – in Windows
ể ế ộ ị Phone giúp ta tìm ki m đ a đi m m t
Center SearchTerm ZoomLevel
MapsTask mapTask = new MapsTask();
mapTask.ZoomLevel = 15;
mapTask.SearchTerm = searchTerm;
mapTask.Show();
5
Maps, Location, và Routing
cách nhanhchóng.
2.2. MapsDirectionsTask
Công cụ giúp chúng ta tìm đường đi và chỉ dẫn
MapsDirectionsTask mapsDic = new MapsDirectionsTask();
LabeledMapLocation start = new LabeledMapLocation();
start.Label = txtStart.Text;
LabeledMapLocation end=new LabeledMapLocation();
end.Label = txtEnd.Text;
ắ ầ
ể
mapsDic.Start = start; // đi m b t đ u
ể
ế
mapsDic.End = end; // đi m k t thúc
mapsDic.Show();
6
Maps, Location, và Routing
Windows Phone cung cấp 2 Task đơn giản dễ sử dụng để giúp người dùng có thể tải bản đồ cũng như cập nhập mới.
MapDownloaderTask mapDownloaderTask = new
MapDownloaderTask();
mapDownloaderTask.Show();
MapUpdaterTask mapUpdaterTask = new
MapUpdaterTask();
mapUpdaterTask.Show();
7
Maps, Location, và Routing
2.3. MapDownloaderTask và MapUpdaterTask
2.4. Xác định vị trí hiện tại trên
bản đồ
private async Task GetCurrentCoordinate() {
Geolocator locator = new Geolocator();
locator.DesiredAccuracy = PositionAccuracy.High;
Geoposition position = await locator.GetGeopositionAsync();
GeoCoordinate coordinate =
new GeoCoordinate(position.Coordinate.Latitude,
position.Coordinate.Longitude);
return coordinate;
8
Maps, Location, và Routing
}
3. Cách sử dụng Map Control
9
Maps, Location, và Routing
Map Control giống như 1 component, nó nằm trong viện thư thông qua Microsoft.Phone.Maps.Controls, control này ta có thể đính kèm nó một phần trong ứng dụng của mình, nó khác với MapTask launcher. Sử dụng Map control rất đơn giản và vô cùng tiện lợi.
4. Cách tạo Map overlay
10
Maps, Location, và Routing
4. Cách tạo Map overlay
MapOverlay overlay = new MapOverlay();
overlay.Content = image;
overlay.GeoCoordinate = coordinate;
layer = new MapLayer();
11
ồ ướ ư ả theMap.Layers.Add(layer);//đ a Layer vào b n đ tr c
ư layer.Add(overlay);// đ a overlay vào Layer sau. Maps, Location, và Routing
5. Mở rộng cách tạo đường đi và chỉ dẫn • GeocodeQuery
• MapAddress
• RouteQuery
• RouteLeg
• RouteManeuver
12
Maps, Location, và Routing
Thảo luận
13
Maps, Location, và Routing