Tải bản đầy đủ (.docx) (23 trang)

Xây dựng webGIS cho bộ dữ liệu bản đồ hoi ninh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.97 MB, 23 trang )

TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
------------------------------------------------

KỲ THI KẾT THÚC HỌC PHẦN HỌC KÌ II
NĂM HỌC 2021 - 2022
Đề tài 06: Xây dựng webGIS cho bộ dữ liệu bản đồ Hoi_Ninh.

Giảng viên hướng dẫn :

Lê Thị Thu Hà

Sinh viên thực hiện

:

Chu Văn Thái

Mã sinh viên

:

1911060042

Lớp

:

ĐH9C1

Tên học phần



:

Phát triển Hệ thống thông tin Địa lý

Khóa học

:

2019 – 2023

Hà Nội – 2022


MỤC LỤC
MỞ ĐẦU.................................................................................................................................. 1
CHƯƠNG I: GIỚI THIỆU PHẦN MỀM.............................................................................. 2
1. QGIS.................................................................................................................................. 2
2. Geoserver.......................................................................................................................... 2
3. PostgreSQL....................................................................................................................... 3
4. XAMPP............................................................................................................................. 3
5. OpenLayers....................................................................................................................... 3
6. PHP.................................................................................................................................... 4
CHƯƠNG II: XÂY DỰNG WEBGIS.................................................................................... 6
2.1.

2.2.

Xây dựng dữ liệu cho WebGIS........................................................................................ 6
2.1.1.


Đưa dữ liệu bản đồ vào QGIS............................................................................. 6

2.1.2.

Hiện nhãn các đối tượng trên bản đồ................................................................. 6

2.1.3.

Lên màu cho các đối tượng................................................................................. 7

2.1.4.

Khởi tạo CSDL trong PostgreS.......................................................................... 7

2.1.5.

Sử dụng PostGIS shapefile import để đưa dữ liệu vào CSDL.......................... 8

Đưa dữ liệu lên Geoserver............................................................................................... 8
2.2.1. Public dữ liệu bản đồ.............................................................................................. 8
2.2.2. Lớp dữ liệu trong PostgreSQL đã được Public lên Geoserver............................. 9

2.3.

Xây dựng giao diện và chức năng cho WebGIS........................................................... 10

CHƯƠNG III: WEBGIS....................................................................................................... 15
3.1 Giao diện của trang chủ webGIS.................................................................................. 15
3.2 Hiển thị nổi bật lớp dan_cu khi click............................................................................ 16

3.3 Bật tắt 3 lớp dữ liệu........................................................................................................ 16
3.4 Tìm kiếm đối tượng ma_loai.......................................................................................... 18
KẾT LUẬN............................................................................................................................ 19
TÀI LIỆU THAM KHẢO..................................................................................................... 20


MỞ ĐẦU
WebGIS là một giải pháp client – server cho phép quản lý, phân tích, cập nhật,
phân phối thơng tin bản đồ và GIS trên mạng Internet, giảm thiểu chi phí đầu tư phần
mềm, phần cứng cho người dùng cuối; giao diện thân thiện, đơn giản phù hợp với nhiều
người dùng.
WebGIS thích hợp với các cơ sở dữ liệu bản đồ, GIS từ rất bé cho đến rất lớn, có
khả năng tuỳ biến cao, phù hợp với nhiều loại hình tổ chức.
Trong bài tập lớn này, em sẽ vận dụng kiến thức của bản thân về bộ môn “Phát
triển hệ thông thông tin địa lý” để giải quyết đề tài này.

3


CHƯƠNG I: GIỚI THIỆU PHẦN MỀM
1. QGIS
Quantum GIS, hay còn gọi là QGIS là phần mềm nguồn mở về hệ thống thơng tin
địa lý. Tính năng chính của QGIS là thao tác trên các lớp bản đồ có dạng vector Qgis có
thể đọc được nhiều dạng dữ liệu: các lớp bản đồ tạo bởi ArcView, MapInfo và GRASS,
các bảng thông tin tạo bởi PostgreSQL (thơng qua PostGIS).
• Số hóa bản đồ và các cơng cụ kết nối với GPS.
• Các tính năng biên tập bản đồ, tạo lưới kinh vĩ độ, chèn thang tỉ lệ, mũi tên chỉ
hướng bắc...
• Phân tích khơng gian nhờ PostGIS hoặc kết nối với GRASS.
• Thay đổi các tính năng thơng qua cơ chế plug-in.

