BingMaps [16]

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 36)

2.1.1 Tổng quan về Bing

Hình 0.1 Trang chủ Bing

Bing (trƣớc đây là Live Search, Window Live Search và MSN Search) là một bộ máy tìm kiếm web (máy ra quyết định) và đại diện cho công nghệ tìm kiếm hiện nay của Microsoft. Bing là một từ tƣợng thanh, một từ mô tả âm thanh. Thông qua nghiên cứu, Microsoft đã quyết định lấy tên Bing vì nó ngắn gọn, dễ nhớ, dễ phát âm và chắc hẳn sẽ là một URL tốt. Dƣới đây là một số đặc trƣng của Bing:

2.1.1.1 Về giao diện

 Hình nền về các nơi trên thế giới thay đổi hàng ngày có các thông tin mà bạn có thể xem bằng cách rê chuột lên hình ảnh.

 Phần đề mục nội dung của kết quả (tách các phần riêng cho hình nền, bản đồ, thời tiết ...).

 Khung duyệt trang bên trái, bao gồm điều hƣớng và trên các trang kết quả sẽ liệt kê các kết quả tìm kiếm.

 Liên kết con: Trên một số kết quả nhất định, trang kết quả tìm kiếm cũng hiển thị các liên kết đề mục bên trong một trang (Wikipedia).

 Mở rộng xem đối với thông tin từ bên thứ ba có thể xem đƣợc từ Bing. Cách này hoạt động đƣợc với trang Wikipedia.

2.1.1.2 Về phƣơng tiện

 Xem thử thu nhỏ video, khi rê chuột lên biểu tƣợng thu nhỏ video, đoạn video sẽ tự động chạy.

 Tìm kiếm hình ảnh từ trang kết quả hình ảnh liên tục cuộn có các thiết lập thay đổi đƣợc nhƣ kích thƣớc, trình bày, màu sắc, kiểu và ngƣời.

 Tìm kiếm video với thiết lập thay đổi đƣợc độ dài, kích thƣớc màn hình, độ phân giải và nguồn.

2.1.1.3 Về tìm kiếm cải tiến

 Liệt kê khách sạn trong thành phố.

 Liệt kê các hãng kinh doanh.

 Thông tin xe cộ.

 Thông tin giao thông hiện tại.

 Tìm kiếm địa phƣơng hóa cho nhà hàng và dịch vụ.

2.1.1.4 Các sản phẩm tìm kiếm của Bing

Ngoài các công cụ để tìm kiếm trang web, Bing còn cung cấp các tìm kiếm sau:

Bảng 0.1 Các dịch vụ tìm kiếm của Bing

Dịch vụ Website Miêu tả

Health http://www.bing.com/health

Bing Health lọc các tìm kiếm các khái

niệm y học có liên quan để lấy thông tin sức khỏe tƣơng ứng.

Images http://www.bing.com/images Bing Images cho phép ngƣời dùng tìm và hiển thị những bức ảnh tƣơng ứng.

Local http://www.bing.com/local Bing Local tìm các danh sách doanh nghiệp trong địa phƣơng.

Maps http://www.bing.com/maps

Bing Maps cho phép ngƣời dùng tìm các

doanh nghiệp, địa chỉ, vùng đất và tên đƣờng trên khắp thế giới, và có thể chọn góc nhìn kiểu bản đồ đƣờng phố, góc nhìn vệ tinh hoặc góc nhìn tổng hợp. Nó có bản đồ 3D gồm khả năng duyệt 3D ảo và phóng to thu nhỏ vùng đất và tòa nhà 3D. (adsbygoogle = window.adsbygoogle || []).push({});

cấp các kết quả tin tức phù hợp với yêu cầu.

Shopping http://www.bing.com/shopping

Bing Shopping cho phép ngƣời dùng tìm

kiếm trải rộng từ các nhà cung cấp trực tuyến đến nhà bán lẻ tất cả các loại sản phẩm và hàng hóa.

Translator http://www.bing.com/translator

Bing Translator cho phép ngƣời dùng

dịch văn bản hoặc toàn trang web sang các ngôn ngữ khác nhau.

Travel http://www.bing.travel

Bing Travel tìm giá vé máy bay và đặt

khách sạn trực tuyến và dự đoán thời điểm tốt nhất để mua chúng.

Videos http://www.bing.com/videos

Bing Video cho phép ngƣời dùng tìm

kiếm nhanh chóng và xem video trực tuyến từ các website khác nhau.

xRank http://www.bing.com/xrank Bing xRank cho phép ngƣời dùng tìm những ngƣời nổi tiếng, nhạc sĩ…

Tóm lại Bing cung cấp rất nhiều dịch vụ hữu ích cho ngƣời dùng và sử dụng cũng vô cùng tiện lợi. Trong các dịch vụ đã đƣợc cung cấp bởi Bing thì Bing Maps là một trong những tiện ích rất đƣợc nhiều ngƣời sử dụng không chỉ bởi vì tính dễ sử dụng mà còn vì những lợi ích to lớn mà nó mang lại.

2.1.2 Dịch vụ Bing Maps

Bing Maps là một dịch vụ bản đồ đi kèm với dịch vụ tìm kiếm Bing, đƣợc xây dựng và phát triển bởi Microsoft.

Bing Maps là dịch vụ bản đồ trực tuyến, đƣợc xây dựng với mục đích mang lại cho ngƣời dùng những sự lựa chọn tính năng tuyệt vời nhất về bản đồ trực tuyến. Với Bing Maps, bạn có thể tra cứu nhanh chóng vị trí của mình trên trái đất, tìm thấy hình ảnh về nơi bạn muốn tìm hiểu, tra cứu trạng thái giao thông …

