ườ

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