Các thành phần của Google Maps JavaScrip API

Một phần của tài liệu Dịch vụ bản đồ trong điện toán đám mây và ứng dụng quản lý thông tin các cửa khẩu hải quan (Trang 40)

Google Maps Javascript API bao gồm nhiều lớp, nhiều dịch vụ hỗ trợ khai thác bản đồ và mỗi thành phần có chức năng riêng của nó.

2.2.2.1 Các sự kiện (Event)

Khi sử dụng bản đồ số, ngƣời dùng có thể thực hiện phóng to, thu nhỏ, kéo bản đồ… Để thao tác với các sự kiện, ngƣời dùng phải thông qua phƣơng thức addListener() và để hủy sự kiện thì sử dụng phƣơng thức removeListener() của lớp event. Đối với một sự kiện thì thông thƣờng chúng ta có 3 giá trị tham số cần quan tâm: Đối tƣợng của sự kiện, điều kiện cần để xảy ra sự kiện và hàm sẽ sử dụng để đáp ứng cho sự kiện đó.

Hình 0.4 Đăng ký một sự kiện trong GAE

Trong hình đăng ký sự kiện trong GAE ở trên, chúng ta có thể thấy có 3 tham số: Tham số thứ nhất là đối tƣợng cần lắng nghe (ở đây là bản đồ - map), tham số thứ hai là sự kiện đƣợc sử dụng để lắng nghe đối tƣợng (ở đây là sự kiện click), tham số thứ ba là hàm đáp ứng sự kiện (ở đây là function).

Các đối tƣợng cần lắng nghe là các đối tƣợng khác nhau, đó có thể là đối tƣợng bản đồ (map) hoặc là đối tƣợng đƣợc tạo ra từ các lớp phủ (Overlays class) nhƣ lớp đánh dấu (Marker)… Mỗi một đối tƣợng cho phép có thể lắng nghe các sự kiện khác nhau

 Các sự kiện của đối tƣợng bản đồ (Map): Đối tƣợng bản đồ đƣợc tạo ra từ lớp google.maps.Map và có thể có các sự kiện:

 Bounds_changed: Dùng để hiển thị vùng thay đổi của bản đồ khi có sự thay đổi trên bản đồ.

 Center_changed: Sử dụng khi tọa độ tâm của bản đồ thay đổi.

 Click: Sử dụng khi click chuột lên bản đồ.

 Drag: Sử dụng khi kéo bản đồ.

 Zoom_changed: Sử dụng khi thực hiện phóng to hay thu nhỏ bản đồ.

 …

 Các sự kiện của đối tƣợng đánh dấu (Marker): Đối tƣợng đƣợc tạo ra từ lớp google.maps.Marker và có thể có các sự kiện:

 Click: Sử dụng khi click lên một đối tƣợng marker.

 Dbclick: Sử dụng khi click chuột hai lần liên tiếp lên một đối tƣợng marker.

 Mouseover: Sử dụng khi di con trỏ vào đối tƣợng.

 Mousemove: Sử dụng khi trỏ chuột trên đối tƣợng.

 Position_changed: Sử dụng để gọi vị trí tọa độ khi đối tƣợng marker thay đổi.

2.2.2.2 Các điều khiển (Controls)

Khả năng tƣơng tác với bản đồ là yêu cầu cơ bản mà bất kỳ ứng dụng nào khi đƣợc xây dựng và đƣa vào sử dụng cũng đều phải quan tâm và có thể nói nó chính là lõi của việc sử dụng các ứng dụng bản đồ. GMaps cho phép ngƣời dùng có thể tùy biến sử dụng bản đồ với các điều khiển tƣơng ứng nhƣ phóng to, thu nhỏ bản đồ, hay

thay đổi tỷ lệ hiển thị trên bản đồ… Bên cạnh các điều khiển đƣợc cung cấp sẵn, Gmaps cũng cho phép tạo ra các tùy biến theo sở thích khi sử dụng bản đồ.

 Điều khiển định hƣớng (Navigation control): Điều khiển thực hiện chức năng di chuyển, xoay và phóng to hay thu nhỏ bản đồ.

 DEFAULT: Chọn kiểu mặc định do ngƣời sử dụng quy định.

 SMALL: Hiển thị phóng to hay thu nhỏ bản đồ.

 ZOOM_PAN: Hiển thị chức năng phóng to hay thu nhỏ là thanh trƣợt, di chuyển và xoay bản đồ.

 Điều khiển kiểu hiển thị bản đồ (Map type Control): Điều khiển này cho phép ngƣời sử dụng thay đổi kiểu dữ liệu hiển thị trên bản đồ.

 ROADMAP: Hiển thị dữ liệu hình ảnh nền là hình ảnh véc tơ về các địa điểm trên bản đồ.

 SATELLITE: Hiển thị dữ liệu hình ảnh nền là các ảnh vệ tinh.

 HYBIRD: Hiển thị dữ liệu ảnh nền là sự kết hợp giữa ảnh vệ tinh và ảnh véc tơ.

 TERRAN: Hiển thị dữ liệu ảnh nền ở chế độ bản đồ địa hình. (adsbygoogle = window.adsbygoogle || []).push({});

 Điều khiển tỷ lệ bản đồ (Scale control): Điều khiển cho phép ngƣời sử dụng đo khoảng cách trên bản đồ, nó đƣợc thể hiện ở hai đơn vị đo là “km” và “dặm”.