Giao diện của Bing Maps khá đơn giản. Cửa sổ làm việc của Bing Maps mang tính chuyên nghiệp cao, các công cụ nhƣ Directions, Get driving directions, See your places, Share your map, Print map in the best format, See current traffic đƣợc sắp xếp

ở bên trái dƣới dạng biểu tƣợng, thay vì sắp xếp trên cửa sổ hiển thị bản đồ nhƣ

Google Maps (hoặc các công cụ tƣơng đƣơng).

Trên bản đồ của Bing Maps có các công cụ: See the map in 2D-hiển thị bản đồ dạng phẳng (chữ 2D), See the map in 3D-hiển thị bản đồ dạng ba chiều (chữ 3D), Use

a standard road map-hiển thị bản đồ đƣờng phố (chữ Road), Aerial-quan sát từ trên

không theo hai chế độ Aerial (ảnh chụp từ vệ tinh) hay Bird’s eye (quan sát theo cách nhìn của loài chim).

Khác với các công cụ bản đồ trực tuyến khác (nhƣ Google Maps), Bing Maps có khả năng hiển thị 3D, điều này góp phần làm tăng tính linh hoạt và khả năng hiển thị của nó. Nhƣng mặc định Bing Maps chỉ hỗ trợ dạng 2D, bạn cần cài thêm add-on Bing Maps 3D cho trình duyệt thì mới kích hoạt đƣợc dịch vụ ở chế độ 3D. Sau khi cài

đặt xong, bạn cần khởi động lại trình duyệt thì thay đổi mới có hiệu lực. Khi đó, bạn chọn chế độ 3D sẽ thấy đƣợc mô hình của các tòa nhà lớn hay các địa điểm cần tìm. Bing Maps cung cấp công cụ Photosynth. Đây là công cụ chuyển hình ảnh từ 2D thành 3D của Microsoft. Công cụ này cho phép ngƣời sử dụng xâu chuỗi hình ảnh số tạo nên bức ảnh tổng hợp ba chiều. Điều này cho phép ngƣời sử dụng có thể xem hình ảnh dƣới các góc độ khác nhau và nó là một lợi thế vô cùng to lớn giúp cho Bing Maps có thể cạnh tranh với các dịch vụ tìm kiếm bản đồ trực tuyến khác.

2.2 Google Maps [9,22]

Google Maps (GMaps) là một dịch vụ cung cấp giao diện trực quan, chi tiết về vị trí địa lý của các địa điểm và ảnh chụp vệ tinh của Google. GMaps cung cấp điều khiển để ngƣời sử dụng tùy biến hiển thị bản đồ bao gồm: dịch chuyển, xoay, phóng to/thu nhỏ cũng nhƣ tùy chỉnh hiển thị bản đồ ở những chế độ khác nhau. Bên cạnh đó, dịch vụ này còn hỗ trợ tìm kiếm lộ trình đƣờng đi, tìm kiếm địa chỉ… GMaps đƣợc cung cấp bởi công ty Google thông qua các trang web nhƣ Google Maps, Google Ride Finder và đƣợc nhúng vào các trang web thứ 3 thông qua các hàm dịch vụ API. Google Maps API cho phép các nhà xây dựng ứng dụng có thể nhúng dịch vụ GMaps vào trang web của mình.

Hình 0.3 Giao diện chính của Google Maps

Với dịch vụ GMaps, ngƣời sử dụng không cần phải đầu tƣ vào cơ sở hạ tầng lƣu trữ dữ liệu, cập nhật cũng nhƣ xử lý bản đồ mà chỉ cần biết về lập trình web, Ajax là có thể xây dựng đƣợc một ứng dụng bản đồ số với các tính năng cơ bản đƣợc cung cấp bởi GMaps mà không cần mất khoản chi phí nào. (adsbygoogle = window.adsbygoogle || []).push({});

2.2.1 Môi trƣờng phát triển

Bản đồ Google Maps (GMaps) đƣợc đƣa vào trong các ứng dụng thông qua việc sử dụng bộ thƣ viện API đã đƣợc cung cấp. Các thƣ viện đã đƣợc cung cấp bởi GMaps có thể nói đến nhƣ Maps JavaScript API, Map API for Flash, Map Data API, Earth API … Mỗi một thƣ viện khi đƣa ra đều có mục đích riêng và đều hƣớng đến khai thác một khía cạnh nào đó của Gmaps. Để sử dụng các API đã đƣợc cung cấp thì phải khai báo thƣ viện API trong ứng dụng trƣớc tiên. Sau khai khai báo thì có thể sử dụng các đối tƣợng, dịch vụ và các thành phần mà thƣ viện đó cung cấp để xây dựng ứng dụng cho mình.

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

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 đồ. (adsbygoogle = window.adsbygoogle || []).push({});

 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.

 Đ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 đồ.

2.3 Nền tảng công nghệ Microsoft [17]

Trong thế giới điện toán, những cải tiến thay đổi vẫn thƣờng xuyên xảy ra, đây là những biến đổi tất yếu và có tác động thúc đẩy sự phát triển. Một thách thức với bất kỳ nhà lập trình hay những công việc chuyên về công nghệ thông tin nào là theo kịp những biến đổi liên tục và những sự phát triển trong công nghệ. Tuy nhiên, những thay đổi thƣờng xuyên nhất trong công nghệ luôn đem lại thành quả tốt nhất. Ngày nay, do công nghệ thông tin liên tục phát triển, cho nên những nền tảng của công nghệ đó có

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 36)