• Giao diện của QGIS được xây dựng trên cơ sở là bộ Qt.
2. Geoserver
GeoServer là một máy chủ mã nguồn mở với mục đích kết nối những thơng tin
địa lý có sẵn tới các Geoweb (trang Web địa lý hay còn gọi là webmap) sử dụng chuẩn
mở. GeoServer là sự phối hợp các chuẩn hoạt động của Open Geospatial Consortium
(OGC), Dịch vụ bản đồ (WMS - Web Map Service), Web Feature Service (WFS).
GeoServer hỗ trợ rất nhiều style bản đồ. Tương thích với chuẩn Web Feature Service
(WFS), GeoServer cho phép chia sẻ và chỉnh sửa dữ liệu đang được dùng để hiển thị bản
đồ GeoServer hỗ trợ rất nhiều style bản đồ. Tương thích với chuẩn Web Feature Service
(WFS), cho phép chia sẻ và chỉnh sửa dữ liệu đang được dùng để hiển thị bản đồ
GeoServer cho phép xuất dữ liệu linh hoạt dựa vào việc hỗ trợ các chuẩn KML, GML,
Shapefile, GeoRSS, Portable Document Format, GeoJSON, JPEG, GIF, SVG, PNG ...
GeoServer có thể đọc được nhiều định dạng dữ liệu, bao gồm PostGIS, Oracle Spatial,
ArcSDE, DB2, MySQL, Shapefiles, GeoTIFF, GTOPO30 và nhiều loại khác. Bên cạnh
đó, GeoServer cịn có thể chỉnh sửa dữ liệu nhờ những thành phần xử lý của Chuẩn Web


Feature Server. GeoServer được xây dựng trong bộ GeoTools, được viết bởi ngôn ngữ
Java.


3. PostgreSQL
PostgreSQL là một hệ quản trị cơ sở dữ liệu quan hệ và đối tượng dựa trên
POSTGRES, POSTGRES mở đường cho nhiều khái niệm quan trọng mà các hệ quản trị
dữ liệu thương mại rất lâu sau mới có. PostgreSQL là một chương trình mã nguồn mở
xây dựng trên mã nguồn ban đầu của đại học Berkeley. Nó theo chuẩn SQL99 và có
nhiều đặc điểm hiện đại
PostgreSQL được phổ biến bằng giấy phép BSD cổ điển. Nó khơng quy định
những hạn chế trong việc sử dụng mã nguồn của phần mềm. Bởi vậy PostgreSQL có thể
được dùng, sửa đổi và phổ biến bởi bất kỳ ai cho bất kỳ mục đích nào. PostgreSQL cũng

là hệ quản trị cơ sở dữ liệu hỗ trợ mạnh trong việc lưu trữ dữ liệu không gian.
PostgreSQL kết hợp với module PostGIS cho phép người dùng lưu trữ các lớp dữ
liệu không gian. Khi sử dụng PostgreSQL, PostGIS kết hợp với các phần mềm GIS hỗ trợ
hiển thị, truy vấn, thống kê hoặc xử lý dữ liệu không gian.
4. XAMPP
XAMPP hoạt động dựa trên sự tích hợp của 5 phần mềm chính là Cross-Platform
(X), Apache (A), MariaDB (M), PHP (P) và Perl (P). XAMPP là chương trình tạo web
server được ứng dụng trên các hệ điều hành Linux, MacOS, Windows, Cross-platform,
Solaris.
5. OpenLayers
OpenLayers là một thư viện điện tử mã nguồn mở rất mạnh giúp nhúng bản đồ
động lên trang web bất kỳ. Nó cung cấp một API để xây dựng nhiều ứng dụng dựa trên
web địa lý tương tự như Google Maps.
OpenLayers có thể lấy bản đồ từ nhiều loại nguồn khác nhau và cung cấp một giao
diện tương tác đẹp, phong phú cho người dùng. OpenLayers được viết bằng JavaScript
theo hướng đối tượng, sử dụng các thành phần từ Prototype.js và thư việc Rico.
OpenLayers


tách rời phần công cụ bản đồ và dữ liệu bản đồ. Nhờ đó mọi cơng cụ đều có thể hoạt
động trên các nguồn dữ liệu khác nhau.
OpenLayers cho phép người dùng hiển thị nhiều layer khác nhau từ nhiều nguồn
khác nhau cùng 1 lúc. Các nguồn này có thể là 1 WMS, WFS hay những dịch vụ bản đồ
web mở khác như GeoRSS, OpenStreetMap, Google Maps/Earth hay các file dữ liệu như
GML, KML.... OpenLayers là hồn tồn miễn phí, khơng phải trả phí và phức tạp như
Google Maps API (Nếu sử dụng Google Maps API thì máy tính phải kết nối Internet nếu
khơng thì phải trả phí để sử dụng).
6. PHP
PHP là một từ viết tắt của cụm từ Hypertext Pre Processor. Là một ngơn ngữ lập
trình thường được sử dụng để phát triển ứng dụng. Những thứ có liên quan đến viết máy