2.2.2.3 Các lớp phủ (Overlays)

Các lớp phủ là các đối tƣợng trên bản đồ đƣợc xác định bởi tọa độ, đƣợc đại điện bởi vĩ độ và kinh độ, và do đó chúng có thể di chuyển khi kéo hay thay đổi độ phóng của các bản đồ. Mục đích sử dụng của các lớp phủ là thể hiện các đối tƣợng cần hiển thị trên bản đồ, bao gồm các điểm, đƣờng, vùng hay một nhóm các đối tƣợng.

 Điểm đánh dấu (Marker): Marker đƣợc dùng để đánh dấu điểm và đƣợc hiển thị bằng một biểu tƣợng hoặc một hình ảnh. Đối tƣợng này đƣợc tạo ra từ lớp Marker với các giá trị tham số thuộc tính bao gồm tọa độ, bản đồ…

 Đƣờng Polyline: Polyline là đƣờng gấp khúc dùng để hiển thị các đối tƣợng trên bản đồ. Đối tƣợng này đƣợc tạo ra từ lớp Polyline với các giá trị tham số bao gồm các tọa độ (path), màu của đƣờng vẽ (strokeColor), độ trong suốt (strokeOpacity) và độ dày của đƣờng vẽ (strokeWeight).

 Vùng Polygon: Polygon là một đa giác khép kín thành một vùng khép kín, đƣợc sử dụng để hiển thị các vùng, miền trên bản đồ. Đối tƣợng này đƣợc tạo ra từ lớp Polygon với các giá trị tham số bao gồm một mảng các tọa độ (paths), màu của đƣờng vẽ (strokeColor), độ trong suốt của đƣờng vẽ (strokeOpacity), độ dày của đƣờng vẽ (strokeWeight), màu tô nền đa giác (fillColor) và độ trong suốt của nền đa giác (fillOpacity).

 Cửa sổ thông điệp (Information window): Đƣợc sử dụng để hiển thị thông tin một đối tƣợng trên bản đồ dƣới dạng một cửa sổ. Đối tƣợng này đƣợc tạo ra từ lớp InfoWindow với thông số là các nội dung cần hiển thị, tọa độ vị trí cần hiển

thị, thông tin hình ảnh địa điểm …

2.2.2.4 Các dịch vụ (Services) [23]

Gmaps cung cấp một số dịch vụ hỗ trợ cho việc xử lý trƣớc cũng nhƣ thực hiện tƣơng tác với bản đồ. Tất cả các dịch vụ trên đều đƣợc truy cập không đồng bộ (asynchronous). Do đó khi sử dụng các dịch vụ này, ứng dụng phải cung cấp một hàm gọi lại (callback function) cho dịch vụ để khi thực hiện xong nhiệm vụ thì dịch vụ sẽ gọi hàm gọi lại này để trở về trạng thái ban đầu nhƣ trƣớc khi sử dụng dịch vụ.

 Dịch vụ mã hóa địa lý (Geocoding): Đây là dịch vụ đƣợc sử dụng để chuyển đổi từ một địa chỉ sang một tọa độ trên bản đồ. Dịch vụ Geocoding đƣợc tạo ra từ lớp Geocoder, với yêu cầu đầu vào là địa chỉ của địa điểm cần tìm thông tin trên bản đồ, kết quả ra sẽ là tọa độ của địa chỉ đó hoặc một tọa độ địa lý đƣợc xác định dƣới dạng kinh độ/vĩ độ tƣơng ứng với điểm cần tìm, kết quả tìm đƣợc là tên địa điểm.

 Dịch vụ chỉ đƣờng (Directions): Đây là dịch vụ dùng để xác định đƣờng đi. Dịch vụ Directions đƣợc tạo ra từ lớp DirectionsService với các thông tin yêu cầu đầu vào bao gồm điểm xuất phát, điểm đến … Kết quả khi sử dụng dịch vụ là đƣờng đi ngắn nhật giữa hai điểm cần tìm đƣờng đi hoặc trả về thông báo lỗi nếu không tìm thấy đƣờng theo yêu cầu.

 Dịch vụ xác định độ cao (Elevation): Đây là dịch vụ xác định độ cao của các điểm trên bề mặt trái đất so với mực nƣớc biển. Dịch vụ Elevation đƣợc tạo ra từ lớp ElevationService với yêu cầu đầu vào là một hoặc nhiều tọa độ các điểm cần xác định độ cao.

 Dịch vụ xem đƣờng phố (Street view): Đây là dịch vụ cho phép ngƣời sử dụng xem đƣờng phố dƣới các góc nhìn khác nhau. Dịch vụ này đƣợc cung cấp và tích hợp sẵn trên bản đồ qua biểu tƣợng trên bản đồ.

Một phần của tài liệu Dịch vụ bản đồ trong điện toán đám mây và ứng dụng quản lý thông tin các cửa khẩu hải quan (Trang 40)