Tổng quan về OpenLayer - Ứng dụng tạo bởi OpenLayer(Phần 3)

vào lúc 22:05

1.        Thiết lập ứng dụng đầu tiên

    Để tạo ra một ứng dụng đầu tiên thì các bạn cần có dữ liệu và file cofig.map đã được giới thiệu ở phần Mapserver.
     Tạo một trang .html vào một thư mục bất kỳ(chỉ cần lưu ý khi chỉ đường dẫn liên kết tới file OpenLayers.js ở thư mục “lib”).
    Ở đây tạo ra một trang vidu.html chứa trong thư mục OpenLayer mà ta mới tải về và giải nén ra.
    Mở trang này bằng các công cụ như Notepad, Notepad++ …copy dòng lệnh sau:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- Đường dẫn tới file OpenLayers.js -->
 <script src="../lib/OpenLayers.js"></script>
<!-- Đoạn javascript chính để gọi các chức năng trong OpenLayer -->
<script type="text/javascript">
        function init(){
        //Khai báo một biến mới là dạng OpenLayer.Map
        map = new OpenLayers.Map("myMapHolder");
        /*Khai báo biến là dạng lớp bản đồ, đây là lớp cơ sở. Lấy thông tin lớp từ file config.map của Thái Lan được giới thiệu ở phần Mapserver*/
baseMap = new OpenLayers.Layer.WMS("OpenLayers WMS", "http://localhost/cgi-bin/mapserv.exe?map=C:/ms4w/apps/thailand/config.map&", {layers: "forest"});
//Thêm lớp cơ sở vào bản đồ
map.addLayers([baseMap]);
//Quản lý ZoomExtend
map.zoomToMaxExtent();
}
</script>
</head>
<!-- Gọi hàm init ngay khi load trang -->
<body onload="init()">
<div width="100%" height="100%" id="myMapHolder" />
</body>
</html>
Kết quả ứng đầu tiên

2.        Các thiết lập mở rộng

    Phần ứng dụng trên là cơ bản nhất, chỉ có một lớp đối tượng. Giờ ta thêm lớp đối tượng thì ta khai báo như sau:
Cú pháp:
myNewLayer = OpenLayers.Layer.layerType( nameOfLayer, URLtoWMS, {listOfOptions} );
§  myNewLayer: là tên lớp mới
§  nameOfLayer: là biến tham chiếu cho tên của layer(khai báo trong file config.map).
§  URLtoWMS là đường dẫn đến dich vụ WMS (đối với MapServer và Openlayers thì đường dẫn đến MapServer là CGIPATH + NETPATH)  ví dụ: http: //localhost/ cgi-bin / mapserv.exe?map = C:/ms4w/apps/thailand/ config.map&
§  {listOption} là một mảng chứa các tên lớp được yêu cầu và các tham số của chúng.
Ví dụ:
var railroad = new OpenLayers.Layer.WMS("Thailand RailRoad", "http://localhost/cgi-bin/mapserv.exe?map=C:/ms4w/apps/thailand/config.map&", {layers: "railroad", transparent: "true", format: "image/png"} );
Giờ ta đã có 2 lớp đối tượng chính vì vậy cần thong báo để thêm lớp đối tượng mới vừa được thêm vào bản đồ, ta thay như sau:
Thay đoạn code:
map.addLayer([baseMap])
Bằng:
map.addLayers([baseMap, railroad]);
Kết quả đã có thêm lớp railroad
    Quản lý các lớp. Đến lúc này ta đã có hơn 1 layer, để quản lý layer nào sẽ được hiện thị trên bản đồ ta có câu lệnh:
map.addControl(new OpenLayers.Control.LayerSwitcher());
Tạo ra thanh Zoom Pan có kích thước để kéo.
map.addControl(new OpenLayers.Control.PanZoomBar());
    Tạo ra một cửa sổ view toàn bộ bản đồ
map.addControl(new OpenLayers.Control.OverviewMap());
    Hiển thị cặp tọa độ (Lat,Long) hoặc (X,Y)
map.addControl(new OpenLayers.Control.MousePosition());
    Thước Tỷ lệ
map.addControl(new OpenLayers.Control.ScaleLine());

Và còn rất nhiều chức năng khác các bạn có thể tham khảo ở file OpenLayers.js

Hãy like nếu bài viết có ích →
Kết bạn với gisgpsrs trên Facebook để nhận bài viết mới nóng hổi

Không có nhận xét nào:

Đăng nhận xét