chủ, mã nguồn mở hay mục đích tổng qt. Ngồi ra, nó cịn rất thích hợp để lập trình
web và có thể dễ dàng nhúng vào trang HTML.
Ngày nay, PHP đã chiếm tới hơn 70% web hiện nay, trang web giới thiệu của các
công ty như influxwebtechnologies, Monamedia đều được xây dựng bằng WordPress –
một mã nguồn được viết bởi ngơn ngữ PHP. Bởi những tính năng như tối ưu hóa cho các
ứng dụng web. Tốc độ load web nhanh, nhỏ gọn, cú pháp giống C và JAVA. Rất dễ học
và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác hiện nay.
PHP có thể được dùng để :
• PHP có thể tạo ra các trang web động (sản sinh ra các nội dung
HTML/CSS/JavaScript), và đó chính là lý do mà chúng ta nên tìm hiểu về
HTML/CSS trước khi đến với PHP.
• PHP có thể mở, đọc, ghi, xóa file trên máy chủ, tương tác với các phần mềm khác
trên máy chủ
• PHP có thể kết hợp với các hệ quản trị CSDL, lưu trữ, truy vấn, xử lý dữ liệu và
trả kết quả về cho người dùng


• PHP có thể gửi/nhận cookie, mã hóa, giải mã dữ liệu
• PHP có thể phát triển các dịch vụ web (web services)


CHƯƠNG II: XÂY DỰNG WEBGIS
2.1. Xây dựng dữ liệu cho WebGIS
2.1.1. Đưa dữ liệu bản đồ vào QGIS

2.1.2. Hiện nhãn các đối tượng trên bản đồ


2.1.3. Lên màu cho các đối tượng


2.1.4. Khởi tạo CSDL trong PostgreS


2.1.5. Sử dụng PostGIS shapefile import để đưa dữ liệu vào CSDL

2.2. Đưa dữ liệu lên Geoserver

Kết nối Geoserver với CSDL trong PostgreSQL và chọn hệ toạ độ.
2.2.1. Public dữ liệu bản đồ
Ở thẻ Publishing, trước khi public hãy chọn style cả 3 lớp cho bản đồ đó. Để có được
style bản đồ trên Geoserver


2.2.2. Lớp dữ liệu trong PostgreSQL đã được Public lên Geoserver


2.3. Xây dựng giao diện và chức năng cho WebGIS
2.3.1. Cấu trúc file code WebGIS

Khai báo thư viện sử dụng


Hiển thị lớp bản đồ lên GIS

Khai báo hệ toạ độ, kinh tuyến trục và đơn vị

Tắt bật 3 lớp đối tượng bản đồ


Hiển thị thông tin nổi bật thông tin đối tượng



Tìm kiếm đối tượng khơng gian lớp dan_cu theo thuộc tính ma_loai
File connceciton.php kết nối với postgres.

File search.js nhận giá trị của thanh tìm kiếm


File live_search.php tìm kiếm trực tiếp đối tượng ma_loai khi nhập vào box search


CHƯƠNG III: WEBGIS
3.1 Giao diện của trang chủ webGIS


3.2 Hiển thị nổi bật lớp dan_cu khi click

3.3 Bật tắt 3 lớp dữ liệu



3.4 Tìm kiếm đối tượng ma_loai


KẾT LUẬN
Đầu tiên, em xin bày tỏ lòng biết ơn sâu sắc đến giảng viên Lê Thị Thu Hà. Chính
cơ là người đã tận tình dạy dỗ và truyền đạt những kiến thức quý báu cho em trong suốt
học kỳ vừa qua. Trong thời gian tham dự lớp học, em đã được tiếp cận với nhiều kiến
thức bổ ích và rất cần thiết cho quá trình học tập, làm việc sau này của em. Bộ môn Phát
triển hệ thống thông tin địa lý là một môn học thú vị và vơ cùng bổ ích. Tuy nhiên, những

kiến thức và kỹ năng về mơn học này của em vẫn cịn nhiều hạn chế. Do đó, bài làm của
em khó tránh khỏi những sai sót. Rất mong thầy, cơ xem xét và góp ý giúp bài làm của
em được hồn thiện hơn.
Em xin chân thành cảm ơn !


TÀI LIỆU THAM KHẢO
[1] Bùi Ngọc Quý, Vũ Văn Huân (2014), Giáo trình hệ thống thơng tin địa lý, Đại học
tài nguyên và môi trường Hà Nội.
[2] Dương Đăng Khôi (2012), Giáo trình hệ thống thơng tin Địa lý, Đại học tài
nguyên và môi trường Hà Nội.
[3] An ESRI Technical Reference Document (August 2009), Sys Design Strategies 26
Edition.



×