Tài liệu Khóa luận Xây dựng hệ thống quản lý bản đồ số dựa trên công nghệ mapserver: ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Cao Cường
XÂY DỰNG HỆ THỐNG QUẢN LÝ BẢN ĐỒ SỐ
DỰA TRÊN CÔNG NGHỆ MAPSERVER
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công Nghệ Thông Tin
HÀ NỘI - 2009
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Cao Cường
XÂY DỰNG HỆ THỐNG QUẢN LÝ BẢN ĐỒ SỐ
DỰA TRÊN CÔNG NGHỆ MAPSERVER
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công Nghệ Thông Tin
Cán bộ hướng dẫn: TS. Trần Minh
HÀ NỘI - 2009
TÓM TẮT NỘI DUNG KHÓA LUẬN
Ngày nay Hệ thống thông tin địa lý (GIS – Geographic Information
System) đã phát triển rất mạnh, nó được ứng dụng vào rất nhiều ngành và
lĩnh vực khác nhau như trong quân sự, dự báo thời tiết, bản đồ tìm đường
đi, bản đồ địa chất, khoáng sản… Cùng với sự bùng nổ của mạng internet
toàn cầu và phần cứng máy tính, GIS đã phát triển công nghệ cho phép
chia sẻ các thông tin qua mạng, người sử dụng ở khắp mọi nơi trên thế giới
đều có thể sử dụng các ứng dụng này thô...
82 trang |
Chia sẻ: haohao | Lượt xem: 1514 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Khóa luận Xây dựng hệ thống quản lý bản đồ số dựa trên công nghệ mapserver, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Cao Cường
XÂY DỰNG HỆ THỐNG QUẢN LÝ BẢN ĐỒ SỐ
DỰA TRÊN CÔNG NGHỆ MAPSERVER
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công Nghệ Thông Tin
HÀ NỘI - 2009
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Cao Cường
XÂY DỰNG HỆ THỐNG QUẢN LÝ BẢN ĐỒ SỐ
DỰA TRÊN CÔNG NGHỆ MAPSERVER
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công Nghệ Thông Tin
Cán bộ hướng dẫn: TS. Trần Minh
HÀ NỘI - 2009
TÓM TẮT NỘI DUNG KHÓA LUẬN
Ngày nay Hệ thống thông tin địa lý (GIS – Geographic Information
System) đã phát triển rất mạnh, nó được ứng dụng vào rất nhiều ngành và
lĩnh vực khác nhau như trong quân sự, dự báo thời tiết, bản đồ tìm đường
đi, bản đồ địa chất, khoáng sản… Cùng với sự bùng nổ của mạng internet
toàn cầu và phần cứng máy tính, GIS đã phát triển công nghệ cho phép
chia sẻ các thông tin qua mạng, người sử dụng ở khắp mọi nơi trên thế giới
đều có thể sử dụng các ứng dụng này thông qua internet. Việc này đòi hỏi
phải có một ứng dụng trên nền web là sự kết hợp của GIS và web, để quản
lý các thông tin trên bản đồ cho phép xem nội dung các thông tin bản đồ
trên web, có thể thêm hoặc xóa sửa các thông tin này. Bên cạnh đó, xu
hướng phát triển phần mềm dựa trên công nghệ mã nguồn mở cũng đang
được phát triển rất mạnh vì nhiều lợi ích mà nó mang lại. Vì thế, việc
nghiên cứu ứng dụng quản lý bản đồ số dựa trên cơ sở mã nguồn mở sẽ
mang lại khả năng chia sẻ thông tin địa lý rộng rãi.
Nội dung chính của đề tài là nghiên cứu công nghệ mã nguồn mở
MapServer, trên cơ sở đó xây dựng một ứng dụng quản lý bản đồ số
WebGIS phục vụ cho mục đích nhất định.
Mục lục
Mở đầu..................................................................................................................1
Chương 1 Cơ sở địa lý học ..................................................................................3
1.1 Khái niện chung về bản đồ địa lý ....................................................................3
1.1.1 Định nghĩa bản đồ......................................................................................3
1.1.1.1. Bản đồ - mô hình toán học..................................................................3
1.1.1.2. Mô hình thực tiễn................................................................................4
1.1.1.3. Bản đồ - mô hình qui ước ...................................................................5
1.1.2 Các tính chất của bản đồ ............................................................................5
1.1.3 Cơ sở toán học của bản đồ địa lý...............................................................6
1.1.3.1. Tỉ lệ bản đồ (map scale)......................................................................6
1.1.3.2. Cơ sở trắc địa – thiên văn của bản đồ .................................................6
1.1.3.3. Hệ toạ độ ...........................................................................................8
1.2 Các hệ qui chiếu bản đồ (Map Projection) ......................................................8
1.2.1 Lưới chiếu bản đồ (lưới kinh vĩ tuyến)......................................................8
1.2.1.1. Phép chiếu bản đồ ...............................................................................8
1.2.1.2. Các phép chiếu hình và lưới chiếu hình..............................................9
1.2.2 Bố cục bản đồ ............................................................................................14
1.3. Các phương pháp biểu thị hiện tượng trên bản đồ .........................................14
1.3.1. Phương pháp đường đẳng trị ....................................................................14
1.3.2. Phương pháp chấm điểm ..........................................................................15
1.3.3. Phương pháp ký hiệu đường ..................................................................... 15
1.3.4. Phương pháp ký hiệu đường chuyển động ............................................... 15
1.3.5. Phương pháp biểu đồ định vị....................................................................16
1.3.6. Phương pháp ký hiệu ................................................................................16
1.3.7. Phương pháp biểu đồ ..............................................................................16
Chương 2 GIS – Hệ thống thông tin địa lý........................................................17
2.1. Khái niệm hệ thống thông tin địa lý ...............................................................17
2.1.1 Định nghĩa GIS ..........................................................................................17
2.1.2 Các thành phần của GIS ............................................................................18
2.1.2.1. Thiết bị (Hardware).............................................................................18
2.1.2.2. Phần mềm............................................................................................18
2.1.2.3. Chuyên viên ........................................................................................19
2.1.2.4. Dữ liệu địa lý (Geographic data) ........................................................19
2.1.2.5. Chính sách và quản lý .........................................................................20
2.2 Dữ liệu trong GIS ............................................................................................20
2.2.1 Các dạng dữ liệu GIS.................................................................................20
2.2.2 Mô hình thông tin không gian ...................................................................20
2.2.2.1. Hệ thống vector...................................................................................21
2.2.2.2. Hệ thống raster ....................................................................................25
2.2.2.3. Chuyển đổi cơ sở dữ liệu dạng vector và raster ..................................29
2.2.2.4. So sánh vector và raster ......................................................................30
2.2.3 Mô hình thông tin thuộc tính .....................................................................31
2.3. WebGIS – Công nghệ GIS qua mạng ............................................................33
2.3.1. Giới thiệu WebGIS ...................................................................................34
2.3.2. Sơ đồ hoạt động của WebGIS...................................................................34
2.3.3. Tiềm năng của WebGIS............................................................................35
2.3.4. Các kiến trúc triển khai WebGIS..............................................................35
2.3.4.1. Server side...........................................................................................35
2.3.4.2. Client side ...........................................................................................36
2.3.4.3. Kết hợp cả 2 chiến lược ............................................................................37
2.3.5. Trao đổi dữ liệu của hệ thống WebGIS....................................................38
2.3.5.1. Web Map Service / Server ..................................................................38
2.3.5.2. Web Feature Service / Server .............................................................39
Chương 3 MapServer – WebGIS Application ..................................................40
3.1. Giới thiệu Mapserver......................................................................................40
3.2. Các thành phần của Mapserver......................................................................41
3.2.1 File khởi tạo ...............................................................................................41
3.2.2 Map file......................................................................................................41
3.2.3 Template file ..............................................................................................42
3.2.4 Dữ liệu GIS................................................................................................42
3.3. Sơ đồ hoạt động của Mapserver ....................................................................42
3.4. Cài đặt Mapserver...........................................................................................43
3.5. Tìm hiểu Mapfile ............................................................................................44
3.5.1. Map Object ...............................................................................................44
3.5.2. Layer Object .............................................................................................46
3.5.3. Query Map Object ....................................................................................48
3.5.4. Projection Object ......................................................................................49
3.6. Kết nối các loại dữ liệu...................................................................................51
3.6.1. Dữ liệu ESRI Shapefiles (SHP)................................................................51
3.6.2. Kết nối dữ liệu Raster ...............................................................................53
3.6.3. Kết nối dùng thư viện OGR......................................................................56
3.6.4. Kết nối dữ liệu dùng WMS.......................................................................60
3.6.5. Kết nối dữ liệu dùng WFS (Web Feature Server) ....................................62
Chương 4: Xây dựng hệ thống quản lý bản đồ số dựa trên công nghệ
MapServer ............................................................................................................64
4.1 Bài toán xây dựng hệ thống quản lý bản đồ số................................................64
4.2 Dữ liệu bản đồ .................................................................................................64
4.2.1 Shapefile ....................................................................................................64
4.2.2 Xây dựng cơ sở dữ liệu..............................................................................65
4.3 Xây dựng chương trình....................................................................................66
4.3.1 Tạo Mapfile................................................................................................66
4.3.2. Xây dựng các chức năng...........................................................................67
4.3.2.1. Công cụ phóng to, thu nhỏ, pan ..........................................................67
4.3.2.2. Công cụ hiển thị, tắt các lớp ...............................................................67
4.3.2.3. Công cụ hiển thị thông tin của đối tượng............................................68
4.3.2.4. Công cụ tìm kiếm................................................................................68
4.3.3. Xây dựng các hàm xử lý ...........................................................................68
4.4. Cài đặt chương trình và thử nghiệm...............................................................71
4.4.1. Cài đặt .......................................................................................................71
4.4.2. Một số giao diện chương trình..................................................................71
4.4.3. Thử nghiệm chương trình .........................................................................74
Kết luận ................................................................................................................75
1
Mở đầu
Trong lịch sử, con người đã biết sử dụng bản đồ từ rất lâu, bản đồ ban đầu chỉ là
hình vẽ mô tả những thực thể trên mặt đất ở dạng đơn giản bằng các điểm, đường. Nó
thường là các bản đồ quân sự và bản đồ thám hiểm. Ngày nay bản đồ giấy không chỉ là
bản đồ quân sự hay thám hiểm, nó đã mang trên mình được rất nhiều thông tin, và
phân ra làm nhiều loại bản đồ khác nhau. Nó sử dụng các đường nét, màu sắc, ký hiệu,
chữ và số để thể hiện các thông tin địa lý. Nó có thể mô tả vị trí, hình dạng đặc tính có
thể nhận thấy như phong cảnh: sông, suối, đường xá, làng mạc, rừng cây… Bản đồ
giúp con người có cái hình dung tổng thể và trừu tượng hơn, chúng ta có thể dùng bản
đồ để tìm đường đi, tìm điểm du lịch…
Tuy nhiên ngày nay thì lượng thông tin càng ngày càng nhiều, và phân hóa thành
nhiều lĩnh vực khác nhau. Bản đồ in trên giấy với nhiều nhược điểm như thời gian xây
dựng, đo đạc tạo lập và con người dùng cho việc tạo bản đồ là rất nhiều và tốn kém.
Lượng thông tin trên bản đồ giấy lại hạn chế vì quá nhiều thông tin sẽ gây khó đọc, và
không thể cập nhật theo thời gian. Bản đồ máy tính ra đời, nó là sự mô hình hóa không
gian và lưu trữ vào trong máy tính, nó có thể hiển thị trên máy tính và in ra giấy. Thuật
ngữ GIS (hệ thống thông tin địa lý) ra đời, GIS hình thành từ các ngành khoa học: địa
lý, toán học, bản đồ, và tin học. GIS là một hệ thống nó bao gồm cả phần cứng và
phần mềm, phục vụ cho việc vẽ bản đồ, phân tích vật thể, hiện tượng trên trái đất. GIS
có thể tạo được bản đồ tĩnh nhiều màu sắc đẹp và hơn nữa là bản đồ động, giúp người
dùng có thể chọn lựa và bỏ bất cứ thành phần nào trên bản đồ nhằm phân tích một
cách nhanh chóng các yếu tố trên bản đồ. GIS ra đời từ những năm 1960 tới nay,
nhưng nó chưa đến được với người dùng, vì các ứng dụng GIS thường vẫn là các ứng
dụng GIS chạy trên máy tính đơn, yêu cầu phải có phần mềm riêng biệt cho việc xử lý
các thông tin GIS. Cùng với sự bùng nổ của công nghệ thông tin và mạng internet toàn
cầu, máy tính đã trở nên phổ biến. Và GIS cũng đã thực sự bùng nổ từ nhu cầu thực
tiễn. Tất cả các ngành như quy hoạch, quản lý tài nguyên và môi trường, quản lý đô
thị, giao thông, phòng chống và giảm nhẹ thiên tai, thông tin du lịch; tất cả các cấp từ
quốc gia, tỉnh, huyện đến xã, thôn đều có nhu cầu ứng dụng GIS cho các hoạt động
điều hành, quản lý. Bản đồ sẽ được số hóa và đưa lên trên mạng internet, người dùng
trên khắp thế giới chỉ cần có máy tính nối mạng internet và trình duyệt web, là có thể
sử dụng bản đồ này một cách dễ dàng mà không phải cài đặt thêm một phần mềm nào
phức tạp và tốn kém.
2
Nội dung chính của đề tài là tìm hiểu công nghệ Mapserver mã nguồn mở, áp
dụng xây dựng các ứng dụng GIS mà tiêu biểu là WebGIS trên internet.
Nội dung khóa luận được chia làm 4 chương.
Chương 1: Cơ sở địa lý học, tìm hiểu về bản đồ, cơ sở toán học của bản đồ, các
phép chiếu hình bản đồ, các phương pháp biểu thị đối tượng trên bản đồ.
Chương 2: GIS các thành phần của một hệ thống GIS, các dạng dữ liệu GIS,
WebGIS công nghệ GIS trên mạng internet.
Chương 3: Tìm hiểu phần mềm mã nguồn mở MapServer, hoạt động của
Mapserver, Các thành phần của Mapserver, Kết nối dữ các loại dữ liệu bản đồ trong
MapServer.
Chương 4 : Xây dựng hệ thống quản lý bản đồ số dựa trên MapServer
Khóa luận sẽ rất khó hoàn thành nếu không có sự giúp đỡ tận tình, và truyền đạt
các kiến thức mới của thầy TS. Trần Minh. Em xin chân thành cảm ơn sự dạy dỗ chỉ
bảo của thầy. Qua khóa luận em cũng xin được trân trọng cảm ơn các Thầy cô trong
trường đã giảng dạy cho em kiến thức trong suốt bốn năm học, làm nền tảng vững
chắc cho em thực hiện khóa luận.
Mặc dù đã cố gắng nỗ lực hết mình, nhưng do thời gian cũng như kiến thức của bản
thân còn hạn chế nên không tránh khỏi những thiếu sót, rất mong được sự thông cảm
và chỉ bảo tận tình của thầy cô và các bạn. Em xin chân thành cảm ơn!
3
Chương 1: Cơ sở địa lý học
1.1. Khái niệm chung về bản đồ địa lý
1.1.1. Định nghĩa bản đồ
Bản đồ địa lý là sự biểu thị thu nhỏ qui ước của bề mặt trái đất lên mặt phẳng,
xây dựng trên cơ sở toán học với sự trợ giúp và sử dụng các ký hiệu qui ước để phản
ánh sự phân bố, trạng thái và mối quan hệ tương quan của các hiện tượng thiên nhiên
và xã hội được lựa chọn và khái quát hoá để phù hợp với mục đích sử dụng của bản đồ
và đặc trưng cho khu vực nghiên cứu.
Hình 1: Biểu thị của bề mặt trái đất lên mặt phẳng
1.1.1.1. Bản đồ - mô hình toán học
Chúng ta biết trái đất có dạng Geoid, nhưng trong thực tế được coi là hình
Elipxoid có kích thước và hình dạng gần đúng như hình Geoid. Bề mặt Geoid được tạo
bởi mặt nước biển trung bình yên tĩnh kéo dài qua các lục địa và hải đảo tạo thành một
mặt cong khép kín. Do tác dụng của trọng lực, sự phân bố không đều của vật chất có tỉ
trọng khác nhau trong lớp vở trái đất làm cho bề mặt Geoid bị biến đổi phức tạp về
mặt hình học.
4
Hình 2: Dạng Geoid và hình Elipxoid
Khi biểu thị lên mặt phẳng một phần nhỏ bề mặt trái đất (trong phạm
vi 20x20 km) thì độ cong trái đất có thể bỏ qua. Trong trường hợp này các đường
thẳng đã đo trên thực địa được thu nhỏ theo tỷ lệ qui định và biểu thị trên giấy
không cần hiệu chỉnh độ cong của trái đất. Những bản vẽ như thế gọi là bình đồ. Trên
bình đồ, tỷ lệ ở mọi nơi và mọi hướng đều như nhau. Trên bản đồ biểu thị toàn bộ
trái đất hoặc một diện tích lớn thì độ cong của trái đất là không thể bỏ qua.Việc
chuyển từ mặt Elipxoid lên mặt phẳng được thực hiện nhờ phép chiếu bản đồ. Các
phép chiếu biểu hiện quan hệ giữa toạ độ các điểm trên mặt đất và toạ độ các điểm đó
trên mặt phẳng bằng các phương pháp toán học. Các phần tử nội dung bản đồ giữ
đúng vị trí địa lý, nhưng sẽ có sai số về hình dạng hoặc diện tích.
1.1.1.2. Mô hình thực tiễn
Trên bản đồ người ta thể hiện các đối tượng và hiện tượng có trên mặt đất trong
thiên nhiên, xã hội và các lĩnh vực hoạt động của con người.
Các yếu tố nội dung của bản đồ :
- Thuỷ hệ
- Địa hình bề mặt
- Dân cư
- Đường giao thông
- Ranh giới hành chính - chính trị
5
- Lớp phủ thổ nhưỡng - thực vật
- Các đối tượng kinh tế xã hội
1.1.1.3. Bản đồ - mô hình qui ước
Các yếu tố nội dung của bản đồ được thể hiện bằng những ký hiệu qui ước.
Các ký hiệu thể hiện vị trí, hình dáng kích thước của đối tượng trong thực tế, ngoài ra
còn thể hiện một số đặc trưng về số lượng và chất lượng.
Phân ra 3 loại ký hiệu:
- Ký hiệu theo tỷ lệ vùng
- Ký hiệu theo tỷ lệ đường
- Ký hiệu theo tỷ lệ điểm
Việc thể hiện kích thước và các đặc trưng khác đối tượng trên bản đồ đạt được
bằng cách sử dụng màu sắc, cấu trúc của ký hiệu và các ghi chú kèm theo.Việc sử
dụng hệ thống ký hiệu qui ước cho phép chúng ta:
- Biểu thị toàn bộ bề mặt trái đất hoặc những khu vực lớn trong một bản đồ giúp
chúng ta nắm bắt những điểm quan trọng không thể thể hiện với tỷ lệ nhỏ.
- Thể hiện bề mặt lồi lõm của trái đất lên mặt phẳng
- Phản ánh các tính chất bên trong của sự vật, hiện tượng
- Thể hiện sự phân bố, các quan hệ của sự vật, hiện tượng một cách trực quan
- Loại bỏ những mặt ít giá trị, các chi tiết vụn vặt không đặc trưng hoặc đặc
trưng cho các đối tượng riêng lẻ, mặt khác nêu bật các tính chất căn bản, các tính chất
chung. Ký hiệu giữa những nét đặc trưng đó trên các bản đồ khác nhau về tỷ lệ và thể
loại. Như vậy tạo điều kiện thuận lợi cho việc sử dụng các bản đồ khác nhau.
1.1.2. Các tính chất của bản đồ
Tính trực quan: bản đồ cho ta khả năng bao quát và tiếp thu nhanh chóng những
yếu tố chủ yếu và quan trọng nhất của nội dung bản đồ. Nó phản ánh các tri thức về
các đối tượng, hiện tượng được biểu thị bằng bản đồ. Người sử dụng có thể tìm ra
những qui luật của sự phân bố các đối tượng và hiện tượng.
Tính đo được: có liên quan chặt chẽ với cơ sở toán học của bản đồ. Căn cứ vào tỷ
lệ, phép chiếu, vào thang bậc của các dấu hiệu qui ước, người sử dụng có khả năng xác
định các trị số khác nhau như: toạ độ, biên độ, khoảng cách, diện tích, thể tích, góc
6
phương hướng. Chính nhờ tính chất này mà bản đồ được dùng làm cơ sở để xây dựng
các mô hình toán học của các hiện tượng địa lý, giải quyết các bài toán khoa học và
thực tiễn.
Tính thông tin: khả năng lưu trữ và truyền đạt cho người sử dụng.
1.1.3. Cơ sở toán học của bản đồ địa lý
Bao gồm:
- Tỷ lệ
- Cơ sở trắc địa và thiên văn
- Lưới kinh - vĩ tuyến và các lưới toạ độ khác
- Bố cục bản đồ và khung bản đồ
- Hệ thống chia mảnh
- Số liệu
1.1.3.1. Tỉ lệ bản đồ (map scale)
Tỷ lệ bản đồ thường được hiểu là tỷ lệ độ dài của một đường trên bản đồ và
độ dài thực của nó trên thực địa. Trên bình đồ biểu thị một khu vực nhỏ của bề mặt
trái đất, ảnh hưởng của độ cong trái đất trên bản đồ là không đáng kể nên tỷ lệ trên
toàn bản đồ là như nhau. Trên bản đồ những khu vực lớn hơn, độ cong của trái đất
gây nên sự biến dạng trong biểu thị các các đối tượng nên tỷ lệ bản đồ là đại lượng
thay đổi từ điểm này sang điểm khác hay thậm chí trên cùng một điểm cũng thay đổi
theo các hướng khác nhau. Tỷ lệ chính của bản đồ (được ghi trên bản đồ) được bảo
toàn ở một số điểm và một số hướng tuỳ thuộc vào phép chiếu. Ta hiểu tỷ lệ của bản
đồ là mức độ thu nhỏ của bề mặt trái đất khi biểu diễn lên bản đồ. Tỉ lệ bản đồ nói lên
mức độ chi tiết các thành phần có thể biểu hiện được trên bản đồ và kích thước các
chi tiết có thể đo đạc được tương ứng với điều kiện ngoài thực tế.
Tỉ lệ bản đồ có thể được biểu hiện như là một đơn vị đo đạc và chuyển đổi, thí
dụ như ở tỉ lệ 1/24.000, 1 cm trên bản đồ tương ứng với 24.000 cm ngoài thực tế
hoặc 24 m. Một bản đồ có tỉ lệ là 1/10.000 sẽ bao phủ một vùng rộng lớn hơn bản đồ
ở tỉ lệ 1/24.000, tuy nhiên bản đồ có tỉ lệ lớn sẽ chứa các đặc điểm chi tiết hơn bản đồ
có tỉ lệ nhỏ.
1.1.3.2. Cơ sở trắc địa – thiên văn của bản đồ
Được đặc trưng bởi hình Elipxoit và hệ thống toạ độ trắc địa khởi điểm đã
7
sử dụng để thành lập bản đồ. Cơ sở trắc địa - thiên văn được thể hiện bằng các
điểm khống chế, các điểm khống chế là những điểm đã được cố định trên thực địa và
được xác định toạ độ. Những điểm khống chế này được sử dụng khi thành lập bản đồ
tỷ lệ lớn để xác định đúng vị trí các yếu tố nội dung của bản đồ
- Geoid là gì?
Bề mặt tự nhiên của trái đất rất phức tạp về mặt hình học không thể biểu thị
nó bởi một qui luật nhất định nào. Trong trắc địa bề mặt tự nhiên trái đất được thay
thế bằng mặt Geoid. Mặt Geoid là mặt nước biển trung bình yên tĩnh trải rộng xuyên
qua lục địa và luôn vuông góc với các hướng dây dọi. Tuy được định nghĩa đơn giản
như vậy song do sự phân bố không đồng đều của các khối vật chất trong vỏ quả
đất làm biến đổi hướng trọng lực, nên bề mặt Geoid có dạng phức tạp về mặt hình
học.
- Bề mặt Elipxoid quay của trái đất
Trong thực tiễn trắc địa bản đồ, người ta lấy mặt Elipxoid quay có hình dạng
kích thước gần giống Geoid làm bề mặt toán học thay cho Geoid. Elipxoid có khối
lượng bằng khối lượng Geoid, tâm trùng với trọng tâm của trái đất, mặt phẳng xích
đạo trùng với mặt phẳng xích đạo trái đất.
Kích thước của Elipxoid trái đất được tính theo tài liệu đo đạc trắc địa, thiên văn
và trọng lực. Ngoài việc xác định kích thước của Elipxoid thay cho Geoid, cần phải
đặt đúng Elipxoid ở thể trái đất gọi là định hướng Elipxoid. Định hướng Elipxoid
khác nhau dẫn đến sự khác nhau về toạ độ của một điểm khi tính toạ độ từ những góc
khác nhau. Kích thước và định hướng elipxoid được xác định khác nhau trên thế
giới gây nên sự phức tạp trong sử dụng tài liệu trắc địa - bản đồ.
• Các nguồn tài liệu trắc địa - bản đồ ở Việt Nam:
o Bản đồ do Pháp thành lập trước năm 1954 chủ yếu sử dụng Elipxoid
Cbamie 1880.
o Bản đồ sau năm 1954 sử dụng Elipxoid Krassobsk, lưới chiếu Gauss,
Kruger.
o Bản đồ do người Mỹ thành lập trước năm 1975, lưới chiếu UTM,
Elipxoid, Everest, 1830
Bản đồ UTM là nguồn tài liệu phong phú, đặc biệt đối với các vùng núi và cao
nguyên hiểm trở. Thường được thành lập bằng phương pháp chụp ảnh máy bay.
8
1.1.3.3. Hệ toạ độ
Các toạ độ trên bề mặt trái đất là Vĩ độ (latitude), được đo theo đơn vị độ Bắc
hoặc Nam của xích đạo. Kinh độ (longtitude), được đo theo đơn vị độ Tây hoặc Đông
của kinh độ Greenweek ở Anh. Vị trí của kinh độ và vĩ độ thực tế chỉ có tính cách
tương đối, khoảng cách và diện tích phải được tính toán bằng việc dùng phương pháp
tính toán địa lý không gian và bán kính của trái đất đến các điểm cần tính.Về mặt ứng
dụng, vĩ độ và kinh độ thường được sử dụng trong việc mô tả các vùng đất chính.
- Hệ toạ độ địa lý
Các giao điểm của bán trục nhỏ với mặt Elipxoid trái đất được gọi là các cực
Bắc và Nam. Các vòng tròn tạo ra do các mặt phẳng thẳng góc với trục nhỏ và cắt
Elipxoid gọi là các vĩ tuyến. Vĩ tuyến lớn nhất nằm trên mặt phẳng đi qua tâm
Elipxoid gọi là đường xích đạo. Bán kính đường xích đạo = a.
Các giao tuyến của các mặt phẳng Elipxoid với các mặt phẳng đi qua trục quay
là những Elipxoid bằng nhau và còn gọi là các kinh tuyến.Vị trí của các điểm trên
mặt Elipxoid trái đất hoặc mặt cầu xác định bằng tọa độ địa lý là vĩ độ và kinh độ.
Qua bất kỳ một điểm nào đó trên bề mặt Elipxoid kẻ một đường thẳng đứng (pháp
tuyến) hướng vào trong Elipxoid khi cắt mặt phẳng xích đạo, đường pháp tuyến tạo
với nó một góc, đó chính là vĩ độ địa lý, được tính từ xích đạo, nhận giá trị từ 0 đến
900 lê bắc ký hiệu là N, hoặc Nam là S.
Góc giữa các mặt phẳng kinh tuyến đi qua một điểm cho trước và mặt phẳng của
kinh tuyến Gốc gọi là kịnh độ địa lý. Kinh độ tính từ kinh tuyến gốc (kinh
tuyến Greenwich) sang đông đến 180o là dương (E), kinh tuyến gốc sang
tây đến 180o (W).
1.2. Các hệ quy chiếu bản đồ (Map Projection)
1.2.1. Lưới chiếu bản đồ (lưới kinh vĩ tuyến)
Lưới kinh vĩ tuyến chính là sự thể hiện trực quan của phép chiếu bản đồ.
1.2.1.1. Phép chiếu bản đồ
Khoảng cách giữa các điểm, diện tích, hình dạng các khu vực trên trái đất
khi biểu thị lên mặt phẳng không tránh khỏi sự biến dạng, sai số. Sự phân bố độ lớn
của các sai số này rất là khác nhau, phụ thuộc vào độ lớn của lãnh thổ được biểu thị và
vị trí của chúng trong hệ toạ độ được sử dụng chia nhỏ bề mặt nghiên cứu sẽ giảm
phần nào các sai số trên. Để biểu thị bề mặt Elipxoid lên mặt phẳng người ta sử dụng
9
phép chiếu bản đồ. Phép chiếu bản đồ xác định sự tương ứng giữa bề mặt Elipxoid
và mặt phẳng có nghĩa là mỗi điểm trên bề mặt Elipxoid quay có toạ độ tương ứng
với một điểm duy nhất trên mặt phẳng với toạ độ vuông góc X,Y. Lưới chiếu bản đồ
là cơ sở toán học để phân bố chính xác các yếu tố nội dung bản đồ.
Hình 3 : Phép chiếu bản đồ
1.2.1.2. Các phép chiếu hình và lưới chiếu hình
Phân loại theo tính chất biểu diễn và hình dạng lưới kinh vĩ tuyến
- Phép chiếu giữ góc là phép chiếu trong đó góc được biểu diễn không có
sai số
- Phép chiếu giữ diện tích
- Phép chiếu giữ độ dài theo một hướng nhất định
- Phép chiếu tự do
Phân loại theo mặt phẳng phụ trợ được sử dụng
- Hình nón
- Hình trụ
- Phương vị
Lưới chiếu bản đồ là cơ sở toán học để phân bố chính xác các yếu tố nội dung
bản đồ. Việc trải mặt cầu lên mặt phẳng bằng các phương pháp chiếu hình bản đồ cơ
bản là
10
Hình 4 : Các lưới chiếu hình ống, nón, phương vị
Hình 5 : Chiếu hình ở khu vực xích đạo, vùng cực và vùng vĩ độ
11
Trong các phép chiếu này mặt hình ống, mặt hình nón và mặt phẳng là những
bề mặt hỗ trợ. Nếu nguồn sáng ở tâm trái đất chiếu hắt mạng lưới kinh vĩ tuyến lên
các bề mặt phụ này, thì ta nhận ra các dấu hiệu riêng của mỗi loại chiếu hình như sau:
Phép chiếu hình trụ
Kinh tuyến là những đường song song thẳng đứng, vĩ tuyến là những đường
song song nằm ngang và vuông góc với kinh tuyến. Dọc theo đường xích đạo tiếp xúc
với mặt phẳng hình ống không có biến dạng trên bản đồ, càng xa đường tiếp xúc về
phía hai cực, sai số càng lớn.
Hình 6: Phép chiếu hình trụ được hiển thị dưới dạng mặt phẳng
Phép chiếu hình nón
Kinh tuyến là chùm đường thẳng giao nhau tại đỉnh hình quạt, vĩ tuyến là
những cung tròn đồng tâm tại đỉnh hình quạt. Dọc theo vĩ tuyến tiếp xúc với mặt nón
không có biến dạng trên bản đồ. Càng ra xa vĩ tuyến tiếp xúc theo chiều kinh tuyến,
sai số càng lớn.
12
Hình 7: Phép chiếu hình nón được hiển thị dưới dạng mặt phẳng
Phép chiếu hình phương vị
Nếu mặt phẳng tiếp xúc với mặt cầu tại cực, thì kinh tuyến là chùm đường thẳng
giao nhau tại điểm cực, vĩ tuyến là những đường tròn lấy điểm cực làm tâm. Tại điểm
cực không có sai số chiếu hình, càng xa cực sai số càng lớn.
13
Hình 8 : Phép chiếu hình phương vị được hiển thị dưới dạng mặt phẳng
Đây là 3 loại lưới chiếu hình cơ bản, phân theo phương pháp chiếu hình. Muốn
xây dựng bản đồ một khu vực hoặc thế giới, ta căn cứ vào vị trí địa lý, đặc điểm hình
học và kích thước to nhỏ của khu vực thiết kế bản đồ, căn cứ vào bố cục bản đồ mà
chọn một trong những phương pháp chiếu đồ giữ góc, giữ diện tích, giữ chiều dài..
Các bản đồ xuất bản thông thường chúng ta dùng lưới chiếu giữ hình dạng, đối với
các mục đích nghiên cứu thường dùng lưới chiếu giữ diện tích.Việc phân loại chỉ là
tương đối, hiện nay chúng ta đang áp dụng rộng rãi các phương pháp giải tích toán học
để tính toán các phép chiếu mới có dạng lưới chuẩn. Tuỳ thuộc vào độ lớn, hình dạng,
vị trí của lãnh thổ, tỷ lệ bản đồ và mục đích sử dụng, người ta cho phép những
phép chiếu khác nhau. Khi sử dụng tài liệu bản đồ phải biết rõ về phép chiếu được
dùng để thành lập bản đồ. Khi dùng bản đồ để thiết kế, đo đạc, ta phải biết rõ về tính
chất các sai số đặc trưng của phép chiếu và đặc điểm phân bố để có thể tính toán hiệu
chỉnh kết quả đo đạc, xác định vị trí các đối tượng trong thực tế. Muốn vậy người ta
nghiên cứu dạng lưới bản đồ, sự định hướng, sự biểu thị cực xích đạo và lưới kinh vĩ
tuyến, xác định bằng phương pháp gần đúng sai số biểu thị góc, diện tích và khoảng
cách. Khi dùng bản đồ để làm tài liệu thành lập bản đồ khác cần phải biết đích xác về
phép chiếu bản đồ để có thể thực hiện các phép chuyển đổi các đối tượng sang hệ toạ
độ của bản đồ thành lập.
14
1.2.2. Bố cục bản đồ
Là sự bố trí khu vực được thành lập bản đồ trên bản đồ, xác định khung của nó,
sắp xếp những yếu tố trình bày ngoài khung và những tư liệu bổ sung. Các bản đồ địa
hình bao giờ cũng định hướng kinh tuyến giữa theo B-N. Trong khung biểu thị
khu vực được thành lập liên tục và không lập lại. Bố trí tên bản đồ, số hiệu mảnh, tỷ
lệ, các tài liệu tra cứu và giải thích ... dựa theo mẫu qui định. Đối với các bản đồ
chuyên đề, trong khung bản đồ có thể bố trí bản chú thích, tài liệu tra cứu, đồ thị, bản
đồ phụ ... Tên bản đồ, tỷ lệ ... cũng có thể đặt ở trong khung.
1.3. Các phương pháp biểu thị hiện tượng trên bản đồ
Khi thành lập bản đồ - bản đồ chuyên đề người ta sử dụng các phương
pháp khác nhau để thể hiện các yếu tố nội dung. Mỗi phương pháp có thể sử
dụng độc lập hoặc sử dụng phối hợp với các phương pháp khác, các phương
pháp bản đồ được xây dựng căn cứ vào đặc điểm của hiện tượng, sự vật và đặc
điểm phân bố của chúng trong khu vực.
1.3.1. Phương pháp đường đẳng trị
Dùng trong trường hợp cần biểu thị trên bản đồ các hiện tượng có sự thay đổi
đều đặn và có sự phân bố liên tục như: Độ cao mặt đất, nhiệt độ không khí, lượng
mưa... Đường đẳng trị là những đường cong điều hoà nối liền các điểm có cùng trị số
của hiện tượng. Sự vật được thể hiện tuỳ theo hiện tượng, sự vật được biểu thị mà
đường đẳng trị có thể có các tên gọi riêng.
- Đường đẳng cao (bình độ, đồng mức) nối liền các điểm có toạ độ
cao tuyệt đối tương đối giống nhau
- Đường đẳng sâu
- Đường đẳng áp
Để xây dựng đường đẳng trị cần phải có đủ số lượng để các điểm trên bản đồ có
giá trị hoặc chỉ số được xác định. Nối liền các điểm có giá trị như nhau. Kết hợp với
phương pháp nội suy, ngoại suy bằng những đường cong đều đặn ta có các
đường đẳng trị. Giá trị của các đường đẳng trị được ghi ở đầu hoặc ở giữa đường; đôi
khi người ta tô màu vào khoảng giữa các đường đẳng trị. Phương pháp đường đẳng trị
cho phép ta xác định chỉ số của hiện tượng được biểu thị ở bất kỳ điểm nào trên bản
đồ. Dựa theo sự phân bố các đường đẳng trị ta có thể nghiên cứu đặc điểm và các qui
15
luật phân bố biến đổi của hiện tượng. Điều này rất rõ với trường hợp các đường đẳng
cao, đẳng sâu. Bản đồ xây dựng theo phương pháp đẳng trị cho phép ta tái hiện lại bề
mặt thực tế hoặc trừu tượng của hiện tượng, thực hiện các phép đo đạc, nghiên cứu
chi tiết với độ chính xác cao.
1.3.2. Phương pháp chấm điểm
Dùng để biểu thị các hiện tượng phân bố rải rác trên lãnh thổ bằng cách sử dụng
các điểm tròn kích thước như nhau, và đại diện cho một số giá trị số lượng của các
hiện tượng biểu thị, giá trị đó gọi là trọng lượng của các điểm. Các điểm được đặt lên
bản đồ sẽ có sự phân bố không đồng đều và có mật độ khác nhau tương ứng với sự
phân bố thực của hiện tượng, sự phản ánh đúng đắn sự phân bố của các đối tượng
bằng phương pháp điểm chỉ có thể đạt được nếu trên lãnh thổ tiến hành thống kê hiện
tượng theo những đơn vị đủ nhỏ. Khi đó điều quan trọng là phải lựa chọn chính xác
kích thước điểm và định ra giá trị cho nó, cần phải chọn kích thước điểm sao cho nơi
đối tượng phân bố dày đặc nhất là các điểm không chồng chéo lên nhau. Có thể sử
dụng các điểm có màu sắc khác nhau để thể hiện các đặc trưng phụ thuộc, đặc
trưng chất lượng của đối tượng, phương pháp chấm điểm sử dụng thành lập bản đồ
dân cư, phân bố diện tích trồng trọt, ...
1.3.3. Phương pháp ký hiệu đường
Dùng để thể hiện các hiện tượng và các đối tượng có dạng đường nét và những
đối tượng có dạng kéo dài mà chiều rộng không thể hiện theo tỷ lệ bản đồ.
Ví dụ: Các đường ranh giới, đường phân thuỷ, đứt gãy kiến tạo, đường
giao thông sông một nét...
Các đặc trưng chất lượng, số lượng của đối tượng được truyền đạt bằng hình vẽ,
màu sắc, cấu trúc, độ rộng của ký hiệu nét.
1.3.4. Phương pháp ký hiệu đường chuyển động
Phương pháp dùng để thể hiện những sự chuyển dịch khác nhau trong
không gian, ví dụ di chuyển trên lãnh thổ của một hiện tượng nào đó, như hướng gió,
sự vận chuyển hàng hoá, dòng biển hướng di cư của các loài động vật ... Phương tiện
truyền đạt thông tin thông thường là các mũi tên và các dãy, các đặc trưng chất lượng
và số lượng được thể hiện thông qua hình dạng, cấu trúc, màu sắc và kích thước của
ký hiệu. Hướng của các mũi tên chỉ hướng chuyển động, các ký hiệu đường chuyển
động có thể mô tả chính xác hoặc mang tính chất sơ lược đường đi của chuyển động.
16
1.3.5. Phương pháp biểu đồ định vị
Dùng để thể hiện những hiện tượng biến đổi theo mùa hoặc có tính chất chu kỳ.
Phương pháp biểu đồ định vị có khả năng thể hiện tiến trình, độ lớn, tính liên tục
và tần xuất của hiện tượng. Ví dụ sự thay đổi trong năm của nhiệt độ không khí,
lượng mưa, sự phân bố dòng chảy hàng năm của sông ngòi, hướng gió và sức gió tại
các trạm bằng các biểu đồ, đồ thị được định vị.
1.3.6. Phương pháp ký hiệu
Là phương pháp dùng các ký hiệu ngoài tỷ lệ để thể hiện các đối tượng để được
xác định tại các điểm hoặc có kích thước không thể hiện được trên bản đồ hoặc diện
tích của nó trên bản đồ nhỏ hơn diện tích của ký hiệu. Phương pháp ký hiệu có khả
năng truyền đạt được các đặc trưng chất lượng, số lượng, cấu trúc, sự phát triển của
các đối tượng và hiện tượng.
Các ký hiệu có thể phân ra làm 3 loại:
- Ký hiệu hình học: Có dạng hình học đơn giản (vuông, tam giác,
tròn) được phân biệt bằng hình dạng, kích thước, màu sắc, cấu trúc, định
hướng. Ký hiệu hình học đơn giản dễ nhận biết và xác định vị trí , có nhiều khả
năng truyền đạt thông tin.
- Ký hiệu chữ: Ký hiệu gồm một, hai chữ cái đầu tiên tên gọi của đối
tượng hoặc hiện tượng thường dùng để thể hiện các mỏ khoáng sản, các ký hiệu
chữ dễ hiểu, dễ nhớ nhưng khó thể hiện chính xác vị trí của đối tượng thường
được kết hợp với ký hiệu hình học.
- Ký hiệu trực quan: có dạng gợi cho ta liên tưởng đến đối tượng được biểu
thị.
1.3.7. Phương pháp biểu đồ
Đó là phương pháp biểu thị các giá trị số lượng tuyệt đối của các sự vật
hiện tượng trong từng đơn vị phân chia lãnh thổ thông qua các hình vẽ biểu đồ trong
từng đơn vị phân chia đó. Có các dạng biểu đồ sau: vuông, tròn, biểu đồ cột. Tài liệu
để thành lập bản đồ là số liệu thống kê. Phương pháp biểu đồ biểu thị được độ lớn,
cấu trúc và trạng thái của hiện tượng.
17
Chương 2: GIS - Hệ thống thông tin địa lý
2.1 Khái niệm hệ thống thông tin địa lý
2.1.1 Định nghĩa GIS
Định nghĩa GIS:
- G: Geographic - dữ liệu không gian thể hiện vị trí, hình dạng (điểm, đường,
vùng)
- I : Information - thuộc tính, không thể hiện vị trí (như mô tả bằng văn bản,
số, tên...)
- S: System - Sự liên kết bên trong giữa các thành phần khác nhau (phần
cứng, phần mềm)
- Là một tập hợp của các phần cứng, phần mềm máy tính cùng với các thông
tin địa lý (mô tả không gian). Tập hợp này được thiết kế để có thể thu thập,
lưu trữ, cập nhật, thao tác, phân tích, thể hiện tất cả các hình thức thông tin
mang tính không gian.
- GIS là một hệ thống máy tính có khả năng lưu trữ và sử dụng dữ liệu mô tả
các vị trí (nơi) trên bề mặt trái đất, lập bản đồ và phân tích các sự vật, hiện
tượng thực trên Trái đất.
- Một hệ thống được gọi là GIS nếu nó có các công cụ hỗ trợ cho việc thao
tác với dữ liệu không gian - Cơ sở dữ liệu GIS là sự tổng hợp có cấu trúc
các dữ liệu số hóa không gian và phi không gian về các đối tượng bản đồ,
mối liên hệ giữa các đối tượng không gian và các tính chất của một vùng
của đối tượng
Công nghệ GIS kết hợp các thao tác cơ sở dữ liệu thông thường và các phép phân
tích thống kê, phân tích không gian. Những khả năng này phân biệt GIS với các hệ
thống thông tin khác và khiến cho GIS có phạm vi ứng dụng rộng trong nhiều lĩnh vực
khác nhau như phân tích các sự kiện, dự đoán tác động và hoạch định chiến lược.GIS
đang có bước chuyển từ cách tiếp cận cơ sở dữ liệu sang hướng tri thức.Tóm lại, hệ
thống thông tin địa lý là một hệ thống phần mềm máy tính được sử dụng trong việc vẽ
bản đồ, phân tích các vật thể, hiện tượng tồn tại trên trái đất. Công nghệ GIS tổng hợp
các chức năng chung về quản lý dữ liệu như hỏi đáp và phân tích thống kê với sự thể
18
hiện trực quan và phân tích các vật thể hiện tượng không gian trong bản đồ. Sự khác
biệt giữa GIS và các hệ thống thông tin thông thường là tính ứng dụng của nó rất rộng
trong việc giải thích hiện tượng, dự báo và qui hoạch chiến lược.
2.1.2 Các thành phần của GIS
Hệ thống GIS bao gồm 5 hợp phần cơ bản là:
- Thiết bị (Hardware)
- Phần mềm (Software)
- Số liệu (Geographic data
- Chuyên viên (Expertise)
- Chính sách và cách thức quản lý
2.1.2.1. Thiết bị (Hardware)
- Bộ xử lý trung tâm
- Bộ nhớ trong (RAM)
- Bộ xắp xếp và lưu trữ ngoài
2.1.2.2. Phần mềm
Là tập hợp các câu lệnh, chỉ thị nhằm điều khiển phần cứng của máy tính thực
hiện một nhiệm vụ xác định, phần mềm hệ thống thông tin địa lý có thể là một hoặc tổ
hợp các phần mềm máy tính. Phần mềm được sử dụng trong kỹ thuật GIS phải
bao gồm các tính năng cơ bản sau:
Nhập và kiểm tra dữ liệu (Data input): Bao gồm tất cả các khía cạnh về biến đổi
dữ liệu đã ở dạng bản đồ, trong lĩnh vực quan sát vào một dạng số tương thích.
Ðây là giai đoạn rất quan trọng cho việc xây dựng cơ sở dữ liệu địa lý.
Lưu trữ và quản lý cơ sở dữ liệu (Geographic database): Lưu trữ và quản lý
cơ sở dữ liệu đề cập đến phương pháp kết nối thông tin vị trí và thông tin thuộc
tính của các đối tượng địa lý (điểm, đường đại diện cho các đối tượng trên bề
mặt trái đất). Hai thông tin này được tổ chức và liên hệ qua các thao tác trên máy tính
và sao cho chúng có thể lĩnh hội được bởi người sử dụng hệ thống.
Xuất dữ liệu (Display and reporting): Dữ liệu đưa ra là các báo cáo kết quả quá
trình phân tích tới người sử dụng, có thể bao gồm các dạng: bản đồ bảng biểu, biểu
19
đồ, lưu đồ được thể hiện trên máy tính, máy in, máy vẽ.
Biến đổi dữ liệu (Data transformation): Biến đổi dữ liệu gồm hai lớp điều
hành nhằm mục đích khắc phục lỗi từ dữ liệu và cập nhật chúng. Biến đổi dữ liệu
có thể được thực hiện trên dữ liệu không gian và thông tin thuộc tính một cách tách
biệt hoặc tổng hợp cả hai.
Tương tác với người dùng (Query input): Giao tiếp với người dùng là yếu tố
quan trọng nhất của bất kỳ hệ thống thông tin nào. Các giao diện người dùng ở một hệ
thống tin được thiết kế phụ thuộc vào mục đích của ứng dụng đó.Các phần mềm lưu
trữ, xử lý, quản lý các thông tin địa lý được sử dụng phổ biến hiện nay là
ARC/INFO, MAPINFO, WINGIS,...
2.1.2.3. Chuyên viên
Đây là một trong những phần quan trọng của công nghệ GIS, đòi hỏi những
chuyên viên hướng dẫn sử dụng hệ thống để thực hiện các chức năng phân tích và
xử lý các số liệu. Đòi hỏi phải thông thạo về việc lựa chọn các công cụ GIS để sử
dụng, có kiến thức về các số liệu đang được sử dụng và thông hiểu các tiến trình đang
và sẽ thực hiện.
2.1.2.4. Dữ liệu địa lý (Geographic data)
Số liệu được sử dụng trong GIS không chỉ là số liệu địa lý riêng lẻ mà còn
phải được thiết kế trong một cơ sở dữ liệu. Những thông tin địa lý có nghĩa là sẽ bao
gồm các dữ kiện về vị trí địa lý, thuộc tính của thông tin, mối liên hệ không gian của
các thông tin, và thời gian. Có 2 dạng số liệu được sử dụng trong kỹ thuật GIS là:
Cơ sở dữ liệu bản đồ: là những mô tả hình ảnh bản đồ được số hoá theo một
khuôn dạng nhất định mà máy tính hiểu được. Hệ thống thông tin địa lý dùng cơ sở
dữ liệu này để xuất ra các bản đồ trên màn hình hoặc ra các thiết bị ngoại vi khác như
máy in, máy vẽ.
- Số liệu Vector: được trình bày dưới dạng điểm, đường và diện tích, mỗi
dạng có liên quan đến 1 số liệu thuộc tính được lưu trữ trong cơ sở dữ liệu.
- Số liệu Raster: được trình bày dưới dạng lưới ô vuông hay ô chữ nhật
đều nhau, giá trị được ấn định cho mỗi ô sẽ chỉ định giá trị của thuộc tính. Số
liệu của ảnh Vệ tinh và số liệu bản đổ được quét là các loại số liệu Raster.
Số liệu thuộc tính (Attribute): được trình bày dưới dạng các ký tự hoặc số, hoặc ký
hiệu để mô tả các thuộc tính của các thông tin thuộc về địa lý.Trong các dạng số liệu
20
trên, số liệu Vector là dạng thường sử dụng nhất. Tuy nhiên, số liệu Raster rất hữu ích
để mô tả các dãy số liệu có tính liên tục như: nhiệt độ, cao độ...và thực hiện các phân
tích không gian của số liệu. Còn số liệu thuộc tính được dùng để mô tả cơ sở dữ liệu.
Có nhiều cách để nhập số liệu, nhưng cách thông thường nhất hiện nay là số hoá
bằng bàn số hoá hoặc thông qua việc sử dụng máy quét ảnh.
2.1.2.5. Chính sách và quản lý
Hệ thống GIS cần được điều hành bởi một bộ phận quản lý, bộ phận này phải
được bổ nhiệm để tổ chức hoạt động hệ thống GIS một cách có hiệu quả để phục vụ
người sử dụng thông tin. Để hoạt động thành công, hệ thống GIS phải được đặt
trong 1 khung tổ chức phù hợp và có những hướng dẫn cần thiết để quản lý, thu thập,
lưu trữ và phân tích số liệu, đồng thời có khả năng phát triển được hệ thống GIS theo
nhu cầu. Hệ thống GIS cần được điều hành bởi 1 bộ phận quản lý, bộ phận này phải
được bổ nhiệm để tổ chức hoạt động hệ thống GIS một cách có hiệu quả để phục vụ
người sử dụng thông tin.
2.2. Dữ liệu trong GIS
2.2.1. Các dạng dữ liệu GIS
Một cơ sở dữ liệu của hệ thống thông tin địa lý có thể chia ra làm 2 loại số liệu
cơ bản: số liệu không gian và phi không gian. Mỗi loại có những đặc điểm riêng và
chúng khác nhau về yêu cầu lưu giữ số liệu, hiệu quả, xử lý và hiển thị.
Số liệu không gian là những mô tả số của hình ảnh bản đồ, chúng bao gồm toạ
độ, quy luật và các ký hiệu dùng để xác định một hình ảnh bản đồ cụ thể trên từng bản
đồ. Hệ thống thông tin địa lý dùng các số liệu không gian để tạo ra một bản đồ
hay hình ảnh bản đồ trên màn hình hoặc trên giấy thông qua thiết bị ngoại vi, …
Số liệu phi không gian là những diễn tả đặc tính, số lượng, mối quan hệ của các
hình ảnh bản đồ với vị trí địa lý của chúng. Các số liệu phi không gian được gọi là dữ
liệu thuộc tính, chúng liên quan đến vị trí địa lý hoặc các đối tượng không gian và liên
kết chặt chẽ với chúng trong hệ thống thông tin địa lý thông qua một cơ chế thống
nhất chung.
2.2.2 Mô hình thông tin không gian
Dữ liệu là trung tâm của hệ thống GIS, hệ thống GIS chứa càng nhiều thì chúng
càng có ý nghĩa. Dữ liệu của hệ GIS được lưu trữ trong CSDL và chúng được thu thập
thông qua các mô hình thế giới thực. Dữ liệu trong hệ GIS còn được gọi là thông tin
21
không gian. Đặc trưng thông tin không gian là có khả năng mô tả vật thể ở đâu nhờ
vị trí tham chiếu, đơn vị đo và quan hệ không gian. Chúng còn khả năng mô tả hình
dạng hiện tượng thông qua mô tả chất lượng, số lượng của hình dạng và cấu trúc.
Cuối cùng, đặc trưng thông tin không gian mô tả quan hệ và tương tác giữa các hiện
tượng tự nhiên. Mô hình không gian đặc biệt quan trọng vì cách thức thông tin sẽ ảnh
hưởng đến khả năng thực hiện phân tích dữ liệu và khả năng hiển thị đồ hoạ của hệ
thống.
2.2.2.1. Hệ thống vector
Các đối tượng không gian khi biểu diễn ở cấu trúc dữ liệu vector được tổ chức
dưới dạng điểm (point), đường (line) và vùng (polygon) và được biểu diễn trên một hệ
thống tọa độ nào đó. Đối với các đối tượng biểu diễn trên mặt phẳng, mỗi đối tượng
điểm được biểu diễn bởi một cặp tọa độ (x, y); đối tượng đường được xác định bởi một
chuỗi liên tiếp các điểm (vertex), đoạn thẳng được nối giữa các điểm (vertex) hay còn
gọi là cạnh (segment), điểm bắt đầu và điểm kết thúc của một đường gọi là các nút
(node); đối tượng vùng được xác định bởi các đường khép kín.
Hình 9: Đối tượng đường gồm các nút điểm cạnh
Hai loại cấu trúc được biết đến trong cấu trúc dữ liệu vector là cấu trúc Spaghetti
và cấu trúc Topology. Cấu trúc Spaghetti ra đời trước và được sử dụng cho đến ngày
nay ở một số các phần mềm GIS như: phần mềm Arcview GIS, ArcGIS, MapInfo,…
Cấu trúc Topology ra đời trên nền tảng của mô hình dữ liệu cung – nút (Arc - Node).
- Mô hình dữ liệu vector spaghetti
Trong cấu trúc dữ liệu Spaghetti, đơn vị cơ sở là các cặp tọa độ trên một không
gian địa lý xác định. Do đó, mỗi đối tượng điểm được xác định bằng một cặp tọa độ
(x, y); mỗi đối tượng đường được biểu diễn bằng một chuỗi những cặp tọa độ (xi, yi);
mỗi đối tượng vùng được biểu diễn bằng một chuỗi những cặp toạ độ (xj, yj) với điểm
đầu và điểm cuối trùng nhau.
22
:
Hình 10: Biểu diễn điểm
Hình 11: Biểu diễn đường
Hình 12: Biểu diễn vùng
Mô hình dữ liệu vector spaghetti không mô tả được mối quan hệ không gian
giữa các đối tượng, vì thế các phép phân tích, tính toán không gian đều thực hiện khó
23
khăn. Đối với dữ liệu dạng vùng, đường ranh giới giữa 2 vùng được ghi nhận 2 lần,
mỗi lần cho một vùng. Mô hình này có ưu điểm là dễ trình bày, biên tập. Phần mềm
điển hình là MapInfo.
- Mô hình dữ liệu vector Topology
Cấu trúc Topology còn được gọi là cấu trúc cung – nút (arc - node). Cấu trúc
này được xây dựng trên mô hình cung – nút, trong đó cung là phần tử cơ sở. Việc xác
định các phần tử không gian dựa trên các định nghĩa sau:
- Mỗi cung được xác định bởi 2 nút, các phần tử ở giữa 2 nút là các điểm
điều khiển (vertex), các điểm này xác định hình dạng của cung.
- Các cung giao nhau tại các nút, kết thúc một cung là nút.
- Vùng là tập hợp các cung khép kín, trong trường hợp vùng trong vùng thì
phải có sự phân biệt giữa cung bên trong và cung bên ngoài.
Trong cấu trúc Topology, các đối tượng không gian được mô tả trong bốn bảng dữ
liệu: bảng tọa độ cung, bảng topology cung, bảng topology nút và bảng topology
vùng. Giữa các bảng này có quan hệ với nhau thông qua cung. Từ đây, ta có thể phân
tích các quan hệ của các đối tượng không gian trên cùng một hệ tọa độ.
Hình 13: Dữ liệu topology vector
24
Topology vùng
Vùng Cung
a AB,AaB
B AB,AbB
Vùng ngoài a và b Ngoài
Topology cung
Cung Nút đầu Nút cuối Vùng trái Vùng phải
AB A B A B
AaB A B Vùng ngoài A
Aba A B b Vùng ngoài
Topology nút
Nút Cung
A AB,AaB
B AB,AbB
25
Dữ liệu tọa độ cung
Cung Nút đầu (x,y) Đỉnh vertex(x,y) Nút cuối (x,y)
AB A B
AaB A a1, a2, a3, a4, a5 B
AbB A b1, b2, b3 B
2.2.2.2. Hệ thống raster
Mô hình dữ liệu dạng raster phản ánh toàn bộ vùng nghiên cứu dưới dạng một
lưới các ô vuông hay điểm ảnh (pixcel). Mô hình raster có các đặc điểm:
- Các điểm được xếp liên tiếp từ trái qua phải và từ trên xuống dưới
- Mỗi một điêm ảnh (pixel) chứa một giá trị
- Một tập các ma trận điểm và các giá trị tương ứng tạo thành một lớp (layer)
- Trong cơ sở dữ liệu có thể có nhiều lớp
26
Hình 14: Mô hình dữ liệu raster và vector
Mô hình dữ liệu raster là mô hình dữ liệu GIS được dùng tương đối phổ
biến trong các bài toán về môi trường, quản lý tài nguyên thiên nhiên. Mô hình dữ
liệu raster chủ yếu dùng để phản ánh các đối tượng dạng vùng là ứng dụng cho các
bài toán tiến hành trên các loại đối tượng dạng vùng: phân loại, chồng xếp.
Các nguồn dữ liệu xây dựng nên dữ liệu raster có thể bao gồm:
- Quét ảnh
- Ảnh máy bay, ảnh viễn thám
- Chuyển từ dữ liệu vector sang
- Lưu trữ dữ liệu dạng raster
- Nén theo hàng (Run lengh coding)
- Nén theo chia nhỏ từng phần (Quadtree)
- Nén theo ngữ cảnh (Fractal)
Trong một hệ thống dữ liệu cơ bản raster được lưu trữ trong các ô hình vuông
được sắp xếp trong một mảng hoặc các dãy hàng và cột. Nếu có thể, các hàng và cột
nên được căn cứ vào hệ thống lưới bản đồ thích hợp. Việc sử dụng cấu trúc dữ liệu
raster tất nhiên đưa đến một số chi tiết bị mất. Với lý do này, hệ thống raster-based
không được sử dụng trong các trường hợp nơi có các chi tiết có chất lượng cao được
đòi hỏi.
27
Hình 15: Dữ liệu vector
Vị trí của mỗi pixel được xác định bởi số hàng và số cột. Giá trị được gán vào
pixel tượng trưng cho một thuộc tính mà nó thể hiện. Hình ảnh thể hiện càng rõ khi
kích thước của pixel hay ô lưới càng nhỏ. Thông số này được gọi là độ tương phản.
Ảnh có độ tương phản càng cao thì kích thước càng tăng.
Xây dựng cơ sở dữ liệu Raster
Mỗi pixel là một đối tượng, có vị trí theo hàng, cột tương ứng trên ảnh, giá trị
của pixel cho biết pixel đó thuộc đối tượng nào, tính chất của đối tượng đó được lưu
trữ ở một cơ sở dữ liệu thuộc tính ương ứng.
Trong cấu trúc raster:
- Đường được biểu diễn bằng những pixel có cùng giá trị f(x,y) liên tiếp
nhau.
- Vùng được xác định thành một mạng gồm nhiều pixel có cùng giá trị thuộc
tính f(x,y).
28
Hình 16: Cấu trúc dữ liệu Raster
Cấu trúc lưu trữ raster cơ bản:
- Cấu trúc lưu mã chi tiết (exhaustive enumeration)
- Cấu trúc lưu mã run length (run-length encoding).
Đối với cấu trúc lưu mã chi tiết, mỗi một điểm lưới được gắn với giá trị duy nhất, vì
vậy dữ liệu không được nén gọn.
Hình 17: Cấu trúc mã chi tiết
Cấu trúc lưu mã chạy dài có ý nghĩa như là một kỹ thuật nén dữ liệu nếu raster
chứa các nhóm điểm lưới có cùng một giá trị. Khi đó thay vì phải lưu trữ riêng cho
từng điểm lưới, cấu trúc này lưu trữ theo từng thành phần có một giá trị duy nhất và số
lượng điểm lưới chứa đựng giá trị đó.
29
Hình 18: Cấu trúc mã chạy dài run-length encoding
Cơ sở dữ liệu Raster có thể chứa hàng ngàn lớp. Kiểu giá trị của pixel trong mỗi
layer tùy theo việc mã hóa của người sử dụng, có thể là số nguyên, số thực hay ký tự
alphabet. Để thể hiện một bề mặt liên tục người ta sử dụng mô hình raster, các bề mặt
liên tục này thường thể hiện bề mặt địa hình, mưa, áp suất không khí, nhiệt độ, mật độ
dân số…
2.2.2.3. Chuyển đổi cơ sở dữ liệu dạng vector và raster
Việc chọn của cấu trúc dữ liệu dưới dạng vector hoặc raster tuỳ thuộc vào yêu
cầu của người sử dụng, đối với hệ thống vector, thì dữ liệu được lưu trữ sẽ chiếm diện
tích nhỏ hơn rất nhiều so với hệ thống raster, đồng thời các đường contour sẽ
chính xác hơn hệ thống raster. Ngoài ra cũng tuỳ vào phần mềm máy tính đang sử
dụng mà nó cho phép nên lưu trữ dữ liệu dưới dạng vector hay raster. Tuy nhiên đối
với việc sử dụng ảnh vệ tinh trong GIS thì nhất thiết phải sử dụng dưới dạng
raster.Một số công cụ phân tích của GIS phụ thuộc chặt chẽ vào mô hình dữ liệu
raster, do vậy nó đòi hỏi quá trình biến đổi mô hình dữ liệu vector sang dữ liệu raster,
hay còn gọi là raster hoá. Biến đổi từ raster sang mô hình vector, hay còn gọi là vector
hoá, đặc biệt cần thiết khi tự động quét ảnh. Raster hoá là tiến trình chia đường hay
vùng thành các ô vuông (pixcel). Ngược lại, vector hoá là tập hợp các pixcel để tạo
thành đường hay vùng. Nét dữ liệu raster không có cấu trúc tốt, ví dụ ảnh vệ tinh thì
việc nhận dạng đối tượng sẽ rất phức tạp. Nhiệm vụ biến đổi vector sang raster là tìm
tập hợp các pixel trong không gian raster trùng khớp với vị trí của điểm, đường,
đường cong hay đa giác trong biểu diễn vector. Tổng quát, tiến trình biến đổi là tiến
trình xấp xỉ vì với vùng không gian cho trước thì mô hình raster sẽ chỉ có khả năng
địa chỉ hoá các vị trí toạ độ nguyên. Trong mô hình vector, độ chính xác của điểm
cuối vector được giới hạn bởi mật độ hệ thống toạ độ bản đồ còn vị trí khác của đoạn
30
thẳng được xác định bởi hàm toán học.
Hình 19: Chuyển đổi vector sang raster
2.2.2.4. So sánh vector và raster
Hệ thống cơ sở dữ liệu Raster
Thuận lợi:
- Vị trí địa lý của mỗi ô được xác định bởi vị trí của nó trong ô biểu tượng,
hình ảnh có thể được lưu trữ trong một mảng tương xứng trong máy vi tính
cung cấp đủ dữ liệu bất kỳ lúc nào. Vì vậy mỗi ô có thể nhanh chóng và dễ
dàng được định địa chỉ trong máy theo vị trí địa lý của nó.
- Những vị trí kế cận được hiện diện bởi các ô kế cận, vì vậy mối liên hệ giữa
các ô có thể được phân tích một cách thuận tiện
- Quá trình tính toán đơn giản hơn và dễ dàng hơn cơ sở hệ thống dữ liệu
vector.
- Đơn vị bản đồ ranh giới được trình bày một cách tự nhiên bởi giá trị ô khác
nhau, khi giá trị thay đổi, việc chỉ định ranh giới thay đổi.
Nhược điểm:
- Khả năng lưu trữ đòi hỏi lớn hơn nhiều so với hệ thống cơ sở dữ liệu vector.
31
- Kích thước ô định rõ sự quyết định ở phương pháp đại diện. Điều này đặc
biệt khó cân xứng với sự hiện diện đặc tính thuộc về đường thẳng.
- Thể hiện bản đồ không rõ nét nếu độ tương phản thấp, độ tương phản cao thì
tăng kích thước file ảnh
Hệ thống cơ sở dữ liệu Vector
Ưu điểm:
- Việc lưu trữ đòi hỏi ít hơn hệ thống cơ sở dữ liệu raster
- Bản đồ gốc có thể được hiện diện ở sự phân giải gốc của nó
- Thể hiện liên hệ hình học do đó thích hợp cho các phân tích về hình học hay
phân tích về mạng lưới và số hóa các bản đồ vẽ tay.
Nhược điểm:
- Vị trí của điểm đỉnh cần được lưu trữ 1 cách rõ ràng
- Thuật toán rất phức tạp
2.2.3. Mô hình thông tin thuộc tính
Số liệu phi không gian hay còn gọi là thuộc tính là những mô tả về đặc tính, đặc
điểm và các hiện tượng xảy ra tại các vị trí địa lý xác định. Một trong các chức năng
đặc biệt của công nghệ GIS là khả năng của nó trong việc liên kết và xử lý đồng thời
giữa dữ liệu bản đồ và dữ liệu thuộc tính. Thông thường hệ thống thông tin địa lý có 4
loại số liệu thuộc tính:
- Đặc tính của đối tượng: liên kết chặt chẽ với các thông tin không gian có thể
thực hiện SQL (Structure Query Language) và phân tích.
- Số liệu hiện tượng, tham khảo địa lý: miêu tả những thông tin, các hoạt
động thuộc vị trí xác định.
- Chỉ số địa lý: tên, địa chỉ, khối, phương hướng, định vị, … liên quan đến các
đối tượng địa lý.
- Quan hệ giữa các đối tượng trong không gian, có thể đơn giản hoặc phức
tạp. Để mô tả một cách đầy đủ các đối tượng địa lý, trong bản đồ số chỉ
dùng thêm các loại đối tượng khác: điểm điều khiển, toạ độ giới hạn và các
thông tin mang tính chất mô tả.
32
Các thông tin mô tả có các đặc điểm:
- Có thể nằm tại một vị trí xác định trên bản đồ
- Có thể chạy dọc theo arc (đường)
- Có thể có các kích thước, màu sắc, các kiểu chữ khác nhau
- Nhiều mức của thông tin mô tả có thể được tạo ra với ứng dụng khác nhau
- Có thể tạo thông tin cơ sở dữ liệu lưu trữ thuộc tính
- Có thể tạo độc lập với các đối tượng địa lý có trong bản đồ
- Không có liên kết với các đối tượng điểm, đường, vùng và dữ liệu thuộc tính
của chúng
Bản chất một số thông tin dữ liệu thuộc tính như sau:
Số liệu tham khảo địa lý: mô tả các sự kiện hoặc hiện tượng xảy ra tại một vị trí
xác định. Không giống các thông tin thuộc tính khác, chúng không mô tả về bản thân
các hình ảnh bản đồ. Thay vào đó chúng mô tả các danh mục hoặc các hoạt động như
cho phép xây dựng, báo cáo tai nạn, nghiên cứu y tế, … liên quan đến các vị trí địa lý
xác định. Các thông tin tham khảo địa lý đặc trưng được lưu trữ và quản lý trong các
file độc lập và hệ thống không thể trực tiếp tổng hợp chúng với các hình ảnh bản đồ
trong cơ sở dữ liệu của hệ thống. Tuy nhiên các bản ghi này chứa các yếu tố xác định
vị trí của sự kiện hay hiện tượng.
Chỉ số địa lý: được lưu trong hệ thống thông tin địa lý để chọn, liên kết và tra cứu
số liệu trên cơ sở vị trí địa lý mà chúng đã được mô tả bằng các chỉ số địa lý xác định.
Một chỉ số có thể bao gồm nhiều bộ xác định cho các thực thể địa lý sử dụng từ các cơ
quan khác nhau như là lập danh sách các mã địa lý mà chúng xác định mối quan hệ
không gian giữa các vị trí hoặc giữa các hình ảnh hay thực thể địa lý. Ví dụ: chỉ số địa
lý về đường phố và địa chỉ địa lý liên quan đến phố đó.
Mối quan hệ không gian: của các thực thể tại vị trí địa lý cụ thể rất quan trọng
cho các chức năng xử lý của hệ thống thông tin địa lý. Các mối quan hệ không gian có
thể là mối quan hệ đơn giản hay lôgic, ví dụ tiếp theo số nhà 101 phải là số nhà 103
nếu là số nhà bên lẻ hoặc nếu là bên chẵn thì cả hai đều phải là các số chẵn kề nhau.
Quan hệ Topology cũng là một quan hệ không gian. Các quan hệ không gian có thể
được mã hoá như các thông tin thuộc tính hoặc ứng dụng thông qua giá trị toạ độ của
các thực thể.
33
Mối quan hệ giữa dữ liệu không gian và phi không gian: thể hiện phương pháp
chung để liên kết hai loại dữ liệu đó thông qua bộ xác định, lưu trữ đồng thời trong các
thành phần không gian và phi không gian. Các bộ xác định có thể đơn giản là một số
duy nhất liên tục, ngẫu nhiên hoặc các chỉ báo địa lý hay số liệu xác định vị trí lưu trữ
chung. Bộ xác định cho một thực thể có thể chứa toạ độ phân bố của nó, số hiệu mảnh
bản đồ, mô tả khu vực hoặc con trỏ đến vị trí lưu trữ của số liệu liên quan. Bộ xác định
được lưu trữ cùng với các bản ghi toạ độ hoặc mô tả số khác của các hình ảnh không
gian và cùng với các bản ghi số liệu thuộc tính liên quan.
Sự liên kết giữa hai loại thông tin cơ bản trong cơ sở dữ liệu GIS thể hiện theo sơ
đồ sau:
Hình 20: Mối quan hệ giữa thông tin bản đồ và thông tin thuộc tính
2.3. WebGIS – Công nghệ GIS qua mạng
2.3.1. Giới thiệu WebGIS
WebGIS là hệ thống thông tin địa lý phân tán trên một mạng các máy tính để tích
hợp, trao đổi các thông tin địa lý trên World Wilde Web. Trong cách thực hiện nhiệm
vụ phân tích GIS, dịch vụ này gần giống như là kiến trúc Client-Server của Web. Xử
lý thông tin địa lý được chia ra thành các nhiệm vụ ở phía server và phía client. Điều
này cho phép người dùng có thể truy xuất, thao tác và nhận kết quả từ việc khai thác
dữ liệu GIS từ trình duyệt web của họ mà không phải trả tiền cho phần mềm GIS. Một
client tiêu biểu là trình duyệt web và server-side bao gồm một Web server có cung cấp
một chương trình phần mềmWebGIS. Client thường yêu cầu một ảnh bản đồ hay vài
xử lý thông tin địa lý qua Web đến server ở xa. Server chuyển đổi yêu cầu thành mã
34
nội bộ và gọi những chức năng về GIS bằng cách chuyển tiếp yêu cầu tới phần mềm
WebGIS. Phần mềm này trả về kết quả, sau đó kết quả này được định dạng lại cho việc
trình bày bởi trình duyệt hay những hàm từ các plug-in hoặc Java applet. Server sau đó
trả về kết quả cho client để hiển thị, hoặc gửi dữ liệu và các công cụ phân tích đến
client để dùng ở phía client. Phần lớn sự chú ý gần đây là tập trung vào việc phát triển
các chức năng GIS trên Internet. WebGIS có tiềm năng lớn trong việc làm cho thông
tin địa lý trở nên hữu dụng và sẵn sàng tới số lượng lớn người dùng trên toàn thế giới.
Thách thức lớn của WebGIS là việc tạo ra một hệ thống phần mềm không phụ thuộc
vào platform và chạy trên chuẩn giao thức mạng TCP/IP, có nghĩa là khả năng
WebGIS được chạy trên bất kì trình duyệt web của bất kì máy tính nào nối mạng
Internet. Đối với vấn đề này, các phần mềm GIS phải được thiết kế lại để trở thành
ứng dụng WebGIS theo các kỹ thuật mạng Internet.
2.3.2. Sơ đồ hoạt động của WebGIS
Hình 22: Sơ đồ hoạt động của WebGIS
Quá trình hoạt động của WebGIS được minh họa như hình vẽ trên.
- Người dùng sử dụng trình duyệt web ở phía client
- Client gửi yêu cầu của người sử dụng đến WebServer qua giao thức HTTP
- Webserver nhận yêu cầu của người dùng, nếu là yêu cầu về bản đồ thì
webserver sẽ chuyển tiếp nó đến ứng dụng server tương ứng ở đây là
Mapserver
- Mapserver sẽ nhận các yêu cầu cụ thể, gọi các hàm có liên quan để tính toán
xử lý. Nếu có yêu cầu về dữ liệu Mapserver sẽ gửi yêu cầu tới cơ sở dữ liệu
để lấy ra dữ liệu.
35
- Data server dữ liệu tiến hành truy vấn lấy ra dữ liệu cần thiết và gửi lại cho
Mapserver
- Trong quá trình truy cập cơ sở dữ liệu, Mapserver thực thi tham chiếu đến
tập tin cấu hình bản đồ (Map file). Dữ liệu lấy về được chuyển về
WebServer tham chiếu đến tệp tin mẫu (html template) để tạo ra kết quả.
- Kết quả sẽ được gửi về Client và hiển thị trên trình duyệt.
2.3.3. Tiềm năng của WebGIS
- Khả năng phân phối thông tin địa lý rộng rãi trên toàn cầu
- Người dùng internet có thể truy cập đến các ứng dụng GIS mà không phải
mua phần mềm
- Đối với phần lớn người dùng không có kinh nghiệm về GIS thì việc sử dụng
WebGIS sẽ đơn giản hơn việc sử dụng các ứng dụng GIS khác.
2.3.4. Các kiến trúc triển khai WebGIS
Mô hình hoạt động của WebGIS được chia ra làm 2 phần: các hoạt động ở phái
client – client side và các hoạt động xử lý ở phái server (server side)
- Server side : cho phép người dùng gửi yêu cầu lấy dữ liệu và phân tích trên
máy chủ. Máy chủ sẽ thực hiện các yêu cầu và gửi trả dữ liệu hoặc kết quả cho
người dùng.
- Client side : cho phép người dùng thực hiện vài thao tác phân tích trên dữ
liệu tại chính máy người dùng.
- Server và client có thể kết hợp giữa client side và server side để phục vụ nhu
cầu của người dùng.
2.3.4.1. Server side
Server side tập trung cung cấp dữ liệu GIS và phân tích trên một máy chủ
(Server). Máy chủ này có khả năng truy cập dữ liệu và phần mềm để giải quyết yêu
cầu của máy khách. Máy khách sẽ chỉ sử dụng rất ít tiến trình, chủ yếu là gửi các yêu
cầu và hiển thị kết quả. Trong WebGIS đôi khi thuật ngữ mapserver chỉ ra kiến trúc
được dùng là server-side, mà trong đó người dùng gửi yêu cầu cần map để hiển thị, thì
sẽ được phục vụ bởi server. Kiến trúc server side dựa trên khả năng trình duyệt web của
người dùng có thể gửi các yêu cầu đến các phần mềm GIS trên server thông qua
36
internet. Để có thể giao tiếp với các ứng dụng WebGIS đặt trên server, web server có thể
sử dụng các chuẩn giao tiếp phổ biến như CGI, Java…
Ưu điểm:
- Nếu máy chủ có khả năng xử lý cao, người dùng sẽ truy cập được các dữ
liệu lớn và phức tạp thay vì phải xử lý trên máy khách.
- Nếu máy chủ có khả năng xử lý cao được dùng, các chức năng phân tích
GIS phức tạp sẽ được xử lý nhanh hơn thay vì xử lý trên máy khách.
Nhược điểm:
- Bất cứ các yêu cầu dù lớn hay nhỏ đều phải được gửi về cho máy chủ xử lý
và các kết quả cũng được gửi trả lại cho máy khách hiển thị thông qua
Internet.
- Ảnh hưởng đến băng thông khi truyền tải dữ liệu lớn.
- Không tận dụng được ưu thế của máy cục bộ.
- Server side thường được sử dụng cho các hệ thống lớn trên toàn cầu.
2.3.4.2. Client side
Client side chuyển đổi các yêu cầu sang được xử lý tại máy khách. Máy khách
phải có khả năng đủ mạnh để xử lý các yêu cầu này.Thay vì phải bắt máy chủ xử lý tất
cả thì một số chức năng GIS sẽ được tải về máy khách, trú ngụ ở đó và dữ liệu được
xử lý tại máy khách.
Có 2 dạng triển khai của kiến trúc client side như sau:
- GIS applet được phân phối đến client khi có yêu cầu
o Các xử lý GIS sẽ được server cung cấp cho phía client dưới dạng các
chương trình thực thi nhỏ hoặc là các applet để có thể chạy được ở
client
o Người dùng tạo ra một yêu cầu từ trình duyệt, yêu cầu được gửi tới
server, server xử lý các yêu cầu
o Kết quả trả về cho client bao gồm các dữ liệu và các applet cần thiết
để người dùng có thể làm việc trên dữ liệu đó
o Applet được viết bằng javascript, java…
37
- GIS applet và các plug-in cố định ở client
o Các GIS applet cài đặt cố định ở client
o Trình duyệt web cài đặt một số các plug-in cần thiết
o Server được gọi khi client cần dữ liệu mới
o Người dùng được thao tác trên dữ liệu họ dùng và phân tích chúng
Ưu điểm:
- Sử dụng được ưu thế của máy khách.
- Người dùng có thể điều khiển được các điều khiển xử lý dữ liệu.
- Người dùng có thể làm việc mà không cần phải gửi và nhận các yêu cầu qua
Internet.
Nhược điểm:
- Việc tải các chức năng từ máy chủ như các Applets có thể bị trì hoãn, kéo
dài.
- Các dữ liệu lớn và phức tạp sẽ khó được xử lý trên máy khách nếu máy
khách không đủ mạnh.
- Các thủ tục GIS phức tạp sẽ khó thực hiện trên máy khách nếu máy khách
không đủ mạnh.
- Người dùng sẽ không được huấn luyện (đào tạo) nếu muốn dùng dữ liệu hoặc
các chức năng phân tích.
Client side thường được sử dụng cho các hệ thống nhỏ trong phạm vi cục bộ.
2.3.4.3. Kết hợp cả 2 chiến lược
Nếu dùng thuần Server side hoặc Client side thì sẽ gặp các giới hạn:
- Nếu server side đòi hỏi phải chuyển tải thường xuyên, thì các tác vụ của nó
sẽ dễ làm giảm đến băng thông và đường truyền Internet.
- Client side thì lại có thể chiếm hết tài nguyên của máy khách. Một số
chương trình sẽ thực hiện rất chậm do sự không phù hợp giữa các yêu cầu
của các tiến trình và khả năng của máy.
Server side và client side có thể kết hợp với nhau để cho ra các kết quả lai phù hợp với
khả năng của server và client.
38
- Các tác vụ đòi hỏi sử dụng database hoặc phân tích phức tạp sẽ được gán
trên máy chủ.
- Các tác vụ nhỏ sẽ được gán ở máy khách.
Trong trường hợp này, cả máy chủ và máy khách cùng chia sẻ thông tin với nhau về
sức mạnh và khả năng của chúng.
2.3.5. Trao đổi dữ liệu của hệ thống WebGIS
GIS đã ra đời từ khá lâu và các ứng dụng GIS đã được phát triển trên nhiều lĩnh vực
khác nhau, mỗi ứng dụng này, dữ liệu GIS cũng được tạo ra, các dữ liệu này là rất lớn
và tốn thời gian và công sức xây dựng. Việc chia sẻ nguồn tài nguyên dữ liệu sẽ làm
giảm chi phí xây dựng và quản lý dữ liệu GIS.
Trong mô hình kiến trúc WebGIS đơn thì dữ liệu GIS được dùng cho một nhóm ứng
dụng, mà dữ liệu này lại có thể được sử dụng cho các nhóm ứng dụng khác.
Tổ chức OGC đã đưa ra 2 chuẩn trao đổi dữ liệu:
2.3.5.1. Web Map Service / Server
Trong chuẩn trao đổi dữ liệu này, web server sẽ trở thành web map server có service
phục vụ cho chia sẻ dữ liệu. Các hoạt động mà client có thể thực hiện thông qua
service này gồm : nhận về mô tả các bản đồ, nhận về bản đồ, và các thông tin truy vấn
các đặc điểm được thể hiện trên bản đồ. Chuẩn này không áp dụng cho việc nhận dữ
liệu chưa xử lý dạng thuộc tính hay không gian mà thường nhận về một ảnh bản đồ
dạng đồ họa. Những bản đồ này thường được tạo ra với các định dạng như PNG, GIF,
JPEG.
Các chức năng của một web map service:
- GetCapabilities: Khả năng hỗ trợ, client nhận về một mô tả thông tin WMS,
các tham số được chấp nhận và hỗ trợ, bảng mô tả dưới dạng file XML.
- GetMap lấy bản đồ, client nhận về một ảnh bản đồ phù hợp với tham số mà
client gửi lên server.
- GetFeatureInfo lấy thông tin đặc điểm, client hỏi thông tin về đặc điểm nào
đó xuất hiện trên bản đồ.
Client gửi các yêu cầu dưới dạng một URL, các yêu cầu được chỉ ra bởi tham số.
39
2.3.5.2. Web Feature Service / Server
Server được gọi là Web Feature server có service phục vụ việc chia sẻ dữ liệu. Tuy
nhiên thay vì trả về một ảnh bản đồ dạng đồ họa thì Web Feature Server sẽ gửi về
thông tin không gian và thông tin thuộc tính có liên quan dưới dạng file GML
(Geographic Markup Language) một dạng file XML, client sử dụng file XML này để
tạo ra ảnh bản đồ. Chức năng của WFS giống với WMS chỉ khác dữ liệu trao đổi.
- GetCapabilities: trả về một tài liệu XML (Extensible Markup Languge) mô
tả chức năng của WCS.
- DescribeCoverage: trả về một tài liệu XML mô tả các Coverage mà WCS
Server có thể cung cấp.
- GetCoverage: trả về một Coverage thoả mãn các điều kiện mà Client cung
cấp.
40
Chương 3 MapServer – WebGIS Application
3.1. Giới thiệu Mapserver
Mapserver là môi trường phát triển cho việc xây dựng ứng dụng GIS thông qua
internet. Trong mô hình kiến trúc WebGis, Mapserver là ứng dụng GIS được đặt trên
webserver. Mapserver là sản phẩm của trường đại học Minnesota (University of
Minnesota - UMN) trong dự án kết hợp giữa NASA và bộ tài nguyên Minnesota.
Mapserver có thể chạy trên nhiều môi trường, nó được viết bằng C++ có thể chạy trên
các version của UNIX/LINUX, WINDOWS và cả trên MacOS. Để giao tiếp với các
thành phần trên môi trường web, Mapserver sử dụng chuẩn giao tiếp CGI (Common
Gateway Interface). Phiên bản Mapserver hiện tại là MapServer 5.4.
MapServer có các đặc điểm sau:
- Hỗ trợ các dịch vụ WebGIS theo chuẩn OGC, bao gồm: WMS Server,
WMS Client, WFS Server, WFS Client và WCS Server.
- Xuất bản đồ với nhiều ưu điểm:
o Vẽ đối tượng theo tỷ lệ.
o Hiển thị nhãn theo đối tượng
o Tùy biến giao diện, mẫu trước khi xuất.
o Sử dụng font: TrueFont
o Tạo bản đồ chuyên đề dựa trên biểu thức truy vấn trên các lớp cơ sở.
- Hệ thống Mapserver bao gồm cả Mapscript, hỗ trợ các ngôn ngữ kịch bản
phổ biến và môi trường phát triển như C#, PHP, Perl, Python, Java, và
Ruby. Mapscript cung cấp môi trường thuận lợi cho việc phát triển các ứng
dụng tích hợp các dữ liệu phân tán.Ta có thể lấy dữ liệu không gian qua các
ngôn ngữ kịch bản và dựa vào Mapscript ta có thể tạo ra được ảnh bản đồ.
- Hỗ trợ các hệ điều hành: Linux, Windows, MAC OS X, Solaris, …
41
- Hỗ trợ định dạng dữ liệu raster và vector:
o TIFF/GeoTIFF, GIF, PNG, ERDAS, JPEG và EPPL7.
o ESRI shapefile, PostGIS, ESRI ArcSDE, Oracle Spatial, MySQL, …
- Hỗ trợ lưới chiếu: hỗ trợ hơn 1000 lưới chiếu trong thư viện Proj.4
Mapserver đóng vai trò như là một map engine được cung cấp nội dung để tạo ảnh bản
đồ khi cần đến.
3.2. Các thành phần của Mapserver
Ứng dụng Mapserver sử dụng chuẩn giao tiếp CGI để giao tiếp với các thành
phần và với HTTP Server. Do có mã nguồn mở nên cũng có những ứng dụng được
biên dịch để có thể dùng Mapscript truy xuất trực tiếp các hàm API của Mapserver.
Ứng dụng Mapserver CGI sử dụng các tài nguyên sau:
- Một webserver server (Apache hoặc IIS)
- Phần mềm Mapserver (WebGIS application)
- File khởi tạo dùng để cấu hình và tùy biến các thông số của ứng dụng
Mapserver (không bắt buộc)
- Map file là file cấu hình cho ứng dụng Mapserver.
- Template file là giao diện giữa người dùng và Mapserver
- Dữ liệu GIS
3.2.1. File khởi tạo
Mỗi khi http server nhận được yêu cầu từ client thông qua chuỗi URL thì http
server sẽ gọi Mapserver chạy và thực thi. Bằng cách sử dụng file khởi tạo (file html) ta
định nghĩa tham số cơ bản càn thiết để Mapserver có thể thực thi được.
Ví dụ:
[map],[map_web_imagepath],[img]…
3.2.2. Map file
Là một file text cấu hình cho ứng dụng Mapserver. Nó định nghĩa vùng bản đồ,
thông báo cho Mapserver biết dữ liệu ở đâu và output là dạng gì và ở đâu. Nó định
nghĩa các layer, bao gồm nguồn dữ liệu, khung chiếu và các biểu tượng. Nó có đuôi
mở rộng là .map.
42
3.2.3. Template file
Nó điều khiển các hình bản đồ và các ghi chú trả về bởi Mapserver sẽ xuất hiện
trên trang html. Đầu tiên Mapserver đọc template file này và nếu gặp các từ khóa hoặc
các mẫu thì nó sẽ thay thế các giá trị tương ứng lấy từ chuỗi kết quả trả về, file này sẽ
được gửi trở vè trình duyệt và hiển thị trên trình duyệt.
3.2.4. Dữ liệu GIS
Dữ liệu vector, Mapserver sử dụng ESRI shapefile làm dữ liệu mặc định.Ngoài ra
các định dạng dữ liệu vector GIS phổ biến khác hiện nay, Mapserver đều có thể hiểu
và tương tác được, như PostGIS, ESRI, ArcSDE, MapInfo… và nhiều định dạng khác
thông qua thư viện OGR. Dữ liệu raster, MapServer hỗ trợ TIFF/GeoTIFF, EPPL7 và
các định dạng khác thông qua thư viện GDAL.
3.3. Sơ đồ hoạt động của Mapserver
Hình 21: Sơ đồ hoạt động của Mapserver
MapServer có thể hoạt động ở hai chế độ CGI (Common Gateway Interface) và
API (Application Program Interface). Ở chế độ CGI, các chức năng của MapServer
trong môi trường WebServer là CGI MapScript. Ở chế độ API, có thể truy cập
MapServer bằng PHP, Perl hoặc Python. MapServer hoạt động dựa vào các mẫu.
Trước khi thực thi yêu cầu của web, MapServer đọc tệp tin cấu hình (mapfile) mô tả
các lớp và các thành phần khác của bản đồ.Mapserver sẽ vẽ ra ảnh bản đồ. Tiếp theo,
nó sẽ đọc một hoặc nhiều tệp tin mẫu HTML mà nó nhận diện trong tệp tin cấu hình.
Mỗi tệp tin mẫu sẽ chứa đựng các tags HTML và các chuỗi MapServer đặc biệt. Các
43
chuỗi này sẽ được sử dụng, ví dụ chuỗi chỉ đường dẫn để lưu ảnh bản đồ do Mapserver
tạo ra, hoặc chuỗi dùng để nhận diện các lớp nào sẽ được sắp xếp, …MapServer thay
thế các giá trị hiện tại vào các các chuỗi này và gửi luồng dữ liệu về cho WebServer để
WebServer tiếp tục chuyển về cho trình duyệt. Khi có một yêu cầu mới phát sinh,
MapServer sẽ nhận yêu cầu từ WebServer với các giá trị mới và chu trình cứ thế tiếp
diễn.
3.4. Cài đặt Mapserver
UMN MapServer là mã nguồn mở và nó là một phương tiện render bản đồ tự do
cho web. Do nó là mã nguồn mở nên nó có thể được biên dịch trên nhiều môi trường
và nhiều hệ điều hành khác nhau. Chúng ta sẽ tìm hiểu việc biên dịch và cài đặt
MapServer trên môi trường ubuntu Linux.
Các thư viện yêu cầu :
- GD: là thư viện đồ họa. MapServer sử dụng GD để render ảnh, là thư viện
bắt buộc phải cài đặt. Các thư viện GD sử dụng là zlib, libpng, Freetype,
libJPEG.
- Zlib: Thư viện nén dữ liệu sử dụng bởi GD.
- Libpng: thư viện render ảnh PNG.
- Libjpeg : thư viện render ảnh JPEG
- Freetype: Được sử dụng bởi GD vho việc render ảnh.
- Proj.4 thư viện lưới chiếu bản đồ. Nó có thể hiện thị trên web bởi
MapServer.
- Webserver apache
- Mysql server
- PHP5
- File cài đặt mapserver cgi-mapserver.deb.
Các thư viện và file cài đặt MapServer ở dạng binary packages có thể tải về từ trang
Để kiểm tra cài đặt Mapserver khởi động lại Webserver bằng lệnh :
$ /etc/init.d/apache2 restart
44
Kiểm tra Mapserver đã cài đặt đúng chưa gõ lệnh:
$ /usr/lib/cgi-bin/mapserv
Nếu hiện ra :
This script can only be used to decode form results and should be initiated as a
CGI process via a httpd server.
Thì đã cài đặt MapServer thành công.
3.5. Tìm hiểu Mapfile
Mapfile là trái tim của Mapserver. Nó định nghĩa các quan hệ giữa các đối tượng,
điểm, chỉ ra dữ liệu ở đâu và định nghĩa mọi thứ được vẽ như thế nào. Trong mapfile
có nhiều đối tượng như Map, PROJECTION, LAYER, CLASS.. mỗi đối tượng định
nghĩa cách thức tạo nên ảnh bản đồ hoặc đối tượng để Mapserver truy xuất dữ liệu cho
câu truy vấn. Mapfile có cấu trúc phân cấp, MAP Object là root, các object nằm dưới
nó. Chú thích trong mapfile là dấu #.
3.5.1. Map Object
Trong mapfile thì MAP là đối tượng gốc, chứa trong nó các đối tượng khác.
- EXTENT [minx][miny][maxx][maxy] : Không gian phạm vi của ảnh bản đồ
được tạo ra, nó được được định nghĩa bởi kết hợp góc dưới bên trái
[minx],[miny] và góc trên bên phải [maxx][maxy]. Lỗi trong định nghĩa
extent có thể tạo ra kết quả là trang trắng, bản đồ bị méo hoặc lỗi. EXTENT
phải được đinh nghĩa, và nó phải ở trong cùng một hệ thống kết hợp như là
các đối tượng PROJECTION.
- FONTSET [filename] : Liệt kê danh sách các font được dùng. Mỗi dòng
chứa 2 thành phần: một bí danh và một đường dẫn đến font được phân cách
bằng khoảng trắng. Alias là tên dùng để chỉ font này trong mapfile.
Mapserver sử dụng true font.
- IMAGECOLOR [r][g][b]: Màu được dùng làm background cho ảnh bản đồ.
Nếu thuộc tính transparency được chọn , thì màu sắc này sẽ đánh dấu như là
màu trong suốt trong bảng màu. Khi đó thành phần nào của ảnh bản đồ sử
dụng màu này để vẽ cũng trong suốt. Nên khi tạo ảnh bản đồ nếu chọn ảnh
bản đồ trong suốt thì nên chọn màu imagecolor là màu không được dùng để
vẽ các thành phần khác trên bản đồ.
45
- IMAGETYPE [gif|png|jpeg|swf|gtiff] : Định dạng ảnh bản đồ được tạo ra
- LAYER : Bắt đầu đối tượng LAYER
- LEGEND : Bắt đầu cho đối tượng LEGEND
- NAME [name] : Xác định tiền tố cho tên ảnh bản đồ, ảnh các thước tỷ lệ,
ghi chú được tạo ra từ mapfile
o Ví dụ :
NAME HN_ Các ảnh bản đồ tạo ra sẽ có tiền tố là HN_
- PROJECTION : Bắt đầu cho đối tượng PROJECTION
- QUERYMAP : Bắt đầu cho đối tượng QUERY MAP
- REFERENCE : Bắt đầu cho đối tượng QUERYMAP
- RESOLUTION : Định đồ phân giải cho ảnh kết quả, độ phân giải sẽ ảnh
hưởng đến việc tính toán tỷ lệ, mặc định là 72.
- SCALE : Tỉ lệ của bản đồ
- SHAPEPATH [filename] : đường dẫn tới dữ liệu dạng vector
- SIZE [x][y] : kích thước theo đơn vị pixel của ảnh bản đồ
- STATUS [on|off] : trạng thái có được kích hoạt không của ảnh bản đồ. Nếu
không được kích hoạt thì Mapserver sẽ không tạo ra ảnh bản đồ khi sử dụng
mapfile này
- SYMBOLSET [filename] : file chứa tập hợp các biểu tượng được dùng trên
bản đồ. Trên bản đồ, các symbol được dùng để đánh dấu các đối tượng
nhằm làm nổi bật và tăng thêm ngữ nghĩa.
- SYMBOL : Bắt đầu đối tượng symbol
- TEMPLATEPATTERN [regular expression] và DATAPATTERN [regular
expression] : Trong request được gửi lên từ trình duyệt gồm có 2 dạng tham
số là DATA và TEMPLATE. Các tham số đề là các từ khóa được
Mapserver quy định trước và thường khó nhớ. Bằng cách sử dụng
TEMPLATEPATTERN và DATAPATTERN ta có thể định nghĩa một tên
khác cho các từ khóa này.
- TRANSPARENT [on|off] : Thiết lập trong suốt cho ảnh bản đồ, mặc định là
off.
46
- UNITS [feet|inches|kilometers|meters|miles|dd] : Đơn vị của hệ tọa độ ảnh
bản đồ.
- WEB : Bắt đầu đối tượng web
3.5.2. Layer Object
Là đối tượng được sử dụng nhiều nhất trong mapfile, mỗi đối tượng layer mô tả
một layer được dùng để tạo ra ảnh bản đồ. Các layer được vẽ theo thứ tự xuất hiện của
chúng trong mapfile, layer đầu tiên ở dưới cùng, layer cuối cùng ở trên. Phiên bản
MapServer nhỏ hơn 5, số layer tối đa là 200 trong một mapfile, còn trong phiên bản 5
trở lên thì không giới hạn số lượng layer. Có thể thay đổi số lượng layer bằng cách sửa
file map.h thay đổi giá trị MS_MAXLAERS. Đường dẫn tới mapfile phải là đường
dẫn tuyệt đối. Các layer được vẽ ra còn được tính thêm thứ tự ưu tiên. Raster độ ưu
tiên thấp nhất sẽ được vẽ trước và đặt ở phía dưới, tiếp đến là vùng, đường, điểm và
nhãn (label). Thứ tự này đảm bảo các layer khi xếp chồng thì không che khuất nhau.
- CLASS : Bắt đầu đối tượng CLASS. Trong các định dạng vector, mỗi layer
được vẽ, lấy dữ liệu từ một bảng dữ liệu. Mỗi bảng dữ liệu có nhiều trương
thuộc tính. Mỗi thuộc tính xem như một CLASS.
- CLASSITEM [attribute] : ứng với tên của trường thuộc tính trong bảng dữ
liệu, được định nghĩa trong mapfile.
- CONNECTIONTYPE [local|postgis|wms] : Kiểu kết nối OGR được dùng
cho các loại dữ liệu khác ngoài dữ liệu mặc định là shapefile của ESRI.
OGR là một thư viện được viết bằng C++ nó hỗ trợ các kết nối của nhiều
loại dữ liệu như MapInfo, ArcInfo…
- CONNECTION [string] : Câu kết nối cơ sở dữ liệu để nhận về dữ liệu nằm
trên các server hoặc các DBMS
- DATA [filename] : Tên file đầy đủ của dữ liệu để xử lý. Đối với dữ liệu là
shapefile không cần chỉ rõ phần mở rộng. Đường dẫn có thể là tuyệt đối
hoặc tương đối so với giá trị được chỉ ra bởi tham số SHAPEPATH của đối
tượng MAP.
- DUMP [true|false] : cho phép Mapserver trả dữ liệu dưới dạng GML. Đặc
biệt có ích khi sử dụng với phương thức WMS GetFeatureInfo, mặc định là
false.
47
- FILTER [string] : Tham số này cho phép định nghĩa điều kiện lọc dữ liệu.
Đối với dữ liệu shapefiles hoặc các dữ liệu được kết nối thông qua OGR,
điều kiện lọc dữ liệu đơn giản là một chuỗi điều kiện. Còn đối với các loại
dữ liệu được trích xuất từ cơ sở dữ liệu thông qua chuỗi kết nối thì điều kiện
lọc là mệnh đề SQL WHERE.
- FILTERITEM [attribute] : Trường dữ liệu dùng cho câu chuỗi lọc FILTER,
chỉ dùng cho OGR và shapefiles.
- MAXSCALE [double] : Tỉ lệ lớn nhất mà layer được vẽ
- METADATA : được dùng với OGC WMS để định nghĩa như tiêu đề của
layer, tạo ra các template. Những dữ liệu được đặt trong Metadata sẽ được
truy xuất thông qua các tag của tập tin template.
o Ví dụ:
METADATA
Title “Lớp địa hình”
Author “cục bản đồ việt nam”
Create date “8/5/2009”
END
- MINSCALE [double] : Tỉ lệ nhỏ nhất mà layer được vẽ
- NAME [string] : Tên layer, giới hạn trong khoảng 20 ký tự. Tên layer được
dùng để liên kết giữa giao diện web và mapfile. Ảnh bản đồ là kết quả của
nhiều layer chồng lấp lên nhau. Từ giao diện web có thể cho phép người
dùng chọn lựa layer hiển thị. Khi tên layer được chọn và tên layer được định
nghĩa trong mapfile phải giống nhau để có thể hiển thị. Tên layer là duy
nhất, tên layer khác cùng tên thì phải khác tỷ lệ. Sử dụng GROUP để nhóm
các layer lại với nhau.
- PROJECTION : Bắt đầu đối tượng PROJECTION
- STATUS [on|off|default] : Trạng thái của layer. Giá trị là default thì layer
luôn được vẽ ra. Trạng thái là on thì layer sẽ được vẽ ra nhưng có thể
chuyển về trạng thái off, trạng thái off thì layer không được vẽ ra nhưng có
thể chuyển sang trạng thái on.
48
- TOLERANCEUNIT [double] & TOLERANCE [double] : Trong trường
hợp cần lấy thông tin đối tượng trên bản đồ, ta cần chỉ ra đối tượng được
chọn bằng click chuột vào vùng cần chọn. TOLERANCE được dùng để quy
định phạm vi đối tượng với tâm là vị trí click chuột. TOLERANCEUNIT
chỉ ra đơn vị của TOLERANCE, mặc định nó là 3 pixel
Ví dụ:
TOLERANCE 3
TOLERANCE 6
Khi người dùng click chuột lên bản đồ. Mapserver xác định được vị trí
click chuột là X,Y, sau đó tìm kiếm trong cơ sở dữ liệu xác định có đối
tượng nào có vị trí trong hình tròn tâm X,Y bán kính 6*3.
- TRANSPARENCY [interger|alpha] : Mức độ trong suốt của layer. Giá trị là
số nguyên từ 0-100 hoặc là giá trị bằng alpha. Giá trị nguyên là giá trị độ
mờ, giá trị là 0 là trong suốt hoàn toàn. Giá trị bằng alpha được dùng khi ảnh
bản đồ xuất ra dưới dạng RGB.
- TRANSFORM [true|false] : Báo cho Mapserver chuyển từ hệ tọa độ địa lý
sang hệ tọa độ đồ họa (ảnh đồ họa). Mặc định là true. Đối với hệ tọa độ đồ
họa, gốc tọa độ luôn là điểm góc trái trên của ảnh. Nó thường được dùng để
đặt các logo và các mục cố định ở trên bản đồ.
- TYPE [point|polygon|circle|raster|query] : Quy định các dữ liệu được vẽ ra.
Không cần phải cùng loại dữ liệu. Ví dụ: các đối tượng polygon có thể được
vẽ như là một tập các điểm, ngược lại một điểm không thể vẽ như là tập các
polygon. Dữ liệu shapefile không chỉ chứa đơn thuần một loại đối tượng, mà
có thể có nhiều đối tượng. Nếu có đối tượng là Point và Polygon, chọn
TYPE là polygon thì kiểu Point sẽ không vẽ được. Query chỉ ra layer được
truy vấn thông tin, không cần phải vẽ lại. Nếu giá trị là circle thì 2 điểm sẽ
xác định hình chữ nhật chứa đường tròn.
3.5.3. Query Map Object
Định nghĩa cơ chế thực hiện câu truy vấn từ bản đồ
- COLOR [r][g][b] : Khi xác định được đối tượng trên bản đồ, được chọn để
truy vấn, Mapserver sẽ vẽ lại đối tượng này với màu là Color. Mặc định là
Yellow.
49
- SIZE [x][y] : Phạm vi thực hiện truy vấn, ngoài phạm vi này các đối tượng
sẽ không được chọn để truy vấn dữ liệu. Mặc định là kích thước cả bản đồ,
được quy định trong đối tượng Map.
- STATUS [on][off] : Giá trị off thì sau khi thực hiện truy vấn, ảnh bản đồ sẽ
không được vẽ lại.
- STYLE [normal|hilite|selected] : Quy định cách thức vẽ lại các đối tượng
được chọn cho truy vấn, các đối tượng khác vẫn được vẽ lại như bình
thường.
o Normal : vẽ lại các đối tượng này bình thường theo các giá trị thiết
lập cho layer
o Hilite : vẽ lại các đối tượng được chọn theo màu COLOR
o Selected : chỉ vẽ lại các đối tượng được chọn, các đối tượng khác
không vẽ lại.
3.5.4. Projection Object
Thiết lập phép chiếu cần xác định một phép chiếu chung cho đối tượng Map, và
mỗi layer cũng cần chỉ ra một phép chiếu để vẽ các đối tượng trong layer đó. Đối
tượng phép chiếu bao gồm tập các từ khóa của PROJ.4 (thư viện các phép chiếu).
Ví dụ: Giả sử bản đồ có trung tâm là 90 kinh độ tây, phép chiếu sẽ là:
PROJECTION
"proj=lcc"
"lon_0=90w"
END
Trong mỗi layer, phải định nghĩa một đối tượng PROJECTION miêu tả phép
chiếu của dữ liệu nguồn, trong shapefile chứa dữ liệu không gian không được chiếu thì
trong mỗi layer đối tượng PROJECTION sẽ là:
PROJECTION
"proj=latlong" END
50
Ví dụ phép chiếu UTM khu vực 15
PROJECTION
“proj=utm”
“ellps=GRS80”
“zone=15”
“north”
“no_defs”
END
Ví dụ một mapfile:
Hello.map
NAME "hello"
SIZE 400 300
IMAGECOLOR 249 245 186
IMAGETYPE png
EXTENT -1.00 -1.00 1.00 1.00
WEB
TEMPLATE "/var/www/hello.html"
IMAGEPATH "/var/www/image/"
IMAGEURL "/image/"
END
LAYER
STATUS default
TYPE point
FEATURE
POINTS 0.0 0.0 END
TEXT "hello"
END
51
CLASS
STYLE
COLOR 255 0 0
END
LABEL
TYPE bitmap
END
END
END
END
3.6. Kết nối các loại dữ liệu
3.6.1. Dữ liệu ESRI Shapefiles (SHP)
ESRI là công ty đã đưa ra định dạng dữ liệu này, Arcview là sản phẩm đầu tiên
sử dụng shapefiles.
Shapefiles được tạo bởi 3 file:
Ví dụ:
Countries_area.dbf
Countries_area.shp
Countries_area.shx
Truy cập dữ liệu và phương thức kết nối
Truy cập shapefiles được gắn trực tiếp vào trong Mapserver. Nó có thể dùng
được thông qua thư viện OGR, nhưng ở đây chúng ta sẽ nói về việc truy cập trực tiếp
không thông qua thư viện OGR. Đường dẫn tới shapefile là được yêu cầu, không cần
chỉ ra phần mở rộng của file. Mỗi một shapefile thì trong mapfile định nghĩa một
layer, tên của layer trùng với tên shapefile.
Ví dụ:
NAME "First"
52
SIZE 400 300
IMAGECOLOR 255 255 255
IMAGETYPE JPEG
SHAPEPATH "/home/mapdata"
EXTENT -125.00 20.00 -65.00 50.00
WEB
TEMPLATE '/var/www/first.html'
IMAGEPATH '/var/www/image/'
IMAGEURL '/image/'
END
LAYER
NAME "US States"
STATUS default
TYPE line
DATA "statesp020"
LABELITEM "STATE"
CLASS
STYLE
COLOR 0 0 0
END
LABEL
COLOR 0 0 0
SIZE SMALL
END
END
END
END
53
3.6.2. Kết nối dữ liệu Raster
Mapserver hỗ trợ rất nhiều các định dạng file raster trong bản đồ. Để sử dụng ảnh
raster như một layer, cần phải khai báo một đối tượng layer trong Mapfile và xác định
các tham số kèm theo. Một layer raster đơn giản khai báo như sau.
LAYER
NAME "JacksonvilleNC_CIB"
DATA "Jacksonville.tif"
TYPE RASTER
STATUS ON
END
Trong đó DATA chỉ ra đường dẫn tới file ảnh raster, có thể là đường dẫn tuyệt
đối hoặc tương đối theo SHAPEPATH khai báo trong đối tượng MAP. Ngoài các tham
số trên một đối tượng layer dạng raster còn có thể thêm các thông tin PROJECTION,
METADATA, MINSCALE, MAXSCALE và không có CONNECTION,
CONNECTIONTYPE, FEATURE, LABEL…
Chọn lọc dữ liệu Raster
Dữ liệu raster dưới dạng các pixel, do đó có thể chọn lọc dữ liệu cần dựa vào giá
trị của các pixel, hoặc dựa theo bảng màu giá trị của pixel theo bộ ba giá trị r, g, b. Ví
dụ:
LAYER
NAME "JacksonvilleNC_CIB"
DATA "Jacksonville.tif"
TYPE RASTER
STATUS ON
CLASSITEM "[pixel]"
# class dử dụng điều kiện đơn giản “0” tương đương ([pixel] = 0)
54
CLASS
EXPRESSION "0"
STYLE
COLOR 0 0 0
END
END
# class sử dụng điều kiện lọc theo giá trị pixel
CLASS
EXPRESSION ([pixel] >= 64 AND [pixel] < 128)
STYLE
COLOR 255 0 0
END
END
# class sử dụng ba màu r g b từ bảng màu
CLASS
NAME "near white"
EXPRESSION ([red] > 200 AND [green] > 200 AND [blue] > 200)
STYLE
COLOR 0 255 0
END
END
# Class lọc các pixel có giá trị tận cùng bằng 1
CLASS
EXPRESSION /*1/
STYLE
COLOR 0 0 255 END END END
55
Việc chọn lọc được tiến hành như sau: đọc và phân loại trước các giá trị pixel
vào một bảng gọi là bảng tìm kiếm, khi đó các pixel có giá trị lân cận được xếp gần
nhau. Cuối cùng khi vẽ sẽ đọc được từng nhóm pixel từ bảng tìm kiếm dựa vào các
chọn lọc dữ liệu trong định nghĩa các class của đối tượng layer. Nhanh hơn so với việc
đọc và so sánh giá trị từng pixel, một ảnh raster thường lên tới hàng triệu pixel. Việc
lọc dữ liệu pixel chỉ có thể tiến hành tốt trên các loại raster dạng 8 bit (giá trị pixel
thuộc 0 - 255) còn đối với các ảnh raster dạng khác như 16 bit (0 - 65535) cần định
nghĩa thêm giá trị cho tham số PROCESSING để quy định phạm vi chọn lọc các pixel
Ví dụ:
LAYER
NAME grid1
TYPE raster
STATUS default
DATA data/float.tif
PROCESSING "SCALE=-10,10"
PROCESSING "SCALE_BUCKETS=4"
CLASS
NAME "red"
EXPRESSION ([pixel] < -3)
STYLE
COLOR 255 0 0
END
END
CLASS
NAME "green"
EXPRESSION ([pixel] >= -3 and [pixel] < 3)
STYLE
COLOR 0 255 0
56
END
END
CLASS
NAME "blue"
EXPRESSION ([pixel] >= 3)
STYLE
COLOR 0 0 255
END
END
END
Trong đó PROCESSING “SCALE=-10,10” chỉ ra khoảng giá trị của những pixel
được xét (-10,10) và PROCESSING “SCALE_BUCKETS=4” là sẽ lấy 4 pixel có giá
trị thỏa mãn bất đẳng thức sau:
([pixel] < -3)
([pixel] >= -3 and [pixel] < 3)
([pixel] >= 3)
3.6.3. Kết nối dùng thư viện OGR
OGR (OpenGIS Simple Features Reference Implementation) là một thư viện
C++ mã nguồn mở cung cấp khả năng đọc ghi các loại dữ liệu vector khác nhau, trong
đó bao gồm cả ESRI shapefile và MapInfo mid/mif và định dạng TAB. OGR hỗ trợ rất
nhiều định dạng: ArcInfo Coverages, ESRI shapefiles, MapInfo, OGDI vectors, Oracle
Spatial, PostgreSQL…
Tích hợp OGR vào Mapserver
OGR được tích hợp thẳng vào source code của Mapserver, do đó để thực hiện kết
nối một layer sử dụng OGR chỉ cần thay đổi và khai báo layer trong mapfile. Tham số
57
DATA của đối tượng LAYER được thay bằng 3 tham số CONNECTONTYPE,
CONNECTON và DATA.
Khai báo layer kết nối OGR trong mapfile
LAYER
…
CONNECTIONTYPE OGR
CONNECTION “datascource_name”
DATA “layer_definition”
…
END
Trong đó:
- là đường dẫn tới nguồn dữ liệu cần đọc. Nếu nguồn dữ liệu
dạng tập hợp các file cung tên thì datasource_name là đường dẫn của một file trong tập
hợp đó. Đường dẫn này có thể là tương đối hoặc tuyệt đối theo SHAPEPATH hoặc
theo mapfile. Đối với các nguồn dữ liệu được lấy từ một CSDL thì datasource_name
bao gồm cả user và password, tên bảng dữ liệu
Ví dụ: Kết nối đến Oracle Spatial : “OCI: user/password@mypass”
- layer_definition: tên, số lượng hoặc các định nghĩa SQL của layer dùng cho
việc đọc nguồn dữ liệu
- Layer Name: tên layer
- Layer Number: số thứ tự layer dùng để chọn một layer
- Omitted: nếu không có khóa DATA, chọn layer 0
- SQL SELECT: câu SQL SELECT được dùng, trong trường hợp dữ liệu được
lưu trữ trong một cơ sở dữ liệu gồm nhiều bảng. Khi đó từ câu SQL này dữ liệu được
chọn ra để phát sinh một layer tạm thời sử dụng.
58
Ví dụ:
MapInfo TAB file
LAYER
NAME "Builtup_Areas_tab"
TYPE POLYGON
CONNECTIONTYPE OGR
CONNECTION "data/tab/092b06_builtup_a.tab"
STATUS ON
CLASS
...
END
...
END
Microstation DGN file using
LAYER
NAME "dgn"
TYPE LINE
CONNECTIONTYPE OGR
CONNECTION "dgn/santabarbara02.dgn"
DATA "0"
STATUS ON
STYLEITEM "AUTO"
CLASS
END
END # Layer
59
TIGER/Line file using
LAYER
NAME "Roads_tig"
TYPE line
CONNECTIONTYPE OGR
CONNECTION "full/path/to/tiger/TGR25001"
DATA "CompleteChain"
STATUS ON
CLASS
...
END
END
Directory of Shapefiles using SQL JOIN
LAYER
NAME "Parks_cov"
TYPE POLYGON
CONNECTIONTYPE OGR
CONNECTION "data/shppoly"
DATA "SELECT eas_id, idlink.Name FROM poly LEFT JOIN idlink ON
poly.eas_id = idlink.eas_id"
STATUS ON
CLASSITEM "idlink.Name"
CLASS
... END END
60
3.6.4. Kết nối dữ liệu dùng WMS
WMS (Web Map Server) cho phép dử dụng dữ liệu từ nhiều server khác nhau, và
tạo một mạng các Map server từ những client có thể tạo tùy chỉnh bản đồ. WMS server
tương tác với client thông qua giao thức HTTP. Trong hầu hết các trường hợp, một
WMS server là một chương trình CGI. Thực hiện kết nối dữ liệu theo chuẩn WMS,
Mapserver lúc này đóng vai trò là client của WMS. Do là client nên Mapserver chỉ cần
khai báo layer lấy dữ liệu từ WMS.
Lưu trữ file tạm
Cần đặt giá trị cho tham số IMAGEPATH trong đó đối tượng WEB của mapfile
chỉ đến một thư mục hợp lệ và có thể ghi được. Mapserver sẽ dùng thư mục này để lưu
trữ các file tạm được download từ server ở xa. Những file tạm này được tự động xóa đi
bởi Mapserver.
Khai báo IMAGEPATH
MAP
...
WEB
IMAGEPATH "/tmp/ms_tmp/"
IMAGEURL ...
END
...
END
Để giữ lại các file tạm cho mục đích debug, khai báo :
LAYER
....
DEBUG ON
...
END
61
Khai báo layer dùng WMS
Layer dùng dữ liệu từ WMS được gọi là WMS layer. WMS layer được truy xuất
qua kết nối kiểu WMS.
LAYER
NAME "prov_bound"
TYPE RASTER
STATUS ON
CONNECTION ""
CONNECTIONTYPE WMS
METADATA
"wms_srs" "EPSG:42304 EPSG:42101 EPSG:4269 EPSG:4326
"wms_onlineresource" ""
EPSG:42304"
"wms_name" "prov_bound"
"wms_server_version" "1.1.0"
"wms_formatlist" "image/gif,image/png,image/jpeg,image/wbmp"
"wms_format" "image/gif"
END
END
Các tham số sau đây là bắt buộc đối với kiểu kết nối WMS
+ CONNECTIONTYPE WMS
+ Tham số CONNECTION : chuỗi URL xác định địa chỉ của Web Map Server.
+ “wms_onlineresource” (meta data): được dùng khi tham số CONNECTION
không có giá trị.
62
+ “wms_srs” (metadata): danh sách các mã phép chiếu EPSP được hỗ trợ bởi
Web Map Server. Thông tin này có được từ câu truy vấn GetCapabilites (xem phần
Các chuẩn WebGIS).
+ “wms_name” (metadata): danh sách các layer được lấy từ WMS server, giá trị
được dùng để đặt LAYERS và tham số QUERY_LAYERS WMS URL
+ “wms_server_version” : phiên bản của giao thức WMS được hỗ trợ bởi WMS
server, và WMS server sẽ dùng cho GetMap.
+ "wms_format" metadata: Định dạng ảnh dùng để thực hiện yêu cầu GetMap
+ "wms_formatlist" : Danh sách các định dạng ảnh sử dụng cho GetMap
3.6.5. Kết nối dữ liệu dùng WFS (Web Feature Server)
Để Mapserver hộ trợ WFS cần biên dịch Mapserver với các thư viện PROJ.4,
GDAL/OGR thư viện hỗ trợ đọc ghi các file vector. LibCURL dùng giúp MapServer
đóng vai tro HTTP client. Cần chỉ ra thư mục trong IMAGEPATH trong mapfile bởi
vì Mapserver sử dụng thư mục này để lưu trữ file tạm download từ WFS server.
MAP
…
WEB
IMAGEPATH “/tmp/ms_tmp”
IMAGEURL …
END
…
END
Khai báo layer dùng WFS
Layer dùng cho WFS được khai báo như với các tham số chỉ rõ kết nối tới WFS
server sử dụng tham số CONNECTION và tham số METADATA. Các tham số bắt
buộc là:
- CONNECTIONTYPE WFS
- CONNECTION: chuỗi URL đến WFS server
63
LAYER phải chứa đối tượng METADATA với các tham số:
- wfs_connectiontimeout: thời gian tối đa đợi để WFS trả lời mặc định là 30s
- wfs_service: là WFS
- wfs_typename: tên layer. Tên layer được xác định khi các client gởi
GetCapabilities request lên WFS server.
- Wfs_version phiên bản của wfs server
- Wfs_request_method: thực hiện Get request cần đặt wfs_request_method là
GET
Ví dụ layer sử dụng WFS
LAYER
NAME "wfs_gmap_roads"
STATUS DEFAULT
TYPE LINE
CONNECTIONTYPE WFS
CONNECTION "
METADATA
"wfs_version" "1.0.0"
"wfs_srs" "EPSG:42304"
"wfs_typename" "road"
"wfs_request_method" "GET"
"wfs_service" "WFS"
END
CLASS
NAME "roads"
STYLE
COLOR 0 0 0
END END END # layer
64
Chương 4: Xây dựng hệ thống quản lý bản đồ số dựa trên công nghệ
MapServer
4.1. Bài toán xây dựng hệ thống quản lý bản đồ số
Hiện nay cùng với sự phát triển của công nghệ thông tin và máy tính, thông
tin mà con người tạo ra là vô cùng lớn và đa dạng về nhiều lĩnh vực. Bản đồ cũng
vậy, bản đồ không chỉ thể hiện các thông tin thông thường như đường đi, sông
ngòi… mà nó còn thể hiện nhiều thông tin khác như du lịch, địa chất khoáng sản,
thời tiết, bản đồ dự báo cảnh báo… Cùng với sự phổ biến của mạng internet mọi
thông tin chúng ta cần có thể tìm trên internet, việc tìm kiếm thông tin trên mạng
internet ngày càng được chú trọng và sử dụng rộng rãi, nhằm nắm bắt được thông
tin một cách nhanh nhất. Với internet người sử dụng có thể dùng những ứng dụng
bản đồ mà không cần phải cài đặt bất cứ phần mềm nào phức tạp và tốn kém.
Trên tư tưởng đó, em muốn tìm hiểu xây dựng demo một website quản lý thông
tin trên bản đồ, hiển thị các thông tin đó lên bản đồ, sử dụng công nghệ WebGIS
mã nguồn mở MapServer. Các thông tin đó có thể là vị trí các điểm du lịch, nhà
hàng, khách sạn…
4.2. Dữ liệu bản đồ
4.2.1. Shapefile
Hiện nay có 2 loại dữ liệu bản đồ phổ biến đó là ESRI shapefile và tab file
MapInfo, Do MapServer sử dụng dữ liệu mặc định là shapefile nên trong đề tài này em
sẽ sử dụng dữ liệu shapefile bản đồ Hà Nội để xây dựng demo một ứng dụng WebGIS
MapSever.Phần mềm mã nguồn mở sử dụng shapefile làm dữ liệu mặc định. Dữ liệu
shapfile là cấu trúc dữ liệu GIS của công ty ESRI, Một shapefile được tổ chức thành
các tập tin riêng rẽ tối thiểu cần có 3 tập tin với phần mở rộng là ".shp", ".shx" và
".dbf".
- ".shp" chứa các thông tin về đặc dạng hình học của đối tượng
- ".shx" chứa thông tin về thứ tự của các đối tượng
- ".dbf" chứa thông tin về bảng dữ liệu thuộc tính của đối tượng
Dữ liệu shape file bản đồ Hà Nội gồm các file:
- Border
65
o Border_region.shp
o Border_region.shx
o Border_region.dbf
- Quận
o Quan_Region_region.shp
o Quan_Region_region.shx
o Quan_Region_region.dbf’
- Giao Thông:
o Duong_Region_polyline.shp
o Duong_Region_polyline.shx
o Duong_Region_polyline.dbf
- Sông hồ
o Song_Region_region.shp
o Song_Region_region.shx
o Song_Region_region.dbf
o Song_Region_polyline.shp
o Song_Region_polyline.shx
o Song_Region_polyline.dbf
4.2.2 Xây dựng cơ sở dữ liệu
Ứng dụng sử dụng cơ sở dữ liệu quan hệ MySql, lưu trữ các thông tin về một đối
tượng trên bản đồ cần quản lý. Trong ứng dụng này, em sẽ xây dựng cơ sở dữ liệu về
các nhà hàng trên bản đồ Hà Nội.
Cơ sở dữ liệu restaurant gồm 3 bảng:
- Bảng store
Field Type Extra Notes
id Tinyint(3) Auto_increment
66
resName Varchar(50) Tên nhà hàng
address Varchar(25) Địa chỉ nhà
hàng
latitude Float Tọa độ theo
vĩ độ
longitude Float Tọa độ theo
kinh độ
phone Varchar(20) Số điện thoại
website Varchar(50) Website
- Bảng product
Field Type Extra Notes
id Tynyint(3) Auto_increment
description Varchar(20) Danh sách
các món ăn
- Bảng menu:
Tạo menu các món ăn cho từng nhà hàng theo id
Field Type Extra Notes
store_id Tinyint(3)
product_id Tinyint(3)
4.3. Xây dựng chương trình
4.3.1. Tạo Mapfile
Tạo Mapfile tích hợp dữ liệu để tạo ra bản đồ được xây dựng theo mẫu qui định của
MapServer, trong mapfiile cần khai báo về các nguồn dữ liệu, các lớp dữ liệu, cách
hiển thị các lớp dữ liệu.
67
Gồm có 5 layer:
- Layer Border_Region: định nghĩa layer vẽ đường viền của bản đồ.
- Layer Quận: Định nghĩa layer vẽ các quận, trong layer này định nghĩa các
class như là class Quận Ba Đình, Quận Cầu Giấy, Quận Thanh Xuân… để
mô tả chi tiết vẽ các quận phân biệt màu sắc, tên quận cho dễ nhận biết.
- Layer Giao Thông: Layer này vẽ các đường giao thông và tên đường phố.
- Layer Song_Region_region : layer vẽ các sông lớn và hồ theo region.
- Layer poi: Định nghĩa các điểm cần th
Các file đính kèm theo tài liệu này:
- LUẬN VĂN-XÂY DỰNG HỆ THỐNG QUẢN LÝ BẢN ĐỒ SỐ DỰA TRÊN CÔNG NGHỆ MAPSERVER.pdf