You are on page 1of 143

MỤC LỤC

LỜI NÓI ĐẦU ............................................................................................................. v


CHƯƠNG 1 TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN ĐỊA LÝ .................... 1
1.1. MỘT SỐ KHÁI NIỆM CƠ BẢN ..................................................................... 1
1.1.1. Thông tin địa lý ........................................................................................ 1
1.1.2. Hệ thống thông tin địa lý .......................................................................... 1
1.1.3. Khoa học thông tin địa lý ......................................................................... 3
1.2. TIẾN TRÌNH PHÁT TRIỂN GIS .................................................................... 4
1.3. CHỨC NĂNG CỦA GIS ................................................................................. 4
1.3.1. Thu thập dữ liệu ....................................................................................... 5
1.3.2. Lưu trữ dữ liệu ......................................................................................... 5
1.3.3. Phân tích dữ liệu....................................................................................... 6
1.3.4. Hiển thị dữ liệu......................................................................................... 7
1.4. CÁC THÀNH PHẦN CỦA HỆ THỐNG THÔNG TIN ĐỊA LÝ..................... 7
1.4.1. Thành phần dữ liệu ................................................................................... 7
1.4.2. Phần cứng................................................................................................. 8
1.4.3. Phần mềm ................................................................................................ 8
1.4.4. Con người ................................................................................................ 9
1.5. CÁC LĨNH VỰC ỨNG DỤNG GIS ................................................................ 9
1.6. KHÁI NIỆM VỀ BẢN ĐỒ ............................................................................ 17
1.7. CÁC ĐẶC TÍNH ĐỊA LÝ CỦA BẢN ĐỒ .................................................... 18
1.7.1. Bản đồ nền - Cơ sở địa lý của Bản đồ địa lý chuyên đề .......................... 18
1.7.2. Ký hiệu bản đồ ....................................................................................... 18
1.7.3. Phương pháp thể hiện nội dung bản đồ ................................................... 19
1.8. PHÉP CHIẾU BẢN ĐỒ ................................................................................ 20
1.8.1. Khái quát phép chiếu bản đồ................................................................... 20
1.8.2. Phân loại lưới chiếu bản đồ .................................................................... 21
1.8.3. Lưới chiếu bản đồ thường dùng .............................................................. 21
1.8.4. Phép chiếu hình trụ ngang đồng góc Gauss –Kruger ............................... 22
1.8.5. Phép chiếu UTM .................................................................................... 24
1.9. CÁC HỆ TỌA ĐỘ QUI CHIẾU ĐƯỢC SỬ DỤNG Ở VIỆT NAM .............. 24
1.9.1. Hệ tọa độ quy chiếu ................................................................................ 24
1.9.2. Hệ độ cao ............................................................................................... 25
CÂU HỎI ÔN TẬP CHƯƠNG 1 ........................................................................... 26
CHƯƠNG 2 MÔ HÌNH DỮ LIỆU CỦA HỆ THỐNG THÔNG TIN ĐỊA LÝ .... 27
2.1. CẤU TRÚC DỮ LIỆU RASTER .................................................................. 27
2.1.1. Dạng hình học và Topology của dữ liệu Raster....................................... 28
2.1.1.1. Đối tượng điểm (Point objects) ............................................................... 28
2.1.1.2. Đối tượng đường (Line objects).............................................................. 28
2.1.1.3. Đối tượng vùng (Polygon objects) .......................................................... 29
2.1.2. Các thuật toán nén dữ liệu cấu trúc Raster .............................................. 29
2.1.2.1. Mã Run –length ...................................................................................... 29
2.1.2.2. Mã cây tứ phân ....................................................................................... 30
2.2. CẤU TRÚC DỮ LIỆU VECTOR .................................................................. 30
2.2.1. Tính hình học của cấu trúc Vector .......................................................... 31
-i-
2.2.2. Cấu trúc Spaghetti.................................................................................. 31
2.2.3. Cấu trúc Topology ................................................................................. 32
2.2.4. Những đặc điểm Topology của cấu trúc Vector ..................................... 33
2.3. ƯU NHƯỢC ĐIỂM CỦA CẤU TRÚC RASTER VÀ VECTOR ...................35
2.4. MÔ HÌNH DỮ LIỆU MẠNG ........................................................................36
2.5. MÔ HÌNH DỮ LIỆU MẠNG TAM GIÁC KHÔNG ĐỀU- TIN ....................37
2.6. DỮ LIỆU THÔNG TIN QUẢN LÝ DỮ LIỆU (METADATA) .....................38
CÂU HỎI ÔN TẬP CHƯƠNG 2 ...........................................................................38
CHƯƠNG 3 THU THẬP, TỔ CHỨC VÀ XÂY DỰNG DỮ LIỆU GIS..............39
3.1. THU THẬP DỮ LIỆU KHÔNG GIAN .........................................................39
3.1.1. Thu thập dữ liệu ..................................................................................... 39
3.1.2. Các nguồn thu thập dữ liệu .................................................................... 39
3.2. TỔ CHỨC DỮ LIỆU .....................................................................................40
3.2.1. Tổ chức dữ liệu không gian.....................................................................40
3.2.2. Tổ chức dữ liệu thuộc tính ......................................................................41
3.3. SỐ HÓA BẢN ĐỒ .........................................................................................41
3.3.1. Tỉ lệ bản đồ ............................................................................................ 42
3.3.2. Chọn lưới chiếu bản đồ .......................................................................... 42
3.4. GIỚI THIỆU PHẦN MỀM ARCVIEW .........................................................43
3.4.1. Các khái niệm cơ bản trong Arcview ..................................................... 44
3.4.2. Giao diện và các công cụ sử dụng chính trong phần mềm Arcview ........ 45
3.5. TẠO VÀ HIỆU CHỈNH DỮ LIỆU KHÔNG GIAN .......................................46
3.5.1. Đăng ký tọa độ bản đồ ........................................................................... 46
3.5.2. Đặt thông số cho View ........................................................................... 47
3.5.3. Tạo dữ liệu không gian .......................................................................... 47
3.5.4. Hiệu chỉnh dữ liệu không gian ............................................................... 50
3.5.5. Thêm những điểm được tạo bởi những tọa độ (x,y) vào bản đồ .............. 51
3.6. TẠO VÀ HIỆU CHỈNH DỮ LIỆU THUỘC TÍNH ........................................52
3.6.1. Tạo dữ liệu thuộc tính ............................................................................ 52
3.7. LIÊN KẾT DỮ LIỆU .....................................................................................54
3.7.1. Liên kết bảng dữ liệu với công cụ Link .................................................. 54
3.7.2. Liên kết bảng dữ liệu dùng công cụ Join ................................................ 55
3.7.3. Liên kết đối tượng không gian với các tập tin ngoài với công cụ Hotlink 55
CÂU HỎI ÔN TẬP CHƯƠNG 3 ...........................................................................56
CHƯƠNG 4 TRUY VẤN, PHÂN TÍCH VÀ HIỂN THỊ DỮ LIỆU.....................57
4.1. TRUY VẤN TỪ DỮ LIỆU THUỘC TÍNH ...................................................57
4.1.1. Truy vấn dữ liệu thuộc tính .....................................................................57
4.1.2. Truy vấn dữ liệu thuộc tính với Arcview .................................................59
4.2. TRUY VẤN TỪ DỮ LIỆU KHÔNG GIAN ..................................................60
4.2.1. Truy vấn dữ liệu không gian ...................................................................60
4.2.2. Truy vấn dữ liệu không gian với Arcview ...............................................61
4.2.2.1. Tìm những đối tượng gần các đối tượng khác ........................................ 61
4.2.2.2. Tìm những đối tượng bên trong vùng ..................................................... 62
4.2.2.3. Tìm những đối tượng bị phân cắt bởi các đối tượng khác ....................... 63
4.3. PHÂN TÍCH DỮ LIỆU..................................................................................63
4.3.1. Thống kê dữ liệu .................................................................................... 63

-ii-
4.3.2. Tổng kết dữ liệu ..................................................................................... 64
4.3.3. Lưu các đối tượng được chọn vào một Theme mới ................................. 64
4.3.4. Tổng hợp các đối tượng bằng cách hợp chúng lại với nhau:.................... 64
4.4. PHÂN TÍCH KHÔNG GIAN ........................................................................ 64
4.4.1. Làm quen với dữ liệu dạng Grid ............................................................. 66
4.4.1.1. Chuyển shape file sang dạng Grid .......................................................... 66
4.4.1.2. Thao tác và hiển thị dữ liệu dạng Grid .................................................... 67
4.4.2. Một số hàm phân tích không gian ........................................................... 68
4.4.2.1. Hàm mật độ ............................................................................................ 68
4.4.2.2. Hàm tạo vùng đệm ................................................................................. 69
4.4.2.3. Bài toán tìm vị trí thích hợp để xây dựng trường học mới ....................... 71
4.4.3. Phân tích chồng lớp ................................................................................ 76
4.5. KÝ HIỆU HÓA VÀ TẠO TRANG IN BẢN ĐỒ........................................... 78
4.5.1. Ký hiệu hóa ............................................................................................ 78
4.5.2. Tạo trang in bản đồ................................................................................. 80
CÂU HỎI ÔN TẬP CHƯƠNG 4 ........................................................................... 84
CHƯƠNG 5 LẬP TRÌNH GIS CƠ BẢN VỚI NGÔN NGỮ AVENUE .............. 85
5.1. CƠ BẢN VỀ NGÔN NGỮ LẬP TRÌNH AVENUE ...................................... 85
5.1.1. Giới thiệu ngôn ngữ Avenue................................................................... 85
5.1.2. Các đặc điểm của ngôn ngữ Avenue ....................................................... 85
5.1.3. Giao diện lập trình Avenue ..................................................................... 85
5.1.4. Lớp và đối tượng .................................................................................... 86
5.1.5. Yêu cầu và cách gọi yêu cầu trong Avenue............................................. 86
5.1.6. Các kiểu dữ liệu trong Avenue ............................................................... 88
5.1.6.1. Kiểu danh sách ....................................................................................... 88
5.1.6.2. Kiểu Stack .............................................................................................. 89
5.1.6.3. Kiểu Dictionary ...................................................................................... 89
5.1.6.4. Kiểu Bitmap ........................................................................................... 90
5.1.7. Các câu lệnh ........................................................................................... 90
5.1.8. Điều khiển giữa các script ...................................................................... 91
5.1.9. Đối tượng av và từ khoá self ................................................................... 92
5.2. KHUNG NHÌN (VIEW) VÀ LỚP CHỦ ĐỀ (THEME) ................................. 94
5.2.1. Lược đồ mô hình đối tượng của khung nhìn và lớp chủ đề ..................... 94
5.2.2. Tạo mới một khung nhìn ........................................................................ 95
5.2.3. Tìm kiếm một khung nhìn ...................................................................... 95
5.2.4. Gán đơn vị bản đồ và đơn vị thước đo cho khung nhìn ........................... 95
5.2.5. Thêm lớp chủ đề (theme) vào khung nhìn ............................................... 95
5.2.6. Tìm một lớp chủ đề trong khung nhìn ..................................................... 97
5.2.7. Thay đổi thứ tự của lớp chủ đề trong bảng nội dung (TOC) .................... 97
5.2.8. Thay đổi biểu tượng của lớp chủ đề ........................................................ 98
5.2.9. Xoá các lớp chủ đề khỏi khung nhìn ....................................................... 98
5.2.10. Chọn đối tượng không gian của lớp chủ đề bằng con trỏ chuột ............... 99
5.2.11. Chọn đối tượng không gian của lớp chủ đề bằng các hình đồ họa ......... 100
5.2.12. Chọn đối tượng không gian lớp chủ đề bằng một lớp chủ đề khác ........ 100
5.3. XÂY DỰNG GIAO DIỆN ................................................................... 103
5.3.1. Xây dựng giao diện Arcview với ngôn ngữ lập trình ............................ 104

-iii-
5.3.1.1. Tạo Menu ............................................................................................ 104
5.3.1.2. Tạo Button ........................................................................................... 106
5.3.1.3. Tạo ToolMenu ..................................................................................... 107
5.3.1.4. Tạo Popup Menu ................................................................................. 109
5.3.2. Lập trình giao diện ................................................................................110
5.4. THỰC HIỆN DỰ ÁN CÔNG NGHỆ GIS....................................................115
CÂU HỎI ÔN TẬP CHƯƠNG 5 .........................................................................118
PHỤ LỤC 1 CHUYỂN ĐỔI DỮ LIỆU TỪ CÁC PHẦN MỀM KHÁC SANG
ARCVIEW ...............................................................................................................120
PHỤ LỤC 2 .............................................................................................................122
GIỚI THIỆU CÁC PHẦN MỀM GIS TRÊN THỊ TRƯỜNG ..................................122
PHỤ LỤC 3 KẾT NỐI DỮ LIỆU VỚI AVENUE ....................................................125
PHỤ LỤC 4 ARCGIS ONLINE ...............................................................................134
TÀI LIỆU THAM KHẢO ........................................................................................136

-iv-
LỜI NÓI ĐẦU

Hệ thống thông tin địa lý (Geographical Information System gọi tắt là GIS), đã trở
thành một ngành khoa học được quan tâm trong nhiều lĩnh vực nghiên cứu và ứng dụng
khoa học kỹ thuật. GIS ngày nay là công cụ trợ giúp quyết định trong nhiều hoạt động
kinh tế - xã hội, quốc phòng của nhiều quốc gia trên toàn cầu.
GIS bắt đầu thâm nhập vào Việt Nam qua các dự án hợp tác quốc tế từ những năm
cuối thập niên 80 của thế kỷ XX. Tuy nhiên, cho đến giữa thập niên 90, GIS mới có cơ
hội phát triển tại Việt Nam. Hiện nay nhiều cơ quan nhà nước và doanh nghiệp đã đóng
góp và đang tiếp cận công nghệ thông tin địa lý (công nghệ GIS) để giải quyết những
bài toán như quản lý môi trường, tài nguyên, quản lý đô thị và khu dân cư hoặc thực
hiện các bài toán thiết kế quy hoạch sử dụng đất đai, quản lý và thiết kế công trình cơ
sở hạ tầng kỹ thuật, xây dựng chiến lược về thị trường,v.v… Sự phát triển của công nghệ
thông tin địa lý với nhiều hữu hiệu đã thu hút sự quan tâm của nhiều người và những áp
dụng ngày càng phong phú đa dạng đã tạo điều kiện thuận lợi cho sự phát triển của khoa
học thông tin địa lý (GIScience).
GIS đã thực sự trở thành một yếu tố quan trọng trong hệ thống thông tin. Nhiều
ngành học của Trường đại học Nha Trang đã đưa học phần Hệ thống thông tin địa lý
vào giảng dạy cho sinh viên trong nhiều năm qua. Vì vậy, một tài liệu tham khảo cho
học phần này là cần thiết. Nội dung của tài liệu được trình bày trong 5 chương như sau:
Chương 1: Tổng quan về Hệ thống thông tin địa lý
Chương 2: Mô hình dữ liệu của Hệ thống thông tin địa lý
Chương 3: Thu thập, thiết kế và xây dựng dữ liệu GIS
Chương 4: Truy vấn, phân tích và hiển thị dữ liệu
Chương 5: Lập trình GIS cơ bản với ngôn ngữ Avenue
Câu hỏi ôn tập, bài tập thực hành và Phụ lục.
Chúng tôi xin những góp ý quý báu của Quý các thầy cô trong Hội đồng thẩm định
để tài liệu được hoàn thành, đặc biệt, cám ơn tất cả các tác giả tài liệu tham khảo.
Mặc dù đã cố gắng rất nhiều nhưng chắc chắn tài liệu này không thể tránh được
thiếu sót. Rất mong nhận được mọi ý kiến đóng góp để tài liệu được hoàn thiện hơn,
phục vụ tốt hơn cho hoạt động dạy và học. Mọi ý kiến góp ý xin gửi về địa chỉ:
nguyenthuydoantrang@ntu.edu.vn.
Nha Trang, tháng 2 năm 2019

-v-
CHƯƠNG 1
TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN ĐỊA LÝ
1.1. MỘT SỐ KHÁI NIỆM CƠ BẢN
1.1.1. Thông tin địa lý
Thông tin địa lý là những thông tin về các thực thể tồn tại tại một vị trí xác
định trên bề mặt Trái Đất ở một thời điểm nào đó. Thông tin địa lý giúp chúng ta
nhận biết thuộc tính của một thực thể tồn tại ở đâu và lúc nào. Thí dụ, thông tin về
siêu thị, bệnh viện, trường học; thông tin về mạng đường xe buýt; thông tin về một
vụ tai nạn giao thông; thông tin về một đám cháy; thông tin về thời tiết; thông tin về
những vùng nông nghiệp; v.v.
Dữ liệu trong các hệ thống thông tin địa lý gồm dữ liệu thuộc tính, dữ liệu không
gian và dữ liệu thời gian. Thông tin địa lý rất phong phú, đa dạng và luôn biến động theo
thời gian. Tuỳ theo đặc tính của mỗi loại mà tốc độ biến động cũng rất khác nhau. Thông
tin địa lý về tự nhiên thường biến đổi chậm hơn thông tin địa lý về kinh tế, xã hội.
1.1.2. Hệ thống thông tin địa lý
Hệ thống thông tin địa lý (Geographic Information System - GIS) là một hệ
thống tự động thu thập, lưu trữ, truy vấn, phân tích và hiển thị dữ liệu không gian
(Clarke, 1995).
Trong đó, phân tích không gian là khả năng phân biệt GIS với các hệ thống thông
tin khác và làm cho GIS có phạm vi ứng dụng trong nhiều lĩnh vực khác nhau.
Hiện nay có rất nhiều định nghĩa về GIS, xuất phát từ các tiếp cận khác nhau, các nhà
khoa học đã có những định nghĩa khác nhau về GIS.
- Xuất phát từ những lĩnh vực khác GIS, nhứng nhà khoa học trong các lĩnh địa
chất, môi trường, tài nguyên, v.v…sử dụng GIS như là công cụ phục vụ cho
nghiên cứu của mình đã định nghĩa GIS:
 GIS là một hộp công cụ mạnh được dùng để lưu trữ và truy vấn tùy ý, biến
đổi và hiển thị dữ liệu không gian từ thế giới thực cho những mục tiêu đặc
biệt (Burough, 1986).
 Hệ thống thông tin địa lý là một hệ thống có chức năng xử lý các thông tin
địa lý nhằm phục vụ cho việc quy hoạch, trợ giúp quyết định trong một lĩnh
vực chuyên môn nhất định (Pavlidis, 1982).
 Hệ thống thông tin địa lý là một hệ thống sử dụng cơ sở dữ liệu để trả lời các
câu hỏi về bản chất địa lý của các thực thể địa lý (Goodchild, 1985).
- Từ những chức năng cần có của một hệ thống thông tin địa lý, một số nhà khoa
học đã định nghĩa:
 Hệ thống thông tin địa lý là một hệ thống chứa hàng loạt chức năng phức tạp
dựa vào khả năng của máy tính và các toán tử xử lý thông tin không gian
(Tomlinson and Boy, 1981; Dangemond, 1983).
 Hệ thống thông tin địa lý là một hệ thống tự động thu thập và lưu trữ, truy
vấn, phân tích dữ liệu không gian (Clarke, 1995).

-1-
 Hệ thống thông tin địa lý là một hệ thống quản trị cơ sở dữ liệu bằng máy
tính để thu thập, luu trữ, phân tích, và hiển thị dữ liệu không gian (NCGIA =
National Center for Geographic Information and Analysis, 1988).
 Hệ thống thông tin địa lý là một hệ thống bao gồm bốn khả năng xử lý dữ
liệu địa lý sau: (1) nhập dữ liệu, (2) quản lý dữ liệu (bao gồm lưu trữ và truy
xuất), (3) gia công và phân tích dữ liệu, (4) xuất dữ liệu (Stan Aronoff, 1993).
- Theo quan điểm hệ thống thông tin, một số nhà khoa học đã định nghĩa:
 GIS là một hệ thống thông tin được thiết kế để làm việc với dữ liệu có tham
chiếu tọa độ địa lý. Nói cách khác, GIS là hệ thống gồm hệ cơ sở dữ liệu với
những dữ liệu có không gian và một tập những thuật toán để làm việc trên dữ
liệu đó. (Star and Estes, 1990)
 Hệ thống thông tin địa lý là một hệ thống thông tin bao gồm một số phụ hệ
(subsystems) có khả năng biến đổi các dữ liệu địa lý thành những thông tin
có ích (Calkín và Tomlinson, 1977).
Trong tiến trình phát triển kinh tế xã hội, để đạt được một mục đích nào đó, con
người cần phải có những quyết định hợp lý và kịp thời. Những quyết định đó thường
được thực hiện sau khi thu thập thông tin từ thế giới thực và phân tích xử lý nó theo một
quan điểm nào đó. Những quyết định này tác động trực tiếp hoặc gián tiếp trở lại thế
giới thực theo khuynh hướng của người quyết định. Nếu quyết định ấy tạo ra nhiều kết
quả có lợi hơn cho con người sẽ được đánh giá tốt. Ngược lại, nếu quyết định tác động
lên thế giới thực sinh ra nhiều hậu quả có hại hơn cho con người thì quyết định ấy bị
đánh giá là xấu. Theo quan điểm thông tin, tiến trình này thể hiện một sự tuần hoàn của
dữ liệu: Dữ liệu từ thế giới thực được thu thập, lưu trữ, phân tích và ra quyết định. Quyết
định tác động trở lại thế giới thực làm thay đổi dữ liệu của thế giới thực. Rồi dữ liệu của
thế giới thực lại được thu thập, lưu trữ, phân tích và ra quyết định, vòng tuần hoàn lại
tiếp tục. Có như thế, quyết định mới mang lại hiệu quả tốt hơn và hệ thống như vậy mới
có ý nghĩa.

Thu thập dữ liệu


Thế giới thực

Lưu trữ dữ liệu

Ra quyết định
Phân tích và hiển thị dữ liệu
Hình 1.1. Vòng tuần hoàn của dữ liệu địa lý

-2-
Trong một xã hội phát triển, thông tin đặc biệt là thông tin địa lý là một nhu cầu
thiết yếu trong mọi lĩnh vực, mọi hoạt động. Ngày nay, GIS đã và đang là công cụ hỗ
trợ quyết định hữu hiệu cho mọi hoạt động.
1.1.3. Khoa học thông tin địa lý
Trong tiến trình phát triển, GIS đã được nhiều nhà khoa học sử dụng như công
cụ và dành rất nhiều thời gian nghiên cứu, phát triển những công cụ GIS. Thực tế đã
hình thành nhóm những nhà khoa học nghiên cứu với GIS và nhóm những nhà khoa học
nghiên cứu về GIS. Khoa học thông tin địa lý (Geographic Information Science) ra đời
từ những khái niệm do Goodchild (24/02/1944) đưa ra từ 1992 nhằm thúc đẩy và định
hướng các hoạt động nghiên cứu về GIS với các định nghĩa sau:
- Khoa học thông tin địa lý là một khoa học sử dụng các hệ thống thông tin địa lý
như những công cụ để hiểu biết về thế giới thực bằng cách mô tả và giải thích
mối quan hệ của con người với thế giới thực.
- Khoa học thông tin địa lý là một khoa học sử dụng và nghiên cứu các phương
pháp, các công cụ để thu thập, lưu trữ, phân phối, phân tích, hiển thị và khám phá
thông tin không gian.
Khoa học thông tin địa lý hướng tới những bài toán phân tích, mô hình hóa và dự
báo không gian được phát triển trên cơ sở sự phát triển của khoa học máy tính. Khoa
học thông tin địa lý sử dụng và phát triển các mô hình toán để biểu diễn, lưu trữ, phân
tích, hiển thị dữ liệu về các đối tượng, các sự kiện, các hiện tượng trong thế giới thực.
Để phân tích về mối quan hệ giữa con người với thế giới thực, khoa học thông tin địa lý
cũng sử dụng và phát triển các mô hình toán máy tính để xử lý dữ liệu không gian, phân
tích ý nghĩa và quan hệ của các thực thể không gian theo các lý luận của khoa học địa
lý. Khoa học thông tin địa lý là một khoa học liên ngành của khoa học máy tính, khoa
học toán và khoa học địa lý.

Khoa học máy tính

GIScience
Khoa học toán Khoa học địa lý

Hình 1.2. GIS là một khoa học liên ngành

Từ khi ra đời, khoa học thông tin địa lý phát triển không ngừng cùng với sự phát
triển của khoa học máy tính và công nghệ thông tin. Với sự phát triển đó, công nghệ
thông tin địa lý ngày càng được nhiều ngành nghề, nhiều lĩnh vực sử dụng như một công
cụ để giải quyết những bài toán đặc thù cho từng chuyên ngành. Sự ứng dụng rộng rãi
đó đã làm tăng thêm sức sống cho khoa học thông tin địa lý, vì khi sử dụng công nghệ
GIS vào các chuyên ngành khác nhau đó, khoa học GIS nhận thêm được nhiều bài toán
cần phải nghiên cứu.

-3-
1.2. TIẾN TRÌNH PHÁT TRIỂN GIS
Hệ thống thông tin địa lý ra đời từ đầu thập niên 60 trong các cơ quan địa chính ở
Canada. Trong suốt thời gian hai thập niên 60, 70, GIS chỉ được một vài cơ quan chính
quyền khu vực Bắc Mỹ quan tâm nghiên cứu. Mãi đến đầu thập niên 80, khi phần cứng
máy tính phát triển mạnh với hiệu năng cao, giá thành rẻ; đồng thời sự phát triển nhanh
về lý thuyết và ứng dụng cơ sở dữ liệu, thuật toán nhận dạng, xử lý ảnh cùng với nhu
cầu cần thiết về thông tin đã làm cho công nghệ GIS càng được quan tâm. Cuối thế kỷ
20, trên thế giới đã hình thành nhiều cơ quan nghiên cứu GIS với quy mô lớn, nhiều
hướng tiếp cận và mục tiêu khác nhau:
- RRL (Regional Research Laboratory) được thành lập vào tháng 2/1980 ở
Anh, là trung tâm nghiên cứu về quản lý cơ sở dữ liệu, phát triển phần mềm
và phân tích không gian.
- NCGIA (National Central for Geographic Information and Analysis) thành
lập từ năm 1988 tại Hoa Kỳ, tập trung vào 5 hướng nghiên cứu: Phân tích và
thống kê không gian; quan hệ giữa không gian và cấu trúc dữ liệu; trí tuệ nhân
tạo và các hệ chuyên gia; trình bày hình ảnh; những đề tài kinh tế, xã hội, văn
hoá. Những đề tài của NCGIA mang nặng tính hàn lâm, đi sâu vào bản chất
kỹ thuật và phương pháp luận.
- NEXPRI (Dutch Expertise Central for Spatial Data Analysis) thành lập vào
tháng 1/1989 ở Hà Lan, nhắm vào 4 hướng nghiên cứu chính là: lý thuyết về
phân tích không gian; đánh giá định lượng về đất; sự di chuyển của vật chất
và ô nhiễm; phát triển những phương pháp và kỹ thuật GIS.
- GISDevelopment là một tổ chức phi chính phủ của những chuyên gia GIS
châu Á, hoạt động như một mạng lưới thông tin về sự phát triển khoa học,
công nghệ và ứng dụng công nghệ thông tin địa lý tại các nước châu Á.
GISDevelopment có tạp chí GISDevelopment xuất bản hàng tháng, website
www.GISDevelopment.net và tổ chức hội nghị MapAsia mỗi năm một lần
với sự tham gia của nhiều nhà khoa học GIS đến từ các nước châu Á.
- Ở Việt Nam, trung tâm Công nghệ Thông tin Địa lý- DITAGIS - được thành
lập từ tháng 10/1994, là trung tâm chuyên nghiên cứu và phát triển ứng dụng
khoa học và công nghệ thông tin địa lý. Năm 1995, Bộ Khoa học và Công
nghệ đã liên tục đầu tư nhiều dự án và đề tài nghiên cứu GIS, từ những đề tài
nghiên cứu phương pháp luận đến những đề tài nghiên cứu ứng dụng.
1.3. CHỨC NĂNG CỦA GIS
Hệ thống thông tin địa lý có bốn chức năng cơ bản là thu thập, lưu trữ, phân tích
và hiển thị dữ liệu.

Nhập Phân tích

Lưu trữ Hiển thị

Hình 1.3. Các chức năng của hệ thống thông tin địa lý
-4-
1.3.1. Thu thập dữ liệu
Dữ liệu địa lý là thành phần quan trọng và tồn tại lâu bền trong trong hệ thống
thông tin địa lý. Hầu hết các phần mềm GIS đều cung cấp chức năng để nhập dữ liệu
vào hệ thống.
Dữ liệu của một hệ thống thông tin địa lý có thể được cung cấp từ bản đồ giấy,
số liệu ghi nhận trên giấy, ảnh vệ tinh hoặc ảnh được chụp từ máy bay, các thiết bị đo
đạc kỹ thuật số, các thiết bị định vị mặt đất, các thiết bị định vị vệ tinh (GPS: Global
Position System), hệ thống thu thập dữ liệu tự động (SCADA: Supervisory Control And
Data Acquisition),…
1.3.2. Lưu trữ dữ liệu
Các đối tượng không gian địa lý có thể được biểu diễn theo mô hình Vector
hoặc Raster.

 Cấu trúc Vector x,y

x,y
x,y
x,y

 Cấu trúc Raster

Dòng

Pixel
x,y Cột

Hình 1.4. Biểu diễn dữ liệu trong cấu trúc Vector và Raster

- Mô hình Vector: Mô hình dữ liệu Vector biểu diễn các đối tượng địa lý trên mặt
đất bằng những điểm, đường, vùng trong mặt phẳng tọa độ Descartes. Mỗi điểm
được xác định bởi cặp toạ độ (x, y), mỗi đường được tuyến tính hóa từng đoạn,
biểu diễn bằng một chuỗi những cặp toạ độ (xi, yi), một vùng được xác định bởi
một đường khép kín và được biểu diễn bằng một chuỗi cặp toại độ (xi, yi) có toạ
độ điểm đầu và toạ độ điểm cuối trùng nhau.
- Mô hình Raster: Mô hình dữ liệu ấn định vị trí của các đối tượng không gian
vào các ô lưới hình ô vuông (hoặc chữ nhật hay tam giác nhưng rất ít được sử
dụng) có kích thước bằng nhau gọi là pixel, được xác định bằng toạ độ (x, y) là
số thứ tự của hàng, cột của pixel. Trong cấu trúc Raster, đường được biểu diễn
bằng những pixel có cùng giá trị thuộc tính f(x,y) kề nhau, trải rộng ra theo một
phương nào đó. Vì trong cấu trúc Raster, các pixel được xếp theo hàng, cột như
một ma trận điểm nên đường ở đây không trơn, có dạng zic-zac. Vùng được xác
định bằng một mảng gồm nhiều pixel có cùng giá trị thuộc tính f(x,y) kề nhau,
trải rộng ra theo nhiều phương.

-5-
Dữ liệu thuộc tính có thể được lưu trữ gắn kết trong mỗi bảng thuộc tính của đối tượng
không gian hoặc các bảng dữ liệu hoàn toàn độc lập, khi cần thiết thì bảng dữ liệu này được
kết nối vào bảng thuộc tính của đối tượng không gian tạo thành dữ liệu địa lý.
Dữ liệu của một hệ thống thông tin địa lý được tổ chức lưu trữ như những tệp dữ
liệu (data file) cho một người dùng hoặc cơ sở dữ liệu (personal databases), cơ sở dữ
liệu địa lý (geodatabase) cho nhiều người dùng (multi users).
Dữ liệu lưu trữ trong một hệ thống thông tin địa lý được truy vấn theo hai phương thức:
- Truy vấn từ đối tượng không gian để tìm thuộc tính. Trong cách truy vấn này,
người sử dụng phải xác định được vị trí của đối tượng cần quan tâm, sau đó xem
xét thuộc tính của chúng.
- Truy vấn từ dữ liệu thuộc tính để tìm vị trí của đối tượng trong không gian bằng
cách xây dựng các biểu thức dựa vào các điều kiện ràng buộc. Trong trường hợp
này, người sử dụng đã biết các đặc điểm của đối tượng và muốn tìm ra vị trí của
các đối tượng đó.
1.3.3. Phân tích dữ liệu
Cùng với khả năng của máy tính và toán học, hệ thống thông tin địa lý cung cấp
nhiều phương tiện để thực hiện những bài toán phân tích không gian. Những thuật toán
phân tích trên một lớp dữ liệu, chồng xếp nhiều lớp dữ liệu, phân tích mạng,… là những
thuật toán hỗ trợ tích cực trong các bài toán quản lý, quy hoạch, kế hoạch của nhiều lĩnh
vực tài nguyên, môi trường, đất đai, cơ sở hạ tầng, kinh tế, y tế, giáo dục, thương mại,
dịch vụ…
Phân tích dữ liệu là khả năng trả lời những câu hỏi về sự tác động lẫn nhau của
những mối quan hệ không gian và thuộc tính giữa nhiều tập dữ liệu. Có nhiều phương
pháp phân tích dữ liệu trong GIS, tuỳ vào từng mục tiêu và nguồn dữ liệu cụ thể mà ta
có thể chọn các phương pháp phân tích khác nhau:
- Thao tác phân tích trên một lớp dữ liệu (Single Layer Operations) là những
thuật toán xử lý dữ liệu trên một lớp như thuật toán buffer, truy vấn thuộc tính
từ thuộc tính, truy vấn thuộc tính từ không gian, truy vấn không gian từ thuộc
tính hoặc tạo những tập dữ liệu mới được thực hiện trên một lớp dữ liệu.
- Thao tác phân tích trên nhiều lớp dữ liệu (Multiple Layer Operations) là
những thao tác trên nhiều lớp dữ liệu không gian để thực hiện các thuật toán
phân tích: chồng lớp (union, intersect, identify), phân tích gần kề, phân tích
tương quan không gian…
- Mô hình hoá không gian (Spatial Modeling) xây dựng những mô hình để giải
thích và dự báo theo không gian, mô phỏng không gian, thuật toán nội suy
không gian.
- Phân tích mẫu điểm (Point Pattern Analysis) thực hiện các thuật toán phân
tích số đông trên những lớp dữ liệu không gian điểm.
- Phân tích mạng (Network Analysis) ứng dụng vào những đối tượng dạng
đường, những đối tượng này được tổ chức trong mạng lưới liên kết.
- Phân tích bề mặt (Surface Analysis) bao gồm những thuật toán phân tích, cần
đến thứ nguyên thứ ba của những biến phân bố trong không gian.

-6-
1.3.4. Hiển thị dữ liệu
Chức năng hiển thị trong hệ thống thông tin địa lý là biến ngôn ngữ của máy tính
thành ngôn ngữ thân thiện với người dùng, hiển thị những kết quả truy vấn hoặc phân
tích không gian. Dữ liệu GIS được hiển thị lên màn hình máy tính hoặc bằng văn bản
để cung cấp thông tin cho người dùng. Trong GIS người ta dùng hình ảnh, hình vẽ, mô
hình trực quan, chữ viết, biểu đồ, bản đồ, bảng thống kê, ký hiệu, màu sắc và cả âm
thanh để trình bày vị trí và thuộc tính của các đối tượng và các kết quả phân tích.
Ngôn ngữ và biểu tượng sử dụng trong bản đồ đã được xây dựng, phát triển và
sử dụng từ nhiều năm nay. Do đó, khi hiển thị cho người dùng ngoài hệ thống, những
người dùng trong hệ thống cần phải biên tập sao cho ngôn ngữ trên bản đồ phải gần
gũi với ngôn ngữ tự nhiên, biểu tượng quen thuộc và dễ hiểu đối với mọi người.
1.4. CÁC THÀNH PHẦN CỦA HỆ THỐNG THÔNG TIN ĐỊA LÝ
GIS có bốn thành phần cơ bản: dữ liệu, phần cứng, phần mềm, con người.
1.4.1. Thành phần dữ liệu
Dữ liệu GIS bao gồm dữ liệu không gian và dữ liệu phi không gian còn gọi là dữ
liệu thuộc tính hay dữ liệu hình học, được thu thập, lưu trữ theo một cấu trúc chuẩn, có
thể liên thông trên mạng và được bảo quản theo một chế độ nhất định. Tại đây, có những
bài toán đặt ra như mô hình cơ sở dữ liệu phục vụ các yêu cầu lưu trữ, truy xuất, hiển
thị, công nghệ nhập dữ liệu, phân quyền sử dụng dữ liệu, an ninh dữ liệu trên mạng, tổ
chức cơ sở dữ liệu phân tán hay tập trung, v.v... Cơ sở dữ liệu là một thành phần quan
trọng trong các hệ thống thông tin địa lý phục vụ quản lý hành chính nhà nước. Dữ liệu
không gian là biểu diễn hình học của các đối tượng địa lý liên kết với vị trí trên thế giới
thực. Những đối tượng địa lý được biểu diễn bởi điểm, đường và vùng. Dữ liệu thuộc
tính là những thuộc tính mô tả đặc điểm của các đối tượng địa lý. Trong hệ thống thông
tin địa lý, dung lượng dữ liệu thường rất lớn, cần được cập nhật thường xuyên và phải
được tổ chức lưu trữ theo một mô hình cơ sở dữ liệu được thiết kế để phục vụ cho công
tác lưu trữ, quản lý, truy vấn và hiển thị dữ liệu. Ở đây, giá trị của dữ liệu cũng cần được
xác lập. Cụ thể, dữ liệu trong hệ thống thông tin địa lý phục vụ quản lý hành chính nhà
nước là một loại tài nguyên quốc gia, trong đó có những loại dữ liệu phổ biến, những
loại dữ liệu chia sẻ có điều kiện và những loại dữ liệu không thể chia sẻ theo qui định
bảo mật của nhà nước.
Cơ sở dữ liệu của hệ thống thông tin địa lý bao gồm hai phần chính là cơ sở dữ
liệu nền và cơ sở dữ liệu chuyên ngành.
- Cơ sở dữ liệu nền bao gồm những lớp dữ liệu mà hệ thống thông tin địa lý chuyên
ngành nào cũng sử dụng như dữ liệu về lưới tọa độ (tọa độ địa lý, tọa độ quốc
gia), dữ liệu về giao thông, dữ liệu về thủy văn, dữ liệu về độ cao, dữ liệu về hành
chính, dữ liệu về giải thửa, v.v...
- Cơ sở dữ liệu chuyên ngành bao gồm dữ liệu của các thực thể chuyên ngành được
biểu diễn theo mô hình dữ liệu không gian và phi không gian liên kết với nhau.
Có thể có cơ sở dữ liệu của các chuyên ngành như tài nguyên thiên nhiên, môi
trường, sử dụng đất, cơ sở hạ tầng kỹ thuật, các chuyên ngành kinh tế xã hội. Khi
thiết kế cơ sở dữ liệu chuyên ngành cần chú ý đến những quan hệ giữa các thực
thể trong một chuyên ngành đồng thời những quan hệ của các thực thể giữa các
ngành với nhau. Đối với mỗi chuyên ngành, tùy theo mục tiêu của hệ thống thông
tin địa lý, những qui trình xây dựng cơ sở dữ liệu được thiết kế khác nhau.
-7-
1.4.2. Phần cứng
Phần cứng bao gồm hệ thống máy tính và các thiết bị thu thập, nhập, xuất, lưu
trữ dữ liệu. Trong đó, hệ thống máy tính gồm chỉ có một máy hoặc nhiều máy tính được
kết nối thành một hệ thống mạng; các thiết bị ngoại vi để thu thập, nhập, xuất dữ liệu
như máy digitizer, scanner, máy in, plotter, máy ghi đĩa quang hoặc CD, băng từ, và các
thiết bị định vị khác, v.v...
Tùy theo mục tiêu và qui mô tổ chức hệ thống thông tin địa lý, nhà thiết kế sẽ
xác định qui mô và cấu hình phần cứng thích hợp. Phần cứng được thiết kế như một hệ
thống mạng máy tính cục bộ (LAN) hoặc mạng diện rộng (WAN), tùy theo nhiệm vụ
của hệ thống. Các thiết bị cập nhật dữ liệu thường xuyên, các thiết bị lưu trữ, hiển thị
cũng được trang bị đáp ứng mục tiêu, nhiệm vụ của hệ thống.
Trong tiến trình xây dựng hệ thống, ta cần phân chia các giai đoạn và trang bị
phần cứng hệ thống cho phù hợp với nhu cầu khai thác vì giá thành của các thiết bị càng
ngày càng giảm, trong khi tính năng kỹ thuật của thiết bị tăng lên. Đặc biệt lưu ý rằng
những thiết bị nhập dữ liệu bản đồ giấy chỉ sử dụng trong một thời gian ngắn trong thời
gian chuyển tiếp từ công nghệ cũ sang công nghệ thông tin địa lý. Ngày nay, những thiết
bị thu thập dữ liệu không gian có độ chính xác và khả năng tự động cao đang dần dần
thay thế những thiết bị đo đạc truyền thống. Do đó, các hệ thống GIS cũng cần phải
thường xuyên đổi mới và thay thế trang bị thiết bị phục vụ cho nhu cầu cập nhật dữ liệu.
Đối với một tỉnh/thành phố, nhu cầu số hóa bản đồ không phải là nhu cầu lớn, số
hóa bản đồ chẳng những không phải là mục tiêu xây dựng hệ thống thông tin địa lý mà
đó chỉ là một phần trong công đoạn khởi tạo cơ sở dữ liệu nền cho hệ thống thông tin
địa lý. Công nghệ số hóa bản đồ chỉ là một công nghệ quá độ từ công nghệ truyền thống,
sử dụng và lưu trữ dữ liệu không gian trên bản đồ giấy, chuyển sang công nghệ thông tin
địa lý với những thiết bị kỹ thuật số có khả năng thu thập dữ liệu không gian với độ chính
xác cao. Những sự đầu tư thiết bị số hóa bản đồ trong thời gian này sẽ nhanh chóng lạc hậu.
1.4.3. Phần mềm
Phần mềm GIS bảo đảm đủ 4 chức năng của hệ thống thông tin địa lý là nhập, lưu
trữ, phân tích và xử lý, hiển thị dữ liệu không gian, phi không gian. Ngoài ra, phần mềm
còn phải đáp ứng yêu cầu của hệ thống mở, cho phép nâng cấp khi cần thiết hoặc/và có
thể liên kết với các hệ thống khác, đặc biệt là hệ thống cơ sở dữ liệu thuộc tính hiện có.
Hiện nay, trên thế giới có rất nhiều phần mềm khác nhau, mỗi một phần mềm đều có
điểm mạnh riêng, tuỳ theo mục tiêu khai thác mà người sử dụng có thể quyết định trang
bị phần mềm hợp lý. Phần mềm của hệ thống cần được trang bị từng bước và phù hợp
với chức năng, nhiệm vụ của từng vị trí trong hệ thống, không nhất thiết phải trang bị
những phần mềm quá lớn hoặc quá nhỏ. Ở đây cũng cần quan tâm đến khả năng mở
rộng, tương thích của phần mềm và định dạng dữ liệu do phần mềm tạo ra. Trong những
trường hợp cần thiết, cũng có thể thiết kế bổ sung những phần mềm chuyển đổi định
dạng dữ liệu.
Một hệ thống GIS bao gồm nhiều môđun phần mềm, có các thành phần chính sau:
- Công cụ nhập và thao tác trên các thông tin địa lý.
- Hệ quản trị CSDL (DBMS).
- Công cụ hỗ trợ hỏi đáp, phân tích và hiển thị địa lý.
- Giao diện đồ hoạ người-máy (GUI) để truy cập các công cụ dễ dàng.
-8-
Trong đó khả năng lưu trữ, quản lý dữ liệu không gian bằng hệ quản trị CSDL
địa lý là khía cạnh quan trọng nhất của GIS. Các môđun khác là công cụ phân tích dữ
liệu, xây dựng báo cáo và truyền tin.
1.4.4. Con người
Con người chia thành 3 nhóm chính: Chuyên gia về GIS làm nhiệm vụ nghiên
cứu các công cụ, xây dựng phần mềm GIS, thiết kế hệ thống GIS, v.v... Nhóm thứ hai
là người thu thập, xử lý, biên tập, quản lý và bảo dưỡng dữ liệu GIS, chịu trách nhiệm
chính về sự chính xác, tính cập nhật của dữ liệu. Nhóm cuối cùng là những người khai
thác thông tin phục vụ cho các mục tiêu nghiên cứu của mình.
Cả bốn thành phần trên có mối quan hệ mật thiết với nhau, tương tác với nhau để
GIS hoàn thành và phát triển. Hình 1.11 mô tả các mối quan hệ của 4 thành phần GIS.
Sự hiểu biết một cách đầy đủ các thành phần của GIS rất quan trọng, nếu một thành
phần phát triển không tương xứng với các thành phần khác sẽ làm cho GIS hoạt động
không có hiệu quả, thậm chí sẽ “chết”.

Phần cứng: Phần mềm:


 Máy tính  Hệ thống
 Thiết bị ngoại vi  Ứng dụng
 Hệ quản lý CSDL

Dữ liệu: Con người:


 Hình học  Chuyên gia GIS
 Thuộc tính  Quản lý hệ thống
 Khai thác

Hình 1.5. Các thành phần của GIS


1.5. CÁC LĨNH VỰC ỨNG DỤNG GIS
GIS được thiết kế như một hệ thống chung để quản lý dữ liệu không gian, nó có
rất nhiều ứng dụng trong việc phát triển đô thị và môi trường tự nhiên như là: quy hoạch
đô thị, quản lý nhân lực, nông nghiệp, điều hành hệ thống công ích, lộ trình, nhân khẩu,
bản đồ, giám sát vùng biển, cứu hoả và bệnh tật. Trong phần lớn lĩnh vực này, GIS đóng
vai trò như là một công cụ hỗ trợ quyết định cho việc lập kế hoạch hoạt động.
- Môi trường: Theo những chuyên gia GIS kinh nghiệm nhất thì có rất nhiều ứng
dụng đã phát triển trong những tổ chức quan tâm đến môi trường. Với mức đơn
giản nhất thì người dùng sử dụng GIS để đánh giá môi trường, ví dụ như vị trí và
thuộc tính của cây rừng. Ứng dụng GIS với mức phức tạp hơn là dùng khả năng
phân tích của GIS để mô hình hóa các tiến trình xói mòn đất sư lan truyền ô nhiễm

-9-
trong môi trường khí hay nước, hoặc sự phản ứng của một lưu vực sông dưới sự
ảnh hưởng của một trận mưa lớn. Nếu những dữ liệu thu thập gắn liền với đối
tượng vùng và ứng dụng sử dụng các chức năng phân tích phức tạp thì mô hình dữ
liệu dạng ảnh (Raster) có khuynh hướng chiếm ưu thế.
- Khí tượng thuỷ văn: Trong lĩnh vực này GIS được dùng như là một hệ thống đáp
ứng nhanh, phục vụ chống thiên tai như lũ quét ở vùng hạ lưu, xác định tâm bão,
dự đoán các luồng chảy, xác định mức độ ngập lụt, từ đó đưa ra các biện pháp
phòng chống kịp thời… vì những ứng dụng này mang tính phân tích phức tạp nên
mô hình dữ liệu không gian dạng ảnh (Raster) chiếm ưu thế.
- Nông nghiệp: Những ứng dụng đặc trưng: Giám sát thu hoạch, quản lý sử dụng
đất, dự báo về hàng hoá, nghiên cứu về đất trồng, kế hoạch tưới tiêu, kiểm tra
nguồn nước.
- Dịch vụ tài chính: GIS được sử dụng trong lĩnh vực dịch vụ tài chính tương tự như
là một ứng dụng đơn lẻ. Nó đã từng được áp dụng cho việc xác định vị trí những
chi nhánh mới của Ngân hàng. Hiện nay việc sử dụng GIS đang tăng lên trong lĩnh
vực này, nó là một công cụ đánh giá rủi ro và mục đích bảo hiểm, xác định với độ
chính xác cao hơn những khu vực có độ rủi ro lớn nhất hay thấp nhất. Lĩnh vực
này đòi hỏi những dữ liệu cơ sở khác nhau như là hình thức vi phạm luật pháp, địa
chất học, thời tiết và giá trị tài sản.
- Y tế: Ngoại trừ những ứng dụng đánh gía, quản lý mà GIS hay được dùng, GIS
còn có thể áp dụng trong lĩnh vực y tế. Ví dụ như, nó chỉ ra được lộ trình nhanh
nhất giữa vị trí hiện tại của xe cấp cứu và bệnh nhân cần cấp cứu, dựa trên cơ sở
dữ liệu giao thông. GIS cũng có thể được sử dụng như là một công cụ nghiên cứu
dịch bệnh để phân tích nguyên nhân bộc phát và lây lan bệnh tật trong cộng đồng.
- Chính quyền địa phương: Chính quyền địa phương là một trong những lĩnh vực
ứng dụng rộng lớn nhất của GIS, bởi vì đây là một tổ chức sử dụng dữ liệu không
gian nhiều nhất. Tất cả các cơ quan của chính quyền địa phương có thể có lợi từ
GIS. GIS có thể được sử dụng trong việc tìm kiếm và quản lý thửa đất, thay thế
cho việc hồ sơ giấy tờ hiện hành. Nhà cầm quyền địa phương cũng có thể sử dụng
GIS trong việc bảo dưỡng nhà cửa và đường giao thông. GIS còn được sử dụng
trong các trung tâm điều khiển và quản lý các tình huống khẩn cấp.
- Bán lẻ: Phần lớn siêu thị vùng ngoại ô được xác định vị trí với sự trợ giúp của GIS.
GIS thường lưu trữ những dữ liệu về kinh tế-xã hội của khách hàng trong một vùng
nào đó. Một vùng thích hợp cho việc xây dựng môt siêu thị có thể được tính toán
bởi thời gian đi đến siêu thị, và mô hình hoá ảnh hưởng của những siêu thị cạnh
tranh. GIS cũng được dùng cho việc quản lý tài sản và tìm đường phân phối hàng
ngắn nhất.
- Giao thông: GIS có khả năng ứng dụng đáng kể trong lĩnh vực vận tải. Việc lập kế
hoạch và duy trì cở sở hạ tầng giao thông rõ ràng là một ứng dụng thiết thực, nhưng
giờ đây có sự quan tâm đến một lĩnh vực mới là ứng dụng định vị trong vận tải
hàng hải, và hải đồ điện tử. Loại hình đặc trưng này đòi hỏi sự hỗ trợ của GIS.
- Các dịch vụ điện, nước, gas, điện thoại: Những công ty trong lĩnh vực này là những
người dùng GIS linh hoạt nhất, GIS được dùng để xây dựng những cơ sở dữ liệu
là cái thường là nhân tố của chiến lược công nghệ thông tin của các công ty trong
lĩnh vự này. Dữ liệu vecto thường được dùng trong các lĩnh vực này. những ứng
-10-
dụng lớn nhất trong lĩnh vực này là Automated Mapping và Facility Management
(AM-FM). AM-FM được dùng để quản lý các đặc điểm và vị trí của các cáp,
valve… Những ứng dụng này đòi hỏi những bản đồ số với độ chính xác cao. Sau
đây giới thiệu một số ứng dụng GIS.
- Hệ thống thông tin địa lý phục vụ quản lý môi trường tỉnh Đồng Nai –
DONAGIS.

Hình 1.6. GIS phục vụ quản lý môi trường


- Hệ thống TT địa lý phục vụ quản lý hành chính nhà nước thành phố Đà Nẵng.

Hình 1.7. GIS phục vụ quản lý hành chính


- Phần mềm quản lý mạng lưới cấp nước với các chức năng: hiển thị dữ liệu, xem
thông tin, cập nhật thông tin, tìm kiếm, thống kê, tạo trang in với chức năng:
 Quản lý vật tư mạng lưới cấp nước.
 Hiển thị vị trí đối tượng quản lý trên bản đồ số.
 Ứng dụng mô hình thủy lực.
 Quản lý duy tu, bảo dưỡng, khắc phục sự cố.
 Báo cáo thống kê, cập nhật số liệu thu thập theo thời gian thực.

-11-
 Lập biểu đồ thống kê theo thời gian thực.
Giúp nhà quản lý:
 Trực quan trong công tác giám sát mạng lưới cấp nước.
 Giảm thiểu thất thoát nước.
 Tiết kiệm chi phí vận hành mạng lưới.
 Đảm bảo tính kịp thời trong xử lý sự cố trong mạng lưới cấp nước.
 Theo dõi hệ thống từ xa trên các thiết bị di động.
- Phần mềm quản lý dịch bệnh:

Hình 1.8. GIS quản lý dịch bệnh


CSDL được thiết kế theo hướng đa người dùng nên hệ thống cho phép chia sẻ
thông tin giữa các phòng ban đơn vị trực thuộc Sở Y Tế, nâng cao khả năng theo dõi
giám sát dịch bệnh nguy hiểm trên địa bàn. CSDL được cài đặt trên hệ quản trị CSDL
MS SQL Server2000. Người dùng khi truy xuất vào CSDL phải thông qua các quyền
được trợ cấp với sự hỗ trợ bảo mật và an toàn cao của hệ quản trị CSDL. Kết nối CSDL
nền và chuyên đề với các chức năng:
 Cập nhật vị trí và một số thuộc tính của ca bệnh hoặc cơ sở y tế.
 Tìm kiếm ca bệnh theo thuộc tính hay không gian.
 Công cụ tự động thành lập bản đồ phân bố dịch bệnh (automatic mapping).
 Công cụ xác định phạm vi vùng bị dịch và vùng nguy cơ bị dịch theo bán
kính chỉ định.
-12-
 Công cụ xuất các bản đồ dịch bệnh sang trang in phục vụ in ấn.
 Công cụ xuất báo cáo sang MS word, MS excel.
Giúp nhà quản lý:
 Quản lý các điểm phát sinh dịch bệnh nguy hiểm
 Xác định vị trí dịch bệnh trên bản đồ
 Quản lý các cơ sở y tế trên địa bàn quản lý.
 Báo cáo thống kê và cập nhật số liệu.
 Khoanh vùng dịch.
 Lập bản đồ tình hình dịch bệnh.
 Thuận tiện trong công tác quản lý, cập nhật, thống kê.
 Hỗ trợ hiệu quả cho công tác dự báo diễn biến dịch bệnh.
 Trực quan và nhanh chóng trong xác định và giám sát vị trí ổ dịch.
 Đảm bảo tính kịp thời trong xử lý tình hình bùng phát dịch bệnh.
- Phần mềm quản lý cây xanh với các tính năng:
 Quản lý các tuyến cây xanh, thông tin của từng cây...
 Cập nhật mới đối tượng- Báo cáo thống kê tình trạng sức khỏe của cây, thống
kê cây xanh trên tuyến đường.
 Đề nghị giải pháp bảo dưỡng tuyến cây.
 Lập bản đồ cây xanh theo tuyến đường, theo vùng địa lý.
 Thuận tiện trong công tác quản lý, cập nhật, thống kê.
 Tính toán tối ưu tuyến đường chăm sóc cây xanh định kỳ.
 Giao diện sử dụng ngôn ngữ tiếng Việt và tiếng Anh
- Cơ sở dữ liệu GIS sơ đồ địa bàn phường Vĩnh Thọ: Đồ án tốt của sinh viên đã
thực hiện được các chức năng sau:
 Phân tích, đánh giá hiện trạng cơ sở dữ liệu hiện có trên địa bàn phường Vĩnh
Thọ làm cơ sở để xây dựng cơ sở dữ liệu hoàn thiện theo mô hình GIS.
 Xây dựng nhóm chức năng cập nhật dữ liệu. Cho phép người sử dụng có thể
thêm, sửa, xóa dữ liệu không gian và cả dữ liệu thuộc tính.
 Xây dựng chức năng xem nhanh thông tin trên bản đồ: Phóng to, thu nhỏ,
xem nhanh điểm được chọn, vv…; Xem nhanh thông tin các đối tượng.
 Tìm kiếm dữ liệu thuộc tính và dữ liệu không gian.
 Thống kê.
 Tính toán
 Tạo trang in bản đồ.

-13-
Ứng dụng tra cứu thông tin hộ khẩu, nhân khẩu cũng như trường học, nhà hàng,
khách sạn… tại địa bàn phường Vĩnh Thọ, giúp rút ngắn được thời gian giải quyết các
thủ tục hành chính, có chế độ báo cáo nhanh chóng, kịp thời, đồng thời có thể đáp ứng
nhu cầu thông tin cho các ngành liên quan và những người quan tâm.

Hình 1.9. GIS phục vụ quản lý hộ khẩu


Tham khảo chi tiết tại thư viện trường đại học Nha Trang hoặc
http://elearning.ntu.edu.vn/ khóa học trực tuyến: GIS.
- Hệ CSDL đánh giá ngành cấp nước và vệ sinh môi trường quốc gia: Hệ CSDL
đánh giá ngành cấp nước và vệ sinh môi trường quốc gia (WSSAP) được thiết kế
và xây dựng nhằm quản lý và cung cấp thông tin trực tuyến về độ bao phủ cấp
nước và vệ sinh cũng như tầm quan trọng của cấp nước và vệ sinh đến môi trường,
sức khỏe và cuộc sống con người trên phạm vi toàn quốc. Với các chức năng nhập
và chuyển đổi dữ liệu, quản lý dữ liệu, tổng hợp, lập báo cáo và bản đồ trực tuyến,
hệ thống WSSAP hỗ trợ hoạt động đánh giá ngành thường kỳ 2 năm 1 lần cũng
như giúp theo dõi các Mục tiêu Thiên niên kỷ (MDGs) và Mục tiêu Phát triển Việt
Nam (VDGs) về cấp nước và vệ sinh môi trường. Phiên bản hiện tại với dữ liệu
đánh giá được cập nhật đến năm 2011 hiện đang được vận hành thử nghiệm tại
http://www.geoviet.vn/wssap.
- Trang thông tin đầu tư Cấp nước và Vệ sinh nông thôn: Trang thông tin đầu tư
Cấp nước và Vệ sinh nông thôn được thiết kế, xây dựng và vận hành như hệ CSDL
không gian trên nền Web bao gồm các chức năng thu thập dữ liệu online, chuyển
đổi và tổng hợp dữ liệu, lập báo cáo và bản đồ trực tuyến. Mục tiêu chính là hỗ trợ
Văn phòng đối tác CN&VSNT điều phối quản lý và chia sẻ thông tin trực tuyến
cho các đối tác trong nước và quốc tế về mức độ đầu tư, độ bao phủ cấp nước và
vệ sinh khu vực nông thôn và hiệu quả đầu tư… Phiên bản hiện tại (http://rwss-
-14-
investment.org.vn) được cập nhật với thông tin đầu tư cho cấp nước và vệ sinh
nông thôn trên toàn quốc và theo lĩnh vực hoặc cơ quan quản lý từ 2005 đến năm
2010 và sản phẩm đang tiếp tục được hoàn thiện…
- Hệ CSDL Sức khoẻ Môi trường quốc gia: Hệ CSDL Sức khoẻ Môi trường quốc
gia (NEHD) được thiết kế để quản lý và cung cấp trực tuyến thông tin đầy đủ và
đáng tin cậy về sức khoẻ môi trường (SKMT) cho các cơ quan quản lý tương ứng
ở cấp quốc gia và cấp tỉnh thành. Với các chức năng nhập và cập nhật dữ liệu, quản
lý dữ liệu, tổng hợp, lập báo cáo và bản đồ, hệ thống NEHD có thể cung cấp bộ
chỉ số và chỉ thị SKMT để giám sát những biến động của quá trình phát triển,
những áp lực, tình trạng phơi nhiễm và những tác động lên sức khoẻ con người.
Phiên bản hiện tại với dữ liệu thí điểm của 2 tỉnh Phú Thọ và Nam Định hiện đang
được vận hành trên mạng LAN của Trung tâm Tư vấn và Công nghệ môi trường
(Tổng cục môi trường, Bộ TNMT).
- Hệ CSDL hạ tầng kỹ thuật đô thị quốc gia: Hệ CSDL GIS trên nền Web phục
vụ công tác quản lý hạ tầng kỹ thuật môi trường đô thị & khu công nghiệp cấp
quốc gia được thiết kế và phát triển trên nền công nghệ SQL Server 2005,
ASP.NET kết hợp với công nghệ AJAX và giải pháp WebGIS trên nền mã nguồn
mở OpenLayers. Hệ thống được thiết kế mở với các chức năng nhập và cập nhật
dữ liệu, quản lý dữ liệu, tổng hợp lập báo cáo và bản đồ hạ tầng kỹ thuật đô thị…
một cách trực tuyến nhằm hỗ trợ Bộ Xây dựng và các cơ quan địa phương lên kế
hoạch, quản lý và giám sát hạ tầng kỹ thuật đô thị và khu công nghiệp trên phạm
vi toàn quốc.
- Xây dựng cơ sở dữ liệu chuyên ngành Thông tin và Truyền thông cho Sở Thông
tin và Truyền thông Hà Nội: Với ứng dụng được cài trên điện thoại hoặc máy tính
bảng có chức năng định vị GPS và kết nối 3G, cán bộ Sở hay thanh tra của Sở khi
đi ra ngoài hiện trường chỉ cần mở ứng dụng và sử dụng một vài thao tác là có thể
biết ngay được trên tuyến đường bất kỳ có tuyến cáp ngầm nào đi qua hay không,
nếu có thì đi ngầm dưới đường hay trên vỉa hè, cách lòng đường bao nhiêu mét, do
đơn vị nào quản lý,… Nếu như trước đây, khi chưa có ứng dụng này thì các cán
bộ Sở, thanh tra Sở có khi mất hàng giờ đồng hồ tìm kiếm trong đống tài liệu thì
nay chỉ mất vài giây là có thể biết được tất cả các thông tin về đoạn cáp ngầm tại
tuyến đường bất kỳ.
- Ứng dụng hệ thống thông tin địa lý (GIS) để quản lý hạ tầng bưu chính viễn
thông Khánh Hòa: Với mục tiêu xây dựng hệ thống quản lý cơ sở hạ tầng bưu
chính, viễn thông trên địa bàn tỉnh Khánh Hòa bằng công nghệ GIS. Phần mềm
xây dựng được dữ liệu nền và bản đồ nền tỉnh Khánh Hòa gồm có 7 lớp dữ liệu
(cơ sở toán học, địa danh, địa hình, giao thông, thủy hệ, ranh giới và sử dụng đất);
dữ liệu hạ tầng bưu chính, viễn thông tỉnh Khánh Hòa bao gồm 9 lớp dữ liệu (điểm
phục vụ bưu chính, mạng vận chuyển bưu chính, trạm thông tin di động mặt đất
BTS, mạng chuyển mạch, mạng ngoại vi, mạng truyền dẫn, trạm kiểm soát tần số,
đài truyền thanh không dây, đài thông tin duyên hải), trong đó có 145 điểm phục
vụ bưu chính (bưu điện, bưu cục), 1.089 trạm BTS, 296 tuyến cáp mạng ngoại vi,
132 đài thông tin duyên hải…; xây dựng phầm mềm biên tập dữ liệu GIS những
module chức năng của phần mềm; công cụ tương tác bản đồ; công cụ xem thông
tin, cập nhật từng đối tượng hạ tầng bưu chính, viễn thông Khánh Hòa…

-15-
- Phần mềm ứng dụng công nghệ GIS trong quản lý hạ tầng kỹ thuật lưới điện
Khánh Hòa

Hình 1.10. GIS trong quản lý hạ tầng kỹ thuật lưới điện Khánh Hòa
Việc ứng dụng hệ thống thông tin địa lý GIS, xây dựng phần mềm quản lý kỹ thuật
nhằm quản lý hạ tầng kỹ thuật lưới điện tại Khánh Hòa mang lại nhiều thuận lợi cho
công tác quản lý lưới điện như:
 Giúp cho các đơn vị quản lý vận hành quản lý đầy đủ các thông tin về hệ
thống mạng lưới điện bao gồm: Lý lịch thiết bị; tình hình vận hành; tình hình
sự cố; thông tin về thí nghiệm định kỳ, sửa chữa, bảo dưỡng…
 Truy xuất các thông số đo đếm, các thông số vận hành trực tuyến và hướng
tới tức thời theo thời gian thực.
 Dễ dàng theo dõi, cập nhật tình trạng và số lượng vật tư thiết bị lưới điện theo
tọa độ trên bản đồ số, từ đó nâng cao khả năng vận hành bảo dưỡng và sửa
chữa thiết bị.
 Đưa ra các công cụ hỗ trợ hiệu quả cho các cấp lãnh đạo dễ dàng theo dõi
quá trình sản xuất và kinh doanh của từng đơn vị nói riêng cũng như trong
toàn Công ty nói chung, từ đó có các chỉ đạo kịp thời chính xác. Đồng thời
hỗ trợ cho cán bộ quản lý trong công tác quy hoạch hạ tầng điện lực và các
vấn đề có liên quan.
 Truy xuất các số liệu báo cáo theo các mẫu biểu quản lý kỹ thuật lưới điện
cho các cấp theo quy định nhanh chóng và chính xác, đồng thời cung cấp các
số liệu chính xác phục vụ cho công tác tham mưu cho các đơn vị.
 Nâng cao khả năng cung cấp điện, giảm tổn thất và suất sự cố trên lưới điện,
mang lại lợi ích kinh tế kỹ thuật cho Công ty. Cho phép cập nhật, quản lý và
lưu trữ thông tin về thiết kế tuyến đường dây truyền tải và phân phối mới…
Phần mềm ứng dụng được xây dựng trong dự án không chỉ ứng dụng trong Công
ty mà còn có thể ứng dụng cho hệ thống các công ty điện lực tỉnh trong cả nước.

-16-
Phần mềm góp phần nâng cao khả năng quản lý, phân tích, đánh giá và ra quyết
định chính xác trong quá trình quản lý kết cấu hệ thống lưới điện địa bàn Khánh Hòa.
- GIS với nguồn lợi biển: GIS có nhiều ứng dụng khác trong quản lý nghề cá như
quản lý ngư trường, quản lý năng lực khai thác và sản lượng đánh bắt, quản lý thị
trường tiêu thụ sản phẩn thủy sản, quản lý nuôi trồng thủy sản và vùng duyên hải.

Hình 1.11. Mô hình biểu diễn ngư trường cá nổi và cá tầng đáy

- Web GIS đồng bằng sông Cửu Long: tại https://mgis.vn


1.6. KHÁI NIỆM VỀ BẢN ĐỒ
Bản đồ địa lý hiện nay được phân làm hai nhóm đó là bản đồ địa lý chung và bản
đồ địa lý chuyên đề (hay gọi tắt là bản đồ chuyên đề).
Bản đồ địa lý chung là bản đồ thể hiện mọi đối tượng hiện tượng địa lý của bề mặt
trái đất, bao gồm đầy đủ các đối tượng và hiện tượng tự nhiên, kinh tế, xã hội như thủy
văn, địa hình, thực vật, đất đai, dân cư, giao thông, công nghiệp, nông nghiệp, lâm
nghiệp, văn hóa, chính trị và hành chính.
Tùy thuộc tỉ lệ bản đồ mà mức độ nội dung của bản đồ địa lý chung có thể có nhiều
chi tiết hoặc ít chi tiết hơn, nhưng về nguyên tắc với một tỷ lệ xác định thì bản đồ địa lý
chung thể hiện đối tượng, hiện tượng với cùng mức độ chi tiết, nghĩa là không quá chú
trọng đến một yếu tố nhất định.
Bản đồ địa lý chung được phân thành ba nhóm: bản đồ địa hình, bản đồ địa hình
khái quát và bản đồ khái quát. Bản đồ địa hình được thành lập bằng phương pháp đo vẽ
trực tiếp ngoài thực địa, có kết hợp với không ảnh. Đây là bản đồ có nội dung chi tiết và
độ chính xác cao, được thành lập theo quy trình quy phạm nhà nước ở các tỷ lệ từ
1/100.000 và lớn hơn. Bản đồ địa hình khái quát và bản đồ khái quát là bản đồ có tỷ lệ
1/200.000, 1/500.000, 1/1.000.000 và nhỏ hơn, được thành lập từ bản đồ địa hình sẵn có
với tỷ lệ lớn hơn.

-17-
Hình 1.12. Bản đồ địa hình của Việt Nam
Bản đồ địa lý chuyên đề chỉ thể hiện một vài yếu tố của bản đồ địa lý chung hoặc
một vài hiện tượng, quá trình địa lý mà không thể hiện trên bản đồ địa lý chung. Bản đồ
địa lý chuyên đề về một yếu tố nào đó sẽ đề cập đầy đủ các khía cạnh của yếu tố đó. Ví
dụ khi trình bày về vấn đề dân cư cần phản ánh dân số, mật độ, thành phần xã hội, nghề
nghiệp, dân tộc, độ tuổi… hay khi yếu tố khí hậu không có trên bản đồ địa lý chung
nhưng trên bản đồ khí hậu chuyên đề thì lại được đề cập đầy đủ và hệ thống.
Bản đồ số là một tập có tổ chức các dữ liệu bản đồ trên thiết bị có khả năng đọc
được bằng máy tính và được thể hiện dưới dạng hình ảnh bản đồ.
1.7. CÁC ĐẶC TÍNH ĐỊA LÝ CỦA BẢN ĐỒ
1.7.1. Bản đồ nền - Cơ sở địa lý của Bản đồ địa lý chuyên đề
Nói đến bản đồ địa lý chuyên đề là nói đến nội dung chuyên đề và cơ sở địa lý
mà nội dung chuyên đề được thể hiện trên nó. Cơ sở địa lý là nền của bản đồ chuyên đề
nên còn được gọi là bản đồ nền. Nếu chỉ có duy nhất nội dung chuyên đề thì tự nó không
tạo ra bản đồ chuyên đề, lý do vì bản đồ chuyên đề thể hiện nội dung chọn lọc trong mối
quan hệ tương hỗ với các yếu tố khác của cảnh quan môi trường địa lý. Chính vì vậy
việc thành lập bản đồ nền là một trong những giai đoạn quan trọng của quá trình thành
lập bản đồ chuyên đề.
1.7.2. Ký hiệu bản đồ
Ký hiệu bản đồ là ngôn ngữ của bản đồ, là tập hợp các hình dạng (shape), đường
nét (line), ký hiệu (symbol), đồ thị (chart), màu sắc(color) và các ghi chú (legend) để
phản ảnh các đối tượng, hiện tượng và truyền đạt thông tin của chúng trong không gian.
Ký hiệu bản đồ là ngôn ngữ khoa học nên phải có chức năng sau:
- Ký hiệu phải gợi sự liên tưởng đến đối tượng.
- Ký hiệu phải chứa đựng một nội dung nào đó về số lượng, chất lượng, cấu
trúc và động lực phát triển của đối tượng.
- Ký hiệu phải phản ánh được vị trí và sự phân bố đối tượng trên bản đồ. Ngoài
vị trí của đối tượng, còn có vị trí tương quan vừa phản ảnh quy luật phân bố
hiện tượng vừa cho thấy đặc điểm phân bố của hiện tượng.

-18-
Để chọn ký hiệu phù hợp, cần biết đặc tính của đối tượng và hiện tượng. Các hiện
tượng trong thực tế có thể phân bố theo các cách khác nhau như phân bố liên tục, không
liên tục, phân bố theo tuyến, theo diện tích hay phân bố rời rạc. Hiện tượng phân bố liên
tục là hiện tượng có ở mọi nơi trong không gian địa lý. Có những hiện tượng phân bố
liên tục nhưng phân bố theo tuyến như sông ngòi, đường giao thông, đường ranh giới…
Hiện tượng phân bố không liên tục là hiện tượng xuất hiện rời rạc.
Phương tiện thường dùng để tạo ra ký hiệu bản đồ là các dạng đồ họa, màu sắc,
ký tự và số. Ký hiệu được vẽ theo quy ước nên được gọi là ký hiệu quy ước. Chúng được
phân thành ba loại chính: ký hiệu theo tỷ lệ, ký hiệu ngoài tỷ lệ, ký hiệu nửa tỷ lệ.
Ký hiệu theo tỷ lệ (ký hiệu diện tích) dùng để biểu thị sự phân bố đối tượng trên
diện tích lãnh thổ như rừng, đầm lầy, ao hồ, diện tích trồng trọt… Chúng được thể hiện
theo tỷ lệ bản đồ và giới hạn bằng ranh giới vùng phân bố, bên trong vùng phân bố có
thể vẽ thêm các ký hiệu ngoài tỷ lệ.
Ký hiệu ngoài tỷ lệ (ký hiệu điểm) được vẽ theo kích thước quy định cho từng tỷ
lệ hay nhóm tỷ lệ. Được sử dụng để biểu thị các đối tượng mà diện tích quá nhỏ, không
thể thể hiện được lên bản đồ theo tỷ lệ như các điểm tam giác trắc địa trạm thủy điện,
trạm khí tượng,…
Ký hiệu nửa tỷ lệ (ký hiệu dạng tuyến) được dùng để biểu thị các đối tượng có
dạng hình tuyến như đường sá, sông ngòi, ranh giới,… Ký hiệu này chỉ thể hiện chiều
dài hình tuyến theo tỷ lệ bản đồ còn chiều rộng đối tượng không thể hiện theo tỷ lệ bản
đồ, nhất là những bản đồ tỷ lệ nhỏ. Nếu muốn thể hiện sông ngòi, đường sá theo tỷ lệ
thì bản đồ phải có tỷ lệ cực lớn: 1/500; 1/200; 1/100. Khi đó cả chiều dài và chiều rộng
được thể hiện hoàn toàn theo tỷ lệ bản đồ.
Nhờ khả năng phân hóa các ký hiệu, hình dạng, kích thước, theo phương hướng,
màu sắc và cường độ màu sắc, theo cấu trúc bên trong của ký hiệu và khả năng phối hợp
hài hòa giữa các thành phần đó sao phù hợp với chủ đề bản đồ mà hệ thống ký hiệu có
những khả năng đa dạng hơn.
1.7.3. Phương pháp thể hiện nội dung bản đồ
Phương pháp thể hiện nội dung bản đồ có thể được phân loại theo định tính, định
lượng hoặc phân loại theo khả năng định vị như định vị theo điểm, định vị theo diện
tích, định vị toàn năng. Nội dung bản đồ có thể được thể hiện bằng phương pháp ký
hiệu, phương pháp biểu đồ định vị, phương pháp đường chuyển động, đường đồng mức,
phương pháp chấm điểm, phương pháp nền chất lượng, phương pháp bản đồ biểu đồ,
phương pháp đồ giải.
Phương pháp ký hiệu là phương pháp thể hiện các đối tượng định vị tại những vị
trí xác định trên bản đồ như trường học, khách sạn, khu dân cư,… gồm ký hiệu chữ, ký
hiệu hình học, ký hiệu tượng trưng, ký hiệu hình vẽ. Mỗi ký hiệu gồm ba thành phần:
hình dạng, kích thước và màu sắc. Hình dạng và màu sắc nêu lên đặc tính chất lượng,
kích thước phản ánh định lượng của hiện tượng. Nếu tại một vị trí có nhiều đối tượng
việc sắp xếp các ký hiệu và ghi chú sẽ gặp nhiều khó khăn. Nếu số đối tượng đó đồng
nhất và có thể so sánh được với nhau, có thể sử dụng một ký hiệu chung, kích thước ký
hiệu sẽ là tổng giá trị của các đối tượng. Các phần trong ký hiệu sẽ tương ứng với từng
đối tượng. Trong các loại ký hiệu, ký hiệu hình học có thể coi là hiệu quả nhất vì chúng
có hình dạng đơn giản, định vị chính xác, dễ vẽ, kích thước của ký hiệu thể hiện đặc tính
số lượng.
-19-
1.8. PHÉP CHIẾU BẢN ĐỒ
1.8.1. Khái quát phép chiếu bản đồ
Khi xem trái đất như một mặt cầu hoặc một mặt ellipsoid, để xây dựng một bản đồ
cần chuyển đổi bề mặt ba chiều sang mặt phẳng hai chiều. Các thuật toán chuyển đổi
này thường được gọi là phép chiếu bản đồ sử dụng các công thức toán học liên quan
giữa hệ tọa độ cầu và hệ tọa độ phẳng.
Phép chiếu bản đồ là một hàm số thể hiện mối tương quan giữa một đối tượng
trên thực tế và hình ảnh của nó trên bản đồ.
Chiếu mp
A(,) A’(x,y)

Mặt toán học biểu diễn trái đất


1
(Ellipsesoid)
Mặt toán học biểu điễn trái
2
đất thu nhỏ theo tỷ lệ
3

Mặt phẳng bản đồ.

1 Chiếu thẳng góc mặt toán học

2 Thu nhỏ theo tỉ lệ bản đồ cần vẽ

3 Chiếu xuống mặt phẳng bản đồ


Hình 1.13. Biểu diễn đối tượng trên bản đồ
Phương trình chung của lưới chiếu:
x = f1 (,)
y = f2 (,)
Trong đó:
- x, y: tọa độ mặt phẳng
- , : tọa độ địa lý
- f1, f2: hàm
Hệ tọa độ chiếu được định nghĩa trên mặt phẳng hai chiều. Khác với hệ tọa độ
địa lý, hệ tọa độ chiếu có chiều dài, góc và diện tích cố định theo hai chiều được xây
dựng trên cơ sở một hệ tọa độ địa lý, xác định bởi một mặt cầu. Trong hệ tọa độ chiếu,
vị trí được xác định bởi cặp tọa độ x, y.
Có nhiều phương pháp chiếu như phép chiếu hình trụ, hình nón,… ở nước ta
thường sử dụng phép chiếu hình trụ ngang.

a) Phép chiếu hình trụ đứng b) Phép chiếu hình trụ ngang
Hình 1.14. Những dạng thường gặp trong phép chiếu hình trụ
-20-
1.8.2. Phân loại lưới chiếu bản đồ
Theo đặc điểm sai số: khi biểu diễn từ mặt ellipsoid hay mặt cầu lên mặt phẳng
luôn có sai số, có 3 loại sai số cơ bản là sai số chiều dài, góc và diện tích. Tuy nhiên,
các loại sai số cũng có liên quan chặt chẽ với nhau. Nghĩa là, khi giảm nhỏ sai số diện
tích sẽ làm tăng sai số góc và ngược lại. Theo đặc điểm sai số của phép chiếu, người ta
phân phép chiếu thành các loại sau: giữ góc, giữ diện tích và phép chiếu tự do (có sự
tham gia của 3 loại sai số, tiêu biểu cho lưới chiếu tự do là lưới chiếu đồng khoảng cách).
- Theo vị trí mặt chiếu so với mặt cầu: lưới chiếu đứng, ngang, nghiêng.
- Theo đặc điểm dạng lưới kinh tuyến, vĩ tuyến: lưới chiếu hình trụ, nón. Sai số trên
bản đồ có liên quan đến tỉ lệ, có 2 dạng tỉ lệ là tỉ lệ chung và tỉ lệ riêng.
Trong đó:
- Tỉ lệ chung là tỉ số thể hiện mức độ thu nhỏ của bề mặt trái đất, không có sai số và
tại bất kỳ điểm nào trên bản đồ đều có tỉ lệ chung giống nhau (1: 10000, 1: 100000).
- Tỉ lệ riêng là tỉ số để chỉ sự phóng to hay thu nhỏ khi chiếu từ mặt ellipsoid thu nhỏ
lên mặt phẳng, đặc trưng cho sự sai số của phép chiếu, tỉ lệ riêng tại mỗi điểm phân
biệt không giống nhau. Mô hình phép chiếu và tỉ lệ có thể biểu diễn qua hình sau:

Bề mặt trái đất

thu nhỏ tỉ lệ chung


Bề mặt Ellipsesoid thu nhỏ
chiếu tỉ lệ riêng

Mặt phẳng bản đồ


Hình 1.15. Mô hình phép chiếu và tỉ lệ

1.8.3. Lưới chiếu bản đồ thường dùng


Bề mặt gồ ghề của trái đất là bề mặt phức tạp và không thể biểu diễn chính xác
bởi một phương trình toán học. Muốn biểu diễn bề mặt trái đất lên bản đồ, chúng ta phải
chiếu theo hướng thẳng góc tất cả các yếu tố bao gồm điểm, đường nét, diện tích, của
nó lên một nền chung. Nền đó chính là bề mặt toán học đại diện một cách gần đúng nhất
bề mặt thật của Trái Đất. Bề mặt này có thể là mặt phẳng, ellipsoid hoặc hình cầu và
được chọn sao cho phù hợp nhất với hình dạng tự nhiên của Trái đất, đồng thời lại trùng
khớp với mặt nước biển trung bình (mặt Geoid) nhiều nhất.
Chọn lựa loại bề mặt toán học nào tuỳ thuộc vào diện tích khu vực cần vẽ bản
đồ, và yêu cầu về độ chính xác của bản đồ cần vẽ. Trong trường hợp chiếu một lãnh thổ
rộng lớn cần phải xem xét tới độ cong của bề mặt Trái Đất, ngay cả khi không yêu cầu
độ chính xác cao.
Lưới bản đồ được thành lập trên cơ sở phép chiếu bản đồ. Phương pháp chiếu
hình kinh tuyến và vĩ tuyến lên mặt phẳng gọi là phép chiếu bản đồ. Phép chiếu phải tìm
ra được hệ thức toán học giữa mặt chiếu của trái đất và mặt mặt phẳng biểu diễn, tức là

-21-
giữa toạ độ địa lý của mặt toán học đại diện cho trái đất và toạ độ phẳng vuông góc trên
bản đồ. Vì thế, vấn đề cơ bản của phép chiếu hình lưới kinh tuyến và vĩ tuyến của trái
đất lên mặt phẳng bản đồ là xác định một phép chiếu phù hợp.
Lưới chiếu bản đồ là biểu hiện của lưới kinh tuyến, vĩ tuyến của mặt toán học đại
diện cho Trái đất lên bản đồ theo một phép chiếu nào đó. Dựa vào lưới bản đồ người ta
có thể xác định được vị trí của một điểm bất kỳ trên bản đồ.
Phép chiếu hình trụ được sử dụng phổ biến trong việc xây dựng các bản đồ địa hình
tỉ lệ trung bình và tỉ lệ lớn. Phép chiếu hình trụ có thể có trục thẳng đứng hoặc trục nằm
ngang. Phép chiếu UTM (Universal Transverse Mercator) thực chất là phép chiếu Gauss.
1.8.4. Phép chiếu hình trụ ngang đồng góc Gauss –Kruger
Đầu thế kỷ XIX, nhà toán học người Đức K.F.Gauss (30/04/1777-23/02/1855)
đã công bố lí thuyết về phép chiếu đồng góc sau đó giáo sư L.Kruger (21/09/1857-
01/06/1923) đã cụ thể hoá và tìm ra công thức cho cho phép chiếu hình trụ ngang đồng
góc vào năm 1912. Vì vậy, phép chiếu này có tên gọi là Gauss-Kruger (đôi khi còn gọi
là phép chiếu Gauss). Phép chiếu này được sử dụng ở nước ta để tính toạ độ phẳng cho
các điểm khống chế trắc địa và chia mảnh hệ thống bản đồ cơ bản nhà nước.
Bản chất của phép chiếu Gauss-Kruger là xác định hệ thức toán học của mối liên
hệ giữa toạ độ địa lý của các điểm trên bề mặt Ellipsoid và toạ độ vuông góc phẳng
tương ứng trên mặt phẳng bản đồ, vì thế toạ độ vuông góc trên bản đồ cơ bản nhà nước
Việt Nam còn gọi là toạ độ Gauss-Kruger.
Nếu đặt hình trụ nằm ngang thì trục của hình trụ nằm trong mặt phẳng xích đạo, đi
qua tâm của Ellipsoid trái đất và tiếp xúc với mặt này theo một đường kinh tuyến nào đó.
Đường kinh tuyến này không bị sai số trong phép chiếu, các kinh tuyến nằm cách kinh
tuyến tiếp xúc về phía đông và phía tây đều bị sai số khi chiếu lên mặt phẳng bản đồ.

E’ E

P’
Hình 1.16. Phép chiếu hình trụ ngang

Kinh tuyến tiếp tuyến là kinh tuyến trung tâm của mỗi múi không có sai số độ
dài đồng thời là trục tọa độ X của nhị giác phẳng còn được gọi là kinh tuyến trung tâm
của múi. Xích đạo trong mỗi múi cũng được biểu thị là một đường thẳng, thẳng góc với
trục X, và được chọn làm trục Y. Hai đường thẳng đó là trục toạ độ vuông góc mặt
phẳng cho toàn múi (toàn nhị giác phẳng).
Trong phép chiếu này mỗi múi có một hệ thống toạ độ riêng, được biểu thị trực
tiếp lên mặt phẳng bảo toàn góc chiếu và thực tế là đồng diện tích nữa. Ở mỗi múi các
kinh tuyến khác có dạng cung hội tụ ở cực. Các vĩ tuyến là những đường cắt vuông góc
với kinh tuyến. Độ cong của các kinh tuyến và vĩ tuyến ở mỗi mảnh bản đồ cơ bản là
không đáng kể. Nước ta ở vùng vĩ độ thấp nên độ cong chỉ bắt đầu nhận thấy trên tờ bản
-22-
đồ cơ bản tỉ lệ 1/200.000 và nhỏ hơn. Ở tất cả các mảnh bản đồ tỉ lệ lớn hơn 1/200.000
các đường cong kinh tuyến và vĩ tuyến đều là đường thẳng. Trong cùng một múi tất cả
các mảnh bản đồ cùng tỉ lệ hoàn toàn có thể ghép lại với nhau mà không bị đứt quãng
hay chồng chéo.

Kinh tuyến gốc

1 2 3
Kinh tuyến giữa 0 0
0 6 12

30 90
Xích đạo

Hình 1.17. Múi chiếu trong phép chiếu Gauss

Khi Ellipsoid có dạng hình cầu, các sai số được tính như sau: So với múi trên
Ellipsoid thì múi trên mặt phẳng bản đồ có phần rộng hơn. Vì vậy tỉ số độ dài trên bản
đồ và trên Ellipsoid là:
S y2
 1 2
s 2R
Qua đó sai lệch giữa độ dài trên bản đồ và trên Ellipsoid là:
y2
s  S  s  s 2
2R
s y 2
Và sai số tương đối được tính như sau: 
S 2R 2
Trong đó:
- S là đoạn thẳng trên mặt bản đồ.
- s là đoạn thẳng tương ứng của S trên trái đất.
- y là khoảng cách từ điểm tính đến kinh tuyến giữa.
- R là bán kính trái đất.
Trong trường hợp Ellipsoid nói chung, công thức tính phức tạp hơn. Nếu dùng
các công thức trên để tính sai số tương đối cho các giá trị s khác nhau ta có:

- Khi y=50 km thì sai số độ dài s bằng 1:32 000


S

- Khi y=100 km thì sai số độ dài s bằng 1:8 000


S

- Khi y=300 km thì sai số độ dài s bằng 1:890


S

-23-
Chiều rộng mỗi múi tại xích đạo là 668 km cho múi 6 độ hoặc là 334 km ở múi
3 độ. Sai số tương đối như trên tại vùng biên của mỗi múi thuộc khu vực xích đạo
khoảng 1:800, sai số này không vượt quá giới hạn sai đo vẽ địa hình. Mỗi múi 6 độ được
đánh số A rập từ 1 đến 60 bắt đầu đánh múi số 1 từ múi giới hạn bởi kinh tuyến 180 độ
và kinh tuyến 186 độ về phía đông.
Lãnh thổ nước ta nằm trong phạm vi 4 múi: múi thứ 47, 48, 49, và 50 với các
kinh tuyến trung tâm là 990, 1050, 1110, và 1170. Phần đất liền hầu hết nằm ở múi thứ
48 và 49. Toạ độ lưới km trên bản đồ theo phép chiếu Gauss được ghi lại trên khung bản
đồ địa hình. Hệ thống lưới toạ độ vuông góc, còn gọi là toạ độ ô vuông, lưới km trong
mỗi múi tính từ kinh tuyến giữa về phía đông được vẽ trên bản đồ không chỉ hạn chế
đến độ rộng là 3 độ (trong múi 6 độ) mà đến 3030’ để có độ phủ là 30’ở vùng ven của
múi kề.
1.8.5. Phép chiếu UTM
Phép chiếu này thường sử dụng cho các bản đồ địa hình tỷ lệ 1: 50000, 1:25000,
1:10000 tại các tỉnh phía Nam do cục bản đồ của quân đội Mỹ sản xuất trước 1975. Phép
chiếu UTM cũng là phép chiếu hình trụ ngang đồng góc nhưng hình trụ chiếu không tiếp
xúc với mặt Ellipsoid tại kinh tuyến trung tâm mà cắt mặt Ellipsoid theo hai cát tuyến
cách đều kinh tuyến trung tâm 180 km về 2 phía, khi đó tỉ lệ chiều dài không đổi trên 2
vòng cát tuyến, còn tỉ lệ chiếu dài trên kinh tuyến trục m=0,9996. Theo cách chiếu như
vậy sẽ giảm được sai số biến dạng tại biên các múi chiếu và phân bố đều trong phạm vi
múi chiếu 60. Đây cũng là ưu điểm của phép chiếu UTM so với phép chiếu Gauss.
Trong hệ toạ độ phẳng UTM cũng quy ước chuyển trục x về bên trái cách kinh
tuyến trục 500 km. Còn trị số toạ độ x của gốc toạ độ được quy định khác nhau cho Bắc
và Nam bán cầu. Trị số này ở Bắc bán cầu vẫn là 0 như hệ toạ độ Gauss, ở Nam bán cầu
là 10.000 km. Một mảnh bản đồ thuộc Nam bán cầu gốc toạ độ 0 được dịch chuyển
sang phía Tây là 500 km về phía Nam là 10.000 km. Lúc đó gốc toạ độ có trị số Y=500
km, X=10000 km. Nước ta nằm ở bắc bán cầu nên toạ độ của gốc toạ độ sẽ là Y=500
km và X=0.
Kinh tuyến X Kinh tuyến
giữa giữa
180k
m
180k Xích đạo 500k
m 0km m

Hình 1.18. Phép chiếu và hệ toạ độ lưới UTM

1.9. CÁC HỆ TỌA ĐỘ QUI CHIẾU ĐƯỢC SỬ DỤNG Ở VIỆT NAM


1.9.1. Hệ tọa độ quy chiếu
Do đặc điểm về mặt lịch sử, hiện tại bản đồ nước ta được xác lập trên nhiều hệ
quy chiếu khác nhau. Trong đó, các bản đồ được dựng trước đây được xây dựng trên hai
hệ quy chiếu khác nhau là INDIAN54 và HN72. Hiện nay, hệ quy chiếu VN2000 đã
được đưa vào sử dụng thống nhất trên toàn lãnh thổ. Các tham số xác định ellipsoid quy
chiếu và phép chiếu bản đồ tương ứng mỗi hệ quy chiếu như sau:
-24-
 INDIAN54
- Ellipsoid quy chiếu:
+ Everest 1830
+ a = 6.377.276,34518
+ 1/f = 300,801725401854980
- Phép chiếu bản đồ:
+ UTM
+ múi chiếu 60
+ k0 = 0,9996
 HN72
- Ellipsoid quy chiếu:
+ Krasovsky 1940
+ a = 6.378.245
+ 1/f = 298,300003166221870
- Phép chiếu bản đồ:
+ Gauss-Kruger
+ Múi chiếu 30
+ k0 = 1
 VN2000
- Ellipsoid quy chiếu:
+ WGS 1984
+ a = 6.378.137
+ 1/f = 298,257222932869640
- Phép chiếu bản đồ:
+ UTM
+ múi chiếu 30
+ k0 = 0,9999

1.9.2. Hệ độ cao
Sau giải phóng miền Nam, năm 1976 Cục Đo đạc – Bản đồ Nhà nước đã tiếp nhận
tài liệu mạng lưới độ cao miền Nam lưu giữ tại Nha Địa dư Đà Lạt để đánh giá và đưa
vào sử dụng tạm thời. Mạng lưới độ cao hạng I, II miền Nam bao gồm 2.711km đường
hạng I và 1.443km đường hạng II, được đo bằng máy thủy chuẩn WILD N3 của Thụy
sỹ, BEGAR của Mỹ và Mia Invar. Độ chính xác sau bình sai đạt như sau:
 = 21,97mm; m = 2,2mm.
Độ cao của mạng lưới được tính theo Hệ Mũi Nai (Hà Tiên).
-25-
Toàn bộ độ cao đã được chuyển sang Hệ độ cao Hải Phòng –1972 theo công thức
hHP = hMN + 0,167m để sử dụng tạm thời.
Geoid là một bề mặt đẳng trọng lực xấp xỉ mực nước biển trung bình. Mô hình
geoid được xác lập theo dạng bảng chứa thông tin về giá trị phân cách giữa hai bề mặt
geoid và ellipsoid. Giá trị phân cách giữa geoid và ellipsoid (N) nhận được trong mô
hình geoid là hiệu của cao độ ellipsoid (H) với một điểm đặt trưng riêng.

CÂU HỎI ÔN TẬP CHƯƠNG 1


1. Trình bày khái niệm GIS?
2. Trình bày các thành phần của GIS?
3. GIS có những chức năng gì?
4. Phân tích chức năng nhập dữ liệu?
5. Phân tích chức năng lưu trữ và quản lý dữ liệu?
6. Phân tích chức năng phân tích dữ liệu?
7. Phân tích chức năng hiển thị và xuất dữ liệu?
8. Trình bày chức năng phân tích không gian GIS? Lấy ví dụ minh họa?
9. Trình bày các lĩnh vực ứng dụng của GIS? Lấy ví dụ minh họa?
10. Nêu ứng dụng của GIS trong đời sống?
11. Hãy nêu tóm tắt nội dung một dự án GIS đã hoặc đang thực hiện ở Việt Nam trong
lĩnh vực quản lý tài nguyên mà bạn đã tìm hiểu.

-26-
CHƯƠNG 2
MÔ HÌNH DỮ LIỆU CỦA HỆ THỐNG THÔNG TIN ĐỊA LÝ
Dữ liệu về các đối tượng không gian có thể được xây dựng theo mô hình Raster
hoặc Vector với các cấu trúc tương ứng. Cấu trúc Raster được sử dụng rộng rãi trong
các hệ thống xử lý ảnh và GIS Raster. Các cấu trúc Vector chiếm ưu thế trong các hệ
thống CAD và GIS với những tiềm năng vẽ bản đồ mạnh mẽ. Nhiều cấu trúc khác nhau
được phát triển cho cả hai mô hình Vector và Raster.
Việc lựa chọn một cấu trúc dữ liệu tốt nhất tùy thuộc vào bản chất dữ liệu và mục
đích sử dụng. Các cấu trúc khác nhau được sử dụng theo những tác vụ khác nhau tùy
thuộc độ phù hợp và tính hiệu quả của việc sử dụng. Ví dụ một tập điểm mẫu với các
thuộc tính liên quan có thể tồn tại ở một trong những dạng sau:
1. Dạng bảng thuộc thuộc tính với các tọa độ không gian.
2. Dạng Raster chứa các giá trị được nội suy từ các điểm đối với một trong số các
thuộc tính.
3. Dạng Vector, biểu diễn các biên giới của những vùng trên một bản đồ đường bao
được tạo ra từ Raster.
4. Dạng cấu trúc mạng tam giác không đều – TIN (Triangulated Irregular Networks)
Mỗi cấu trúc đều có ưu điểm, nhược điểm riêng và khả năng chuyển từ một cấu
trúc này sang cấu trúc kia là rất quan trọng.
2.1. CẤU TRÚC DỮ LIỆU RASTER
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ì trong cấu trúc Raster, các pixel được xếp theo hàng, cột như
một ma trận điểm nên đường ở đây không trơn mà có dạng zic-zac. Vùng được xác định
bằng một mảng gồm nhiều điểm ảnh có cùng giá trị thuộc tính f(x,y) trải rộng ra theo
nhiều phương.
Dữ liệu không gian khi lưu trữ theo mô hình Raster phụ thuộc vào các yếu tố sau:
- Độ phân giải không gian: xác định kích thước nhỏ nhất của một lớp dữ liệu (ảnh)
trong hệ thống. Qua đó thể hiện được không gian nhỏ nhất mà một ảnh trong hệ
thống có thể quan sát được.
- Độ phân giải pixel: xác định kích thước nhỏ nhất của một pixel và thường được
tính toán dựa trên số lượng pixel trên một đơn vị chiều dài.
- Độ phân giải mã hoá: khoảng cách nhỏ nhất tính theo đơn vị mức xám giữa hai
giá trị mức xám liền kề (fi+1 – f i ).
Cấu trúc dữ liệu Raster có hai đặc điểm cần lưu ý là:
- Mỗi điểm ảnh chỉ biểu diễn một thuộc tính, xác định bởi giá trị f(x,y). Do đó, mỗi
lớp dữ liệu chỉ biểu diễn một thuộc tính, lớp f. Ví dụ các lớp dữ liệu thổ nhưỡng
và thực vật phải được xây dựng riêng rẻ với các giá trị thuộc tính lần lượt là f(x,y)
và g(x,y). Khi tích hợp thông tin của hai hoặc nhiều lớp dữ liệu, lớp dữ liệu tích
hợp được thành lập với giá trị h(x,y) của điểm ảnh được xác định bằng cách tích

-27-
hợp các giá trị f(x,y) và g(x,y) của các pixel có cùng vị trí của các lớp dữ liệu
thành phần theo một phép tính thích hợp.
- Khi thay đổi độ phân giải (kích thước điểm ảnh thay đổi), dung lượng dữ liệu
thay đổi theo.
- Diện tích Raster = diện tích pixel x số pixcel.
- Kích thước pixel tỷ lệ nghịch với độ chính xác không gian của dữ liệu.
Thế giới thực Kích thước 1m Kích thước 2m Kích thước 4m
71 m2 16 x 16 pixel 8 x 8 pixel 4 x 4 pixel
73m2 76m 2
80m2

Độ chính xác không gian giảm dần Kích thước pixel tăng
dần gian giảm
Độ chính xác không
dần
Hình 2.1. Độ chính xác không gian của dữ liệu tỷ lệ nghịch với Kích thước pixel

2.1.1. Dạng hình học và Topology của dữ liệu Raster


2.1.1.1. Đối tượng điểm (Point objects)
Trong cấu trúc Raster, mỗi đối tượng điểm là một điểm ảnh được gán ID điểm,
vị trí của điểm là toạ độ (i,j) của điểm ảnh.

Số pixel

Số hàng

(i,j) = (5,3);(7,5);(8,2)
Hình 2.2. Dạng hình học và Topology của đối tượng điểm
2.1.1.2. Đối tượng đường (Line objects)
Trong cấu trúc Raster, mỗi đối tượng đường được gán ID đường, hình dạng là
tập hợp các điểm ảnh tạo ra đường và vị trí được xác định bởi tọa độ của các điểm ảnh.

Hình 2.3. Hình học và Topology đối tượng đường


-28-
2.1.1.3. Đối tượng vùng (Polygon objects)
Trong cấu trúc Raster, mỗi đối tượng vùng được gán ID vùng, hình dạng của vùng
được xác định bởi tập các điểm ảnh thuộc vùng đó và vị trí được xác định bởi toạ độ của
các điểm ảnh.

Hình 2.4. Hình học và Topology đối tượng đường

2.1.2. Các thuật toán nén dữ liệu cấu trúc Raster


Để giảm dung lượng khi lưu trữ, dữ liệu ảnh Raster có thể được nén theo các giải
thuật mã hóa khác nhau như mã run-length, cây tứ phân,...
2.1.2.1. Mã Run –length
Mã run - length lợi dụng sự giống nhau của các pixel lân cận để biểu diễn từng
loạt pixel có giá trị giống nhau theo từng hàng từ trái qua phải, từ trên xuống dưới và
được biểu diễn bằng một cặp số (chiều dài chuỗi, giá trị của pixel). Phương pháp nén
này rất hiệu quả khi thuộc tính của lớp dữ liệu ảnh (giá trị của pixel) ít thay đổi. Ngược
lại, nếu giá trị thuộc tính thay đổi nhiều, tính hiệu quả của phương pháp không cao mà
đôi khi còn làm tăng dung lượng dữ liệu.

Hướng đọc các pixel theo mã


0 1 2 3 4 5 6 7 88 98 run-length
0 A A A A A A A A A A
1 A A A A A A A A A 8
A
2 A A A A 8
B B B B B A
B
3 A A A B B C
B B B B 8
B
4 D D D D B B B B B B
Biểu diễn mã run-length của
5 D D D D D B B B B B lớp dữ liệu ảnh Raster hình
6 D D D D D C C C C C bên: (10,A) (10,A) (4,A)
D D D D D (6,B) (3,A) (7,B) (4,D) (6,B)
7 D D D D D C C C C C (5,D) (5,B) (5,D) (5,C) (5,D)
8 D D D D D D
C D
C D
C D
C D
C (5,C) (5,D) (5,C) (5,D) (5,C).
D D D D D
98 D D D D D C C C C C
D D D D D
Hình 2.5. Mã Run-length

Mã run-length tuy có thuật toán nén và giải mã đơn giản nhưng tỉ số nén không
cao, thao tác tìm kiếm thường chậm vì lưu trữ theo hàng không lưu ý tới tính lân cận.

-29-
Để khắc phục tình trạng này, mã run-length được cải biên theo những đường đọc dữ liệu
khác nhau:

(24,A) (13,B) (3,A) (13,B) (4,D) (11,B) (10,D)


(10,C) (10,D) (10,C) (5,D).
Hình 2.6. Mã Run-length cải biên
2.1.2.2. Mã cây tứ phân
Mã tứ phân cũng dựa theo nguyên lý sự giống nhau của nhiều pixel trong những
vùng có cùng thuộc tính. Mỗi vùng chỉ cần gán một giá trị. Vùng được xác định bằng
cách chia nhỏ diện tích làm 4 phần bằng nhau, mỗi phần lại được chia nhỏ thành 4 phần,
v.v.... Việc chia nhỏ này sẽ không thực hiện ở những vùng có cùng thuộc tính.

0 1

0 1 2 3 0 1
0 1
3 2
3 2
3
310 311 312 313 2

Mức của cây Thuộc tính


1 2 3

0 Công nghiệp
1 Công nghiệp
2 Nông thôn
3 0 Nhà ở
1 0 Dịch vụ thương mại
1 Dịch vụ thương mại
2 Dịch vụ công cộng
3 Khu giải trí
2 Biệt thự
3 Biệt thự
Hình 2.7. Biểu diễn của cây tứ phân

Mã tứ phân cũng dựa theo nguyên lý sự giống nhau của nhiều pixel trong những
vùng có cùng thuộc tính. Mỗi vùng chỉ cần gán một giá trị. Vùng được xác định bằng
cách chia nhỏ diện tích làm 4 phần bằng nhau, mỗi phần lại được chia nhỏ thành 4 phần,
v.v.... Việc chia nhỏ này sẽ không thực hiện ở những vùng có cùng thuộc tính.
2.2. CẤU TRÚC DỮ LIỆU VECTOR
Các đối tượng không gian khi biểu diễn ở cấu trúc Vector thường tổ chức dưới
dạng điểm, đường và vùng trên một hệ thống tọa độ xác định. Mỗi điểm được xác định
bởi một cặp toạ độ (x,y); đường được xác định bởi một chuỗi liên tiếp các điểm và vùng
được xác định bởi các đường khép kín.
-30-
Trong cấu trúc dữ liệu Vector có hai loại cấu trúc được biết đến đó là cấu trúc
Spaghetti và cấu trúc Topology, cấu trúc Spaghetti ra đời trước và hiện nay vẫn được sử
dụng nhiều trong các phần mềm GIS.
2.2.1. Tính hình học của cấu trúc Vector
Các đối tượng trong không gian được phân loại thành 3 dạng:
- Dạng đối tượng điểm (point): Điểm dùng cho tất cả các đối tượng không gian
được biểu diễn như một cặp tọa độ (x,y). Ví dụ như điểm cao độ, điểm nhà máy,
điểm quan trắc, …
- Dạng đối tượng đường (line/polyline) dùng để biểu diễn tất cả các đối tượng có
dạng tuyến, được tạo nên từ hai hoặc nhiều cặp tọa độ (x,y). Ví dụ: đường giao
thông, đường bình độ, đường ống, đường dây điện, dây điện thoại, …
- Dạng đối tượng vùng (region/polygon): Vùng là một đối tượng hình học hai chiều

Hình 2.8. Cấu trúc hình học của dữ liệu Vector


Các đối tượng trong không gian được trình bày theo dạng hình học dưới hình thức
điểm, đường và vùng một cách riêng biệt. Cấu trúc hình học của điểm là toạ độ x, y.
Trong khi đó, đối tượng đường, vùng và chuỗi ký tự sẽ là một loạt điểm tọa độ.
2.2.2. Cấu trúc Spaghetti
Với cấu trúc Spaghetti, mỗi điểm được xác định bằng một cặp tọa độ (x,y), mỗi
đường được biểu diễn bằng một chuỗi những cặp toạ độ (xi,yi). Mỗi vùng cũng được
xác định bởi một cung khép kín và được biểu diễn bằng một chuỗi cặp tọa độ (xi,yi) có
tọa độ đầu và tọa độ cuối trùng nhau, nhưng cấu trúc không ghi nhận đặc trưng kề nhau
của hai vùng kề nhau, nghĩa là tại đường chung của hai vùng kề nhau có hai đường độc
lập. Thí dụ hai vùng 1 và vùng 2 có cung AB chung, cấu trúc Spaghetti biểu diễn hai
vùng như sau:
Vị trí
A(xA,yA) Đặc trưng
Điểm A (xA,yA)
Cung AB (xA,yA), (x1,y1), . . . , (xB,yB).

2 Vùng 1 (x1A,y1A), (x11,y11), . . . , (x1i,y1i),


(x1B,y1B), (x1j,y1j), . . . , (x1A,y1A).
B(xA,yA)
Vùng 2 (x2A,y2A), (x21,y21), . . . , (x2i,y2i),
(x2B,y2B), (x2j,y2j), . . . , (x2A,y2A).

Hình 2.9. Cấu trúc Spaghetti của vùng 1 và vùng 2

-31-
Cấu trúc Spaghetti được sử dụng để lập bản đồ số rất tốt, nhưng không thích hợp
cho các bài toán phân tích GIS vì không mô tả được các quan hệ không gian.
2.2.3. Cấu trúc Topology
Trong GIS, khi biết hình dạng hình học, vị trí, kích thước và hệ tọa độ của đối
tượng cũng đủ phục vụ cho việc phân tích không gian nhưng tính Topology cũng rất cần
thiết. Topology thể hiện mối quan hệ giữa các đối tượng trong không gian.
Trục Y

70

E N1
60 a3 a1
50
a4 N2
A
40 a4
30 N4 a5 B
a7 E
20
N3 N6
D C
10 a2 a6 N5 a7 a2

0 a2
10 20 30 40 50 60 70 80 90
Hình 2.10. Cấu trúc Topology dữ liệu Vector Trục X

TOPOLOGY CỦA VÙNG TOPOLOGY CỦA CUNG


Nút Nút Vùng
Vùng Đường Đường Vùng phải
đầu cuối trái
A a1, a5, a3 a1 N1 N2 E A
B a2, a5, 0, a6, 0, a7 a2 N2 N3 E B
C a7 a3 N3 N1 E A
D a6 a4 N4 N1 A A
E Diện tích bên ngoài bản đồ a5 N3 N2 A B
a6 N5 N5 B B
a7 N6 N6 B C

TOPOLOGY CỦA NÚT DỮ LIỆU TOẠ ĐỘ CỦA ĐƯỜNG


Bắt đầu Trung gian Kết thúc
Nút Đường Đường
(x, y) (x, y) (x, y)
N1 a1, a3, a4 a1 45,63 87, 63 87, 53
N2 a1, a2, a5 a2 87, 53 87, 9; 11, 9 11, 26
N3 a2, a3, a5 a3 11, 26 11, 63 45, 63
N4 a4 a4 45, 63 31, 53 31, 42
N5 a6 a5 11, 26 27,28;40,35;63,40 87, 53
N6 a7 a6 30, 18 30, 18
a7 70, 26 73,17;46,17;54,27 70, 28

Hình 2.11. Cấu trúc các bảng topology


-32-
Topology là một phương pháp toán học dùng để xác định các quan hệ không gian.
Cấu trúc Topology còn được gọi là cấu trúc cung-nút (arc-node). Trong cấu trúc này,
phần tử cơ bản là cung. Mỗi cung được mô tả như là một chuỗi những đoạn thẳng nối
liền nhau, điểm đầu và cuối cung gọi là nút (node), những điểm giữa cung gọi là đỉnh
(vertex). Nút là điểm giao nhau của hai hay nhiều cung, đối với những cung độc lập, nút
là điểm cuối cùng của cung, không nối liền với bất kỳ cung nào khác. Vùng là một chuỗi
những cung nối liền nhau và khép kín, những cung này chính là đường biên của vùng.
Một vùng có thể được giới hạn bởi hai đường cong khép kín lồng vào nhau và không
cắt nhau.
Trong cấu trúc Topology, các đối tượng địa lý được mô tả trong bốn bảng, ba bảng
đầu lưu trữ các phần tử không gian vùng, nút, cung, bảng thứ tư lưu trữ tọa độ nút đầu,
nút cuối và đỉnh.
- Bảng Topology vùng xác định những cung làm đường biên của vùng, phần bên
ngoài bản đồ cũng được xem như một vùng không xác định cung đường biên.
- Bảng Topology nút xác định mỗi nút thuộc những cung nào.
- Bảng Topology cung xác định quan hệ của nút và vùng với cung.
Từ ba bảng này, ta có thể phân tích các quan hệ của các phần tử trong bản đồ.
Bảng thứ tư lưu trữ tọa độ của các cung bằng cách lưu trữ tọa độ của các nút và đỉnh
của cung, để từ đó vị trí của mỗi phần tử trên bản đồ được liên hệ với thế giới thực.
Cấu trúc Topology rất thích hợp với những toán tử phân tích không gian, nhất là những
bài toán kề (contiguity) và kết nối (connectivity). Trong đó, cấu trúc Topology định rõ
các liên kết.

Điểm Nút (Node)


(Point) (x,y) {Chỉ số nút,(x,y)}
Chuỗi
Đường Trái
(chain)
(Line) (x1,y1), (x2,y2) Kết thúc
Bắt đầu Phải

Chuỗi (String) {Chỉ số chuỗi, chỉ số nút bắt đầu và kết thúc, chỉ
số vùng trái và phải}
Vùng
(Polygon)
Vùng (Area)

{Chỉ số vùng, tập các chỉ số chuỗi nằm trong chuỗi theo chiều đồng hồ}
Hình 2.12. Dạng hình học và Topology của dữ liệu Vector

2.2.4. Những đặc điểm Topology của cấu trúc Vector


Cấu trúc Topology được dùng để phân tích một mạng bao gồm các nút và các
chuỗi, sau đây mô tả một cấu trúc dữ liệu Topology:
-33-
- Chuỗi bao gồm các trường sau: ID của chuỗi, ID nút bắt đầu, ID nút kết thúc, các
thuộc tính.
- Nút bao gồm các trường sau: ID của nút, toạ độ (x, y), các ID của các chuỗi kề
nó (dương nếu đi vào nút, âm nếu đi ra khỏi nút).
Bài toán phân tích không chỉ dựa trên mạng mà còn xét đến quan hệ giữa các
vùng cần bổ sung có các dạng hình học và Topology.

1 b
a 6

5 12
11
c 2

13 3

4 d
Hình 2.13. Tạo Topology

- Hình học của chuỗi:


Chuỗi Bắt đầu Các tọa độ Kết thúc
1
(Xa,Ya) (X,Y) ...... (X, Y) (Xb,Yb)
2 (Xb,Yb) (X,Y) ...... (X, Y) (Xc,Yc)

...
6 (Xc,Yc) (X,Y) ...... (X, Y) (Xc,Yc)

- Topology của nút:


Nút Chuỗi
a 1, -5, -4
b -1, 2, 6
c -2, 3, 5
d -3, 4, -7
- Topology của vùng:
Vùng Chuỗi
11 1, 2, 5

12
-2, 6, -3
13
4, -5, 3

-34-
- Topology của chuỗi:
Chuỗi Bắt đầu Kết thúc Vùng trái Vùng phải
1 a b 0 11
2 12 +
b c
... ..... 11
....
6 b d 0 11

Topology của vùng: ID của vùng, tập ID của các chuỗi.


Topology của chuỗi: ID của chuỗi, ID của nút bắt đầu, ID của nút kết thúc, ID
vùng bên trái, ID của vùng bên phải, (các thuộc tính).
2.3. ƯU NHƯỢC ĐIỂM CỦA CẤU TRÚC RASTER VÀ VECTOR
Hiện nay trên thị trường đa số các phần mềm GIS sử dụng dạng mô hình dữ liệu
Vector. Tuy nhiên, các phần mềm đều có các công cụ hỗ trợ để tích hợp cả hai loại dữ
liệu hoặc chuyển đổi qua lại với nhau. Thông thường là sự tích hợp dữ liệu Raster và
Vector, như sự tích hợp các ảnh viễn thám vào trong một lớp bản đồ Vector để phục
vụ mục tiêu nghiên cứu. Tóm tắt các ưu nhược điểm của hai loại mô hình như sau:
 Mô hình Raster
- Ưu điểm:
 Có cấu trúc dữ liệu đơn giản.
 Các thao tác chồng lớp dễ dàng và hiệu quả.
 Có thể sử dụng công nghệ quét ảnh để số hoá bản đồ nên giá thành thấp.
 Các kỹ thuật xử lý ảnh cho ra dữ liệu để tích hợp GIS ở dạng Raster.
 Phân tích diện tích và đa giác đơn giản.
 Hợp nhất và chồng lớp đơn giản.
 Kỹ thuật rẻ và ngày càng có lợi thế trong tương lai.
 Thích hợp tốt để chia nhỏ các thay đổi liên tục trong không gian.
- Nhược điểm:
 Dung lượng lưu trữ và xử lý dữ liệu lớn.
 Với độ phân giải thấp sẽ mất độ chi tiết.
 Bản đồ cuối cùng thường ở dạng thô, đặc biệt ở những phần mềm rẻ tiền.
 Phân tích tuyến tính khó khăn và khó thể hiện các mối quan hệ tôpô.
 Mô hình Vector
- Ưu điểm:
 Dữ liệu được nén một cách tương đối, nên yêu cầu dung lượng lưu trữ thấp.
 Các đặc tính có thể định vị chính xác.

-35-
 Tôpô có thể mô tả hoàn toàn với liên kết mạng.
 Các nét rất nhỏ có thể được hiển thị và tất cả các nét có thể được vẽ một
cách chính xác.
 Dữ liệu về các đặc tính có thể gọi ra dễ dàng để cập nhật và hiệu chỉnh.
 Phân tích tuyến tính dễ dàng.
- Nhược điểm:
 Cấu trúc dữ liệu phức tạp.
 Thao thác chồng lớp bản đồ khó khăn.
 Thể hiện sự biến đổi không gian cao không có hiệu quả.
 Không thể thực hiện thao tác xử lý và nâng cao các ảnh số có hiệu quả.
 Truy xuất dữ liệu chậm.
 Các phân tích vùng và đa giác khó khăn.
 Tốn kém cho việc tạo dữ liệu và cả bản quyền phần mềm.
2.4. MÔ HÌNH DỮ LIỆU MẠNG
Mô hình mạng của GIS là một trường hợp đặc biệt của mô hình dữ liệu topology,
được sử dụng để mô hình hóa dòng phân phối hàng hóa. Có hai dạng cơ bản của mô
hình dữ liệu mạng GIS: mô hình bán kính (radial) và vòng lặp (looped). Trong mô hình
bán kính hay còn gọi là mạng hình cây (tree network) luôn có hướng xuất phát là ngược
và xuôi dòng. Việc dự đoán dòng chảy của nước trong mưa bão để xác định vùng ngập
lụt là một ví dụ về mô hình mạng hình cây. Trong mô hình mạng vòng lặp sự tự giao
nhau xảy ra thường xuyên. Mạng lưới phân phối nước trong thành phố được lặp lại do
thiết kế để chắc chắn rằng ảnh hưởng của sự cúp nước cho khách hàng là ít nhất. Hình
dưới trình bày một ví dụ của một mạng đường phố. Mạng gồm có một tập hợp các nút
(các điểm giao nhau của đường phố) và các đường (đường phố).

Hình 2.14. Ví dụ mô hình dữ liệu mạng GIS áp dụng cho giao thông đô thị

-36-
Mối quan hệ Topology giữa các đặc trưng được xác định trong các bảng liên kết.
Nhờ thông tin hỗ trợ lưu giữ trong bảng liên kết có thể lần theo dòng xe cộ lưu thông qua
mạng và nghiên cứu sự ảnh hưởng của việc tắc đường. Sự cản trở giao thông của những
điểm giao nhau và đường phố sẽ xác định tốc độ lưu thông của dòng xe. Rõ ràng, tốc độ
của dòng xe sẽ tỷ lệ với giới hạn tốc độ của đường, số làn đường cho xe và thời gian đèn
đỏ ở các nút giao thông. Qua ví dụ liên quan đến đường phố, những nguyên tắc cơ bản
cũng được áp dụng cho các mạng điện, mạng cung cấp nước thành phố và đường sắt.
Có nhiều ứng dụng sử dụng mô hình dữ liệu mạng như: tìm đường đi ngắn nhất trên
mạng lưới giao thông, xác định vùng dịch vụ, thiết lập các thuộc tính cho đường đi…
2.5. MÔ HÌNH DỮ LIỆU MẠNG TAM GIÁC KHÔNG ĐỀU- TIN
Để xây dựng một cấu trúc dữ liệu trong đó chứa đựng yếu tố “độ cao” trên đất liền
hoặc “độ sâu” khi ứng dụng cho biển, người ta thường sử dụng khái niệm mô hình số
độ cao DEM (Digital Elevation Model) để diễn tả mô hình số độ cao của bề mặt trái đất.
Có nhiều thuật ngữ diễn tả khái niệm dữ liệu số địa hình như Dữ liệu số địa hình DTD
(Digital Terrain Data); Dữ liệu số địa hình độ cao DTED (Digital Terrian Elevation
Data). DEM có hai mô hình chính: mô hình ma trận độ cao theo lưới ô vuông kiểu GRID
và mô hình mạng tam giác không đều TIN (Triangulated Irregular Networks).

Tam giác Nút Lân cận


2
A 1, 2, 3 -, B, D

B 2, 4, 3 -, C, A
A B 4
1 C 4, 8, 3 -, G, B

C
D 1, 3, 5 A, F, E
D
E 3 E 1, 5, 6 D, H, -
5
F F 3, 7, 5 G, H, D
G 8
H G 3, 8, 7 C, -, F
6
H 5, 7, 6 F, -, E

7
Hình 2.15. Mô hình tôpô của TIN
Mô hình GID thể hiện quan hệ tôpô giữa các độ cao dạng đối tượng, các điểm độ
cao phân bố đều theo lưới ô vuông trong không gian. Thuật toán quản lý mô hình này
không phức tạp như mô hình TIN. Một trong những phần mềm quản lý dữ liệu GIS theo
mô hình GRID là phần mềm SURFER. Phương pháp GRID phân bố theo lưới không
-37-
phù hợp với địa hình phức tạp. Để có được độ chính xác mô hình này cần số lượng ghi
nhận rất lớn. Mô hình TIN sau đây khắc phục được những nhược điểm trên.
Mô hình TIN gồm một loạt các tam giác không chồng lên nhau, mỗi tam giác xác
định một mặt phẳng, các bề mặt này bao phủ lên toàn bộ bề mặt địa hình (Hình 24). Các
tam giác luôn có 3 nút và thường có 3 tam giác lân cận, riêng tam giác ở các vùng biên
của TIN có thể có một hoặc hai tam giác lân cận. Mỗi đỉnh của một tam giác được mã
hoá toạ độ cùng với độ cao của nó. Với khái niệm như trên TIN là một mô hình 2.5-D
có độ phân giải chi tiết tuỳ thuộc vào độ chính xác của TIN gốc. Khi mở rộng khái niệm
ảnh Raster 2-D thành không gian 3-D cần phải bổ sung kích thước chiều cao, khi đó các
ô pixel phẳng trở thành các khối lập phương và được gọi là voxels (volume elements).
Hệ tham chiếu địa lý và các thuộc tính có thể gán trong các cấu trúc dữ liệu Raster. Khái
niệm về voxels rất cần thiết trong nghiên cứu GIS biển và nghề cá.
2.6. DỮ LIỆU THÔNG TIN QUẢN LÝ DỮ LIỆU (METADATA)
Dữ liệu GIS cần được mô tả nguồn gốc và độ chính xác của các lớp để có thể
tương thích với nhiều hệ GIS. Dữ liệu mô tả này được gọi là dữ liệu về dữ liệu (metadata)
hay tài liệu về dữ liệu. Tập dữ liệu nào không có tài liệu về dữ liệu là không có giá trị.
Hiện nay, ta có thể nhận dữ liệu kèm theo báo cáo chất lượng của chúng từ người cung
cấp, nó mô tả chính xác nội dung các tệp, thông tin được thu thập từ đâu, cách thức thu
thập, dữ liệu đã được kiểm tra ra sao. Nếu không đầy đủ tài liệu về dữ liệu thì phải tìm
hiểu để trả lời các câu hỏi sau:
- Dữ liệu có từ bao giờ?
- Dữ liệu xuất xứ từ đâu?
- Phát sinh dữ liệu bằng phương tiện gì?
- Dữ liệu của vùng nào?
- Tỷ lệ bản đồ của dữ liệu?
- Phép chiếu, hệ trục toạ độ, mốc đo đạc sử dụng trong bản đồ?
- Độ chính xác của đặc trưng vị trí và thuộc tính?
- Tính logic và phù hợp của dữ liệu?
- Khuôn mẫu của dữ liệu?
- Dữ liệu được kiểm tra bằng cách nào?

CÂU HỎI ÔN TẬP CHƯƠNG 2


1. Trình bày mô hình dữ liệu Vector, Raster? Ưu nhược điểm?
2. So sánh mô hình Raster và với Vector (ưu, nhược điểm).
3. Trình bày các phương pháp nén dữ liệu Raster, nêu ưu và nhược điểm của mỗi
phương pháp.

-38-
CHƯƠNG 3
THU THẬP, TỔ CHỨC VÀ XÂY DỰNG DỮ LIỆU GIS

3.1. THU THẬP DỮ LIỆU KHÔNG GIAN


Để GIS hoạt động có hiệu quả các dữ liệu thu thập sau khi thu thập vào được xử
lý sơ bộ trước khi thực hiện các thao tác trên chúng.
Thu thập số liệu được thực hiện bằng nhiều phương pháp khác nhau từ các nguồn
như bảng biểu, từ các tài liệu có sẵn, ảnh tư liệu nhờ các thiết bị không ảnh, số hóa từ
các bản đồ có sẵn thông qua kết quả đo trực tiếp hay xử lý số liệu có sẵn.
3.1.1. Thu thập dữ liệu
Để các thao tác phân tích trên dữ liệu địa lý cho kết quả có chất lượng cao, dữ liệu
phải được thu thập, nhận diện và đo đạc vào cùng thời điểm, cùng độ phân giải không
gian, sử dụng cùng một thủ tục nhận diện và được nhập vào hệ thống GIS theo cùng một
phương pháp. Tuy nhiên, trong thực tế việc thu thập dữ liệu lại được thực hiện vào
những thời điểm khác nhau và thường có độ phân giải khác nhau. Có dữ liệu được thu
thập bằng cách đo đạc trực tiếp trong khi dữ liệu được thu thập từ bản đồ có sẵn. Nhưng
trong mọi trường hợp việc thu thập tọa độ vị trí các đối tượng và thu thập các thuộc tính
của chúng phải tiến hành vào cùng thời điểm.
Nhập dữ liệu là công việc tốn kém thời gian nhất trong thao tác GIS, thường tốn
đến 80% ngân sách của một dự án. Vì thế, người ta thường sử dụng tối đa nguồn dữ liệu
có sẵn từ các công ty hay tổ chức khác.
Có hai nhóm phương pháp thu thập dữ liệu. Nhóm thứ nhất là thu thập dữ liệu từ
chính các đối tượng, phương pháp này cho kết quả chính xác nhưng chi phí cao. Đó là:
- Trắc địa mặt đất.
- Phương pháp định vị bằng vệ tinh (GPS).
- Chụp ảnh bằng máy bay hay vệ tinh.
Nhóm thứ hai là thu thập dữ liệu từ các nguồn số hóa hay tương tự có sẵn, dữ liệu
thu thập được từ nhóm phương pháp này ít chính xác, chi phí thấp. Đó là:
- Số hoá bằng tay các bản đồ giấy.
- Số hoá tự động bản đồ giấy bằng máy quét.
- Sử dụng các CSDL bản đồ số hóa có sẵn.
3.1.2. Các nguồn thu thập dữ liệu
Dữ liệu GIS có thể thu thập từ nhiều nguồn khác nhau, nhiều dạng khác nhau và
được lưu dưới nhiều phương pháp khác nhau.
Các phương pháp thu thập dữ liệu

Toàn
Chuyển Viễn
Số hóa Ảnh Quét đạt điện GPS
đổi thám
tử

-39-
3.2. TỔ CHỨC DỮ LIỆU
Cơ sở dữ liệu GIS gồm hai phần: dữ liệu không gian (thông tin địa lý/ thông tin
hình học) của các đối tượng và dữ liệu thuộc tính (thông tin phi không gian/ thông tin
phi địa lý). Giữa dữ liệu không gian và dữ liệu thuộc tính phải được liên kết với nhau.
Một đối tượng trong bản đồ sẽ liên kết với một bản ghi trong dữ liệu thuộc tính. Do đó
khi tìm kiếm được một đối tượng không gian trên bản đồ ta có thể xem ngay dữ liệu
thuộc tính tương ứng với nó ngược lại thao tác truy vấn theo dữ liệu thuộc tính, ta cũng
có thể tìm được đối tượng không gian tương ứng trên bản đồ. Quan hệ giữa dữ liệu
không gian và dữ liệu thuộc tính có thể được mô tả như hình sau:
ID TEN SH LOAI

01 P1

02 A1 Thu Tôm

03 A2 Hồng Rau

04 L1 Đường

Hình 3.1. Sơ đồ quan hệ giữa dữ liệu không gian và dữ liệu thuộc tính

Dữ liệu không gian là biểu diễn hình học của các đối tượng địa lý liên kết với vị
trí trên thế giới thực. Những đối tượng địa lý có thể được biểu diễn dưới dạng điểm,
đường hoặc vùng.
Dữ liệu thuộc tính là những thuộc tính mô tả đặc điểm của các đối tượng địa lý.
3.2.1. Tổ chức dữ liệu không gian
Dữ liệu GIS được tổ chức theo từng lớp và theo từng chủ đề riêng biệt. Việc phân
lớp dựa vào tính chất của dữ liệu như: lớp địa hình, lớp thuỷ văn, lớp đường giao thông,
lớp dân cư, lớp thức phụ, lớp giới hành chính,v.v… Trong nhiều trường hợp để quản lý
chi tiết hơn, sẽ phân lớp chuyên biệt hơn như lớp thuỷ văn được phân thành các lớp con:
lớp sông lớn, sông nhỏ, lớp biển, lớp ao hồ,v.v…Hầu hết các phần mềm GIS đều có
chức năng lưu trữ dữ liệu theo từng lớp và theo loại đối tượng: điểm, đường, vùng và
tuỳ theo phần mềm mà có tên gọi khác nhau cho các lớp chủ đề khác nhau, ví dụ trong
phần mềm Arcview gọi là Theme, Arc/Info gọi là Coverage, MapInfor gọi là Table,
ArcGIS gọi là Layer…
Các dữ liệu ở dạng raster là các thông tin nguồn và các thông tin hỗ trợ, không
gian quản lý như một đối tượng địa lý. Các thông tin ở dạng vector tham gia trực tiếp
quản lý và được định nghĩa như những đối tượng địa lý. Các đối tượng này thể hiện ở 3
dạng: điểm, đường và vùng hoặc miền.
Dữ liệu dạng điểm dùng để biểu diễn các đối tượng không gian quá nhỏ, không thể
diễn giải bằng một đường hoặc một vùng. Điểm được đại diện để xác định vị trí của đối
tượng như điểm dân cư, vị trí thành phố, nhà máy, xí nghiệp, trường học,…
Dữ liệu không gian dạng đường dùng để biểu diễn các đối tượng có dạng tuyến,
dài và hẹp, đối tượng không thể thể hiện như một vùng, ví dụ như đường giao thông,
đường ranh giới, sông suối,…

-40-
Dữ lieu không gian dạng vùng dùng để biểu diễn các đối tượng có bề mặt đồng nhất
như vùng hành chính quốc gia, tỉnh, huyện, xã, vùng núi, vùng biển, vùng sản xuất nông
nghiệp, lâm nghiệp,…
Tùy thuộc vào mục đích sử dụng mà ta có thể quyết định đối tượng được biểu diễn
dưới dạng điểm, đường hay vùng cho từng loại dữ liệu nền hay dữ liệu chuyên đề. Kết
quả của việc thiết kế dữ liệu không gian là danh sách các lớp dữ liệu nhằm đáp ứng yêu
cầu sử dụng. Ví dụ sau đây là danh sách các lớp dữ liệu không gian của dữ liệu chuyên
đề cho hệ thống GIS sơ đồ địa bàn phường Vĩnh Thọ.
Bảng 3.1. Danh sách các lớp dữ liệu chuyên đề

STT Tên lớp Kiểu dữ liệu Mô tả Tên lớp


1 Todanpho.shp Polygon Là địa phận các tổ dân phố Tổ dân phố
2 Dgt.shp Line Đường giao thông của phường Đường giao
thông
3 Hgd.shp Point Điểm các nhà của hộ gia đình Hộ gia đình
4 Ks.shp Point Điểm các khách sạn Khách sạn
5 Cskd.shp Point Điểm các cơ sở tư nhân Cơ sở kinh
doanh tư
nhân
6 diavat.shp Point Điểm các đơn vị hành chính Địa vật
như: trường học, UBND
phường, đồn công an…
Dữ liệu về từng lớp sẽ được thiết kế ở mô hình dữ liệu thuộc tính.
3.2.2. Tổ chức dữ liệu thuộc tính
Dữ liệu thuộc tính đóng vai trò giải thích cho các đối tượng không gian và được tổ
chức gắn liền với dữ liệu không gian. Dữ liệu thuộc tính được tổ chức phổ biến dưới
dạng bảng theo dòng và cột. Mỗi cột là một trường (field) và mỗi dòng là một bản ghi
(record). Các trường gồm các kiểu dữ liệu: Text (Văn bản), Number (Số), gồm có byte,
số nguyên (integer), số thập phân (decimal), số thực (float), Date (Ngày, tháng), Time (Thời
gian), Logical (logic) (True/ False)…
Như các CSDL kiểu quan hệ khác, thông tin thuộc tính của GIS có đầy đủ các toán
tử tính toán, toán tử quan hệ, các hàm về chuỗi, các hàm thống kê, các câu lệnh của ngôn
ngữ truy vấn SQL v.v. Ngoài ra, chúng còn các phép tính về hình học như xác định diện
tích, chu vi, chiều dài, tọa độ trọng tâm của các đối tượng hình học,v.v...
Dữ liệu thuộc tính của các đối tượng không gian được tổ chức thành cơ sở dữ liệu
và được quản lý bởi một hệ quản trị cơ sở dữ liệu (DBMS). Cơ sở dữ liệu thuộc tính có
thể được xây dựng theo các loại mô hình: mô hình thực thể kết hợp, mô hình phân cấp,
mô hình mạng, mô hính hướng đối tượng... hay mô hình quan hệ. Trong đó, mô hình
quan hệ được sử dụng phổ biến nhất.
3.3. SỐ HÓA BẢN ĐỒ
Bản đồ được thành lập theo công nghệ truyền thống thể hiện nội dung lên mặt
phẳng thông dụng là mặt phẳng giấy. Sản phẩm dạng này gọi là phiên bản cứng (hard
copy). Nhiệm vụ của công nghệ thành lập bản đồ số từ phiên bản cứng là biến đổi phiên

-41-
bản cứng thành phiên bản mềm (soft copy). Quá trình này gọi tắt là số hóa bản đồ, là
tiến trình chuyển đổi các đối tượng trên bản đồ giấy sang dạng số.
Ta có thể số hoá bản đồ giấy bằng bàn số hóa hoặc nhập bản đồ bằng máy quét. Số
hoá bằng bàn số hóa là tiến trình ghi lại vị trí của trình tự các điểm đặc trưng dọc theo
đường trên bản đồ. Phương pháp này cho kết quả dưới dạng bản đồ vectơ 2D. Còn kết
quả của việc nhập bản đồ bằng máy quét là số liệu Raster. Nếu sử dụng công cụ phần
mềm chuyển đổi Raster sang vectơ ta cũng có số liệu bản đồ vectơ 2D. Một trong các
đặc trưng quan trọng của dữ liệu bản đồ là độ chính xác, nó phụ thuộc vào độ chính xác
của bản đồ giấy và quá trình số hoá hay quét bản đồ.
Khi số hoá một bản đồ, ta sử dụng một bàn số hoá đã được kết nối với máy tính để
đồ lại các đối tượng muốn số hóa. Các toạ độ x, y của đối tượng đó được ghi lại một
cách tự động và được lưu trữ như dữ liệu không gian. Ta có thể tạo ra một lớp dữ liệu
hoàn toàn mới, hay có thể cập nhật dữ liệu cho một lớp dữ liệu đang tồn tại.
Bản đồ dùng để số hóa phải rõ ràng, dữ liệu được cập nhật, phẳng và không nhàu
nát hoặc bị co giãn do thời tiết thay đổi,…
Việc số hóa phải đảm bảo các yêu cầu sau:
- Đảm bảo các liên kết tồn tại giữa các điểm.
- Các đường song song vẫn còn song song.
- Bảo toàn các vị trí tương đối.
- Bảo toàn các vị trí tuyệt đối (thông qua toạ độ)
- Bảo toàn tính liền kề.
- Các đường gần sát nhau không được cắt nhau.
Trước khi số hóa các đối tượng trên bản đồ, cần phải cố định bản đồ gốc, gọi là
đăng ký toạ độ của bản đồ bằng cách khai báo tọa độ thực của các điểm khống chế.
3.3.1. Tỉ lệ bản đồ
Tỉ lệ bản đồ là mức độ thu nhỏ đối tượng trên mặt đất khi biểu diễn trên bản đồ.
Thí dụ, nếu chúng ta vẽ một con đường dài 4,8 km trên thực tế thành một đường
dài 20 cm trên bản đồ, tương ứng với tỉ lệ 20 cm: 4,8 km ~ 20 cm: 480.000 cm. Vậy tỉ
lệ của bản đồ là 1:24.000 (1 cm trên bản đồ tương ứng với 24.000 cm ngoài thực tế).
Tỉ lệ bản đồ được thể hiện bằng nhiều cách: dạng số (1:10.000), dạng chữ (1 cm
trên bảng đồ tương ứng 10.000 cm ngoài thực địa), dạng thước.
Kích thước của những đối tượng trên các bản đồ tỉ lệ nhỏ (1:1.000.000; 1:
500.000;…) sẽ nhỏ hơn các đối tựơng trên bản đồ tỉ lệ lớn (1: 2.000; 1: 1.000; 1: 500;
…). Một cách tổng quát, những bản đồ tỉ lệ nhỏ biểu diễn những vùng rộng lớn trên mặt
đất nhưng có sự phân giải không gian thấp, vì vậy biểu diễn ít chi tiết. Ngược lại, những
bản đồ tỉ lệ lớn biểu diễn những vùng mặt đất nhỏ nhưng có độ phân giải không gian
cao, vì vậy biểu diễn chi tiết hơn.
3.3.2. Chọn lưới chiếu bản đồ
Lưới chiếu bản đồ là một phép toán học để chuyển đổi bề mặt cong của trái đất
thành mặt phẳng bản đồ. Không có một mặt phẳng nào biểu diễn trái đất được thiết kế

-42-
hoàn toàn chính xác, do đó có nhiều loại lưới chiếu khác nhau ra đời phục vụ cho nhiều
mục đích khác nhau.
Mỗi lưới chiếu có thể xác định cho một loại thuộc tính của bề mặt như lưới chiếu
đồng góc, lưới chiếu đồng diện tích, v.v…
Những vấn đề cần xem xét khi chọn lưới chiếu
- Những thuộc tính không gian nào cần bảo tồn.
- Dữ liệu không gian nằm ở khu vực nào: vùng cực hay vùng xích đạo.
- Hình dáng của dữ liệu: hình vuông hay trải rộng theo hướng Đông-Tây.
- Diện tích bao phủ của bản đồ lớn bao nhiêu?
3.4. GIỚI THIỆU PHẦN MỀM ARCVIEW
Hiện nay, có nhiều phần mềm GIS, phần mềm thương mại và phần mềm nguồn
mở. Trong đó, với đặc tính đơn giản, nhỏ gọn, dễ cài đặt, ArcView khá phù hợp cho
việc sử dụng giảng dạy ở các trường đại học, cao đẳng hiện nay. Vì vậy, các thao tác
cần minh họa trong tài liệu này sẽ minh họa trên Arcview. ArcView là phần mềm ứng
dụng công nghệ Hệ thống thông tin địa lý (GIS) của Viện nghiên cứu hệ thống môi
trường (ESRI), dùng cho máy tính để bàn. Do đó, có thể cài đặt để thực hiện những dự
án GIS nhỏ hoặc làm những bài thí nghiệm GIS. ArcView GIS hỗ trợ gần như đầy đủ
các chức năng phân tích cơ bản của GIS như: thu thập dữ liệu, lưu trữ dữ liệu, phân tích
dữ liệu, và hiển thị/kết xuất dữ liệu, thông qua hệ thống Menu, Buttons (nút lệnh), và
Tools (nút công cụ). Ngoài ra, ArcView GIS là có khả năng mở rộng chức năng thông
qua các Extensions.

Hình 3.2. Chương trình ArcView GIS chạy trên nền Windows
-43-
Các chức năng cơ bản của ArcView GIS bao gồm:
- Tạo và chỉnh sửa dữ liệu tích hợp (dữ liệu không gian tích hợp với dữ liệu thuộc
tính).
- Truy vấn dữ liệu thuộc tính từ nhiều nguồn và bằng nhiều cách khác nhau.
- Hiển thị, truy vấn và phân tích dữ liệu không gian.
- Tạo biểu đồ, bản đồ chuyên đề và tạo ra các bản đồ in có chất lượng trình bày cao.
- Các đoạn chương trình phục vụ cho việc tự động hóa các thao tác trong ArcView.
Ngoài ta, còn có thể nghiên cứu các chức năng mở rộng như: Đọc các định dạng
ảnh khác, tạo các hộp thoại (giao diện đồ họa người sử dụng), phân tích không gian,
phân tích mạng lưới, Phân tích 3D…
Đặc biệt, ArcView hỗ trợ môi trường lập trình khá tốt, cho phép lập trình dạng
Script thông qua ngôn ngữ Avenue. Avenue là dạng ngôn ngữ lập trình hướng đối tượng.
ArcView GIS cũng có khả năng cho phép lập trình liên kết với các ngôn ngữ khác như
VB, VC++. Người dùng có thể tương tác với ArcView bằng các thư viện động (*.dll).
Với Avenue, người dùng có thể thực hiện những dự án GIS vừa và nhỏ.
3.4.1. Các khái niệm cơ bản trong Arcview
- Project (dự án): lưu trữ 5 loại tài liệu tương ứng với 5 cửa sổ làm việc:
 View (khung nhìn),
 Tables (bảng biểu),
 Charts (biểu đồ),
 Layouts (trang in),
 Scripts (kịch bản-ngôn ngữ lập trình Avenue).
File Project có đuôi .apr lưu đường dẫn đến các tập tin trong Project.
- View (khung nhìn):
 Là nơi lưu trữ, tạo và hiển thị ảnh bản đồ trong một Project, là cửa sổ hiển thị
và làm việc với dữ liệu không gian. Mỗi view có thể có nhiều lớp dữ liệu
khác nhau (Theme).
 Là một bản đồ tương tác để hiển thị, khai thác, truy vấn và phân tích dữ liệu
địa lý.
 Trong mỗi View có một Table of Contents (bảng nội dung - TOC) liệt kê
danh sách tên các Theme (lớp thông tin, lớp bản đồ, lớp chủ đề). Arcview sử
dụng TOC để kiểm soát việc hiển thị của các Theme.
- Theme (chủ đề): Một theme là một lớp dữ liệu chỉ chứa một dạng đối tượng:
điểm, đường hoặc vùng. Mỗi một theme tương ứng là một file dữ liệu của
Arcview có thể là shape file (*.shp); image (*.tif, *.jpj); Grid, hoặc TIN.
 Shapefile: là định dạng chuẩn của Arcview, lưu trữ dữ liệu Vector. Mỗi một
Shape file chứa một dạng dữ liệu duy nhất dưới dạng điểm, đường, hoặc vùng.
 Image: là file dữ liệu dạng ảnh. Các định dạng ảnh thông thường của window
như *.bmp, *.tif, *.jpg đều mở trực tiếp được trong Arcview.
-44-
 Grid: là một dạng dữ liệu Raster mô tả một bề mặt mang giá trị liên tục. Giá
trị mỗi ô lưới (cell) là giá trị của bề mặt tại vị trí đó.
 TIN: Tương tự Grid nhưng theo dạng lưới tam giác không đều.
- Tables (bảng): là nơi lưu trữ, tạo và hiển thị bảng thuộc tính chứa các thông tin
về các đối tượng không gian hoặc có thể là một bảng cơ sở dữ liệu.
- Charts (biểu đồ): là nơi lưu trữ, tạo và hiển thị biểu đồ.
- Layouts (trang in): là nơi lưu trữ, tạo và hiển thị bản đồ đã được biên tập để
chuẩn bị in. Layout chứa: bản đồ, chú giải, tiêu đề, thước tỉ lệ, mũi tên chỉ
hướng,…
- Scripts: tạo và thi hành ngôn ngữ hướng đối tượng Avenue. Với ngôn ngữ lập
trình của Arcview là Avenue, ta có thể biến đổi các chức năng, cách hiển thị của
Arcview, xây dựng mới các ứng dụng phục vụ quản lý chuyên ngành.
3.4.2. Giao diện và các công cụ sử dụng chính trong phần mềm Arcview

Menu
Buttons
Tools

Hình 3.3. Công cụ trong Arcview


- Nút (Buttons): Khi click vào một nút trên thanh buttons, lập tức chức năng của
nút đó sẽ được thực hiện ngay.
- Thanh công cụ (Tools): Click vào một nút trên thanh tools, chức năng của công
cụ đó sẽ không được thực hiện ngay mà phải chờ khi có yêu cầu tiếp theo.
Bảng 3.2. Một số chức năng trong Arcview
Nút Chức năng
Add theme: Thêm một chủ đề vào cửa sổ hiển thị

Theme properties: Đặt tên chủ đề, chọn vị trí đặt nhãn cho chủ đề, đặt môi
trường hiển thị, liên kết cho chủ đề, …
Edit legent: Chỉnh sửa chế độ chú giải cho các chủ đề và hiển thị chú giải
này trong TOC.
Open theme table: Mở bảng thuộc tính của chủ đề đang được kích hoạt

Find: Tìm kiếm một đối tượng cụ thể trên bản đồ khi biết được thuộc tính
của chúng.
Query buider: Truy vấn đối tượng trên bản đồ bằng cách sử dụng biểu thức
truy vấn.
Zoom to full extent: Nếu bản đồ đang được phóng to hoặc thu nhỏ ở một chế
độ hiển thị nào đó, click vào nút này để đưa tất cả các chủ đề trong view về
chế độ hiển thị toàn bộ trên màn hình.

-45-
Zoom to active themes: Đưa một chủ đề đang được kích hoạt về chế độ hiển
thị toàn bộ trên màn hình. Chủ đề đang được kích hoạt là chủ đề có hình chữ
nhật nổi bao quanh tên và chú giải của chủ đề trong TOC.
Zoom to selected: Phóng to đối tượng đang được chọn và hiển thị tại trung
tâm màn hình.

Zoom in: Phóng to dần tất cả các chủ đề đang hiển thị trên màn hình từ tâm
màn hình hiển thị của cửa sổ view.
Zoom out: Thu nhỏ dần tất cả các chủ đề đang hiển thị trên màn hình từ tâm
màn hình hiển thị của cửa sổ view.…

3.5. TẠO VÀ HIỆU CHỈNH DỮ LIỆU KHÔNG GIAN


3.5.1. Đăng ký tọa độ bản đồ
Trước khi tiến hành tạo dữ liệu không gian từ ảnh bản đồ, ta phải thực hiện đăng
ký tọa độ ảnh bản đồ đó. Để thực hiện, phải nạp Extensions có tên Image Analysis bằng
cách vào menu File  Extensions  chọn Image Analysis.
 Trường hợp 1: Đã có lớp dữ liệu chuẩn đúng tọa độ, đăng ký ảnh bản đồ theo tọa
độ lớp dữ liệu này. Các bước thực hiện như sau:
- Mở View mới  Add Theme: chọn ảnh cần đăng ký toạ độ theo các thông số
như hình sau:

Hình 3.4. Nạp ảnh bản đồ cần đăng ký toạ độ


Chú ý: Data Source Types: phải chọn là Image Analysis Data Source. Mục này
chỉ hiển thị khi đã nạp Extensions là Image Analysis.
- Thêm lớp dữ liệu chuẩn đã đúng tọa độ: Add Theme: Chọn lớp dữ liệu để làm
cơ sở đăng ký tọa độ (dạng điểm, .shp).
- Phóng to ảnh quét để xác định chính xác điểm trong ảnh trùng với điểm trong
lớp dữ liệu chuẩn .shp. (Các điểm này được gọi là điểm khống chế).
- Click chọn công cụ Align Tool , Click vào điểm trong ảnh và Click tiếp vào
điểm trong lớp dữ liệu chuẩn.shp. Lưu trữ ảnh sau khi đã được nắn chỉnh hình
học: Theme  Save Image As. Chọn lớp các điểm khống chế  Theme 
Convert to Shapefile để lưu các điểm khống chế thành một lớp dữ liệu.
 Trường hợp 2: Chưa có lớp dữ liệu chuẩn đúng tọa độ, ta phải xác định tọa độ
thực của khoảng 4 điểm ở góc bản đồ (có thể sử dụng Google Map), tiếp tục thực
hiện các bước sau:

-46-
- Tạo View mới  Add Theme: chọn ảnh cần đăng ký toạ độ tương tự như trường
hợp 1.
- Click chọn công cụ Align Tool , R-Click vào điểm trong ảnh  Enter ‘To’
Coordinate… rồi nhập dữ liệu tọa độ X và tọa độ Y vào.
- Lưu trữ ảnh sau khi đã được nắn chỉnh hình học: Theme  Save Image As.
- Chọn lớp các điểm khống chế  Theme  Convert to Shapefile để lưu các
điểm khống chế thành một lớp dữ liệu
Để có thể đảm bảo độ chính xác, nên thực hiện đăng ký tọa độ cho 4 điểm ở 4 góc
bản đồ.
3.5.2. Đặt thông số cho View
- Project, chọn menu View  New.
- Chọn menu View  Properties, hộp thoại xuất hiện:
 Name: đặt tên View.
 Creator: tên người tạo View.
 Map Units (Đơn vị bản đồ): Meters.
 Distance Units (Đơn vị khoảng cách): Kilometers.
- Click vào Projection, xuất hiện hộp thoại:
 Chọn Standard.
 Trong mục Category: chọn Projection of the World.
 Trong mục Type: chọn Geographic.
3.5.3. Tạo dữ liệu không gian
Dựa trên bản đồ địa hình dạng ảnh Raster, các đối tượng có ký hiệu điểm để tạo
lớp điểm. Thao tác thực hiện như sau:
- Mở View mới  Add Theme  Chọn tập tin hình ảnh bản đồ. Data Source
Type: Chọn Image Data Source, giả sử chọn tập tin hinh1.bmp  OK.

Hình 3.5. Mở bản đồ nền để tạo dữ liệu không gian


- View  New Theme  Point  OK.

Hình 3.6. Tạo lớp dữ liệu mới


-47-
- Đặt tên cho lớp dữ liệu này.
- Chọn công cụ vẽ điểm , click chuột từng vị trí để tiến hành tạo dữ liệu
dạng điểm cho lớp dữ liệu này.

Dùng công cụ Pointer để rê điểm đến vị trí khác khi muốn chỉnh sửa dữ liệu.
Sau khi tạo xong dữ liệu, chọn Stop Editting từ menu Theme để lưu, lớp dữ liệu
sẽ được lưu với dạng Shapefile .shp, đặt tên là Diavat.shp.
Muốn hiệu chỉnh dữ liệu: Theme  Start Editting.
Thực hiện tương tự với kiểu chọn là Line nhưng chọn Point cho dạng đường và
Polygon cho dạng vùng.
Dựa trên bản đồ địa hình dạng ảnh Raster, các đối tượng có ký hiệu điểm để tạo
lớp điểm. Thao tác thực hiện như sau:

Chọn công cụ vẽ thích hợp để vẽ:

Vẽ các đối tượng đường thẳng


Vẽ các đối tượng đường tự do
Vẽ đối tượng hình chữ nhật
Vẽ đối tượng hình tròn
Vẽ các đối tượng đa giác tự do
Công cụ chỉnh sửa các đối tượng
Cắt một vùng để phân thành 2 hay nhiều vùng nhỏ (Polygon Split)
Vẽ vùng có chung biên với vùng cũ (Autocomplete)

Khi tạo các đối tượng dạng đường ta thường gặp hiện tượng các đường không
được bắt dính khớp với nhau, đường này chồng chéo lên đường kia (overshot) hoặc chưa
dính sát với nhau (undershot). Vì vậy, trước khi vẽ cần phải đặt môi trường bắt dính
nhằm tạo ra một khoảng cách cho phép để các nút đầu và nút cuối cuả các đường nằm
gần nhau trong khoảng cách đó sẽ tự động bắt dính vào nhau.Có 2 loại sau đây:
- Đặt môi trường General Snapping: nếu muốn tất cả các đường tạo ra sẽ tự động
bắt dính vào nhau trong một khoảng cách cho phép.
- Đặt môi trường Interactive Snapping: nếu muốn kiểm soát cách bắt dính của từng
đối tượng đường.
 Đặt môi trường bắt dính General: có 2 cách
- Nhập chỉ định một khoảng cách từ bàn phím:
 Kích hoạt chủ đề muốn đặt môi trường bắt dính trong TOC.
 Kích vào nút Theme Properties

-48-
 Hộp thoại xuất hiện, click vào biểu tượng Editing, sau đó chọn chế độ bắt
dính General và nhập giá trị cho khoảng cách bắt dính vào trường Tolerance.
 Nhấn OK.

Hình 3.7. Đặt chế độ bắt dính với khoảng cách chỉ định
- Sử dụng chuột:
+ R-Click trong cửa sổ View  Menu Popup xuất hiện  Enable General
Snapping.

Hình 3.8.Bật tính năng đặt chế độ bắt dính bằng chuột

- Click vào công cụ Snap , các công cụ khác sẽ hiện ra, chọn công cụ General
Snap .
- Đưa trỏ chuột vào trong cửa sổ View, click giữ chuột và kéo rê một khoảng
cách, xuất hiện vòng tròn, bán kính của vòng tròn là khoảng cách bắt dính cho phép

-49-
 Đặt môi trường bắt dính Interactive:
- Nếu chọn môi trường bắt dính Interactive, trong quá trình vẽ phải đặt chế độ bắt
dính cho từng đối tượng.
- Có 4 chế độ lựa chọn khi sử dụng môi trường bắt dính này:
 Snap to vertex: Bắt dính đến đỉnh gần nhất của một đường hiện có.
 Snap to boundary: Bắt dính đến điểm gần nhất của đoạn đường hiện có
 Snap to Intersection: Bắt dính đến nút gần nhất, nút này là giao điểm của 2
hoặc nhiều đường
 Snap to Endpoint: Bắt dính đến nút cuối của một đoạn đường.

Hình 3.9.Đặt chế độ bắt dính bằng chuột


Tương tự như môi trường bắt dính General, có 2 cách đặt môi trường bắt dính
Interactive như sau:
- Nhập chỉ định khoảng cách từ bàn phím: tương tự như khi đặt chế độ General,
chỉ khác là chọn chế độ Interactive trong hộp thoại Theme Properties.
- Sử dụng chuột: tương tự như khi đặt chế độ General, chỉ khác là chọn Enable
Interactive Snapping và chọn nút công cụ Interactive Snap.
Chú ý:
- Hai điểm đầu và cuối của một đường gọi là nút (node), những điểm dừng ở giữa
đoạn đường gọi là đỉnh (vertex).
- Cách đặt chế độ bắt dính Interactive: Sau khi chọn công cụ vẽ, đưa trỏ chuột
vào View, click nút phải chuột và tiến hành chọn chế độ bắt dính thích hợp.
 Tạo đối tượng dạng đường hoặc vùng:
- Kích vào công cụ Drawing chọn công cụ thích hợp để vẽ.
- Đưa chuột click vào điểm bắt đầu trên bản đồ, tiến hành vẽ từng đỉnh sau đó kích
đôi ở điểm cuối cùng để kết thúc.
3.5.4. Hiệu chỉnh dữ liệu không gian
 Cắt và nhập đường:

-50-
- Cắt: Sử dụng công cụ Line Split để tạo ra đường mới cắt ngang những
đường khác.
- Nhập: Sử dụng công cụ pointer kết hợp với phím Shift, chọn tất cả những
đoạn đường cần nhập lại thành một  Menu Edit  Union Features.
 Hiệu chỉnh dữ liệu không gian dạng đường:

Sử dụng công cụ Vertex Edit để hiệu chỉnh hình dạng đường bằng cách thêm,
xoá và sửa các đỉnh của đường.
- Di chuyển một đỉnh: Đưa con trỏ đến đỉnh muốn di chuyển, con trỏ xuất hiện dấu
+, click giữ phím trái của chuột và kéo đỉnh đó đến vị trí mới
- Thêm đỉnh mới: Di chuyển con trỏ đến nơi muốn thêm đỉnh mới, khi con trỏ xuất
hiện dấu +, Click chuột để thêm đỉnh mới.
- Xoá đỉnh: Đưa con trỏ đến đỉnh vị trí của đỉnh muốn xoá, khi con trỏ xuất hiện
dấu +, nhấn Delete trên bàn phím.
 Tạo vùng trống nhỏ bên trong một vùng lớn
- Vẽ một vùng bất kỳ lên trên vùng muốn tạo vùng rỗng.
- Dùng công cụ Pointer chọn cả hai vùng.
- Chọn chức năng Combine Feature từ Menu Edit.
 Huỷ bỏ phần giao nhau giữa hai hay nhiều vùng:
- Dùng công cụ Pointer chọn cả hai vùng.
- Edit  Subtract Feature.
 Giữ lại phần giao nhau của hai vùng, bỏ đi những phần mà hai vùng không
giao nhau:
- Chọn các vùng muốn hiệu chỉnh.
- Edit  Intersect Feature.
3.5.5. Thêm những điểm được tạo bởi những tọa độ (x,y) vào bản đồ
Tạo lớp dữ liệu không gian các điểm quan
trắc không khí từ những số liệu về tọa độ của các
điểm quan trắc được thu thập thông qua quá trình
thu thập dữ liệu ngoài thực địa.
- Project  Tables Add.
- Chọn bảng dữ liệu qtrac_kk.bdf.
- Tạo View mới để chứa lớp dữ liệu này:
View  New.
- View  Add Event Theme.
- Table: Chọn qtrac_kk.bdf.
- X field: Chọn Toadox
- Y field: Chọn Toadoy
Theme  Convert to Shapefile để lưu lớp
dữ liệu này dưới dạng .shp. Hình 3.10.Chọn thuộc tính cho Tọa độ

-51-
Hình 3.11. Kết quả lớp dữ liệu được tạo từ danh sách tọa độ
3.6. TẠO VÀ HIỆU CHỈNH DỮ LIỆU THUỘC TÍNH
Khi tạo lớp dữ liệu không gian mới trong Arcview, bảng thuộc tính tương ứng của
lớp dữ liệu đó cũng được tự động tạo. Mặc định của bảng thuộc tính này có hai trường
được đặt tên là Shape và ID lưu trữ loại dữ liệu không gian và chỉ số của đối tượng.
3.6.1. Tạo dữ liệu thuộc tính
Từ lớp dữ liệu Diavat đã được tạo ra trong phần tạo dữ liệu không gian, tiến hành
tạo dữ liệu thuộc tính cho lớp các điểm này, gồm: tên, loại, tọa độ x và tọa độ y.
- Chọn lớp Diavat
- Theme  Start Editting.
- Click vào nút Open Theme Table để mở bảng dữ liệu thuộc tính.
- Edit  Add Field, xuất hiện hộp thoại Field Definition:
 Name: Tên là “Loai”
 Type: Kiểu dữ liệu String.
Kiểu dữ liệu gồm 4 loại: Number (kiểu số), String (kiểu chữ), Date (kiểu
ngày tháng năm), Boolean (kiểu đúng sai).
 Width: Độ rộng 10.
 Decimal Places: độ rộng của số thập phân, chỉ xuất hiện khi loại dữ liệu
muốn nhập vào trường là Number.

Hình 3.12. Thêm thuộc tính cho bảng dữ liệu


- Tiến hành nhập dữ liệu vào trường mới cho từng đối tượng không gian trên bản đồ:
 Dùng Pointer để chọn đối tượng trên chủ đề. Lúc này, mẩu tin của đối
tượng được chọn sẽ có màu vàng sáng trên bảng thuộc tính của chủ đề đó.

-52-
 Dùng công cụ Edit click vào mẩu tin đang đựơc chọn để nhập dữ liệu
vào.
 Tính toán giá trị toạ độ, độ dài, diện tích của các đối tượng không gian:
Tính chiều dài: [Shape].ReturnLength
Tính toạ độ: [Shape].GetX (toạ độ X của điểm)
[Shape].GetY (toạ độ Y của điểm)
Tính diện tích: [Shape].ReturnArea
Tính chu vi: [Shape].ReturnLength
Giả sử muốn tính tọa độ x của điểm, ta tiến hành tính như sau:
- Tạo thuộc tính Toadox vào Toadoy (Number(10,3)) để chứa các giá trị tọa độ
X, Y tương ứng.
- Chọn thuộc tính ToadoX
- Field  Calculate
- Toadox = [Shape].GetX

Hình 3.13. Hộp thoại tính tọa độ X

- Theme  Stop Editting.


Ngoài ra, hộp thoại Field Calculator cũng cho phép nhập các biểu thức tính toán
số liệu như trong Excel
 Nhập dữ liệu từ một bảng
- Trong cửa sổ Project,  Table  New, đặt đường dẫn để lưu bảng mới OK.
- Tạo trường cho bảng mới: Chọn Add Fieid từ Menu Edit. Hộp thoại xuất hiện,
nhập các thông số thích hợp. Nhấn OK. Lặp lại thao tác nếu muốn tạo nhiều
trường thuộc tính
- Tạo các mẫu tin rỗng cho bảng: Chọn Add Record từ Menu Edit hoặc dùng tổ
hợp phím Ctrl+A. Lặp lại thao tác nếu muốn tạo nhiều mẩu tin.
- Nhập dữ liệu vào bảng: Chọn công cụ Edit , Click vào ô trống trong bảng và
nhập dữ liệu vào. Dữ liệu nhập vào phải đúng với kiểu đã khai báo khi tạo trường
- Sau khi nhập xong dữ liệu vào bảng, chọn Stop Editing từ Menu Table. Chọn
YES để lưu dữ liệu vừa nhập

-53-
 Hiệu chỉnh dữ liệu bảng
- Mở bảng thuộc tính cần chỉnh sửa.
- Vào Menu Table, chọn Start Editing.
- Chọn công cụ Edit , Click vào nơi muốn chỉnh sửa dữ liệu và nhập vào dữ
liệu mới.
- Sau khi đã chỉnh sửa xong, vào Menu Table chọn Stop Editing và chọn Yes để
lưu lại thao tác chỉnh sửa.
Muốn xoá trường trong bảng thuộc tính các bước thực hiện như sau:
- Vào Menu Table chọn Start Editing.
- Click trường muốn xoá.
- Từ Menu Edit  Delete Field.
Tương tự, muốn xoá mẫu tin, ta chọn mẫu tin muốn xoá sau đó vào Menu Edit,
chọn Delete Records.
3.7. LIÊN KẾT DỮ LIỆU
Có thể tổ chức dữ liệu thuộc tính trong bảng thuộc tính của đối tượng không gian
hoặc bảng riêng. Khi cần thiết có thể liên kết các bảng dữ liệu riêng đó vào các bảng
thuộc tính của đối tượng không gian để phục vụ cho các mục đích khai thác, truy vấn,
phân tích và hiển thị dữ liệu.
Việc liên kết được thực hiện thông qua thuộc tính khóa và khóa ngoại của các
bảng. Giữa các bảng có thể có mối quan hệ sau: 1-1, 1-n và n-n.
Ngoài ra, công cụ Hotlink dùng để liên kết đối tượng không gian với các tập tin
ngoài, như văn bản, hình ảnh, video,…
Bảng dữ liệu đích là bảng được kích hoạt khi thực hiện liên kết và dữ liệu sẽ được
liên kết vào đó sau khi liên kết. Bảng dữ liệu nguồn là bảng được dùng để liên kết vào
bảng dữ liệu đích.
3.7.1. Liên kết bảng dữ liệu với công cụ Link
Liên kết các bảng thuộc tính dùng công cụ Link nhằm thiết lập mối quan hệ 1– n
giữa bảng đích và bảng nguồn, tức là một mẩu tin trong bảng dữ liệu đích tuơng ứng với
nhiều mẩu tin trong bảng dữ liệu nguồn.
Liên kết bảng dùng công cụ Link chỉ xác định mối quan hệ giữa các bảng. Những
trường trong bảng nguồn sẽ không ghép chung vào bảng đích. Không thể sử dụng các
trường mới được liên kết vào để thực hiện các thao tác như: phân tích, truy vấn, gán
nhãn, đặt ký hiệu… Các bước thực hiện như sau:
- Mở bảng dữ liệu nguồn và đích.
- Click chọn trường dùng chung cho việc liên kết ở cả hai bảng.
- Kích hoạt bảng dữ liệu đích.
- Click vào menu Table Link.
Sau khi thực hiện thao tác Link, chọn một mẩu tin trong bảng đích sẽ tự động
chọn một 1 hoặc nhiều mẫu tin có quan hệ với nó trong bảng nguồn.

-54-
Hình 3.14. Những khách sạn thuộc khu phố 3 của phường Vĩnh Thọ - Nha Trang
Để huỷ bỏ thao tác liên kết vào Menu Table chọn Remove all Links.
3.7.2. Liên kết bảng dữ liệu dùng công cụ Join
Liên kết các bảng thuộc tính dùng công cụ Join sẽ thiết lập mối quan hệ 1– 1
hoặc n – 1 giữa bảng dữ liệu đích và bảng dữ liệu nguồn. Việc liên kết dựa vào giá trị
của trường có thể tìm thấy ở cả hai bảng, tên của 2 trường không đòi hỏi phải giống
nhau nhưng phải giống nhau về kiểu dữ liệu.
Khi thực hiện liên kết Join, tất cả dữ liệu của bảng nguồn sẽ được ghép chung
vào bảng dữ liệu đích. Sau khi liên kết, ta có thể thực hiện các thao tác: phân tích, truy
vấn, gán nhãn... Các bước thực hiện như sau:
- Mở bảng dữ liệu nguồn và đích.
- Click tên trường dùng chung của 2 bảng. Kích hoạt bảng dữ liệu đích.
- Click vào menu Table  Join hoặt click nút Join
- Trong bảng dữ liệu vừa liên kết, chỉ có thể chỉnh sửa dữ liệu của bảng dữ liệu
đích. Không thể chỉnh sửa dữ liệu của bảng dữ liệu nguồn.
Để huỷ bỏ thao tác liên kết vào Menu Table chọn Remove all Joins.
3.7.3. Liên kết đối tượng không gian với các tập tin ngoài với công cụ Hotlink
Có thể liên kết đối tượng không gian trong chủ đề với một tập tin ngoài hoặc các
View, Table, Chart, hay Layout trong Project. Các bước thực hiện như sau:
 Đặt môi trường liên kết cho chủ đề:
- Thêm vào bảng dữ liệu thuộc tính của chủ đề một trường chứa đường dẫn của tập
tin hoặc tên của thành phần muốn liên kết trong project. Kích hoạt chủ đề.
- Theme  Theme Properties, xuất hiện hộp thoại, chọn nút Hotlink để hiển thị
các thuộc tính của hotlink. Khai báo các thông số: Field: chọn tên trường dùng
làm liên kết trong bảng dữ liệu thuộc tính (là trường vừa tạo chứa đường dẫn đến
các tập tin).
 Sử dụng công cụ Hotlink:
- Kích hoạt chủ đề đã đặt môi trường liên kết.
- Click công cụ Hotlink . Click vào đối tượng không gian đã được liên kết, dữ
liệu liên kết sẽ được hiển thị.

-55-
CÂU HỎI ÔN TẬP CHƯƠNG 3
Với dữ liệu được cung cấp tại khóa học online: elearning.ntu.edu.vn. Hãy thực hiện các
bài tập thực hành sau:
Bài tập thực hành 1. Làm quen với Arcview.
1) Làm quen với giao diện Arcview.
2) Tạo và in một bản đồ tỉnh Đồng Tháp:
a) Mở Project tongquan.arp, mở View DongThap.
b) Mở các lớp dữ liệu trên View DongThap, quan sát xem có bao nhiêu lớp?
thực hiện tắt/hiển thị các lớp dữ liệu.
c) Xem dữ liệu không gian, dữ liệu thuộc tính của các lớp.
d) Phóng to một vùng mong muốn.Ví dụ: phóng to huyện Châu Thành bằng
Toolbar Zoom In và Button Zoom In. So sánh sự khác nhau của hai loại công
cụ này.
Bài tập thực hành 2. Tạo dữ liệu
1) Đọc bản đồ nền đã được cung cấp Hinh1.bmp hoặc bản đồ tự chọn.
2) Hãy tạo 3 lớp dữ liệu Diem.shp (dạng điểm); Duong.shp (Dạng đường); và
vung.shp (dạng vùng).
3) Hãy tạo 3 bảng dữ liệu tương ứng với 3 lớp dữ liệu trên, trong đó có tính tọa độ x,
y cho dữ liệu dạng điểm, tính chiều dài cho dữ liệu dạng đường và diện tích, chu
vi cho dữ liệu dạng vùng.
4) Nhập một bảng dữ liệu Bangtoado.dbf gồm các trường: Tên điểm, tọa độ x, tọa độ
x.với dữ liệu tùy ý. Sau đó tạo tự động lớp đối tượng dạng điểm từ bảng dữ liệu
này (Add event Theme) và lưu Diem1.shp.
5) Đọc bản đồ nền đã được cung cấp spings1.jpg hoặc bản đồ tự chọn. Khai báo 4
điểm khống chế cho bản đồ và danh sách các điểm khống chế vào
diemkhongche.shp và lớp ảnh bản đồ bandodakhongche.img.
Chú ý:
- Khai báo điểm khống chế cho bản đồ nếu bản đồ chưa đúng tọa độ thực bằng cách
nạp Extensions có tên Image Analysis và nạp hình bản đồ dạng Image Analysis
Data Source rồi sử dụng công cụ Align Tool (xem hướng dẫn chi tiết ở video
hướng dẫn tại: elearning.ntu.edu.vn)
- Đặt chế độ bắt dính trước khi thực hiện số hóa dữ liệu dạng đường và vùng.
Bài tập thực hành 3. Liên kết dữ liệu.
1) Link: Xác định xem trong Khu phố 1 của Phường Vĩnh Thọ có những con đường
nào?
2) Join: Liên kết bảng dữ liệu danso.dbf vào bảng thuộc tính của chủ đề Huyện? Quan
sát bảng thuộc tính của chủ đề Huyện trước và sau khi Join.
3) Hotlink: Liên kết một huyện đến hình ảnh.

-56-
CHƯƠNG 4
TRUY VẤN, PHÂN TÍCH VÀ HIỂN THỊ DỮ LIỆU

Truy vấn dữ liệu đề cập đến việc tìm kiếm các đối tượng dữ liệu không gian (và
các thuộc tính của chúng) hiện diện tại một vị trí cụ thể hoặc tìm kiếm các vị trí có những
đối tượng không gian thoả mãn một tiêu chuẩn cụ thể. Khi các truy vấn được thực hiện
một cách tương tác với nhau thì các kết quả thường được biểu diễn dưới dạng các khung
nhìn được liên kết động.

Hình 4.1. Truy vấn dữ liệu GIS


Truy vấn dữ liệu từ một cơ sở dữ liệu GIS là trả lời một trong hai câu hỏi sau:
- (1): Từ những dữ liệu không gian được hiển thị trên màn hình, hãy cho biết những
đặc tính của một đối tượng được chọn và hiển thị những đặc tính đó trên màn
hình?
- (2): Từ các bảng dữ liệu thuộc tính được hiển thị trên màn hình, hãy tìm đối tượng
không gian tương ứng và hiển thị đối tượng này lên màn hình?
Trong câu hỏi thứ nhất, người dùng GIS sử dụng con trỏ để chọn một đối tượng
bất kỳ trên dữ liệu không gian được hiển thị trên màn hình, nhấp chuột vào đó để truy
xuất dữ liệu thuộc tính của đối tượng.
Trong câu hỏi thứ hai, người sử dụng nhập những thuộc tính đã biết như: “Quốc
lộ 1”, “mật độ dân cư > 5000 người/km2”, “vùng ô nhiễm bụi”, “vùng trồng lúa”, ….
làm dữ liệu đầu vào để tìm vị trí của các đối tượng dữ liệu không gian thoả điều kiện
nhập vào. Các đối tượng được chọn có thể được đánh dấu trên màn hình hay được thể
hiện trong một cửa sổ khác.
4.1. TRUY VẤN TỪ DỮ LIỆU THUỘC TÍNH
4.1.1. Truy vấn dữ liệu thuộc tính
Đối với hệ thống thông tin địa lý, để xây dựng một cơ sở dữ liệu từ không gian
thực, chúng ta phải mô tả dữ liệu dưới dạng số hóa một cách có phương pháp và định
-57-
lượng với số liệu thống kê được từ thế giới thực. Trong đó, dữ liệu thuộc tính thiết lập
mối quan hệ, liên kết đến những bản đồ với những số liệu thống kê mà ta đã mô tả.
Trong hệ thống thông tin địa lý, tất cả dữ liệu thuộc tính được cấu trúc trong một
bảng. Những dòng của bảng là các mẫu tin (record) và những cột của bảng là các thuộc
tính (attribute). Mỗi mẫu tin ứng với một thuộc tính chứa đựng một giá trị và giá trị đó
được chia thành nhiều kiểu dữ liệu như: chuỗi ký tự (text), số (number), luận lý
(boolean), ngày tháng (date),… dựa trên các giá trị này người dùng có thể tìm kiếm, sửa
đổi hoặc cập nhật các thông tin mới.

Mẫu tin

Giá trị kiểu chữ

Giá trị kiểu số

Hình 4.2. Mô tả cấu trúc bảng dữ liệu thuộc tính


Hầu hết hệ thống thông tin địa lý đều được xây dựng một hệ quản trị cơ sở dữ
liệu khá căn bản để quản lý dữ liệu địa lý hoặc dựa vào khả năng của một hệ quản trị cơ
sở dữ liệu (DBMS) hiện có. Khi đó, việc truy vấn dữ liệu được điều khiển bởi khả năng
của người quản lý. Tất cả các hệ quản trị cơ sở dữ liệu đều bao gồm các chức năng về
hiển thị dữ liệu căn bản, đó là hiển thị tất cả các thuộc tính trong một cơ sở dữ liệu, hiển
thị tất cả các mẫu tin cùng với các thuộc tính của chúng và hiển thị tất cả các cơ sở dữ
liệu đang tồn tại. Đồng thời, hệ quản trị cơ sở dữ liệu cũng cho phép xuất các mẫu tin
theo một định dạng chuẩn, với cách trình bày trang đặc thù.
Thực tế, việc tìm kiếm thông tin trong cơ sở dữ liệu là đáng quan tâm nhất, hệ quản
trị cơ sở dữ liệu phải hỗ trợ các chức năng thuộc về phạm trù truy vấn. Nghĩa là, phải cho
phép truy vấn dữ liệu tại bất kỳ mẫu tin với bất kỳ yêu cầu truy vấn nào.
Find là dạng tìm kiếm từ dữ liệu thuộc tính cơ bản nhất. Find thường được dùng
để tìm kiếm trên từng mẫu tin riêng lẻ, có thể thông qua loại tìm kiếm bằng search (dò
tìm) hoặc browse (duyệt qua). Browse dò tìm qua từng mẫu tin cho đến khi tìm thấy một
mẫu tin cần tìm.
Một cách tìm kiếm trên thuộc tính khác là tìm kiếm bằng sorting (phân loại), việc
phân loại này được thực hiện bằng cách cách sắp xếp thứ tự các giá trị hiện có trong một
trường thuộc tính, nếu trường thuộc tính kiểu text thì các thuộc tính được sắp xếp theo
thứ tự abc, nếu trường thuộc tính kiểu số thì các thuộc tính được sắp xếp theo thứ tự trị
số tăng dần hoặc giảm dần. Lưu ý rằng, việc sắp xếp các giá trị không quan tâm đến các
giá trị khuyết và vị trí đặt các giá trị.

-58-
Phép toán restrict (giới hạn) cho phép người dùng gọi ra một tập con trong tổng
số các mẫu tin bằng cách đặt ra giới hạn trên các giá trị thuộc tính. Ví dụ, chúng ta có
thể gọi ra tất cả các mẫu tin có ngày cập nhật sau ngày 1/1/99, hoặc các thành phố có
dân số lớn hơn 100.000 người.
Phép toán select (chọn lọc) cho phép chúng ta chọn lựa các thuộc tính sẽ được
rút ra từ một cơ sở dữ liệu đưa vào một cơ sở dữ liệu mới với ít thuộc tính hơn, công
việc này thường được thực hiện bằng cách kết nối các mẫu tin và các thuộc tính của một
cơ sở dữ liệu vào một cơ sở dữ liệu khác có liên quan.
Phép toán compute (tính toán) cho phép tính toán một giá trị cho một thuộc tính,
để ấn định giá trị cho thuộc tính hoặc làm các phép toán cộng, trừ, nhân, chia giữa các
thuộc tính với nhau. Chúng ta cũng có thể sử dụng phép toán renumber (đánh số lại) cho
một thuộc tính, tức là thay đổi các giá trị thuộc tính theo chỉ định. Ví dụ, chúng ta cần
tìm tất cả những giá trị phần trăm trong một thuộc tính nhỏ hơn 50% và gán giá trị là 0,
ngược lại được gán giá trị là 1, sau đó có thể tổ hợp nhị phân với các thuộc tính khác.
Trong ví dụ này, các lệnh đã được quy định một dòng tại một thời điểm và thường
phải được sử dụng kết hợp để đạt được kết quả mong muốn. Cũng lưu ý rằng, hầu hết
các hệ cơ sở dữ liệu thực hiện các chức năng khai thác cơ sở dữ liệu trên một tập dữ liệu
tạm của cơ sở dữ liệu, khi cần thiết mới lưu trở lại vào cơ sở dữ liệu chính thức. Nhiều
hệ quản trị cơ sở dữ liệu sử dụng các menu, các ngôn ngữ truy vấn, từ khóa, câu lệnh để
đạt được nhiều kết quả cùng một lúc.
4.1.2. Truy vấn dữ liệu thuộc tính với Arcview
Có thể dùng nút Find để tìm một đối tượng trên chủ đề đang kích hoạt. Tuy nhiên,
cách này không hiển thị tất cả các đối tượng thỏa điều kiện mà chỉ cho biết đối tượng
đầu tiên được tìm thấy. Để tìm tất cả các đối tượng thỏa điều kiện, ta xây dựng biểu thức
truy vấn như sau:
- Theme  Query hoặc Click nút Query Builder
- Nhập biểu thức vào hộp thoại.

Hình 4.3. Xây dựng biểu thức trruy vấn


Có thể kết hợp nhiều toán tử (=, <, >, <=, >=, and, or, not, …) trong biểu thức.
Có 3 cách chọn lọc kết quả truy vấn như sau:
- New Set: Kết quả truy vấn chứa những đối tượng thỏa mãn biểu thức truy vấn,
hủy bỏ các thao tác truy vấn trước đó.
- Add To Set: Thêm những đối tượng được chọn trong biểu thức này vào phần đã
được chọn trước đó. Sử dụng chức năng này nhằm mở rộng việc chọn lựa.

-59-
- Select From Set: Chức năng này chỉ được sử dụng trên các đối tượng đã chọn.
Chọn lọc lại các đối tượng thỏa biểu thức truy vấn từ tập hợp đã chọn trước đó.
4.2. TRUY VẤN TỪ DỮ LIỆU KHÔNG GIAN
4.2.1. Truy vấn dữ liệu không gian
Khi nghiên cứu nội dung truy vấn từ thuộc tính, chúng ta đã xem xét đến các lệnh
tìm kiếm và khôi phục dữ liệu như: find, browse, sort, restrict, renumber và compute.
Chuyển sang truy vấn trên dữ liệu không gian trong hệ thống thông tin địa lý, một số phép
toán có thể chỉ là ước lượng không gian, nhưng cũng có một số phép toán phức tạp hơn.
Trong dữ liệu không gian, các mẫu tin được thay thế bằng các đối tượng địa lý.
Có một số thuộc tính riêng biệt đặc trưng cho dữ liệu không gian, các thuộc tính đó liên
quan đến tọa độ, phạm vi không gian với các đặc điểm của các đường và vùng. Khi đó,
việc hiển thị các đối tượng không gian sẽ bao gồm hiển thị tọa độ thực của các đối tượng,
chiều dài của các cung và diện tích của các vùng. Áp dụng các chức năng tìm kiếm từ
thuộc tính đối với các đặc điểm của đối tượng không gian để có kết quả trên dữ liệu
không gian. Ví dụ, chúng ta có thể tìm tất cả các cung có chiều dài lớn hơn chiều dài
của một cung nào đó hoặc các vùng có diện tích lớn hơn 1 hecta.
Việc hiển thị tất cả các mẫu tin trong một không gian xảy ra hai trường hợp: hoặc
hiển thị tất cả các thuộc tính hoặc hiển thị tất cả các đối tượng trên một bản đồ. Tạo ra
một bản đồ cho phép chúng ta tìm kiếm thông tin bằng mắt nhìn là một phép toán truy
tìm theo không gian cũng được GIS quan tâm.
Một cách truy vấn trên không gian đơn giản và thuận tiện nhất đó là sử dụng
identify (nhận dạng) hoặc locate (định vị), cách này sử dụng con trỏ chuột chỉ vào một
đối tượng không gian, lúc đó các thông tin thuộc tính của đối tượng sẽ được hiển thị
trong bảng kết quả (Hình 4.5).
Việc tìm kiếm từ không gian theo cách duyệt qua bản đồ và chọn đối tượng là
một khả năng rất mạnh của GIS, đặc biệt nếu hệ thống thông tin địa lý được đặt trên một
máy tính cá nhân, đối tượng được định vị là nơi bạn đang đứng và vị trí đó được xác
định thông qua máy thu GPS. Trên bản đồ cho phép tìm kiếm bằng cách chỉ định một
đối tượng riêng lẻ, tất cả các đối tượng trong một hình chữ nhật bằng thao tác rê chuột
để vẽ hoặc tất cả các đối tượng trong một vùng bất kỳ được vẽ trên màn hình bằng công
cụ vẽ bản đồ.

Hình 4.4. Xem thông tin không gian bằng công cụ Identify
Phân loại đối tượng là cách tìm kiếm ít có ý nghĩa trong truy vấn từ không gian,
thường được sử dụng để đánh giá xu hướng của các đối tượng không gian thu được từ
việc phân loại thuộc tính. Ví dụ, có thể phân loại các vùng hành chính huyện theo mật
-60-
độ dân số, phân loại các vùng trồng trọt theo 3 mức: cao, trung bình và thấp của mật độ
cây trồng,…
Phép toán select trong truy vấn theo không gian nhằm rút ra các thuộc tính đặc
trưng. Nhờ vậy chỉ cần sử dụng các lớp dữ liệu chứa các đối tượng cần thiết cho công
việc. Việc chọn lọc để lấy các sông chính từ lớp dữ liệu mạng lưới sông ngòi để đưa vào
một lớp mới chỉ chứa các sông chính là một ví dụ của phép toán select trong truy vấn từ
không gian.
4.2.2. Truy vấn dữ liệu không gian với Arcview
4.2.2.1. Tìm những đối tượng gần các đối tượng khác
Có thể tìm những đối tượng trong vòng một khoảng cách nhất định hoặc gần kề so
với các đối tượng khác trong cùng một chủ đề hoặc trên một chủ đề khác.
 Tìm đối tượng trong một khoảng cách chỉ định so với một điểm
Có thể tìm tất cả các đối tượng xung quanh một điểm bằng việc chỉ định khoảng
cách. Chức năng truy vấn và kiểm tra sự ảnh hưởng của một vị trí nào đó so với khu vực
đang quan tâm.
Sử dụng công cụ Circle, từ bộ công cụ vẽ của Arcview, vẽ một vòng tròn với tâm
là vị trí ảnh hưởng và bán kính là khoảng cách không gian sẽ bị ảnh hưởng. Ví dụ: tìm
tất cả các khu nhà bị ảnh hưởng bởi tiếng ồn của nhà ga xe lửa trong vòng bán kính 1km
(ga xe lửa xem như một điểm trên bản đồ), khách du lịch muốn tìm tất cả các điểm để
tham quan cách khách sạn nơi họ đang ở khoảng 5km,…

Hình 4.5.Tìm đối tượng trong một khoảng cách chỉ định so với một điểm
Phương pháp tìm kiếm thực hiện như sau:
- Trong Table of Content click vào tên chủ đề chứa đối tượng muốn tìm.
- Click vào công cụ Drawing  chọn công cụ Circle.
- Click và vẽ vòng tròn có bán kính theo yêu cầu với tâm là vị trí chỉ định hoặc
chọn Size and Position từ menu Graphics và nhập giá trị bán kính vào radius.
-61-
- Click vào nút Select Features Using Graphic để chọn các đối tượng bên trong
vòng tròn.
Có thể vẽ nhiều vòng tròn trên bản đồ, kết hợp sử dụng phím Shift để chọn tất cả
các đối tượng bên trong những vòng tròn đó.
Thay đổi đơn vị đo bằng cách: Click menu View  Properties, chọn đơn vị muốn
sử dụng.
 Tìm những đối tượng trong một khoảng cách chỉ định so với các đối tượng
trong một chủ đề khác
Giả sử có một chủ đề chứa vị trí các điểm nhà máy một chủ đề khác chứa vị trí
các trường học. Muốn tìm xem có bao nhiêu trường học trong vòng khoảng cách 5km
tính từ các điểm nhà máy. Phương pháp thực hiện như sau:
- View  Properties, chọn đơn vị khoảng cách là kilomet trong hộp Distance
Units.
- Kích hoạt chủ đề chứa đối tượng muốn tìm, trường hợp này là Truonghoc.
- Theme  Select By Theme, trong hộp thoại xuất hiện, chọn như sau:
 Select feature of active themes that: Chọn Are Within Distance Of.
 The selected features of: Chọn tên chủ đề chứa những đối tượng muốn tìm
đối tượng gần nó, trường hợp này là Nhamay.
 Selection distance: Nhập khoảng cách là 5.

Hình 4.6. Tìm đối tượng trong một khoảng cách chỉ định so với các đối tượng khác
 Chọn New Set để thực hiện việc truy vấn.
4.2.2.2. Tìm những đối tượng bên trong vùng
Có thể tìm kiếm những đối tượng là điểm, đường hoặc vùng trên một chủ đề nằm
bên trong vùng tự tạo hoặc bên trong những vùng của chủ đề khác. Ví dụ tìm có bao
nhiêu trường học trong một phường/xã, bao nhiêu nhà máy trong một huyện,…
Thực hiện tương tự như tìm những đối tượng gần các đối tượng khác, Select
feature of active themes that: chọn Are Completely Within.
Ví dụ tìm những trường học nằm trong huyện Cao Lãnh có kết quả như sau:

-62-
Hình 4.7. Tìm đối tượng bên trong vùng
4.2.2.3. Tìm những đối tượng bị phân cắt bởi các đối tượng khác
Tìm các đối tượng dựa trên các đối tượng khác mà chúng phân cắt hoặc chồng
chéo lên nhau. Có thể tìm những đường bị phân cắt bởi các đường khác như tìm kiếm
những đường quốc lộ chạy cắt ngang sông, suối; có thể tìm những vùng bị phân cắt bởi
những đường như tìm những tỉnh có quốc lộ 26 đi qua; tìm những đường bị phân cắt bởi
vùng hay tìm những vùng bị chồng lấn bởi vùng khác,…
Thực hiện tương tự như tìm những đối tượng gần các đối tượng khác: Select
feature of active themes that: chọn Intersect.
Ví dụ: Tìm những huyện có đường Quốc lộ 30 đi qua có kết quả như sau:

Hình 4.8. Tìm đối tượng bị phân cắt


4.3. PHÂN TÍCH DỮ LIỆU
4.3.1. Thống kê dữ liệu
Các bước thực hiện như sau:
- Mở bảng thuộc tính của chủ đề cần thống kê dữ liệu.
- Click chọn tên trường cần thống kê.
- Menu Field  Statistics.
Lưu ý: Chỉ có thể thực hiện thao tác thống kê đối với các dữ liệu số

-63-
4.3.2. Tổng kết dữ liệu
- Click tên trường muốn làm nền để tổng kết.
- Click nút hoặc vào Menu Field  Summarize.
- Xuất hiện hộp thoại Summarize Table Definition: Chọn đường dẫn, trường
muốn tổng kết và phương thức tổng kết.
4.3.3. Lưu các đối tượng được chọn vào một Theme mới
- Click chọn chủ đề chứa các đối tượng được chọn để lưu vào chủ đề mới.
- Theme  Convert to Shapefile.
- Xuất hiện hộp thoại, chọn đường dẫn và đặt tên cho chủ đề mới.
4.3.4. Tổng hợp các đối tượng bằng cách hợp chúng lại với nhau:
Giả sử ta có một chủ đề chứa tất cả các xã trong tỉnh Đồng Tháp. Bài toán đặt ra
là: Ta muốn có cái nhìn tổng quát về tổng diện tích, tổng dân số và mật độ dân số trung
bình ...của mỗi huyện. Như vậy ta cần phải hợp các xã (Polygon) lại với nhau theo từng
huyện dựa trên trường “Shape”, từ đó ta tiếp tục thực hiện tổng hợp thông tin mà ta
muốn.Thao tác thực hiện như sau:
- Mở bảng thuộc tính của đối tượng cần hợp nhất (Bảng dữ liệu của chủ đề “xa”).
- Click chọn trường mà dựa vào đó để thực hiện hợp nhất (MaHuyen).
- Click nút , trong hộp thoại Summary Table Definition ta thực hiện chọn
các tham số phù hợp.

4.4. PHÂN TÍCH KHÔNG GIAN


Trong hầu hết các trường hợp, các truy vấn thuộc tính và các truy vấn không gian
có thể được đưa ra với một hệ GIS khi câu hỏi truy vấn không có sự thay đổi dữ liệu.
Tuy nhiên, một phân tích không gian có thể yêu cầu sự hình thành dữ liệu mới từ dữ liệu
gốc. Ví dụ, giả sử chúng ta muốn tìm mối liên hệ giữa mức độ ồn và khoảng cách gần
đường cao tốc (ví dụ trong phạm vi một dặm của đường cao tốc). Để trả lời câu hỏi này,
người dùng phải kết hợp, ví dụ: chồng lớp bản đồ thửa, bản đồ đường cao tốc và các khu
vực trong phạm vi 1 dặm của đường cao tốc nhận được từ bản đồ đường cao tốc. Quá
trình này có thể yêu cầu sự mô tả các thực thể địa lý mới và tạo ra bảng dữ liệu mới cho
thấy sự kết hợp của một số nhân tố. Một số phép phân tích không gian: phân tích chồng
lớp, phân tích bề mặt, phân tích mạng…
Một kiểu chọn lọc đối
tượng không gian thường
được sử dụng nhất trong các
phép toán GIS đó là phép
b) Buffer đường c) Buffer vùng toán buffer (vùng đệm).
a) Buffer điểm
Phép toán này cho phép
Hình 4.9. Các loại vùng đệm chọn n đối tượng nằm trong
một khoảng cách xác định
tính từ một điểm, một tập các điểm, một đường hoặc một vùng. Các buffer bao quanh
một điểm có dạng vùng hình tròn, quanh một đường có dạng vùng ngoằn ngoèo và quanh
một vùng có dạng vùng rộng lớn hơn như Hình 4.7.

-64-
Phép toán buffer được sử dụng để giải quyết nhiều bài toán như: tìm những căn
nhà vi phạm lộ giới, tìm những trạm y tế cách khu vực có dịch bệnh trong vòng bán kính
5 km, khoanh vành đai bảo vệ công trình ngầm,…
Đối với dữ liệu thuộc tính, phép toán kết hợp được thực hiện bằng cách hợp nhất
các thuộc tính thành các tập tin phẳng. Trong không gian, việc kết hợp này được gọi là
chồng lớp bản đồ (map overlay). Tức là, một bản đồ mới được tạo ra dựa trên sự phân
chia không gian của cả hai bản đồ gốc (Hình 4.11). Mỗi vùng được tạo ra trên lớp bản
đồ mới có một mẫu tin thuộc tính mới trong bảng thuộc tính không gian và mang các
thuộc tính của cả hai bản đồ gốc.

B1
A1 B3

A2 B2
B4

C1

Hình 4.10. Chồng lớp hai lớp dữ liệu dạng vùng A và B để tạo ra lớp dữ liệu C chứa cả A và B.

Có nhiều phương pháp phân tích dữ liệu trong GIS, tùy vào từng mục tiêu và
nguồn dữ liệu củ thể mà ta có thể chọn phương phân tích khác nhau:
- Thao tác phân tích trên một lớp dữ liệu (Single Layer Operations) là những thuật
toán xử lý dữ liệu trên một lớp như thuật toán buffer, truy vấn thuộc tính từ thuộc
tính, truy vấn thuộc tính từ không gian, truy vấn không gian từ thuộc tính hoặc tạo
những tập dữ liệu mới được thực hiện trên một lớp dữ liệu.
- Thao tác phân tích dữ liệu trên nhiều lớp dữ liệu (Multiple Layer Operations) là
những thao tác trên nhiều lớp dữ liệu không gian để thực hiện các thuật toán phân
tích: chồng lớp (union, intersect, indentify), phân tích gần kề, phân tích tương quan
không gian,…
- Mô hình hóa không gian (Spatial Modeling) là xây dựng những mô hình để giải
thích và dự báo theo không gian, mô phỏng không gian, thuất toán nội suy
không gian.
- Phân tích mẫu điểm (Point Pattern Analysis) thực hiện các thuật toán phân tích số
đông trên những lớp dữ liệu không gian điểm.
- Phân tích mạng (Network Analysis) ứng dụng vào những đối tượng dạng đường,
những đối tượng này được tổ chức trong mạng lưới liên kết.
- Phân tích bề mặt (Surface Analysis) bao gồm những thuật toán phân tích, cần đến
phân tích 3D của những biến phân bố không gian.

-65-
4.4.1. Làm quen với dữ liệu dạng Grid
4.4.1.1. Chuyển shape file sang dạng Grid
Muốn chuyển một lớp dữ liệu dạng Shape file sang dạng Grid, các bước thực hiện
như sau:
- File  Extensions, hộp thoại Extensions xuất hiện:

Hình 4.11. Nạp chức năng phân tích không gian


- Chọn vào Check box có tên là Spatial Analyst. Đây là Extensions có chức năng
hỗ trợ phân tích không gian trong Arcview.
- Trong cửa sổ Project tạo một khung nhìn mới: View  New
- Click nút để thêm vào khung nhìn lớp dữ liệu tnhuong.shp ở thư mục
D:\dulieu\DongThap
- Theme  Convert to Grid..., hộp thoại sau xuất hiện:

Hình 4.12. Chọn đường dẫn tới nơi lưu trữ kết quả
- Chọn đường dẫn tới thư mục D:\Dulieu\Grid trong Directories. Gõ tên là
tnhunggrid trong Grid Name, click OK. Hộp thoại Convesion Extent: Tnhuong
xuất hiện như sau:

Hình 4.13. Thông số về kết quả

-66-
- Chọn Same As Tnhung trong Output Grid Extent, các thông số khác để mặc định
và ấn OK. Hộp thoại yêu cầu chọn trường giá trị cho ô Grid xuất hiện như sau:

Hình 4.14. Thông số về kết quả


- Chọn vào Ten  OK  Yes  Yes. Lớp dữ liệu tnhuonggrid dạng Grid đã được
thêm vào khung nhìn.
- Lưu Project với tên là Progrid trong thư mực D:\Dulieu\DongThap
4.4.1.2. Thao tác và hiển thị dữ liệu dạng Grid
 Thay đổi màu sắc hiển thị của lớp chủ đề dạng Grid
- Mở Project Progrid trong thư mục D:\Dulieu\DongThap
- D-Click chuột vào lớp tnhuonggrid để hiển thị hộp thoại Legend Editor
- Trong Legend Type chọn Unique Value
- Trong Values Field chọn S_value
- Trong Color Schemes chọn Bountiful Harvest
- Click nút Apply và đóng hộp thoại Legend Editor

Hình 4.15. Kết quả hiển thị


-67-
 Xem thuộc tính của lớp dữ liệu dạng Grid:
- Chọn vào nút trên thanh ToolBar
- Click chuột vào lớp dữ liệu tnhuonggrid trong khung nhìn, hộp thoại Identify
Results cho biết thông tin về loại đất tại vị trí đó.
- Một cách khác để xem thông tin thuộc tính của lớp tnhuonggrid Click nút
trên thanh ToolBar để mở bảng thuộc tính của lớp này.
 Xem sự phân bố dữ liệu
- Kích hoạt lớp tnhuonggrid.
- Click nút xem phân bố dữ liệu trên thanh Toolbar.
4.4.2. Một số hàm phân tích không gian
4.4.2.1. Hàm mật độ
Hàm Density phân bố số lượng của một lớp dạng điểm đầu vào để sinh ra một bề
mặt liên tục.
- Thêm vào khung nhìn lớp truonghoc.shp trong thư mục D:\Dulieu\Dongthap.
- Kích hoạt chủ đề truonghoc.shp.
- Chọn menu Analysis -> Calculate Density, hộp thoại sau xuất hiện:

Hình 4.16. Khai báo thông số


Chọn Same As Huyen.shp trong Output Grid Extent, các thông số còn lại để
mặc định  OK, hộp thoại sau xuất hiện:

Hình 4.17. Chọn thuộc tính để tính mật độ


- Chọn Sohocsinh trong Population Field, các thông số còn lại để mặc định  OK.

-68-
Chú ý: có hai kiểu Density type, kiểu Simple và kiểu Kernel. Kiểu Simple được tính
toán cho mỗi ô bằng việc lấy tổng giá trị tìm thấy trong trường Population Field với
mỗi điểm trong bán kính tìm kiếm và chia cho diện tích vòng tròn có đơn vị diện tích
trong Area Units. Kernel được tính toán giống như Simple ngoại trừ giá trị tìm thấy
trong trường Population Field được phân bố ngoài mỗi điểm.
- Một lớp Grid mới xuất hiện trong khung nhìn có tên là Density from Truonghoc.shp.
Lớp này tạo ra một bề mặt mô tả sự phấn bố số lượng học sinh trong tỉnh Đồng Tháp.
4.4.2.2. Hàm tạo vùng đệm
Chức năng này cho phép tạo các vùng đệm từ một hoặc nhiều đối tượng không
gian dựa vào một khoảng cách cho trước. Tạo vùng đệm thường được ứng dụng trong
các bài toán về quy hoạch.
Bài tập thực hành: Tạo hai vùng đệm cách quốc lộ 80 với khoảng cách là 1km .
- Thêm vào khung nhìn lớn dtgcap2.shp trong thư mục D:\DuLieu\DongThap
- Truy vấn để tìm quốc lộ có tên là “Quốc Lộ 80” bằng cách chọn công cụ Query
Builder
- Nhập vào biểu thức truy vấn: ([Ten_dgt] = "Quốc lộ 80") như hình dưới và nhấn
New Set.

Hình 4.18. Tìm đường quốc lộ 80


- Chọn Create Buffers... trong menu Theme, giao diện sau xuất hiện:

Hình 4.19. Khai báo thông số để tạo vùng đệm

-69-
- Trong phần “What do you want to buffer?”, chọn mục “The features of a theme”
để xác nhận là muốn tạo vùng đệm từ các đối tượng thuộc lớp dgt.shp. (trường
hợp muốn tạo vùng đệm từ các graphics trên View, chọn mục “The graphics in
your View”). Tiếp theo đánh dấu check vào ô “Use only theselected features” để
xác nhận vùng đệm cần tạo ra từ các đối tượng đã được chọn trong lớp dgt.shp
 Next để thực hiện tiếp.
- Hộp thoại chọn cách tạo Buffer xuất hiện như sau:

Hình 4.20. Khai báo thông số để tạo vùng đệm


Chọn cách tạo buffer:
- At a specified distance: Tạo một vùng đệm với khoảng cách được chỉ định. Chú
ý đơn vị ở đây được chọn theo đơn vị trong hộp thoại bên dưới “Distance units
are”. Trong trường hợp này, chọn đơn vị Meters được chọn.
- At a distance from an attribute field: khoảng cách được lấy từ một trường thuộc tính.
- As multiple rings: tạo nhiều vùng đệm với các tham số:
+ Number of rings: số lượng các vùng đệm cần tạo. Nhập vào số 2.
+ Distance between rings: khoảng cách giữa các vùng đệm. Nhập vào 1000.
 Next, hộp thoại sau xuất hiện:

Hình 4.21. Nhập thông số cho vùng đệm


-70-
- Dissolve barries between buffers: xác nhận vùng đệm thu được sẽ được tạo thành
từ các đối tượng tượng riêng biệt hay là từ một đối tượng chung của các đối tượng
riêng biệt trên.
+ No: xác nhận vùng đệm thu được sẽ tạo thành từ các đối tượng tượng riêng biệt
+ Yes: loại bỏ sự giao nhau giữa các vùng đệm tạo thành từ các đối tượng riêng
biệt, kết quả sẽ là một đối tượng vùng đệm chung.
- Chọn kết quả xuất ra vùng đệm :
+ As graphics in the view: lưu kết quả thành các graphics trên View.
+ In an existing theme: lưu kết quả vào một Theme đã tồn tại.
+ In a new theme: lưu kết quả thành một Theme mới.
Trong trường hợp này, chọn mục As graphics in the view được sử dụng để lưu
kết quả thành các graphics trên View.

Hình 4.22. Vùng đệm kết quả được tạo


- Kết quả ta có hai vùng đệm được tạo ra cách quốc lộ 80 lần lượt là 1 và 2 km.
4.4.2.3. Bài toán tìm vị trí thích hợp để xây dựng trường học mới
Bài toán đặt ra là cần tìm vị trí thích hợp để xây dụng một trường học mới trên địa
bàn thị xã Cao Lãnh tỉnh Đồng Tháp.
Trước tiên cần xác định các yêu cầu của một vị trí được chọn để xây mới một
trường học. Yêu cầu cho một vị trí có thể xây dựng được một trường học mới có rất
nhiều. Tuy nhiên, trong bài toán này ta chỉ xét đến 3 yêu cầu sau:
- Trường học không được nằm quá xa đường giao thông.
- Trường học phải cách xa nhà máy.
- Trường học phải được xây dựng cách xa các trường học đang tồn tại.
Bài toán được tiến hành theo các bước sau:
- Khởi động Arcview  Tạo một Project mới có tên là Truonghoc.pro lưu trong
thư mục D:\Dulieu\Huyen.
- Click menu File  Extensions Spatial Analysis  OK.

-71-
- Tạo mới một khung nhìn thêm vào các lớp dữ liệu Huyen.shp, truong.shp,
dgtcap2.shp, nhamay.shp trong thư mục D:\Dulieu\Huyen.

Hình 4.23. Thêm các lớp dữ liệu cần thiết cho bài toán
Tạo Grid khoảng cách cho lớp Truong.shp:
- Kích hoạt lớp chủ đề truong.shp.
- Chọn Find Distance trong menu Analysis.
- Chọn Same as Huyen.shp cho Output Grid Extent.
- Nhập vào 100 trong giá trị của Output Grid Cell Size OK.
- Grid khoảng cách cho lớp Truong.shp được tạo ra:

Hình 4.24. Grid khoảng cách cho lớp Truong.shp


Tạo Grid khoảng cách cho lớp Nhamay.shp:
- Kích hoạt lớp Nhamay.shp.
- Chọn Find Distance trong menu Analysis.

-72-
- Chọn Same as Huyen.shp cho Output Grid Extent.
- Nhập vào 100 trong giá trị của Output Grid Cell Size  OK.
- Grid khoảng cách cho lớp Nhamay.shp được tạo ra:

Hình 4.25. Grid khoảng cách cho lớp Nhamay.shp


Tạo Grid khoảng cách cho lớp dgtcap2.shp:
- Kích hoạt lớp truong.shp.
- Chọn Find Distance trong menu Analysis.
- Chọn Same as Huyen.shp cho Output Grid Extent.
- Nhập vào 100 trong giá trị của Output Grid Cell Size  OK.
- Grid khoảng cách cho lớp dgtcap2.shp được tạo ra:

Hình 4.26. Grid khoảng cách cho lớp dgtcap2.shp


Bây giờ, tiến hành phân mức lại các lớp khoảng cách mới tạo ra theo các mức độ
khoảng cách.

-73-
Lớp Distance to Truong.shp được phân thành 5 mức khác nhau: khoảng cách từ 0
–1.000 m có giá trị là 1, 1.000 – 3.000 m có giá trị là 2, 3.000 – 5.000 m có giá trị là 3,
5.000 – 7.000 m có gía trị là 4, 7.000 – 9.000 có giá trị là 5.
- Click vào menu Analysis  Classify.
- Click nút Classify... và chọn Number of classes là 5  OK.
- Nhập giá trị vào cột Old Values lần lượt là 0 – 1.000, 1.000 – 3.000, 3.000 –
5.000, 5000 – 7000, 7000 – 9000, cột New Values lần lượt là 1, 2, 3, 4, 5  OK.

Hình 4.27. 5 mức khoảng cách đến trường học


Lớp Distance to Nhamay.shp được phân thành 5 mức khác nhau khoảng cách từ 0
– 2.000 m có giá trị là 1, 2.000 – 4.000 m có giá trị là 3, 4.000 – 6.000 m có giá trị là 5,
6.000 – 8.000 m có gía trị là 7, 8.000 – 11.000 có giá trị là 9.
- Click menu Analysis Classify.
- Click nút Classify... và chọn Number of classes là 5, nhấn OK.
- Nhập giá trị vào cột Old Values lần lượt là 0 – 2.000, 2.000 – 4.000, 4.000 –
6.000, 6.000 – 8.000, 8.000 – 11.000, cột New Values lần lượt là 1, 3, 5, 7, 9,
nhấn OK.

Hình 4.28. 5 mức khoảng cách đến nhà máy

-74-
Lớp Distance to dgtcap2.shp được phân thành 5 mức khác nhau khoảng cách từ 0
– 500 m có giá trị là 5, 500 – 1.000 m có giá trị là 4, 1.000 – 3.000 m có giá trị là 3,
3.000 – 6.000 m có gía trị là 2, 6.000 – 8.000 có giá trị là 1.
- Click Analysis  Classify.
- Click nút Classify... và chọn Number of classes là 5, nhấn OK.
- Nhập giá trị vào cột Old Values lần lượt là 0 – 500, 500 – 1.000, 1.000 – 3.000,
3.000 – 6.000, 6.000 – 8.000, cột New Values lần lượt là 5, 4, 3, 2, 1  OK.

Hình 4.29. 5 mức khoảng cách đến đường giao thông cấp 2

Thực hiện tìm ra những vị trí thích hợp để xây dựng trường học mới:
- Click menu Analysis Map Caculator..., giao diện xuất hiện như sau:

Hình 4.30. Tìm vị trí thích hợp để xây dựng trường học
- Điền thông tin cho hộp thoại tính toán chuỗi sau:
([Reclass of Distance to Nhamay.shp] + [Reclass of Distance to Truong.shp] + [Reclass
of Distance to Dgtcap2.shp])
 Evaluate.
- Đóng hộp thoại Map Calculator.
- Lưu lại project.

-75-
Trong khung nhìn xuất hiện một lớp Grid mới có tên Map Calculation 1, dựa vào
lớp này, trường học mới nên xây dựng ở vị trí nào.

Hình 4.31. Vị trí có thể xây dựng trường học mới


Giả sử trường học nên được xây dựng ở những nơi có số điểm trên 11, dựa trên
bản đồ này có thể quyết định vị trí nào nên xây dựng trường học mới.
4.4.3. Phân tích chồng lớp
Chồng các lớp thông tin khác nhau để phân tích không gian là một phép toán
không gian quan trọng trong GIS. Chức năng chồng ghép các lớp dữ liệu không gian
khác nhau để tạo ra một lớp dữ liệu mới. Các chức năng chồng lớp số học và logic là
một bộ phận trong các phần mềm GIS.
Chồng lớp số học bao gồm những phép toán như cộng, trừ, nhân, chia từng giá trị trong
lớp dữ liệu với một giá trị tại vị trí tương ứng trong lớp dữ liệu thứ hai.Chức năng chồng các
lớp bản đồ cho phép người sử dụng đặt các lớp dữ liệu lên nhau trên cơ sở các quan hệ không
gian. Ghép bản đồ tạo ra các loại dữ liệu tổng quát hơn trong bản đồ.
Phép chồng ghép và khả năng đánh giá các quan hệ không gian có thể là chức
năng được biết đến nhiều nhất của các hệ thống GIS. Quan hệ giữa các lớp dữ liệu có
thể được truy vấn thông qua các biểu thức toán học (logic) hoặc/ và bằng trực quan.
Để thực hiện các phép toán phân tích chồng lớp các lớp bản đồ trong ArcView,
nạp Extension có tên là
Geoprocessing. Các bước
thực hiện như sau:
- Vào menu File 
Extensions... Hộp thoại
chứa các Extensions sẽ
xuất hiện.
- Chọn Geoprocessing 
OK, xuất hiện
GeoProcessing Wizard
trong menu View.

-76-
Để thực hiện các chức năng phân tích không gian, tại của sổ View, Click chọn
menu View  GeoProcessing Wizard, xuất hiện hộp thoại để lựa chọn các chức năng
phân tích không gian và thực hiện theo hướng dẫn.
 Dissolve features based on an attribute: Tích hợp các đối tượng gần nhau dựa
trên một thuộc tính.
 Clip one theme based on another: Cắt các đối tượng dựa trên các đối tượng
của lớp khác.
 Intersect two themes: Tích hợp lấy phần giao của hai lớp.
 Union two themes: Tích hợp lấy phần hợp của hai lớp.
 Merge themes together: Tích hợp hai lớp theo biên.
 Assign data by location: Kết nối không gian.

Hình 4.32. Hộp thoại chọn loại phân tích chồng lớp
 Cắt các đối tượng dựa trên đối tuợng khác: chức năng này sẽ tạo một lớp mới bằng
cách sử dụng một lớp polygon (hoặc các vùng đã được chọn trước trên lớp đó) như
là phạm vi để cắt lớp cần cắt. lớp kết quả sẽ chứa những đối tượng của lớp cần cắt
nằm trong phạm vi cắt.
 Tích hợp lấy phần giao của hai lớp: Sử dụng chức năng này khi muốn kết hợp hai
tập dữ liệu không gian của hai lớp bằng cách giữ lại những đối tượng nằm trong
phạm vi chung của cả hai lớp.
 Tích hợp các đối tượng gần nhau dựa trên một thuộc tính: Sử dụng chức năng này khi
muốn loại bỏ các biên hoặc các nút chung giữa các vùng (polygons) hoặc đường
(lines) mà các biên hoặc các nút này có cùng chung các giá trị của một thuộc tính.
 Tích hợp lấy phần hợp của hai lớp: Sử dụng chức năng này khi muốn tạo ra một
lớp mới bằng cách kết hợp hai lớp vùng. Lớp mới sẽ chứa dữ liệu không gian và
thuộc tính của hai lớp kể cả những phần giao nhau giữa chúng.
 Tích hợp hai lớp theo biên: Chức năng này giống chức năng Union nhưng nó không
chứa phần giao nhau của hai lớp. Khi dùng chức năng này, phải chỉ định một lớp

-77-
để lấy các trường muốn thêm vào lớp kết quả. Nếu các lớp còn lại có nhiều trường
hơn lớp đã chỉ định thì những trường này sẽ không có trong lớp kết quả. Nếu các
lớp khác không có những trường giống với những trường trong lớp đã chỉ định thì
những ô trống sẽ được thêm vào trong bảng thuộc tính của lớp kết quả.
 Kết nối không gian: Chức năng này cho phép bạn kết nối dữ liệu thuộc tính giữa
hai lớp với nhau dựa vào mối quan hệ không gian giữa các đối tượng trong hai lớp.
Với mỗi đối tượng trong lớp đích, ArcView sẽ tìm xem có mối quan hệ không gian
nào với các đối tượng trong bảng nguồn không, nếu có thì dòng chứa đối tượng đó
trong bảng nguồn sẽ được kết nối vào bảng đích.
Còn nhiều chức năng phân tích không gian phân tích bề mặt, phân tích 3D, phân tích
mạng,… mà trong khuôn khổ tài liệu này không thể trình bày hết được. Bạn đọc có thể
tìm đọc ở tài liệu tham khảo hoặc các tài liệu chuyên sâu về phân tích không gian.
4.5. KÝ HIỆU HÓA VÀ TẠO TRANG IN BẢN ĐỒ
4.5.1. Ký hiệu hóa
Một ảnh bản đồ bao gồm hai thành phần chính đó là các yếu tố đồ họa được liên
kết với các đối tượng không gian và các chú thích bản đồ.
Mỗi loại đối tượng không gian như các điểm, đường, vùng có thể được liên kết
đến các yếu tố đồ họa để hiển thị.
- Dữ liệu điểm được biểu diễn trên các ảnh bằng các ký hiệu đồ họa. Kiểu mẫu,
kích thước và màu sắc của ký hiệu được hiển thị tại vị trí của điểm, chúng có thể
là tập hợp các giá trị hằng số hoặc có thể biến thiên theo một hoặc nhiều trường
thuộc tính trong bảng thuộc tính điểm. Hình 4.32.a minh họa một số kiểu ký hiệu
dạng điểm.
- Dữ liệu đường được biểu diễn trên các ảnh bằng các đường liên tục, các đường
đó có thể thay đổi theo độ dày mỏng của đường, theo màu sắc hoặc theo kiểu
đường. Hình 4.32b minh họa một số kiểu ký hiệu dạng đường.
- Dữ liệu vùng được biểu diễn trên ảnh như những vùng khép kín được tô bằng
màu hoặc trắng đen, hoặc các kiểu mẫu nền (Hình 4.32.c minh họa một số kiểu
ký hiệu mẫu nền). Đường biên của vùng có thể biểu diễn dạng đường, với kiểu
mẫu, lực nét, màu sắc tương tự như cách biểu diễn dữ liệu dạng đường. Màu sắc
và kiểu mẫu của vùng kín được xác định bằng các giá trị trong một hoặc nhiều
trường dữ liệu của bảng thuộc tính vùng và sự phân loại thường được áp dụng để
phân chia các thuộc tính của chúng thành các lớp riêng biệt. Các màu sắc được
xác định sử dụng một bảng màu hay bảng tra màu (LUT). Các ký hiệu trên mẫu
nền có thể là rời rạc hoặc liên tục, có thể thay đổi mật độ.
Dữ liệu ảnh điểm được biểu diễn hầu hết chỉ bằng màu sắc hoặc các mức xám.
Trong trường hợp một ảnh Raster không được liên kết với bảng thuộc tính, màu sắc
được xác định từ giá trị ảnh điểm sử dụng một bảng tra màu (LUT). Mặt khác, giá trị
ảnh điểm có thể chỉ đến một bảng thuộc tính trong trường hợp giá trị của trường dữ liệu
đã chọn được sử dụng để xác định màu sắc.
 Chú thích bản đồ
Chú thích thường được tạo ra sau cùng, đặt lên trên các yếu tố đồ họa của ảnh.
Chú thích bao gồm nhãn, tiêu đề, bảng chú giải, thước tỉ lệ, lưới chiếu và mũi tên chỉ
hướng Bắc.
-78-
a) Ký hiệu điểm

a) Ký hiệu điểm b) Ký hiệu đường c) Ký hiệu vùng


Hình 4.33. Các loại ký hiệu dùng cho các đối tượng điểm, đường, vùng.
Các nhãn thường được liên kết đến các đối tượng điểm để chúng có thể được đặt
tại những vị trí riêng biệt trên bản đồ. Các trường dữ liệu trong bảng thuộc tính có thể
được sử dụng để xác định chuỗi ký tự, kích thước, màu sắc và hướng của các nhãn.
Trong một số hệ thống, kích thước của nhãn có thể tự động thay đổi theo sự tăng, giảm
của tỉ lệ bản đồ. Tiêu đề và các khối văn bản cũng có thể được định vị tại các vị trí xác
định và cũng có các đặc tính tương tự như các nhãn. Các mắc lưới hay các đường kẻ
chia độ bao quanh hoặc cắt ngang qua bản đồ được sử dụng để biểu thị lưới chiếu và các
tọa độ địa lý. Trong một số hệ thống, chú thích được liên kết đến các lớp đối tượng
không gian.
Nhìn chung, việc thiết kế chú thích bản đồ là một việc làm linh hoạt và có tính
tương tác lẫn nhau, sao cho các bản đồ tạo ra có chất lượng cao.
 Độ phân giải, tỉ lệ
Thiết bị phần cứng dùng làm giao diện hiển thị các ảnh bản đồ là một màn hình
video màu. Kích thước của ảnh trên màn hình bị chi phối bởi kích thước vật lý của màn
hình, số hàng, số cột của các điểm ảnh trên màn hình, trong bộ nhớ video và trong bộ
phận trợ giúp đồ họa. Trong hầu hết các trường hợp, số lượng hàng, cột trên màn hình
tương ứng với số lượng hàng, cột trong bộ nhớ video. Độ phân giải của ảnh trên màn
hình là khoảng cách trên mặt đất tương ứng với một điểm ảnh. Độ phân giải này thường
không liên quan đến độ phân giải của dữ liệu trong cơ sở dữ liệu. Ví dụ, nếu một lớp dữ
liệu có cấu trúc Raster được lưu trữ trên đĩa với số dòng cột là (4.000, 4.000) nhưng
được hiển thị trên màn hình với số dòng cột là (1.000, 1.000) thì lúc đó ảnh hiển thị chỉ
sử dụng một phần tư điểm ảnh trong mỗi hướng. Do đó, ảnh bị thu nhỏ kích thước lại
còn một phần tư ảnh. Ngược lại, một ảnh Raster trên đĩa mà có kích thước nhỏ hơn kích
thước của màn hình thì khi hiển thị một số điểm ảnh có thể lặp lại để đạt được hiệu quả

-79-
hiển thị và lấp đầy màn hình lớn hơn. Dữ liệu đường, điểm và các ký hiệu được liên kết
với chúng được Raster hóa trong suốt quá trình hiển thị.
Tỉ lệ hiển thị của một ảnh bản đồ có thể bị thay đổi do sự thu phóng của phần cứng
hoặc phần mềm. Trong phần cứng, sự thu phóng đơn giản là sự phóng đại một vị trí trên
màn hình mà không thay đổi độ phân giải ảnh. Những điểm ảnh đặc biệt được tái tạo và
khi phóng to, ảnh trở thành hình khối. Đối với sự thu phóng trong các phần mềm thường
hữu ích hơn bởi vì độ phân giải thay đổi bằng cách hiển thị lại từ cơ sở dữ liệu.
Hình ảnh xuất ra từ GIS có thể xuất đến các thiết bị khác hơn là xuất ra màn hình
video, như các máy in hoặc máy vẽ. Trong một số trường hợp, các nội dung trên màn
hình video được chuyển đơn giản thành một tập tin Raster với cùng số lượng các điểm
ảnh trên màn hình. Một số trường hợp khác, một tập tin ảnh số được tạo ra cho thiết bị
phần cứng đặc biệt như máy vẽ Raster hoặc Vector định dạng lớn. Một tập tin độc lập
được tạo ra để hiển thị trên hầu hết các thiết bị khác, được biết đến như một siêu tệp đồ
họa với định dạng phổ biến là PostScript. Bên cạnh đó, các siêu tệp đồ họa duy trì độ
phân giải không gian của dữ liệu, ngược với ảnh Raster bị hạn chế tới độ phân giải của
bộ nhớ hiển thị, điều này có thể dẫn đến làm mất đi nhiều tính chất sắc xảo của ảnh. Các
tập tin đồ họa độc lập thiết bị có thể khởi động được từ bất kỳ phần mềm hiển thị nào
đang có sẵn.
4.5.2. Tạo trang in bản đồ
4.5.2.1. Xây dựng bản đồ trong GIS
Nguồn dữ liệu trong GIS rất phong phú và đa dạng, gồm dữ liệu trong nhiều lĩnh
vực khác nhau như quản lý đất đai, nhà cửa, quản lý hành chính, quản lý tài nguyên môi
trường, giáo dục, y tế... được phân thành dữ liệu không gian và dữ liệu thuộc tính có mối
quan hệ lẫn nhau. Để có thể xem xét một cách tổng quát mối liên hệ giữa không gian và
thuộc tính, liên hệ giữa dữ liệu GIS với các đối tượng của thế giới thực cũng như việc
mô tả thế giới thực một cách hiệu quả, cần chuyển nguồn dữ liệu GIS về những mô hình
thu nhỏ của thế giới thực để có thể biểu diễn cả những thông tin thuộc tính của đối tượng.
Một công cụ rất hiệu quả có thể chuyển tải được tất cả các nội dung cần hiển thị đó là
bản đồ.
Bản đồ được xác định là sự mô tả đồ họa của các đối tượng trong thế giới thực đã
được thay thế bằng những ký hiệu tại đúng vị trí trong không gian với tỉ lệ nhỏ hơn.
Bản đồ được xem như nguồn dữ liệu đầu vào của GIS và cũng là công đoạn cuối
cùng trong quá trình làm việc với GIS, kết quả của quá trình phân tích, truy vấn, khảo
sát thông tin... đều được hiển thị lên bản đồ.
Một bản đồ hoàn chỉnh là sự hợp nhất của các thành phần con có mối liên hệ mật
thiết và bổ sung cho nhau. Mỗi thành phần có nhiều cách thể hiện khác nhau. Vì vậy,
ngoài việc chọn những thành phần cần thể hiện trên bản đồ, màu sắc, cấu trúc đường
nét, còn phải sắp xếp các thành phần trên một bản đồ sao cho hợp lý, khoa học, có hiệu
quả khi sử dụng và nhất là phải có tính thẩm mỹ cao là điều không phải dễ dàng. Việc
phân loại bản đồ tùy thuộc vào mục đích sử dụng của bản đồ, lãnh thổ và nội dung thể
hiện của bản đồ. Trong GIS có các loại bản đồ sau đây:
- Theo lãnh thổ: Bản đồ các châu lục, bản đồ từng quốc gia, khu vực, thấp hơn thì
có bản đồ các tỉnh, quận huyện...

-80-
- Theo mục đích sử dụng: Bản đồ quân sự, bản đồ du lịch, bản đồ giáo khoa, bản
đồ kinh tế vùng...
- Theo nội dung: Bản đồ địa lý chung và bản đồ chuyên đề.
Bản đồ chuyên đề chỉ thể hiện một hoặc hai chủ đề hay lớp thông tin. Để hiển thị
lên bản đồ những đối tượng khác nhau trong không gian như đường giao thông, sông
hồ, nhà cửa, rừng núi... người dùng phải chọn những ký hiệu có hình dạng tương ứng để
biểu thị. Ví dụ: đường giao thông trên thực tế có dạng đường nên sẽ biểu diễn lên bản
đồ có dạng đường, hay vùng ao hồ, điểm độ cao....Mỗi phương pháp biểu thị khác nhau
của dữ liệu sẽ tạo ra những loại bản đồ khác nhau, có thể có những bản đồ dạng điểm,
dạng đường, dạng vùng hay những bản đồ hiển thị hoạt cảnh 3 chiều.
Những bản đồ thể hiện một số hoặc tất cả những loại đối tượng trong thế giới
thực với mức độ quan trọng như nhau gọi là bản đồ địa lý chung.
Bản đồ địa lý chung bao gồm những thông tin về địa hình, thủy hệ, giao thông,
thực vật, dân cư, ranh giới hành chính. GIS sử dụng loại là bản đồ này để tạo ra những
lớp bản đồ riêng biệt và để tra cứu thông tin.
Bản đồ điểm (Dot map) thường sử dụng điểm để thể hiện vị trí của các đối tượng
không gian hay sử dụng mật độ các điểm bên trong vùng để thể hiện giá trị dữ liệu phân
theo từng vùng. Ví dụ: bản đồ chỉ mật độ như: mật độ dân số, cây trồng, nhà cửa, bản
đồ phân bố dân cư, bản đồ các trung tâm hành chính....

Hình 4.34. Bản đồ điểm

Bản đồ ký hiệu hình ảnh (Picture symbol map) sử dụng những ký hiệu tượng hình
để thể hiện cho những đối tượng, thường sử dụng trong bản đồ du lịch.

Hình 4.35. Bản đồ ký hiệu hình ảnh

-81-
Bản đồ ký hiệu tăng dần (Graduated symbol map) sử dụng kích thước của ký
hiệu nhằm tạo ra thang ký hiệu tăng dần theo độ gia tăng của giá trị thuộc tính. Các giá
trị của dữ liệu sẽ được thể hiện bằng độ lớn nhỏ của ký hiệu. Khi tạo thang ký hiệu cho
bản đồ, cần phải chọn vùng giới hạn hiển thị, kích cỡ, độ rộng của ký hiệu cho hợp lý
để tránh trường hợp che khuất những đối tượng khác trên bản đồ.
Bản đồ giá trị duy nhất (Unique values map): Bản đồ loại này sử dụng các ký
hiệu khác nhau bằng màu sắc khác nhau để ký hiệu cho mỗi giá trị thuộc tính.
Bản đồ giá trị duy nhất phù hợp với các loại bản đồ sau:
- Bản đồ mô tả tên, kiểu dáng, trạng thái hoặc phân loại của một đối tượng.
- Bản đồ chứa đựng sự đo lường hoặc số lượng đã được phân loại.
- Bản đồ mang đặc điểm chỉ định tính duy nhất.
Bản đồ màu tăng dần (Graduated Color map): Những bản đồ loại này thể hiện
một loạt các ký hiệu có màu thay đổi theo tính chất liên tục và theo mức độ từ thấp đến
cao nhằm tạo ra thang màu tăng dần của các giá trị thuộc tính. Kí hiệu này chỉ dành cho
các thuộc tính dạng số của những đối tượng (điểm, đường, vùng). Thường sử dụng cho
loại bản đồ thể hiện nhiệt độ, lượng mưa, độ cao địa hình...
Bản đồ biểu đồ (Chart): Các bản đồ loại này sử dụng biểu đồ (dạng tròn, dạng
cột) để hiển thị những thông tin có quan hệ với nhau trong những thuộc tính khác nhau.

: Dịch vụ
: Nông nghiệp
: Công nghiệp

Hình 4.36. Bản đồ biểu đồ

4.1.2.2. Tạo trang in bản đồ

Một bản đồ hoàn chỉnh cần có các thành phần sau:


- Nội dung: bản đồ chính, nói lên được chủ đề mà bản đồ sẽ thể hiện.
- Yếu tố hỗ trợ: bản đồ, bảng chú giải, yếu tố xuất bản.
- Cơ sở toán: khung bản đồ, lưới chiếu, tỷ lệ.
- Yếu tố bổ sung: bản đồ phụ, hình ảnh minh họa, biểu đồ,…
Trong đó, những thành phần trong nội dung và cơ sở toán là quan trọng, quyết
định nội dung của bản đồ. Những thành phần trong yếu tố hỗ trợ giúp đọc được bản đồ
chính, những thành phần trong yếu tố bổ sung nhằm minh họa thêm cho nội dung của
bản đồ.
Để tạo trang in cho bản đồ các bước thực hiện như sau:
- Từ menu View chọn Layout, xuất hiện hộp thoại Template Manager.
- Chọn chiều đặt giấy Landscape (ngang) hoặc Portrait (dọc).  OK, xuất hiện
cửa sổ Layout.

-82-
 Chọn khổ giấy.
- Layout  Page Setup, xuất hiện hộp thoại
Page Setup:
 Page Size: chọn khổ giấy A3.
 Đặt khoảng cách trên, dưới, trái phải
cho giấy trong hộp Top, Bottom, Left,
và Right
 Đặt chất lượng in trong hộp Output
Resolution: High  OK.
 Nhấn vào công cụ Zoom to page trên
thanh công cụ để view toàn bộ trang in
trên màn hình. Hình 4.37. Hộp thoại chọn khổ giấy in
 Đặt tỷ lệ cho bản đồ cần in
D-Click vào phần bản đồ cần in, xuất hiện hộp
thoại View Frame Properties:
- Trong hộp Scale chọn User Specified Scale.
- Nhập tỷ lệ cần in vào hộp text bên dưới  OK.
- Căn chỉnh vị trí bản đồ về giữa trang in.
 Tạo khung ngoài cho bản đồ in
- Chọn bản đồ.
- Bấm chuột vào công cụ Neatline, xuất hiện hộp
thoại Neatline Setting:
 Đánh dấu vào Place around the selected
graphic.
Hình 4.38. Hộp thoại đặt tỷ lệ
 Trong hộp Width(pts) chọn 1.5.
 Đặt khoảng cách giữa khung và bản đồ vào hộp Top, Bottom, Left và Right.
 Bấm OK
 Biên tập tên bản đồ

Trên thanh công cụ của ArcView chọn công cụ sau đó đặt con trỏ vào vị trí
cần đánh tên bản đồ, xuất hiện hộp thoại Text Properties:
- Gõ tên bản đồ  OK.
- Chọn tên bản đồ.
- Window  show symbol window.
- Chọn kiểu chữ, kích thước và màu sắc cho tên bản đồ.
- Thực hiện tương tự cho tỷ lệ bản đồ, chú dẫn bản đồ.
 Biên tập thước tỷ lệ
- Chọn công cụ view frame  Scale Bar frame .
- Đặt con trỏ vào vị trí cần đặt thước tỷ lệ, xuất hiện một hộp thoại Scale Bar
Properties:
 Style: Lựa chọn kiểu thước trong hộp.
 Interval và intervals: Đặt khoảng cách cho vạch thước thứ nhất đến các vạch
thước còn lại.
 Đặt khoảng phân chia về phía bên trái  Ok.
Ngoài ra, có thể biên tập ký hiệu chỉ hướng, bảng chú giải…

-83-
CÂU HỎI ÔN TẬP CHƯƠNG 4
Bài tập thực hành 1. Sử dụng công cụ Select Feature, Identify, Find, sắp xếp thuộc tính,
biểu đồ.
Bài tập thực hành 2. Truy vấn thuộc tính bằng biểu thức: Tìm vị trí các nhà máy sản xuất
mặt hàng hải sản hoạt động từ năm 1997 trở về trước.
Bài tập thực hành 3. Truy vấn không gian dựa trên mối quan hệ không gian: gần, nằm
trong, giao nhau:
a) Tìm các điểm trường học trong tỉnh Đồng Tháp các đường Quốc lộ 80 khoảng
cách 200m.
b) Tìm tất cả các vùng đất thuộc tỉnh Đồng Tháp trong chủ đề thổ nhưỡng (Tnhuong)
trong vòng bán kính 2km tính từ tâm điểm của từng nhà máy (nhamay).
c) Tìm những vùng đất (Tnhuong) có ranh giới tiếp giáp với các vùng sông, hồ
(Tnhuong)
d) Ta có hai chủ đề: nhà máy và vùng hành chính huyện. Chọn những nhà máy nằm
bên trong Thị xã Cao Lãnh.
e) Tìm những huyện (huyen) trong tỉnh Đồng Tháp có đường quốc lộ 80 (chủ đề
dgt) đi qua.
Bài tập thực hành 4. Tổng kết và thống kê dữ liệu.
Bài tập thực hành 5. Ký hiệu hóa dữ liệu sử dụng Legend Editor:
Bài tập thực hành 6. Tạo bản đồ các loại:
f) Tạo bản đồ có giá trị duy nhất.
g) Tạo bản đồ theo thang màu.
h) Tạo bản đồ theo ký hiệu tăng dần.
i) Tạo bản đồ mật độ điểm.
j) Tạo bản đồ dạng biểu đồ.
k) Tạo bản đồ hiện trạng sử dụng đất của tỉnh Đồng Tháp. Mỗi loại đất sử dụng hiển
thị bằng một màu khác nhau.
l) Tạo bản đồ so sánh dân số giữa các huyện của tỉnh Đồng Tháp theo thang màu.
m) Tạo bản đồ ký hiệu tăng dần những giá trị tăng dần theo điểm cao độ khu vực
tỉnh Đồng Tháp.
n) Tạo bản đồ mật độ điểm để thể hiện mật độ dân số của từng vùng hành chính
huyện trong địa bàn tỉnh Đồng Tháp.
o) Tạo bản đồ thể hiện số lượng nam, nữ trong tổng số dân của tỉnh Đồn Tháp.
p) Tạo nhãn tên các huyện trong tỉnh Đồng Tháp.
q) Tạo biểu đồ so sánh dân số của tỉnh Đồng Tháp qua các năm từ 1995 đến 1999.
Bài tập thực hành 7. Tạo trang in bản đồ có tiêu đề, chú thích, tỉ lệ, mũi tên chỉ hướng.
Bài tập thực hành 8. Tạo một lớp đường giao thông của huyện bằng cách cắt lớp đường
giao thông của một xã.

-84-
CHƯƠNG 5
LẬP TRÌNH GIS CƠ BẢN VỚI NGÔN NGỮ AVENUE
5.1. CƠ BẢN VỀ NGÔN NGỮ LẬP TRÌNH AVENUE
5.1.1. Giới thiệu ngôn ngữ Avenue
Cùng với sự ra đời của phần mềm Arcview, các nhà phát triển phần mềm Arcview
đã tích hợp trong nó một ngôn ngữ lập trình Avenue đi kèm. Tuy nền tảng phát triển đều
dựa trên các thành phần xây dựng sẵn bên trong Arcview, nhưng với sự hỗ trợ của ngôn
ngữ lập trình Avenue, những người khai thác phần mềm Arcview không còn lệ thuộc
hoàn toàn vào các công cụ có sẵn trong phần mềm Arcview nữa, Avenue cho phép đem
các thành phần có sẵn này xây dựng nên các công cụ hỗ trợ khác nhau. Với các thành
phần sẵn có, lập trình viên Avenue trong Arcview chỉ cần biết các mô đun có những
chức năng gì, hoạt động như thế nào là có thể này lắp ráp các mô đun này lại với nhau
tạo nên một ứng dụng theo ý muốn.
Ngôn ngữ lập trình Avenue dễ học và dễ sử dụng, những người có kiến thức căn
bản về tin học và biết sử dụng Arcview đều có thể tiếp cận được ngôn ngữ lập trình này.
5.1.2. Các đặc điểm của ngôn ngữ Avenue
- Ngôn ngữ lập trình Avenue là ngôn ngữ kịch bản (script) hướng đối tượng, là
ngôn ngữ biên dịch, không hỗ trợ đệ quy, không cho phép tạo mới hay sửa
đổi các lớp có sẵn trong Arcview, kịch bản Avenue không thể thực thi bên
ngoài Arcview. Các biểu thức trong Avenue thực thi theo chiều từ trái qua
phải và không có độ ưu tiên toán tử.
5.1.3. Giao diện lập trình Avenue

Nút lưu Các nút Nút Nút Nút Nút Nút xem
Project
hỗ trợ dịch chạy chạy đặt script
soạn từng điểm hệ thống
script script Hai nút
thảo bước ngắt
trợ giúp

Hình 5.1. Giao diện lập trình Avenue


-85-
Giao diện lập trình Avenue nằm trong Project của Arcview. Để mở giao diện này,
thực hiện các thao tác sau đây:
- Mở Arcview  Chọn Script  New để tạo mới một Script. Script mới tạo có
tên là script1.
- Chọn menu Script và gõ vào tên script mới trong trường name để đổi tên.
- Trong một project có thể tạo nhiều script khác nhau.

5.1.4. Lớp và đối tượng


Trong Arcview, mọi thứ đều được xem là đối tượng, khi mở một khung nhìn
(view), khung nhìn đó được gọi là đối tượng khung nhìn, khi thêm một theme mới vào
khung nhìn, theme đó được gọi là đối tượng theme.
Trong Arcview mối quan hệ giữa các lớp được biễu diễn thông qua lược đồ mô
hình đối tượng. Để có thể lập trình tốt, người lập trình phải biết cách đọc và hiểu được
các lược đồ mô hình đối tượng này.
Ví dụ về một lược đồ mô hình đối tượng trong Arcview:

Hình 5.2. Các lớp và đối tượng trong Arcview

5.1.5. Yêu cầu và cách gọi yêu cầu trong Avenue


Trong Arcview có hai dạng yêu cầu:
- Yêu cầu thực thể: Là loại yêu cầu được gửi tới thực thể của lớp. Ví dụ gửi một yêu
cầu tới đối tượng theme để hiển thị hay che dấu theme này. (một theme cụ thể)
- Yêu cầu lớp: Là loại yêu cầu gửi trực tiếp tới lớp. Ví dụ, gửi một yêu cầu tạo mới
theme tới lớp theme.
Trong Arcview tên của yêu cầu thường bắt đầu là một động từ, chữ cái đầu được
viết hoa.

-86-
Ví dụ: GetProject, FindScript, AddDoc, SetValue, trong đó Get, Find, Add, Set
chỉ các hành động, Project, Script, Doc, Value nhận các hành động này.
Các động từ bắt đầu của các yêu cầu dùng trong ngôn ngữ Avenue được trình bày
trong bảng sau:

Động từ bắt đầu Ý nghĩa


Add Thêm một đối tượng khác vào nhóm đối tượng
As Chuyển đổi một đối tượng thuộc lớp này sang một đối tượng
thuộc lớp khác
Can Kiểm tra xem một đối tượng có thể thực hiện được một chức
năng nào đó
Find Tìm một đối tượng xác định và trả về tham khảo tới nó
Get Trả về tham khảo tới một đối tượng
Has Chỉ ra nếu một đối tượng có trạng thái xác định
Is Trả về True hay False
Make Tạo thực thể mới
Return Tạo mới một đối tượng và trả về tham chiếu tới nó
Set Gán thuộc tính vào một đối tượng
Sau đây là cú pháp lệnh gởi yêu cầu đến một đối tượng thực hiện một hành động
nào đó:
Object.Request
Trong đó:
 Object là đối tượng cần gửi yêu cầu tới,
 Request là yêu cầu cần gửi tới đối tượng Object.
Ví dụ:
Tạo mới một khung nhìn: View.Make
Cũng có thể kết quả trả về của một yêu cầu là một đối tượng, với đối tượng vừa trả
về cũng có thể gửi yêu cầu tới nó.
Ví dụ:
av.GetActiveDoc.GetGUI
Ví dụ:
Cần tìm theme có tên là dgt.shp trong khung nhìn có tên là “Ban do Dong Thap”
cú pháp như sau:
av.FindDoc(“Ban do Dong Thap”).FindTheme(“dgt.shp”)
Từ sơ đồ phân cấp lớp trong Arcview, muốn tìm một Theme cần phải biết theme
đó nằm trong khung nhìn (View) nào, do theme này nằm trong khung nhìn Ban do Dong
Thap nên cần truy tìm khung nhìn có tên “Ban do Dong Thap”, sau đó mới đi tìm theme
dgt.shp trong khung nhìn này.
Trong Avenue có hàng ngàn lớp và yêu cầu khác nhau, lập trình viên không cần
phải nhớ hết tất cả các lớp và yêu cầu, điều quan trọng là lập trình viên tìm đúng đến

-87-
lớp với yêu cầu cần dùng. Trong khuôn khổ tài liệu này, tác giả không trình bày hết tất
cả các lớp và yêu cầu trong Arcview mà chỉ trình bày những lớp và yêu cầu quan trọng
hay dùng, còn các lớp và các yêu cầu khác độc giả có thể tìm kiếm dễ dàng trong phần
trợ giúp của Arcview.
5.1.6. Các kiểu dữ liệu trong Avenue
- Kiểu đối tượng số
- Kiểu đối tượng String
- Kiểu đối tượng Pattern
- Kiểu đối tượng luận lý
- Kiểu đối tượng Nil: Lớp Nil chỉ có một thực thể duy nhất là đối tượng nil.
Trong Avenue, dùng giá trị nil để chỉ một số yêu cầu không trả về giá trị nào cả.
Ví dụ:
t = av.FindDoc(“View1”)
if (t = nil) then
msgbox.info(“khong tim thay doi tuong khung nhin View1”, “Thong bao”)
end
5.1.6.1. Kiểu danh sách
Danh sách là tập hợp có thứ tự của các đối tượng chứa trong nó. Các đối tượng
chứa trong sanh sách có thể ở bất kỳ dạng nào. Mỗi đối tượng trong danh sách được gọi
là một phần tử, vị trí của phần tử được xác định thông qua chỉ số.
Chỉ số đầu tiên của danh sách luôn luôn là 0. Chỉ số cuối cùng của danh sách là
List.Count -1.
Ví dụ:
‘danh sách alist có 4 phần tử
alist= {1, 5, “a”, “hello world”}
‘ds blist có 3 phần tử mà phần tử thứ hai là một danh sách.
blist = {6 , alist, “nice” }
‘lấy phần tử đầu tiên của danh sách alist, f có giá trị là 1
f = alist.Get(0)
‘lấy phần tử cuối cùng của ds alist, l có giá trị là “hello world”
l = alist.Get(alist.Count-1)
Để duyệt từng phần tử trong danh sách ta dùng vòng lặp for
Ví dụ:
for each i in alist
Msgbox.info(i.AsString, “Phan tu”)
end
hoặc:
for i = 0 to alist.Count-1
msgbox.info(alist.Get(i).AsString, “Phan tu”)
end
Ngoài ta, các phép + (phép hợp), - (phép hiệu) trên danh sách cũng có thể được
sử dụng.
Ví dụ:
alist = {1 ,2 , 4, 5}
blist = {3, 4, 6, 7}
-88-
clist = alist + blist ‘clist={1,2,4,5,3,4,6,7}
dlist = alist- blist ‘dlist={1 ,2 ,5}
Ví dụ sau thực hiện việc in ra các phần tử trong một danh sách
alist = {“pen”, “ruler”, “ink”, “table”, “chair”}
for each i in alist
msgbox.info(i, “Phan tu”)
end
5.1.6.2. Kiểu Stack
Giống như danh sách, Stack cũng là tập hợp các đối tượng có thứ tự nhưng Stack có
điểm khác biệt là cách thức truy xuất các phần tử. Với Stack các phần tử được truy xuất
theo thứ tự Last in, First out (LIFO), tức là phần tử vào sau cùng được lấy ra đầu tiên.
Lớp Stack hỗ trợ hai yêu cầu chính đó là push và pop, push dùng để cho một phần
tử vào Stack, pop dùng để lấy một phần tử ra khỏi Stack.
5.1.6.3. Kiểu Dictionary
Dictionary là một loại tập hợp mà việc truy xuất vào các phần tử của nó không
theo thứ tự, khác với danh sách dùng chỉ số là kiểu số để truy xuất vào một phần tử,
Dictionary dùng khoá (key) có kiểu bất kỳ để xác định một phần tử trong nó.
Khi khởi tạo một Dictionary, cần xác định kích thước ban đầu cho nó, trong lúc
thực thi người dùng có thể thêm vào Dictionary số lượng phần tử lớn hơn kích thước
của nó, tuy nhiên điều này sẽ làm tốn thời gian để truy xuất một phần tử.
Các yêu cầu của lớp Dictionary

Tên yêu cầu Kiểu trả về Ý nghĩa

Make(size) Dictionary Khởi tạo một Dictionary có kích


thước là size.

Add(key,Value) Boolean Thêm vào Dictionary một phần


tử có giá trị là Value, khoá là
key. Nếu khoá này đã tồn tại thì
trả về false và phần tử không
thêm được vào Dictionary

Get(key) Object Lấy phần tử có khoá là key


trong Dictionary

Remove(key) Xoá phần tử có khoá là key


trong Dictionary

Count Number Lấy về số phần tử trong


Dictionary

Ví dụ:
d = Dictionary.Make(11) ‘tạo Dictionary có kích thước là 11
d.Add("List 1", {"a","b","d"}) ‘thêm vào d danh sách có khoá là “List 1”
d.Add("List 2", {"What", "Is", "This?"}) ‘thêm vào d ds khoá List 2”
‘thêm vào d một ds có khoá là “List 3”
-89-
d.Add("List 3", {"Goodnight", "Night", "John", "Boy"})
aList = d.Get("List 1") ‘ aList ={“a”,”b”,”d”}
5.1.6.4. Kiểu Bitmap
Một Bitmap là một tập hợp có thứ tự và có kích thước cố định của các giá trị luận
lý được gọi là các bit. Giá trị mỗi bit cho biết bit đó được thiết lập hay không (nghĩa là
true hay là false).
Bitmap thường được sử dụng để lựa chọn các record trong một bảng, với mỗi
record được chọn, bit tương ứng với record này được thiết lập ở giá trị true.
Bitmap còn được sử dụng để điều khiển cách hiển thị của theme, chẳng hạn trong
lớp đường giao thông chỉ hiển thị các đường cao tốc, lúc đó cần thiết lập một bitmap để
chỉ chọn các con đường cao tốc trong lớp đường giao thông.
Một số yêu cầu của lớp bitmap

Tên yêu cầu Kiểu trả về Ý nghĩa

Make Bitmap Tạo mới một bitmap

Count Number Lấy số lượng bit được thiết lập


trong một bitmap

Get(i) Boolean Trả về true nếu bit ở vị trí i được


thiết lập và ngược lại

Clear(i) Xoá thiết lập bit ở vị trí thứ i

Set(i) Thiết lập bit ở vị trí thứ i

ClearAll Xoá tất cả các bit thiết lập

Ví dụ:
abitmap = BitMap.make(5) ‘tạo ra một bitmap có 5 bit
abitmap.Set(3) ‘thiết lập bit ở vị trí thứ 3 là true
t = abitmap.Get(3) ‘t có giá trị là true vì bit 3 được thiết lập
5.1.7. Các câu lệnh
5.1.7.1. Câu lệnh gán
Phát biểu gán có dạng: biến = đối tượng
Một biến được gán cho một đối tượng nào đó.
Ví dụ:
‘gán cho biến a giá trị 5
a = 5
‘gán đối tượng View1 cho biến myView
myView = av.FindDoc(“View1”)

-90-
5.1.7.2. Câu lệnh điều kiện: if … then…
Dạng 1: Ví dụ:
if (biểu thức luận lý 1) then if (i<5) then
khối phát biểu i = i+1
end
end

Dạng 2: Ví dụ:
if (biểu thức luận lý 1) then if (i<5) then
khối phát biểu 1 i=i+1
else
else i=i+2
khối phát biểu 2 end
end
Dạng 3: Ví dụ:
if (biểu thức luận lý 1) then if (i<5) then
khối phát biểu 1 i = i+1
elseif (i<10) then
elseif (biểu thức luận lý 2) then
i = i+2
khối phát biểu 2 else
else i = i +3
khối phát biểu 3 end
end
5.1.7.3. Phát biểu lặp
Lặp có điều kiện: Ví dụ: i = 0
while (Biểu thức luận lý) while (i<100)
khối phát biểu i = i+1
end
end
Lặp không có điều kiện: Ví dụ:
for each ele in Col for each i in 0..10 by 2
khối phát biểu msgbox.info(i.AsString,””)
end
end
Vòng lặp for duyệt qua các phần tử trong tập hợp Col, tập hợp Col có thể là một
khoảng nhảy, một danh sách, một bitmap, một dictionary hay một tập lớp bất kỳ. Nếu
các phần tử có thứ tự, vòng for duyệt theo thứ tự đó, ngược lại for duyệt theo một thứ tự
bất kỳ.
Ví dụ:
for each i in alist
msgbox.info(i.AsString,””)
end
Avenue cung cấp hai phát biểu Break và Continue cho phép việc điều khiển bên
trong vòng lặp.
5.1.8. Điều khiển giữa các script
Avenue cung cấp hai phát biểu cho phép điều khiển giữa các script: Phát biểu
Return và Exit.

-91-
- Phát biểu return
Phát biểu return có dạng return <anObject>. Phát biểu return trả về một đối tượng
cho Script gọi. Phát biểu return luôn có đối số.
Ví dụ:
‘script gọi
re = av.run(“getAction”, “xanh”)
msgbox.info(re, “chi dan chay xe”)
‘script getAction
if (self = “do”) then ‘đỏ
return “dung”
elseif (self =”xanh”) then ‘xanh
return “di”
else ‘vàng
return “coi chung”
end
- Phát biểu exit
Phát biểu exit kết thúc script đang chạy.
Ví dụ:
theView = av.getActiveDoc
for each t in theView.GetThemes
if (t.IsVisible = false) then
exit
end
end
5.1.9. Đối tượng av và từ khoá self
- Đối tượng av
Khi mở Arcview, một đối tượng ứng dụng Arcview được tạo ra tức thì, đối tượng
này chứa một project, trong project này chứa tất cả các đối tượng.
Trong phân cấp lớp của Arcview, đối tượng ứng dụng là đối tượng ở phân lớp cao
nhất, đối tượng này gọi là av.
Ví dụ:
Lấy về đối tượng project hiện thời
theProject = av.getProject
Lấy về cửa sổ làm việc hiện hành
theView = av.getActiveDoc
av còn dùng để gọi một script trong script khác.
Có 2 cách gọi script dùng av
+ Dùng av.run
Ví dụ:
‘gọi script có tên myscript cung cấp đối số là ds rỗng
av.run(“myscript”,{})
‘gọi script có tên ascript với đối số là danh sách {1,5,7}
av.run(“ascript”,{1,5,7})

-92-
+ Dùng av.delayedRun
Để gọi một Script sau một khoảng thời gian nào đó ta dùng av.delayedRun
Ví dụ: script có tên là Annoy
status = MsgBox.YesNo( "Is this annoying?", "ANNOY", FALSE )
if (NOT status) then
av.DelayedRun("annoy","",10)‘cứ 10 giây lại gọi chính nó
end
Với script này cứ 10 giây lại hiển thị thông điệp sau:

Hình 5.3. Minh họa dùng đối tượng av


Nếu nút “No” được kích hoạt thì 10 giây tiếp theo thông điệp này lại hiển thị,
ngược lại đoạn script annoy kết thúc thực thi.
- Từ khoá self
Self thường dùng để tham khảo tới đối tượng gây ra sự kiện thực thi script, khi
nhấp chuột vào một button tương đương với việc có thể dùng self để tham khảo đến
button này.
Self còn dùng để lấy giá trị tham số truyền từ script khác gọi nó.
Ví dụ:
‘script1 có nội dung như sau
‘tinh tong cua 2 so a, b
a = 10
b = 20
tong = av.run(“script2”,{a,b})
‘script2 có nội dung như sau
a = self.get(0) ‘lấy giá trị tham số thứ nhất của script1 (là a)
b = self.get(1)
c = a + b
return c
Khi thực thi script1, giá trị của tổng trả về là 30
Ví dụ 1. Viết script tính tổng của các phần tử trong một danh sách gồm các đối tượng
kiểu số.
Hướng dẫn: ‘script tinhtong
alist={1,3,5,6,3,2,25,30}
tong = 0
for each i in alist
tong = tong + i
end
msgbox.info(“tong cac phan tu trong danh sach “ + tong.AsString, “Tong”)

-93-
Ví dụ 2. Viết script tìm số lớn nhất của 3 số
Hướng dẫn: ‘script timmax m =a
a=4 elseif ((b>=a) and (b>=c)) then
b=5 m=b
c=7 elseif ((c>=a) and (c>=b)) then
m=a m=c
if ((a>=b) and (a>=c)) then end

Ví dụ 3. Cho một danh sách bất kỳ, tìm các phần tử có kiểu số.
Vd: alist={123, 45, “cd”, “ef”, 6, “55”}  kết quả: blist = {123,45,6}
Hướng dẫn:
alist={“123”,45,”cd”,”ef”,”6”}
blist={}
for each i in alist
if (i.getClass.getClassName= “Number”) then
blist.add(i)
end
end
Yêu cầu getClass lấy về lớp của một đối tượng, yêu cầu getClassName trả về tên
của một lớp.
5.2. KHUNG NHÌN (VIEW) VÀ LỚP CHỦ ĐỀ (THEME)
5.2.1. Lược đồ mô hình đối tượng của khung nhìn và lớp chủ đề

Hình 5.4. Lược đồ mô hình đối tượng của khung nhìn và lớp chủ đề
Nhìn vào mô hình đối tượng bên trên, nhận thấy rằng View là một loại của
document (DOC) được chứa đựng bên trong một cửa sổ có thể mở, đóng, thay đổi kích
cỡ hoặc di chuyển được. Một View có thể không có Theme hoặc chứa nhiều Theme, có
bảng nội dung (TOC) để hiển thị chú giải cho mỗi Theme, có vùng hiển thị bản đồ (Map
Display) và cũng chứa đựng một tập các đối tượng đồ hoạ (graphics) như hình tròn, hình
chữ nhật, đường thẳng, nhãn.
-94-
5.2.2. Tạo mới một khung nhìn
Để tạo mới một View sử dụng yêu cầu Make và gửi yêu cầu Make đến lớp View
myView = View.Make
Tiến hành đặt tên cho View với yêu cầu SetName thông qua đối số có kiểu String.
Đối số này chính là tên View cần đặt.
myView.SetName(“Khung nhin bai tap chuong 5”)
Để mở View Khung nhin bai tap chuong 5, cần phải lấy được cửa sổ của View.
Yêu cầu GetWin sẽ trả về cửa sổ của View: theWindow = myView.GetWin
Yêu cầu Open sẽ cho phép mở cửa sổ View: theWindow.Open
Nếu muốn cửa sổ View này hiển thị lên trên tất cả các cửa sổ khác của đề án, hãy sử
dụng yêu cầu Activate.
theWindow.Activate
5.2.3. Tìm kiếm một khung nhìn
Để tìm kiếm một View có tên là “Khung nhin bai tap chuong 5” trong Arcview,
trước tiên mở cửa sổ đề án (Project) và sau đó tìm tên “Khung nhin bai tap chuong 5”
trong GUI View. Tương tự như vậy, để viết các lệnh tìm View trong Avenue, đầu tiên
phải tìm đến đề án (Project) bằng yêu cầu GetProject
theProject = av.GetProject
Vì View là một hiện thực của lớp document (DOC) nên cần sử dụng yêu cầu
FindDoc để tìm đến View.
myView = theProject.FindDoc(“Khung nhin bai tap chuong 5”)
5.2.4. Gán đơn vị bản đồ và đơn vị thước đo cho khung nhìn
Để biết được tỷ lệ của bản đồ đang hiển thị trên View, ta cần phải gán đơn vị bản
đồ cho View. Sử dụng yêu cầu SetUnits cùng với đối số là đơn vị bản đồ cần gán, ví dụ
như Meters, đối số này thuộc kiểu hằng số do Arcview cung cấp.
myView = theProject.FindDoc(“Khung nhin bai tap chuong 5”)
if (myView <> nil) then
myView.SetUnits(#UNITS_LINEAR_METERS)
end
#UNITS_LINEAR_METERS là hằng số đơn vị do Arcview cung cấp. Có thể
tìm thấy danh sách các đơn vị này bằng cách mở Help của Arcview và gõ vào
UnitsLinearEnum trong mục Index.
Tương tự, để gán đơn vị thước đo cho View, ta sử dụng yêu cầu .SetDistanceUnits với
đối số là đơn vị cần gán.
myView.SetDistanceUnits(#UNITS_LINEAR_METERS)
5.2.5. Thêm lớp chủ đề (theme) vào khung nhìn
Một khi đã có đối tượng View, phải thêm vài lớp chủ đề vào để có thể hiển thị
được các đối tượng không gian. Các lớp chủ đề này có thể là shapefile, Image, Acad
hoặc Arc/info coverage, những loại này được nhóm lại thành hai loại data source là
feature data source và image data source. Mỗi loại data source này lại được phân thành

-95-
các lớp trong Avenue, những lớp đó là FTheme (chủ đề dạng feature), ITheme (chủ đề
dạng Image), DBTheme (chủ đề dạng Database), và GTheme (chủ đề dạng Grid)
Khi thêm một lớp chủ đề vào một View, trước hết tìm đến View. Sử dụng yêu cầu
tìm View ở trên
myView=av.GetProject.FindDoc(“Khung nhin bai tap chuong 5”)
Để có thể tạo ra Theme, sử dụng yêu cầu Make và gửi đến lớp SourceName để
tạo ra đối tượng Sourcename. SourceName là một đối tượng của Avenue dùng để chỉ
đến vị trí vật lý của tập tin cần tạo nên Theme.
theSrcName=SrcName.Make(“C: \Ditagis\Avenue\Data\hchinh.shp”)
‘C: \Ditagis\Avenue\Data\hchinh.shp: vị trí tệp tin cần tạo thành Theme
if (theSrcName=nil) then
Msgbox.Info(“Không tồn tại tệp tin”, “Thông báo”)
exit
end
Dùng yêu cầu Make để tạo Theme với đối số là theSrcName
theTheme = Theme.Make(theSrcName)
Khi đã có Theme, sử dụng yêu cầu AddTheme để thêm mới tạo vào View
myView.AddTheme(theTheme)
Đến lúc này, Theme mới đã được thêm vào View, tuy nhiên nó vẫn chưa hiển thị
trên vùng bản đồ vì thuộc tính hiển thị cho Theme chưa được gán. Dùng yêu cầu
SetVisible với đối số là true để gán thuộc tính hiển thị cho Theme, ngược lại là false.
theTheme.SetVisible (true)
Nếu muốn cho Theme ở trạng thái kích hoạt, sử dụng yêu cầu SetActive với đối
số là true, ngược lại thì sử dụng đối số là false.
theTheme.SetActive (true)
Nếu muốn ngăn người dùng không được phép thay đổi hai thuộc tính hiển thị và
kích hoạt, có thể sử dụng yêu cầu để khoá không cho hiển thị Theme là
SetVisibleLocked(true) và yêu cầu khoá không cho kích hoạt là SetActiveLocked(true).
theTheme.SetVisibleLocked(true)
theTheme.SetActiveLocked(true)
Một chủ đề của khung nhìn có thể có thể được kết nối nhiều nguồn dữ liệu khác
nhau. Sau đây là một số ví dụ:
Đối với tập tin hình ảnh:
TheSrcName = SrcName.Make(“$AVDATA/ myimage.bmp”)
Đối với Arcview Shapefile
TheSrcName = SrcName.Make(“$AVDATA/ myshapefile.shp”)
Đối với CAD drawings
TheSrcName = SrcName.Make(“$AVDATA/ drawings/pacels.dwg line”)
Arc/Info Librarian layer
TheSrcName = SrcName.Make(“mylibrary.layer polygon”)
Arc/Info ArcStorm layer
TheSrcName = SrcName.Make(“mylibrary. mylibrary. layer polygon”)

-96-
Ngoài ra có thể tạo đối tượng SrcName từ bảng dữ liệu chứa tọa độ x,y. Ví dụ, từ
bảng toạ độ có tên coords.txt, chứa hai trường là xcoord và ycoord. Tiến hành tạo Theme
như sau:
TheView = av.GetActiveDoc
TheVtab=av.GetProject.FindDoc(“C:\Ditagis\Dulieu\Bang\qtrac_kk.dbf”).GetVTab
xField = theVTab.FindField(“toadoX”)
yField = theVTab.FindField(“toadoY”)
xySrc = XYName.Make(theVTab, xField, yField)
theTheme = Theme.make(xySrc)
theView.AddTheme(theTheme)
5.2.6. Tìm một lớp chủ đề trong khung nhìn
Theme được chứa trong View, vì vậy để tìm một Theme với một tên nào đó, chẳng
hạn “hchinh.shp”, trước tiên phải tìm đến View và sau đó dùng yêu cầu FindTheme với
đối số thuộc kiểu String là tên của Theme cần tìm
myView = av.GetProject..FindDoc(“Khung nhin bai tap chuong 5”)
hchanhTheme = myView.FindTheme(“hchanh.shp”)
5.2.7. Thay đổi thứ tự của lớp chủ đề trong bảng nội dung (TOC)
Khi thêm các Theme vào View, thứ tự của Theme trong View sẽ ảnh hưởng đến
kết quả hiển thị trên vùng bản đồ. Nếu như Theme thuộc dạng điểm (Point) nằm dưới
Theme thuộc dạng vùng (Polygon), các đối tượng của Theme thuộc dạng điểm sẽ bị che
khuất không nhìn thấy trên vùng bản đồ. Để thay đổi thứ tự của các Theme, trước hết
cần phải có danh sách các Theme và dùng yêu cầu Shuffle để thay đổi vị trí của Theme.
Lấy danh sách Theme trong View bằng yêu cầu GetThemes như sau:
theView = av.GetProject.FindDoc(“Khung nhin bai tap chuong 5”)
theThemeList = theView.GetThemes
Giả sử cần đổi chỗ của Theme đầu tiên đến vị trí cuối:
themeDau=theThemeList.Get(0)
vitricuoi=theThemeList.Count
theThemeList.Shuffle(themeDau,vitricuoi)
Yêu cầu Shuffle cần hai đối số, đối số đầu tiên là đối tượng cần thay đổi vị trí, đối
số thứ hai là vị trí sẽ chuyển đối tượng đến trong danh sách.
Sau khi thực hiện lệnh này, Theme đầu tiên sẽ được dịch chuyển đến vị trí cuối trong
danh sách. Tuy nhiên vị trí của Theme trong bảng nội dung của View vẫn chưa tự động
dịch chuyển và bản đồ vẫn chưa thay đổi. Để hiển thị kết quả trên vùng bản đồ cần phải
thực thi yêu cầu vẽ lại bản đồ (refresh) và bảng nội dung.
theView.InvalidateTOC (nil)
theDisplay=theView.GetDisplay ‘lấy vùng hiển thị bản đồ
theView.Invalidate(true) ‘vẽ lại
Sau khi thay đổi thứ tự của các Theme, nếu muốn ngăn người thay đổi thứ tự vị
trí của các Theme, có thể khoá các Theme bằng yêu cầu SetOrderLocked.
aTOC = aView.GetTOC
aTOC.SetOrderLocked

-97-
5.2.8. Thay đổi biểu tượng của lớp chủ đề
Biểu tượng là thành phần cơ bản của đối tượng đồ họa khi hiển thị trên khung nhìn.
Sử dụng các biểu tượng khác nhau để phân biệt các đối tượng riêng biệt trong chủ đề.
Ví dụ sử dụng các kiểu biểu tượng dạng đường (line symbols) để thể hiện các loại đường
khác nhau.
Để lấy được các biểu tượng của Theme, cần phải làm việc với Legend của Theme.
Legend chứa đựng các biểu tượng mà Theme đang sử dụng. Bằng yêu cầu GetLegend
gửi đến đối tượng Theme.
theView = av.GetActiveDoc
theTheme = theView.GetThemes.Get(0) ‘lấy Theme đầu tiên
theLegend = theTheme.GetLegend ‘lấy Legend của Theme
Để lấy được biểu tượng, trước tiên cần phải lấy danh sách các biểu tượng chứa
trong Legend bằng yêu cầu GetSymbols.
theListSymbol=theLegend.GetSymbols
Giả sử, lấy biểu tượng đầu tiên và thay đổi màu sắc của nó thành màu xanh (blue)
theSymbol=theListSymbol.Get(0)
theBlueColor=color.GetBlue ‘lấy màu xanh
theSymbol.SetColor(theBlueColor) ‘gán màu symbol thành màu xanh
Để bản đồ thể hiện được sự thay đổi của biểu tượng, tiếp đến cần tác động lên sự
thay đổi của Theme bằng yêu cầu UpdateLegend
theTheme.UpdateLegend
5.2.9. Xoá các lớp chủ đề khỏi khung nhìn
Nếu không muốn một Theme nào đó tiếp tục tồn tại trong View, có thể xoá bỏ
bằng yêu cầu DeleteTheme với đối số là Theme cần xoá và gửi đến đối tượng View
myView = av.GetProject.FindDoc(“Khung nhin bai tap chuong 5”)
theTheme = myView.FindTheme(“hchanh.shp”)
Tuy nhiên việc xoá Theme là việc cần phải cân nhắc, vì vậy trước khi xoá cần
phải xác nhận có thực sự xoá không, nếu đồng ý mới xoá.
xacnhan = Msgbox.YesNo(“thực sự muốn xoá Theme ” + theTheme + “?”, “Xoá theme”, true)
if (xacnhan=true) then
myView.DeleteTheme(theTheme)
end
Bây giờ nếu muốn xoá các Theme đang ở trạng thái kích hoạt, đầu tiên phải gửi
yêu cầu GetActiveThemes đến đối tượng View chứa các Theme đó để lấy danh sách các
Theme cần xoá.
myView = av.GetProject.FindDoc(“Khung nhin bai tap chuong 5”)
listTheme=myView.GetActiveThemes
Sau đó dùng vòng lặp duyệt lần lượt các Theme có trong danh sách để lần lượt
xoá các Theme.
For each theTheme in listTheme
xacnhan = Msgbox.YesNo(“thực sự muốn xoá Theme ” + theTheme + “?”, “Xoá theme”, true)
if (xacnhan=true) then
myView.DeleteTheme(theTheme)
end end
-98-
Tương tự, nếu muốn xoá hết các Theme trong View thì dùng yêu cầu GetThemes
để lấy danh sách Theme và sau đó dùng vòng lặp duyệt qua danh sách Theme và xoá nó
ra khỏi View.
5.2.10.Chọn đối tượng không gian của lớp chủ đề bằng con trỏ chuột
Công cụ Select Feature của View trong Arcview trong trên thanh Toolbar cho
phép lựa chọn các đối tượng không gian của các Theme đang kích hoạt bằng con trỏ
chuột với 2 cách: chọn bằng điểm và chọn bằng hình chữ nhật.
Để có thể chọn được các đối tượng không gian của các Theme đang kích hoạt,
trước hết phải lấy danh sách các Theme đang được kích hoạt trong View, tiếp theo lấy
về điểm chọn hoặc vùng chọn và sau đó dùng điểm chọn hoặc vùng chọn này để chọn
các đối tượng trên các Theme đang kích hoạt.
Lấy danh sách các Theme đang kích hoạt
myView = av.GetProject.FindDoc(“Khung nhin bai tap chuong 5”)
listActiveThemes=myView.GetActiveThemes
Lấy vùng chọn bằng cách gửi yêu cầu ReturnUserRect đến View
theRect = myView.GetDisplay.ReturnUserRect
Chọn các đối tượng trên các Theme đang kích hoạt
For each theTheme in listActiveThemes
theTheme.SelectByRect(theRect, #VTAB_SELTYPE_NEW)
end
‘#VTAB_SELTYPE_NEW: hằng số kiểu chọn đối tượng do Arcview cung cấp.
Bảng 5.1. Bảng hằng số các kiểu chọn

Kiểu chọn Ý nghĩa

#VTAB_SELTYPE_NEW Chọn các đối tượng thoả điều kiện trong tập toàn bộ đối
tượng của Theme

#VTAB_SELTYPE_AND chọn các đối tượng từ tập đã được chọn của Theme

#VTAB_SELTYPE_OR Chọn các đối tượng thoả điều kiện trong tập toàn bộ đối
tượng của Theme, sau đó thêm tập này vào tập đã chọn
trước đó của Theme

#VTAB_SELTYPE_XOR Chọn các đối tượng thoả điều kiện trong tập toàn bộ đối
tượng của Theme, sau đó XOR tập này với tập đã chọn
trước đó của Theme

Trên đây là đoạn lệnh chọn đối tượng bằng cách dùng hình chữ nhật. Để có thể
vừa dùng điểm vừa dùng hình chữ nhật như công cụ Select Feature của Arcview, cần có
yêu cầu ReturnUserPoint vào đoạn lệnh trên nếu như kiểm tra thấy hình chữ nhật trả về
bằng Null.
myView = av.GetProject.FindDoc(“Khung nhin bai tap chuong 5”)
theRect = myView.ReturnUserRect
if (theRect.IsNull) then
thePoint=myView.GetDisplay.ReturnUserPoint

-99-
listActiveThemes=myView.GetActiveThemes
for each theTheme in listActiveThemes
theTheme.SelectByPoint(thePoint, #VTAB_SELTYPE_NEW)
end
else
for each theTheme in listActiveThemes
theTheme.SelectByRect(theRect, #VTAB_SELTYPE_NEW)
end
end
Để thực hiện được Script này, cần phải gán nó vào sự kiện Apply của công cụ
Tool trong cửa sổ View.
5.2.11.Chọn đối tượng không gian của lớp chủ đề bằng các hình đồ họa
Có một cách khác để chọn các đối tượng trên Theme là sử dụng hình đồ hoạ như
vòng tròn, đa giác hoặc đường thẳng. Ví dụ muốn chọn các trường học trong phạm vi
có bán kính 10 km từ trung tâm của thị trấn. Đầu tiên phải vẽ ra một vòng tròn có tâm
là trung tâm của thị trấn và có bán kính 10km. Tiếp theo sử dụng vòng tròn này để chọn
các trường học trong lớp chủ đề trường học.
Giả sử vòng tròn trên View đã được vẽ bằng công cụ vẽ vòng tròn của Arcview
và đang ở trạng thái kích hoạt để chọn các đối tượng của lớp trường học. Để làm việc
này, trước tiên phải có được View hiện hành và lớp chủ đề trường học.
myView = av.GetProject.FindDoc(“Khung nhin bai tap chuong 5”)
truongTheme=myView.FindTheme(“truong.shp”)
Tiếp theo, cần phải có vòng tròn. Vì vòng tròn thuộc lớp Shape và được quản lý
trong danh sách Graphics của View nên cần phải có danh sách Graphics của View để có
thể lấy được vòng tròn. Gửi yêu cầu GetGraphics đến View:
listGraphics = myView.GetGraphics
và với yêu cầu GetSelected, sẽ có được danh sách các graphics đang ở trạng thái kích
hoạt được để hiển thị lên.
listSelGrp = listGraphics.GetSelected
để lấy được vòng tròn, cần gửi yêu cầu Get(0).GetShape đến listSelGrp
theCircle = listSelGrp.Get(0).GetShape
Lúc này có thể chọn các đối tượng trên Theme nằm trong phạm vi của vòng tròn
bằng cách gửi yêu cầu SelectByShapes đến Theme trường học với 2 đối số là danh sách
các Shapes và kiểu chọn. Để tạo ra danh sách chứa các shapes (trong trường hợp này có
một Shape là theCircle), cần khởi tạo danh sách và thêm theCircle vào nó.
listShapes={}
listShapes.Add(theCircle)
Gửi yêu cầu SelectByShapes đến Theme trường học
TruongTheme.SelectByShapes(listShapes, #VTAB_SELTYPE_NEW)
5.2.12.Chọn đối tượng không gian lớp chủ đề bằng một lớp chủ đề khác
Giả sử có vài trung tâm thị trấn, để tìm các trường học cách các trung tâm thị trấn
trên một bán kính 10km. Thay vì phải vẽ từng vòng tròn cho các thị trấn rồi dùng các
vòng tròn này để chọn các trường học, vẫn có một cách khác để thực hiện điều này, bằng

-100-
cách sử dụng phương pháp chọn đối tượng trên một Theme nhờ vào các đối tượng của
một Theme khác qua yêu cầu SelectByTheme.
Giả sử đã có hai Theme tồn tại trên View là Theme trung tâm thị trấn (thitran.shp)
và Theme trường học (truong.shp)
myView = av.GetProject.FindDoc(“Khung nhin bai tap chuong 5”)
thitranTheme = myView.FindTheme(“thitran.shp”)
truongTheme = myView.FindTheme(“truong.shp”)
gửi yêu cầu SelectByTheme đến Theme trường học với 4 đối số là theme thị trấn, kiểu
quan hệ không gian, khoảng cách quan hệ và kiểu chọn.
truongTheme.SelectByTheme(thitranTheme,
#FTAB_RELTYPE_ISWITHINDISTANCEOF, 10, #VTAB_SELTYPE_NEW)
Bảng 5.2. Các hằng số kiểu quan hệ không gian giữa 2 Theme
Kiểu quan hệ Ý nghĩa
#FTAB_RELTYP Chọn các đối tượng trên Theme cần chọn sao cho các đối
E_INTERSECTS tượng này giao với các đối tượng trên Theme.

#FTAB_RELTYP Chọn các đối tượng trên Theme cần chọn sao cho các đối
E_COMPLETELY tượng này chứa một hoặc nhiều đối tượng đã được chọn trên
CONTAINS Theme.

#FTAB_RELTYP Chọn các đối tượng trên Theme cần chọn sao cho các đối
E_CONTAINSTH tượng này chứa trung điểm của một hoặc nhiều đối tượng đã
ECENTEROF được chọn trên Theme.

#FTAB_RELTYP Chọn các đối tượng trên Theme cần chọn sao cho các đối
E_ISCOMPLETE tượng này nằm hoàn toàn trong một hoặc nhiều đối tượng đã
LYWITHIN được chọn trên Theme.

#FTAB_RELTYP Chọn các đối tượng trên Theme cần chọn sao cho các đối
E_HASCENTER tượng này có trung điểm nằm trong các đối tượng đã được
WITHIN chọn trên Theme.

#FTAB_RELTYP Chọn các đối tượng trên Theme cần chọn sao cho các đối
E_ISWITHINDIS tượng này nằm trong phạm vi bán kính tính từ các đối tượng
TANCEOF đã được chọn trên Theme chọn một khoảng cho trước.

Ví dụ 1: Thực hiện thay đổi Legend cho lớp Huyen


Script được viết như sau:
theView = av.GetActiveDoc
theTheme = theView.FindTheme(“huyen”) ‘lấy về theme
‘lấy về Legend hiện thời của huyện
theLegend = theTheme.GetLegend
‘thiết lập kiểu Legend là Unique Value
theLegend.SetLegendType(#LEGEND_TYPE_UNIQUE)
theLegend.Unique(theTheme,"Ten_huyen")
'bỏ đi những giá trị Null nếu có
theLegend.SetNullValue("Ten_huyen","")

-101-
'lấy danh sách Scheme màu sắc
theColorSchemes = SymbolList.GetPreDefined(#SYMLIST_TYPE_COLORSCHEME)
‘tìm Scheme màu có tên là “Cool Tones”
for each scheme in theColorSchemes
if (scheme.GetName = "Cool Tones") then
theColorScheme = scheme
end
end
‘thiết lập Scheme màu cho Legend
theLegend.GetSymbols.RandomSavedSymbols(theColorScheme)
'cập nhật lại bảng TOC
theTheme.UpdateLegend

Tên chủ đề

Loại chú giải

Tên trường

Scheme

Hình 5.5. Hôp thoại thay đổi Legend cho chủ đề


Ví dụ 2: Ví dụ sau thiết lập Font cho TOC
‘tạo bộ quản lý danh sách các Font
theFM = FontManager.The
‘lấy về danh sách các Font
theFontlist = theFM.ReturnFamilies
‘Dùng một hộp danh sách liệt kê các Font để cho người dùng có thể chọn
theFont = msgbox.ListAsString (theFontlist,"Select a Font","Set TOC
Font")
if (theFont = nil) then ‘trường hợp không chọn Font nào
exit
end
theStyles = theFM.ReturnStyles (theFont) ‘lấy về ds các kiểu của Font
‘dùng một hộp danh sách liệt kê các kiểu của Font cho người dùng chọn
theStyle = msgbox.ListAsString(theStyles,"Select a Font Style","Set
TOC Font")

-102-
if (theStyle = nil) then exit end ‘không chọn kiểu nào

‘chọn kích thước Font


theSize = msgbox.input("Enter a Font Size","Set TOC Font","12")
if (theSize = nil) then exit end ‘trường hợp không chọn kích thước
TOCFont = TextSymbol.Make ‘thiết lập Font cho TOC
TOCFont.SetFont (NFont.Make(TheFont.AsString,TheStyle.AsString))
TOCFont.SetSize( theSize.AsNumber)
TOC.SetDefaultSymbol(TOCFont)
allDocs = av.GetProject.GetDocs ‘cập nhật lại các View đang mở
for each v in allDocs
if (v.is(View) and (v.GetWin.IsOpen)) then
v.GetWin.Close
v.GetWin.Open
end
end
5.3. XÂY DỰNG GIAO DIỆN
Arcview cho phép thêm mới, xoá, sửa các Menu, Button, Tool để phục vụ cho nhu
cầu riêng thông qua cửa sổ giao diện Arcview như hình dưới đây:

Double vào đây để thay đổi Menu, Button, Tool, Popup menu

Hình 5.6. D-Click để thay đổi giao diện Arcview


Hộp thoại chỉnh sửa như hình sau:

Hình 5.7. Chọn loại công cụ muốn thay đổi


Trong hộp thoại chỉnh sửa này, ta có thể thực hiện các thao tác thêm mới, chỉnh
sửa, xoá các điều khiển trên giao diện.

-103-
5.3.1. Xây dựng giao diện Arcview với ngôn ngữ lập trình
5.3.1.1. Tạo Menu
Để tạo mới Menu, các thao tác như sau:
- Mở hộp thoại chỉnh sửa.
- Chọn Menu trong Caterogy
- Click nút New Menu. Một Menu có tên ngẫu nhiên là Menu mới được tạo ra.
- D-Click chuột vào mục Label để đổi tên của Menu là Tim kiem.
- Để tạo mới một menu con cho menu này, thực hiện thao tác nhấp vào nút New
Item. Một menu con có tên là Item được tạo ra.
- D-Click vào mục Label để đổi tên của Item này là Tim duong.
- Đóng hộp thoại chỉnh sửa giao diện, menu có tên Tim kiem sẽ xuất hiện trên menu
của Arcview.

Hình 5.8. Menu được thay đổi


Click vào menu Tim duong, không có bất kỳ sự kiện nào xảy ra, điều này do chưa
có một script nào cho sự kiện chọn menu con này.
Thao tác tiến hành gán một script cho sự kiện chọn Menu con này như sau:
- Mở hộp thoại chỉnh sửa giao diện.
- Chọn memu con Tim duong.

D-Click vào
đây để gán
Script cho sự
kiện kích

D-Click vào
đây để tạo
tooltip

D-Click vào
đây đặt nhãn

Hình 5.9. Hộp thoại khai báo thông số cho menu


- D-Click vào mục Click.
-104-
- Hộp thoại yêu cầu xác định script cho menu này xuất hiện.

Hình 5.10. Hộp thoại yêu cầu xác định script


Trong hộp thoại này, chọn script có sẵn hoặc Click vào nút New để tạo mới một
script cho menu này.
- Click nút New trong hộp thoại Script Manager để tạo mới một script. Đặt tên cho
script này là Menu1
- Trong giao diện soạn thảo script, nhập đoạn script sau:
tenMenu=self.getLabel
msgbox.info(“Ban vua chon vao menu ” + tenMenu , “Thong bao”)
- Đóng giao diện soạn thảo script, quay về cửa sổ giao diện khung nhìn, chọn vào
menu con Tim duong để thử chức năng kích hoạt menu này, hộp thoại thông báo
sẽ xuất hiện.
Trong scrip, có thể mở một hộp thoại của hệ thống hoặc do người lập trình tạo ra,
chẳng hạn scrip Opentimtheoduong mở hộp thoại TD như sau:
theView = av.GetActiveDoc
aDlog=av.FindDialog("TD")
if(aDlog <> nil)then
aDlog.Open
else
MsgBox.info("Không tìm thấy Tìm theo đường","Thong Bao")
end
Lúc đó màn hình xuất hiện hộp thoại TD sau:

Hình 5.11. Hộp thoại được gọi từ menu


Sự kiện Click của nút Tìm của hộp thoại này lại là một sript để tìm đường.
Để xoá Menu tiến hành mở hộp thoại chỉnh sửa giao diện, chọn Menu muốn xóa
và nhấn vào nút Delete.
-105-
5.3.1.2. Tạo Button
Để tạo mới Menu, các thao tác như sau:
- Mở hộp thoại chỉnh sửa
- Chọn Buttons trong Caterogy
- Nhấn vào nút New. Một Button mới được tạo ra, button này chưa có Icon.
- Kích đôi vào mục Icon để chọn Icon cho button này.

Double click
vào đây để
gán Icon

Hình 5.12. Gán Icon cho Button


- Hộp thoại chọn Icon hiện ra như hình.

Hình 5.13. Hộp thoại chọn Icon


- Chọn Icon có tên là Star, nhấn vào nút OK.
- Đặt Tooltip cho Button bằng cách Kích đôi vào mục Help, gõ vào dòng “So do
phuong Vinh Tho//Sơ đồ phường Vĩnh Thọ”.
- Đóng hộp thoại chỉnh sửa giao diện, trên Buttonbar của ArcView xuất hiện một
Button mới.

Hình 5.14. Button mới được tạo


-106-
Thao tác gán script cho sự kiện click button này như sau:
- Mở hộp thoại chỉnh sửa giao diện.
- Chọn button mới tạo.
- D-Click vào mục Click, hộp thoại yêu cầu xác định script cho menu này xuất
hiện.
- Nhấn vào nút New trong hộp thoại Script Manager để tạo mới một script. Đặt tên
cho script này là Button1.
- Trong giao diện soạn thảo script, ta gõ vào script sau.
msgbox.info(“Đây là sơ đồ phường Vĩnh Thọ” ,”Thông báo”)
- Đóng giao diện soạn thảo script, quay về của sổ giao diện khung nhìn, click vào
Button mới tạo, lúc đó màn hình xuất hiện hộp thoại thông điệp như sau.

Hình 5.15. Hộp thoại thông báo


Để xoá Button mới tạo tiến hành mở hộp thoại chỉnh sửa giao diện, chọn Button
này và nhấn vào nút Delete.
5.3.1.3. Tạo ToolMenu
Để tạo mới Menu, các thao tác như sau:
- Mở hộp thoại chỉnh sửa.
- Chọn Tools trong Caterogy
- D-Click vào nút Tool. Một Tool mới được tạo ra, chưa có Icon. D-Click vào mục
Icon để chọn Icon cho Tool này. Chọn Icon có tên là Index, click vào nút OK.
- Đặt Tooltip cho Tool bằng cách D-Click vào mục Help, gõ dòng “Day la mot
Tool//Đây là một Tool”.
- Với Tool, có thể đặt hình dạng cho con trỏ chuột bằng cách D-Click vào Cursor.
Hộp thoại Picker xuất hiện như sau:

Hình 5.16. Hộp thoại chọn hình dạng cho con trỏ

-107-
- Chọn vào Cursors.Bullseye  OK.
- Đóng hộp thoại chỉnh sửa giao diện, một Tool mới xuất hiện trên Toolbar của
ArcView.

ToolTool
Hình 5.17. mới được tạo
mới tạo

Click vào Tool mới này, đưa con trỏ chuột vào khung nhìn, con trỏ chuột đổi sang
dạng vòng tròn trong rỗng, nhấn vào một vị trí bất kỳ trên khung nhìn, chưa có sự kiện
nào xảy ra do chưa gán một script nào cho sự kiện Apply của Tool này.
Thao tác tiến hành gán một script cho sự kiện Apply Tool này như sau:
- Mở hộp thoại chỉnh sửa giao diện
- Chọn Tool mới tạo.
- D-Click vào mục Apply, hộp thoại yêu cầu xác định script cho menu này xuất
hiện. Gán Scripts View.HotLink (Scrip liên kết khung nhìn với hình ảnh) đã được
tạo trước.
- Đóng giao diện soạn thảo script, quay về của sổ giao diện khung nhìn, Click vào
Tool mới tạo, đưa trỏ chuột vào khung nhìn, Click vào hộp thoại xuất hiện như sau:

Hình 5.18. Kết quả thực thi Tool


Để xoá Tool vừa tạo ta vào hộp thoại chỉnh sửa giao diện chọn Tool này và nhấn
vào nút Delete.
Tool cũng có sự kiện click nhưng sự kiện này ít dùng, sự kiện click của Tool chỉ xảy
ra khi Click vào Tool, còn sự kiện Apply xảy ra khi chọn Tool và Click vào khung nhìn.

-108-
5.3.1.4. Tạo Popup Menu
Để tạo mới Popup Menu, các thao tác như sau:
- Mở hộp thoại chỉnh sửa.
- Chọn Popups trong Caterogy.
- Trong hộp thoại chỉnh sửa giao diện, có sẵn một Popup Memu có tên là Menu,
chọn và Click vào nút Delete để xóa Popup Memu này.
- Click vào nút New Popup. Một Popup Menu mới được tạo ra.
- Click vào nút New Item để tạo mới một menu con cho Popup menu này. Vào
mục Label đặt tên cho menu con này là Phong to.
- Đóng hộp thoại chỉnh sửa, ra khung nhìn, R-Click vào khung nhìn, một Popup
menu xuất hiện như sau:

Hình 5.19. Popup mới được tạo


Gán script View.ZoomOut cho sự kiện click của Phong to nhu sau:
- Mở hộp thoại chỉnh sửa giao diện.
- Chọn Phong to.
- D-Click vào mục Click, hộp thoại yêu cầu xác định script cho menu này xuất
hiện, Scripts View.ZoomOut.
- Đóng giao diện soạn thảo script, quay về của sổ giao diện khung nhìn, R- Click vào
khung nhìn, click vào Phong to, bản đồ sẽ được phóng to lên sau mỗi lần click.
Để xoá Popup menu mới tạo ta vào hộp thoại chỉnh sửa giao diện, chọn Popup
menu này và nhấn vào nút Delete.
Ngoài ra các Menu, Button, Tool, Popup Menu còn các thuộc tính sau:
- Disabled: Xét tính kích hoạt hay không kích hoạt cho đối tượng.
- Help Topic: Nội dung giúp đỡ.

-109-
- Invisible: Hiển thị hay không hiển thị đối tượng này.
- Tag: Một chuỗi được gán vào đối tượng để phân biệt với đối tượng khác.
- Update: Update là sự kiện xảy ra khi thực hiện một thao tác nào đó, để có sự
kiện này, phải gán Script vào sự kiện này cho đối tượng.
5.3.2. Lập trình giao diện
5.3.2.1. Giới thiệu Diglog
Dialog là một giao diện để xây dựng các ứng dụng trong ArcView. Dialog cho
phép tổ chức các nhiệm vụ đơn hoặc một tập các nhiệm vụ quan hệ trên các cửa sổ riêng,
giống như cách tổ chức các nhiệm vụ có quan hệ với nhau trong cùng một menu hoặc
trên thanh button. Dialog Designer là một Extension do ArcView cung cấp, với Dialog
Designer ta có thể:
- Tạo cửa sổ nhập dữ liệu.

- Dùng dialog để điều khiển trực tiếp việc hiển thị dữ liệu.

Hình 5.20. Dialog điều khiển trực tiếp việc hiển thị dữ liệu
- Tổ chức các điều khiển có quan hệ với nhau trên trên các cửa sổ riêng.

Hình 5.21. Tổ chức các điều khiển có quan hệ với nhau


Lợi ích của việc dùng Dialog Designer là cho phép tạo ra các hộp thoại giao tiếp
với người dùng theo thiết kế riêng. Để thiết kế được Dialog, phải nạp Extension là Dialog
Designer: Từ menu File trong cửa sổ Project, chọn mục Extension... Dialog Designer.
Khi được nạp vào trong đề án sẽ xuất hiện một DocGUI mới gọi là Dialogs. Kích
đôi vào biểu tượng Dialogs, sẽ tạo ra một Dialog Editor sẵn sàng cho phép tạo ra các
thành phần giao diện hay còn gọi là các điều khiển trong hộp thoại mới như buttons,
checkboxs, listboxs,…
Có thể thêm vào dialog tất cả các điều khiển đều nằm trên thanh toolbar. Chỉ cần
chọn chúng và kéo thả vào dialog. Mỗi điều khiển có một tập các thuộc tính cần phải
thiết lập cho chúng.

-110-
Bảng 5.3. Các điểu khiển trong Dialog
Label button Cho phép thực hiện một nhiệm vụ khi kích nó.
Dòng chữ trên nó thường mô tả hành động mà nó
thực hiện.
Button Cũng cho phép thực hiện một nhiệm vụ khi kích
lên nó nhưng ở đây dòng chữ được thay bằng biểu
tượng (icon)
Tool Thực hiện một nhiệm vụ khi tương tác với một
document như View. Tool trên Dialog cũng làm
việc giống như tool trên thanh toolbar
Text line Cho phép nhập vào một dòng thông tin
Text box Cho phép nhập vào nhiều dòng thông tin
List box Hiển thị một hoặc nhiều cột danh sách cho người
dùng chọn
Combo box Hiển thị một hoặc nhiều cột danh sách cho người
dùng chọn, nhưng ở chế độ sổ xuống khi kích vào

Text Label Cho phép hiện thị dòng chữ cố định
Check box Cho phép người dùng bật/tắt lựa chọn
Radio button Kết hợp với các radio button khác để cung cấp một
tập các lựa chọn cho người dùng
Slider Cho phép thiết lập một giá trị riêng nằm trong một
dãy các giá trị giới hạn. Slider có thể đặt nằm theo
phương ngang hoặc phương đứng.
Icon box Cho phép hiển thị một hình ảnh tĩnh trên dialog, ví
dụ như logo công ty. Hình ảnh đây có các dạng
như GIF, BMP, TIFF
Control panel Nhóm các điều khiển có quan hệ với nhau trên
dialog.
5.3.2.2. Tạo Dialog và thêm điều khiển
Khi phát triển một ứng dụng, số lượng các dialog, các điều khiển trên các dialog
và các script kết hợp với các dialog là rất lớn. Vì vậy khó khăn để theo dõi nếu không
có một phương pháp quản lý phù hợp. Sau đây là vài gợi ý để có thể dễ quản lý chúng.
- Đối với tên của Dialog
Để chắc chắn tên của dialog do ta xây dựng không trùng tên với các Dialog của
ArcView cũng như của các Extension khác, nên đặt một thành phần mở rộng trước tên
của dialog. Thành phần mở rộng này có thể dùng tên của ứng dụng hoặc có thể dùng tên
tổ chức để đặt cho nó.
<tên ứng dụng>.<tên của dialog>
Ví dụ: <Dlieudongthap>.<Nhapdulieu>
- Đối với tên của Script
Nên đặt tên của Script sao cho sau này ta có thể dễ tham chiếu đến nó. Sau đây là
gợi ý giúp đặt tên cho các script kết hợp với danh sách các dialog trong đề án và cho

-111-
phép nhanh chóng tìm ra nó khi muốn chỉnh sửa, sử dụng tên dialog, theo sau là tên điều
khiển và thuộc tính của nó.
<tên dialog>.<tên điều khiển>.<tên thuộc tính>
Ví dụ: <MyDialog.lbt_Done.Click>
- Đối với tên của các điều khiển
Nên dùng thành phần mở rộng để nhận diện loại điều khiển mà ta đang sử dụng
trước tên của chúng. Chẳng hạn như với nút OK nên đặt tên là ‘lbt_OK’ . Tên của các
điều khiển trong một dialog là duy nhất, nghĩa là không được có hai điều khiển trùng
tên trong cùng một dialog. Tuy nhiên, ta có thể sử dụng cùng tên cho các điều khiển trên
các dialog khác nhau. Sau đây là bảng gợi ý về cách đặt thành phần mở rộng cho các
điều khiển:
Bảng 5.4. Bảng gợi ý về cách đặt thành phần mở rộng cho các điều khiển
Phần mở rộng Kiểu điều khiển
Lbt Label button
Bnt Button
Tol Tool
Txl Text line
Txb Text box
Lbx List box
Cbx Combo box
txt Text Label
cbx Check box
rad Radio button
sld Slider
ibx Icon box
cpa Control panel

Sau khi thêm các điều khiển vào Dialog, phải viết các script gắn vào, các script
này sẽ được thực hiện khi sử dụng đến các điều khiển.
Nếu muốn sử dụng dialog cho các đề án khác hoặc có kế hoạch phân phối chúng
cho người khác thì nên tạo Extension. Tham khảo chi tiết các bước tạo Extension ở các
tài liệu tham khảo.
Minh họa các bước thiết kế giao diện Dialog cập nhật nhân khẩu:
- Từ Dialog  New Dialog.
- R-Click vào Dialog để mở cửa sổ thuộc tính (Properties) và đặt Name là
“Themnhankhau”, Title: “Thêm mới nhân khẩu”, Open: “Modulieu” thiết lập các
thuộc tính như hình dưới:

-112-
Hình 5.22. Thiết lập các thuộc tính cho Dialog
- Click vào biểu tượng Text Line trên thanh Tooalbar và Drag vào cửa sổ Dialog.
- Click vào biểu tượng Button trên thanh Tooalbar và Drag vào cửa sổ Dialog.
- Click vào biểu tượng Combobox trên thanh Tooalbar và Drag vào cửa sổ Dialog.
- Click vào biểu tượng Check box trên thanh Tooalbar và Drag vào cửa sổ Dialog.
- Drag các Text Line, Label Button, Check box vaod Dialog, R-Click  Properties
và thiết lập các thuộc tính như sau:
Bảng 5.5. Bảng thuộc tính của các điều khiển
Loại điều Tên điều Thuộc tính
khiển khiển
Button 1 Icon: Tìm kiếm
Click: Sripts Search_Nhankhau
Button 2
Icon: Xem thông tin
Click: Sripts Xemthongtinnhankhau
Button 3
Icon: Thêm mới dữ liệu
Click: Sripts OK_Themnhankhau
Button 4 Icon: Tiếp tục them mới
Click: Sripts Tieptuc_nhankhau
Button 5
Icon: Xóa dữ liệu
Click: Sripts Xoa_Nhankhau
Button 6 Icon: Thoát
Click: Sripts Thoat
Button 7
Icon: Sửa dữ liệu
Click: Scripts Sửa_Nhankhau
Text line 1 Name: txtmank

-113-
Label: Mã nhân khẩu
Text line 2 Name: txthten
Label: Họ và tên nhân khẩu
Text line 3 Name: txttgk
Label: Tên gọi khác
Text line 4 Name: txtns
Label: Ngày sinh
Text line 5 Name: txtnn
Label: Nghề nghiệp
Text line 6 Name: txtcmnd
Label: Số CMND
Combo box1 Name: shk
Label: Số sổ hộ khẩu
Combo box2 Name: cbdt
Label: Dân tộc
Combo box3 Name: cbgt
Label: Giới tính
Combo box4 Name: cbtg
Label: Tôn giáo
Combo box5 Name: ctdhv
Label: Trình độ học vấn
Combo box6 Name: cbhuyen
Label: Huyện
Check box Name: chuho
Label: Chủ hộ
Kết quả như sau:

-114-
5.4. THỰC HIỆN DỰ ÁN CÔNG NGHỆ GIS
Bước 1. Khảo sát hiện trạng, xác định mục tiêu, mô tả bài toán:
 Mục tiêu khảo sát:
- Nhằm hiểu rõ hơn về thế giới thực đang xét, việc khảo sát này phải độc
lập với NSD đưa ra cho sản phẩm phần mềm.
- Tiếp cận với nghiệp vụ chuyên môn, môi trường của hệ thống.
- Tìm hiểu vai trò, chức năng, nhiệm vụ và cách thức hoạt động.
- Nêu các điểm hạn chế cần phải thay đổi
- Đưa ra các vấn đề cần được nghiên cứu thay đổi
 Trả lời các câu hỏi:
- Hệ thống đang làm gì?
- Hệ thống gồm những công việc gì?
- Hệ thống đang quản lý cái gì?
- Những công việc do ai thực hiện? ở đâu? Khi nào ?
- Những công việc được thực hiện như thế nào?
- Các công việc liên quan đến công việc nào?
- Chu kỳ, tần suất, khối lượng công việc?
- Tầm quan trọng của các công việc?
- Những thuận lợi & khó khăn?
 Nội dung khảo sát:
- Hiện trạng về tổ chức gồm có:
 Gồm có: cấp trên, cấp dưới, đối tác.
 Liệt kê các bộ phận và mối quan hệ liên quan:
 Đối nội: mô tả chức năng, nhiệm vụ từng bộ phận như: có bao nhiêu
phòng ban, cơ cấu tổ chức, nhiệm vụ, quan hệ giữa các bộ phận.
 Xác định thông tin và hình thức chuyển đổi thông tin giữa các phòng
ban.
 Vị trí các phòng ban và số lượng nhân viên.
 Vẽ sơ đồ biểu diễn mối quan hệ giữa các bộ phận.
- Hiện trạng về nghiệp vụ: Nêu quy trình nghiệp vụ (các công việc) của từng
bộ phận. Mỗi quy trình phải nêu:
 Phương cách hoạt động: Công việc làm thủ công (do con người thực
hiện) hay có thể tự động hóa được (do máy tính thực hiện) hay tương
tác giữa người và máy?
 Điều kiện khởi động: Khi nào, với điều kiện nào thì công việc khởi động.
 Chu kỳ thực hiện: Trong khoảng thời gian bao nhiêu thì công việc được
lập lại.
 Thời lượng thực hiện: Thời gian để hoàn thành công việc.
 Dữ liệu vào, dữ liệu ra: Mô tả đầy đủ kiểu dữ liệu vào và ra bao gồm:
Tên dữ liệu, kiểu dữ liệu, dung lượng, ý nghĩa của từng thuộc tính của
dữ liệu.
 Danh sách các quy trình có liên quan.
 Kết quả nghiệp vụ thực hiện được, gồm: Lưu trữ, tra cứu, tính toán, Báo
biểu
- Hiện trạng về mặt Tin học:
-115-
 Hiện trạng phần cứng:
o Có bao nhiêu máy?
o Có nối mạng hay không?
o Cấu hình từng máy
o Thiết bị liên quan
 Hiện trạng phần mềm
o Hệ điều hành hiện tại là gì?
o Những phần mềm đang sử dụng?
o Những phần mềm đang sử dụng để dễ tích hợp với phần mềm chuẩn
bị thực hiện.
 Nhân sự: Huấn luyện sử dụng dựa trên trình độ tin học của người dùng.
 Đối tượng khảo sát:
- Người dùng
 Cán bộ lãnh đạo, quản lý
 Người sử dụng, nhân viên nghiệp vụ
 Nhân viên kỹ thuật
- Tài liệu:
 Biểu mẫu, tập tin, sổ sách
 Thủ tục, qui trình
 Thông báo
- Chương trình máy tính: có chưa, mức độ nào?
 Phương pháp xác định yêu cầu
- Phỏng vấn
- Dùng bảng câu hỏi
- Quan sát trực tiếp
- Phân tích tài liệu
- Kết hợp thiết kế ứng dụng
- Sử dụng protopyte (sử dụng mẫu)
 Xác định yêu cầu (Đặc tả bài toán)
- Sau khi nghiên cứu hiện trạng, ta tóm tắt hệ thống thành các mục:
 Mục tiêu của bài toán.
 Hiện trạng của hệ thống.
 Các quy tắc quản lý của hệ thống.
 Các công việc phải làm được sau khi hệ thống được tự động hóa.
-116-
- Mô tả đầy đủ, rõ ràng, cụ thể, chính xác.
- Yêu cầu chung:
 Dữ liệu: Cần lưu trữ những dữ liệu không gian, dữ liệu thuộc tính nào?
 Xử lý:
o Lưu trữ: cần lưu trữ những dữ liệu không gian, dữ liệu thuộc tính
nào?
o Tra cứu: tìm kiếm
o Tính toán: cách thức và trình tự tính toán.
o Hiển thị bản đồ, loại nào?
o Trang in.
Bước 2. Thu thập dữ liệu
- Thu thập dữ liệu liên quan từ các nguồn có thể có.
- Dữ liệu bản đồ: Chuyển đổi dữ liệu bản đồ từ các hệ thống khác đã có số
hóa hoặc/và số hóa từ ảnh bản đồ.
Bước 3. Phân tích, thiết kế, tạo cơ sở dữ liệu:
Đây là bước quan trọng và tốn thời gian nhất. Gồm các bước chi tiết sau:
- Dữ liệu không gian: Gồm những lớp dữ liệu nào cho từng loại dữ liệu nền
và dữ liệu chuyên đề? kiểu dữ liệu của từng? (điểm, đường hay vùng?)
- Dữ liệu thuộc tính: Mỗi lớp cần lưu trữ những thuộc tính nào? Kiểu dữ liệu
gì? Các thuộc tính này được tổ chức và mã hóa như thế nào?
o Mô hình dữ liệu mức quan niệm: Mô hình thực thể kết hợp ERD.
o Mô hình dữ liệu mức tổ chức.
o Mô hình dữ liệu mức vật lý.
- Nhập dữ liệu không gian, dữ liệu thuộc tính.
- Biên tập cơ sở dữ liệu
Bước 3. Thực hiện phân tích địa lý
Bước 4. Biểu diễn kết quả phân tích

-117-
CÂU HỎI ÔN TẬP CHƯƠNG 5
Bài tập 1. Tạo mới một Menu gồm các menu con như sau:

Khi ta chọn vào mục “Phong to” thì khung nhìn sẽ phóng to, khi ta chọn vào mục
“Thu nho” thì khung nhìn sẽ thu nhỏ.
Hướng dẫn:
Dùng hộp thoại chỉnh sửa giao diện tạo ra Menu Khung nhìn có 2 menu con là
“Phong to” và “Thu nho”.
‘Gán script sau vào sự kiện Click trong menu “Phong to”
theView = av.GetActiveDoc ‘lấy về khung nhìn đang xét
theView.GetDisplay.ZoomIn(125) ‘thực hiện thao tác phóng to
‘Gán script sau vào sự kiện click trong menu “Thu nho”
theView = av.GetActiveDoc
theView.GetDisplay.ZoomOut(125)
GetDisplay trả về khu vực hiển thị trên khung nhìn, ZoomIn và ZoomOut thực hiện
thao tác phóng to hay thu nhỏ vùng hiển thị.
Bài tập 2. Tạo mới một Tool, Tool này cho phép xác định toạ độ trên khung nhìn.
Hướng dẫn:
Dùng hộp thoại chỉnh sửa tạo ra một Tool mới, gán script sau vào sự kiện Apply
của Tool này.
theView = av.GetActiveDoc
‘lấy về điểm trên khung nhìn
p=theView.GetDisplay.ReturnUserPoint
‘hiển thị toạ độ của điểm này
msgbox.info(“Toa do X: ” + p.GetX.AsString + “ Toa do Y: “ +
p.GetY.Asstring ,”Toa do”)
Ví dụ 3: Thêm một menu con có tên là GUI vào menu View trong giao diện khung
nhìn, khi chọn menu này thì sẽ xuất hiện câu thông báo đang làm việc ở giao diện tài
liệu người dùng nào. Thực hiện bằng hai cách dùng hộp thoại chỉnh sửa giao diện và
bằng viết lệnh.
Hướng dẫn:
- Dùng hộp thoại chỉnh sửa giao diện:
+ Thêm vào Menu View một menu con GUI.
+ Trong sự kiện click của menu này ta gán vào script có tên ViewGUI với nội
dung như sau:
Msgbox.info(“GUI hien tai:”+ av.GetActiveGUI.GetType,”GUI”)
- Dùng cách viết lệnh:
+ Tạo một script có tên MakeMenu có nội dung như sau:
theGui=av.FindGui(“View”)
theMenuBar=theGui.GetMenuBar
-118-
theMenu=theMenuBar.FindByLabel(“view”)
aChoice=Choice.Make
aChoice.setLabel(“GUI”)
aChoice.setClick(“ViewGUI”)
theMenu.Add(aChoice, theMenu.getControls.count)

Bài tập 2. Trong cửa sổ tài liệu khung nhìn tạo mới 3 Button như sau . Khi
nhấn vào Button có nhãn là 1 thì mất Button có nhãn là 2, Khi nhấn vào Button có nhãn
là 2 thì mất Button có nhãn là 1, Khi nhấn vào Button có nhãn là 3 thì xuất hiện cả hai
Button có nhãn là 1 và 2.
Bài tập 3. Viết script thêm một Menu con có tên là NumRow vào Menu Table trong tài
liệu giao diện người dùng Table.
Bài tập 4. Viết Script xuất ra tên của tất cả các khung nhìn trong Project hiện tại.
Bài tập 5. Viết script tạo một View mới có tên là DongThap1, trong View này thêm vào
các theme lớp huyen, truong và lớp dgt.
Bài tập 6. Với các trường học trong View DongThap1, đổi biểu tượng cho theme
truonghoc.shp sang màu đỏ.
Bài tập 7. Viết Script cho biết trong thị xã Sa Đéc có bao nhiêu trường học.
Bài tập 8. Viết Script hiển thị các trường học nằm cách quốc lộ 1A là 500 m.
Bài tập 9. Tạo Dialog cho phép hiển thị danh sách Theme trong View hiện hành. Khi
kích chọn Theme trong danh sách, trường hợp Theme đang ở chế độ hiển thị thì cho tắt
chế độ hiển thị, trường hợp Theme đang ở chế độ tắt hiển thị thì cho mở chế độ hiển thị.
Bài tập 10.Tạo một công cụ hỗ trợ như sau: Thêm mới một điểm trường học, người sử
dụng chọn công cụ thêm mới và chọn vào một vị trí trên bản đồ, hộp thoại nhập thông
tin thuộc tính cho trường học này hiện ra để người sử dụng có thể nhập vào.
Bài tập 11. Viết công cụ tìm kiếm nhà máy trong dữ liệu tỉnh Đồng Tháp có giao diện
như sau:
- Cho phép nhập tên của nhà máy.
- Nút tìm kiếm.
Nếu tìm thấy địa vật trên khung nhìn thì di chuyển khung nhìn đến vị trí nhà máy
và làm sáng vị trí nhà máy này lên.
Bài tập 12.Viết công cụ xem thông tin của xã trong dữ liệu tỉnh Đồng Tháp:
- Danh sách liệt kê các xã trong tỉnh, mỗi hàng trong danh sách gồm có các thông
tin Tên xã, diện tích, dân số.
- Khi chọn một xã trong danh sách khung nhìn chuyển đến vị trí xã đó và thay đổi
màu của xã này.

-119-
PHỤ LỤC 1
CHUYỂN ĐỔI DỮ LIỆU TỪ CÁC PHẦN MỀM KHÁC SANG
ARCVIEW
Định dạng dữ liệu của phần mềm ArcView là Shape file. Khi tạo dữ liệu không
gian mới trong ArcView, dữ liệu sẽ được lưu trữ ở dạng shapefile này, có phần mở rộng
là .shp. Trường hợp muốn sử dụng dữ liệu từ các phần mềm khác, phải thực hiện như
hướng dẫn sau đây:
 Dữ liệu được tạo ra từ phần mềm ARC/INFO: ARC/INFO coverage,
ARC/INFO grid, ArcStorm,...
Arc/Info là một trong những phần mềm GIS được sử dụng rộng rãi ở nhiều quốc
gia trên thế giới phục vụ cho việc tạo lập, quản lý và phân tích thông tin địa lý. Arcview
có thể sử dụng tất cả dữ liệu không gian có định dạng từ phần mềm Arc/Info để kết nối
đến thành phần bản đồ.
Một coverage được lưu trữ trong phần mềm Arc/Info có thể chứa một hoặc nhiều
lớp đối tượng địa lý. Chẳng hạn, một coverage chứa những đối tượng vùng như vùng
hành chính, các đối tượng đường như đường bao của các vùng hành chính (còn được
gọi là ranh giới hành chính); vì vậy, khi kết nối vào trong View, ta cần phải chọn loại
đối tượng cần kết nối. Mỗi lớp đối tượng trong coverage sẽ là một chủ đề trong thành
phần bản đồ của Arcview. Chúng ta có thể kết nối một hoặc nhiều chủ đề từ một
coverage đến thành phần bản đồ trong Arcview.
Để thêm một coverage vào Views, tương tự như cách thêm một tập tin .shp, click
nút thêm, chọn đường dẫn đến các tập tin chứa dữ liệu..
Click đối tượng muốn thêm vào  OK. Nếu không chọn từng lớp mà mở cả
coverage thì Arcview sẽ sử dụng lớp đầu tiên được liệt kê trong coverage làm lớp mặc
định cho chủ đề mới.
 MAP/INFO Interchange Fomat (Mif)
Chức năng Mif to Shape của Arcview
giúp chuyển tập tin dữ liệu từ dạng Mif của
Map/Info sang dạng Shape của Arcview.
 Dữ liệu CAD (Computer Aided
Design)
Arcview cho phép nhập vào các tập
tin dữ liệu dạng .dwg và .dxf của AutoCad
hoặc những tập tin .dgn của MicroStation.
Khi đọc dữ liệu này vào View, cần phải nạp
thêm phần mở rộng Cad Reader của
Arcview bằng cách vào menu File 
Extensions  Cad Reader.
 Dữ liệu hình ảnh
Ta có thể thêm vào Arcview các loại dữ liệu dạng ảnh như ảnh vệ tinh, ảnh máy
bay, ảnh bản đồ có cấu trúc Raster,... Trước khi đưa hình ảnh vào trong View, tùy vào
định dạng của ảnh, cần phải nạp thêm các Extensions thích hợp.

-120-
 Dữ liệu bảng
Arcview hỗ trợ dữ liệu bảng trong định dạng dBase, Info. Sử dụng chức năng
liên kết dói tượng SQL của Arcview để nối kết với các hệ quản trị cơ sở dữ liệu như
Access, Oracle, Sysbase,...
 Dữ liệu MapInfo
Để sử dụng các file .TAB được
tạo ra từ MapInfo cho Geotools ta
thực hiện việc chuyển đổi dữ liệu
bằng các chức năng có sẵn trong
chương trình.
Từ menu Tools  Universal
Translator  Universal Tranlator…
Khai báo các thông số cho hộp thoại
Universal Translator như hình sau:
- Phần Source:
 Khung Format: chọn định dạng
của file nguồn.
 Khung File(s): chọn file nguồn.
- Phần Destination:
 Khung Format: chọn định dạng
của file đích.
 Khung Directory: chọn đường dẫn
lưu file đích.
 Ok.
 Nhập dữ liệu dạng *.tif
- Vào menu File chọn Extension.
 TIFF 6.0 Image Support.
- Từ cửa sổ Project mở một View mới.
 Add Theme. Trên hộp thoại Data Source Type chọn kiểu dữ liệu Image Data
Source  chọn file cần đọc  O, sẽ xuất hiện file Tiff trên View.
 Nhập dữ liệu dạng bảng biểu
- Từ cửa sổ Project, chọn mục Table  Add.
- Chọn kiểu file trong List File of Type, gồm:
 dBASE (*.dbf ) : cho file dbf.
 INFO: cho file dBASE INFO format (ARC/INFO).
 Delimited Text (*.txt): cho file dạng Text (*.txt)
- Chọn file cần đọc.
 Chọn OK.
 Nhập dữ liệu từ cơ sở dữ liệu SQL
- Vào menu project  Chọn SQL connect, xuất hiện hộp thoại.
- Nhập thông tin cho các mục Select, From, Where.
- Chọn Query
- Dữ liệu truy vấn được từ câu lệnh SQL sẽ được đưa vào ArcView.

-121-
PHỤ LỤC 2
GIỚI THIỆU CÁC PHẦN MỀM GIS TRÊN THỊ TRƯỜNG

 Phần mềm mã nguồn mở


- QGIS (tên gọi trước đây là Quantum GIS) là một phần mềm GIS mã nguồn mở
được bắt đầu xây dựng từ năm 2002 và được phát triển nhanh chóng với một cộng
đồng phát triển lớn trên cơ sở tự nguyện. Đây là phần mềm tương đối mạnh và dễ
sử dụng, chạy được trên các hệ điều hành: Windows, Mac OS X, Linux, BSD và
Android, gồm:
 QGIS Desktop: Tạo lập, chỉnh sửa, hiển thị, phân tích và xuất bản thông tin địa
không gian;
 QGIS Browser: Duyệt và xem nhanh dữ liệu và siêu dữ liệu cũng như kéo và
thả dữ liệu từ kho dữ liệu này sang kho dữ liệu khác;
 QGIS Server: Xuất bản QGIS project với các lớp dữ liệu thông qua các dịch vụ
WMS và WFS theo chuẩn OGC. Có khả năng kiểm soát lựa chọn các thuộc tính
hoặc cách bố trí bản đồ và hệ tọa độ của những lớp dữ liệu khi xuất bản;
 QGIS Web Client: Cho phép dễ dàng xuất bản QGIS project lên Web với thư
viện các kí hiệu, nhãn phong phú cũng các cách kết hợp các đối tượng để tạo
bản đồ Web ấn tượng;
 QGIS on Android: Phiên bản thử nghiệm đang được hoàn thiện để sử dụng
QGIS trên các thiết bị chạy Android.
QGIS hỗ trợ hầu hết các chức năng cơ bản của một phần mềm GIS gồm: Quản lý
dữ liệu, đọc được nhiều định dạng dữ liệu, biên tập và xuất bản bản đồ, xuất-nhập dữ
liệu và các chức năng phân tích không gian…
- MapWindow GIS: Phát triển bởi nhóm phát triển Mapindow. Hỗ trợ lập trình trên
.net. Chạy trên hệ điều hành Windows hỗ trợ các ứng dụng bản đồ và thành phần
công cụ lập trình các ứng dụng bản đồ. Các ứng dụng được xây dựng dựa trên nền
công nghệ Microsoft. NET. Phần mềm được viết bằng ngôn ngữ lập trình C++.
- GRASS GIS: Phần mềm hệ thống hỗ trợ phân tích tài nguyên địa lý, là phần mềm
miễn phí cho phép xử lý ảnh, số hóa bản đồ địa hình, và xử lý dữ liệu. Phiên bản đầu
tiên phát hành vào năm 1984, mã nguồn mở được viết bằng ngôn ngữ C, C++,
Python, Tcl, chạy trên các hệ điều hành như Linux, Mac OS X và Windows. Được
phát triển bởi U.S. Army Corps of Engineers.
- gvSIG: Phần mềm được ứng dụng cho thu thập hình ảnh, lưu trữ và phân tích các loại
thông tin không gian, hỗ trợ tất cả các loại định dạng dữ liệu ảnh và số hóa, các công
cụ ứng dụng mở rộng cho việc khai thác dữ liệu địa lý công cụ truy vấn, hiển thị phân
tích thông tin không gian…Phần mềm được phát triển bởi hiệp hội gvSIG, viết bằng
ngôn ngữ Java. Hiện tại hỗ trợ nhiều ngôn ngữ khác nhau như: Spanish, English UK,
English USA, German, French, Italian, Portuguese, Portuguese-Brazilian, Russian,
Chinese, Serbian, Swahili, Turkish, Czech, Polish, Romanian, Greek, Basque,
Valencian, Gallego. Và có thể chạy trên nhiều hệ điều hành như Linux, Window, Mac
OS X.
- SAGA-GIS: Phần mềm biên tập xử lý dữ liệu địa không gian, ban đầu được phát
triển bởi một nhóm nghiên cứu tại khoa địa vât lý trường Đại học tổng

-122-
hợp Göttingen, của Đức, viết bằng ngôn ngữ lập trình hướng đối tượng C++, chạy
trên hệ điều hành Cross-platform.
- JUMP GIS/OpenJUMP: Phần mềm xuất phát từ một dự án “Bộ quản lý tài nguyên
thiên nhiên và phá triển bền vững Bristish Colombia” giải pháp tạo một phần mềm
hợp nhất để tự động kết nối dữ liệu bản đồ đường giao thông và thủy hệ từ nhiều loại
tỷ lệ bản đồ khác nhau thành một hệ dữ liệu không gian hợp nhất. phần mềm tích hợp
hầu hết tất cả các loại dữ liệu không gian, một đặc tính quan trọng của phần mềm này
là khả năng làm việc với dữ liệu GIS trong ngôn ngữ đánh dấu siêu văn bản địa lý
GML(Geography Markup Language), đó là định dạnh dữ liệu XML, các định dạng
mở cho chuẩn dữ liệu GIS. Phần mềm viết bằng ngôn ngữ lập trình Java, chạy trên
hệ điều hành Cross-platform.
 Phần mềm trên thị trường
- ArcGIS là dòng sản phẩm hỗ trợ trong hệ thống thông tin địa lý (GIS) của ESRI.
Tùy mức độ đăng ký bản quyền mà ArcGIS sẽ ở dạng ArcView, ArcEditor,
ArcInfo. ERSI có những sản phẩm chủ yếu sau:
 ArcGIS gồm các ứng dụng chính ArcMap, ArcCatalog, ArcToolbox.
 ArcIMS dùng để đưa dữ liệu GIS lên Web.
 ArcPad dùng cho các thiết bị Mobile.
 ArcSDE dùng làm cầu nối truy xuất vào các hệ quản trị cơ sở dữ liệu.
 ArcExplore dùng truy cập nguồn dữ liệu trên Web.
 ArcGIS server hỗ trợ các chức năng bên phía server cũng như triển khai các
ứng dụng qua mạng.
ArcGIS hỗ trợ nhiều phần mở rộng gọi là các Extension, mỗi Extension hỗ trợ một
số chức năng chuyên biệt như: phân tích không gian (spatial analyst), phân tích 3D (3D
analyst), phân tích mạng (Network analyst), xử lý dữ liệu, thống kê không gian...
ArcGIS hỗ trợ đọc được nhiều định dạng dữ liệu khác nhau (khoảng 300 định dạng) như
shapefile, geodatabase, AutoCad, Raster, Coverage,... Ngày nay ArcGIS được sử dụng
rộng rãi trong các ứng dụng GIS như quản lý môi trường, đất đai, đã hội, kinh tế...
Dòng phần mềm ArcGIS du nhập vào Việt Nam từ những năm 90, sau các phần
mềm GIS khác như MapInfo hay Geomedia. Tuy nhiên, do tính năng mạnh mẽ và nhiều
công cụ hỗ trợ nên ArcGIS được bắt đầu sử dụng nhiều ở Việt Nam, đặc biệt với các hệ
thống GIS lớn.
- SuperGIS (SuperGeo Technologies Inc) một phần mềm GIS mới được phát triển tương
tự như ArcGIS. SuperGIS cung cấp đầy đủ các chức năng như thu thập dữ liệu, nhập dữ
liệu, biên tập dữ liệu, phân tích, trình bày dữ liệu, xuất dữ liệu ra ảnh và các định dạng
phần mềm khác như ArcGIS, Mapinfo, AutoCAD… Ngoài ra, SuperGIS còn có chức
năng chia sẻ phân phối thông tin trên mạng Internet tới các cấp độ khác nhau như CSDL
địa lý cá nhân hay CSDL của các doanh nghiệp. SuperGIS gồm nhiều ứng dụng khác
nhau như: Desktop (SuperGIS với các Extensions), máy chủ (SuperGIS Server), các ứng
dụng Web (SuperWebGIS), hoặc hệ thống thiết bị di động (SuperPAD, SuperGIS
Mobile Engine)... và có khả năng tương tích cao đối với nhiều loại sản phẩm của nhiều
hãng khác nhau. Trong đó SuperGIS Desktop có những công cụ và module để quản lý,
cập nhật, phân tích và xuất bản dữ liệu thông minh, cho phép:

-123-
 Nhập, xuất dữ liệu từ nhiều nguồn khác nhau nhờ module SuperGIS DataConvertor;
 Tạo dữ liệu GIS, chỉnh sửa và phân tích dữ liệu;
 Truy vấn dữ liệu không gian và dữ liệu thuộc tính từ nhiều nguồn và bằng nhiều
cách;
 Hiển thị, truy vấn và phân tích dữ liệu không gian kết hợp dữ liệu thuộc tính;
 Thành lập, trình bày bản đồ chuyên đề và các bản in chuyên nghiệp.
- MapInfo được phát triển bởi phần mềm Pitney Bowesre. MapInfo Professional được
nâng cấp với nhiều chức năng nâng cao bao gồm MapInfo Drivetime cho phân
tích tuyến đường, MapInfo Engage 3D for 3D và phân tích thống kê, và MapInfo
MapMarker cho mã hóa dữ liệu địa lý, do công ty MapInfo sản xuất. Phiên bản hiện
hành là MapInfo Professional 10.0. MapInfo Professional là phần mềm chạy trên môi
trường Windows, có chức năng kết nối với các ứng dụng Windows khác (chẳng hạn
như Microsoft Office). MapInfo Professional có các chức năng sau:
 Hỗ trợ tốt kiểu dữ liệu vectơ với các quan hệ topo.
 Cho phép chồng xếp các định dạng ảnh (raster) làm nền bản đồ
 Kết nối với Crystal Report (lập báo cáo dựa trên cơ sở dữ liệu địa lý của bản đồ)
 Lập trình tự động hóa công việc với MapBasic.
 MapInfo là phần mềm biên tập bản đồ với nhiều tính năng, tuy nhiên, điểm vượt
trội của MapInfo so với các phần mềm khác (MicroStation là điển hình) là khả
năng biên tập bản đồ chuyên đề rất tốt với công cụ create thematic map . MapInfo
được xây dựng chủ yếu để xử lý các số liệu bản đồ có sẵn, các số liệu thuộc tính
của bản đồ, vì vậy, ta thấy khả năng số hoá và thành lập bản đồ gốc không được
hỗ trợ nhiều.
 Đối tượng khách hàng tiềm năng sử dụng phần mềm thuộc khu vực doanh nghiệp.
- Smallworld: được phát triển bởi Smallworld, Inc.) và được General Electric mua
được sử dụng chủ yếu cho các tiện ích công cộng. Công ty phần mềm GIS của Trung
Quốc cung cấp các công cụ ứng dụng GIS,… Các dịch vụ GIS cho thị trường Châu
Á và thị trường toàn cầu.
- Autodesk – Gồm nhiều sản phần khác nhau bao gồm Map 3D, Topobase, MapGuide,
nổi tiếng là AutoCad.
- Bentley Systems – Gồm các sản phầm như Bentley Map, Bentley PowerMap và nổi
tiếng là MicroStation.

-124-
PHỤ LỤC 3
KẾT NỐI DỮ LIỆU VỚI AVENUE
ArcView cho phép ta kết nối với các hệ quản trị cơ sở dữ liệu như MS Access,
MS SQL Server, Oracle,... Trên hệ điều hành Window. ArcView sử dụng cầu nối ODBC
(Open Database Connectivety) để kết nối vào vào cơ sở dữ liệu SQL.
Avenue dùng đối tượng SQLCon để thiết lập kết nối đến một cơ sở dữ. SQLCon
kết nối đến cơ sở dữ liệu thông qua cầu nối ODBC.
- Chọn StartProgramsAdministrative ToolsData Sources (ODBC).
- Chọn DataSource (ODBC). Hộp thoại ODBC Data Source xuất hiện như sau:

- Chọn vào Tab User DSN, và nhấn vào nút Add. Hộp thoại yêu cầu chọn nguồn
dữ liệu như hình.

- Chọn SQL Server và nhấp vào nút Finish. Hôp thoại mới xuất hiện ta nhập tên
CSDL SQL mình tạo và tên Server vào như sau:

-125-
- Nhấp Next để tiếp tục.

- Chọn Next tiếp tục và kiểm tra xem kết nối CSDL có thành công không.

- Chọn Test Data Source để kiểm tra việc kết nối. Nếu kết nối thành công sẽ có
thông báo sau.

-126-
Trong ArcView để thực hiện truy vấn CSDL SQL vừa kết nối ta sử dụng Extensions
có sẵn. Các bước thực hiện như sau:
- Từ FileExtensionsDatabase AccessOK.

- Từ Project  Add Database Table ODBC kết nối CSDL.

-127-
- Ta có thể viết các câu lệnh SQL, sau đó nhấn Query sẽ được kết quả hiển thị.
- Sử dụng câu lệnh kết nối SQL:
theSQL=SQLCon.Find("VinhTho")
theSQL.Login("nhatrang/")
astring="Select * from DANTOC"
theSQL.ExecuteSQL(astring)
theVTab=VTab.MakeSQL(theSQL,"Select * from DANTOC")
myTable=Table.Make(theVtab)
myTable.setName("DANTOC")
av.GetProject.AddDoc(mytable)
mytable.GetWin.Open
1. Kết nối với CSDL SQL Server và hiển thị dữ liệu trong bảng dữ liệu.
‘Tạo kết nối, tên đăng nhập và mật khẩu
theSQL=SQLCon.Find("VinhTho")
theSQL.Login("nhatrang/")
‘Câu truy vấn SQL
astring="Select s.Soso,s.Sonha,s.Dientichnha,s.Dientichdat,nk.
++”HovatenNK, tdp.TenTDP,d.Tenduong,lh.TenLH"
++"From SOHOKHAU s, NHANKHAU nk, LOAIHO lh,TODANPHO tdp,DUONG d"++"
Where s.Soso=nk.Soso"
++"and s.Maduong=d.Maduong"
++"and s.MaLH=lh.MaLH"
++"and s.MaTDP=tdp.MaTDP"
++"and nk.Chuho='true'"
theSQL.ExecuteSQL(astring) ‘Thực thi câu lệnh SQL
‘Tạo bảng ảo trong ArcView
theVTab=VTab.MakeSQL(theSQL,astring)
‘Đưa bảng vào Project và mở bảng này ra.
myTable=Table.Make(theVtab)
myTable.setName("XemHK")
av.GetProject.AddDoc(mytable)
mytable.GetWin.Open
2. Liên kết các bảng bằng thuộc tính.
theSQL=SQLCon.Find("VinhTho")
theSQL.Login("nhatrang/")
‘Xác định bảng nguồn và bảng đích
astring="Select * from SOHOKHAU"
theSQL.ExecuteSQL(astring)

-128-
theVTab=VTab.MakeSQL(theSQL,"Select * from SOHOKHAU")
thetable=av.GetProject.FindDoc("SOHOKHAU")
av.GetProject.RemoveDoc(thetable)
myTable=Table.Make(theVtab)
myTable.setName("SOHOKHAU")
av.GetProject.AddDoc(mytable)
toTable=av.GetProject.FindDoc("Hgdinh.shp")
toVt=toTable.GetVTab
‘Xác định trường dung chung để liên kết
toField=toVt.FindField("Soso")
fromfield=theVtab.FindField("Soso")
‘Nếu muốn liên kết bằng Joint
toVt.Join(toField,theVtab,fromfield)
‘Nếu muốn liên kết bằng Link
toVt.Link(toField,theVtab,fromfield)
‘Nếu muốn hủy bỏ liên kết
toVt.UnjoinAll
toVt.UnlinkAll
3. Mở dữ liệu tử bảng SQL và đưa dữ liệu vào Combobox tạo một danh sách các
chọn lựa khi muốn tiết kiệm không gian.
aDlog=self
theSQL=SQLCon.Find("VinhTho")
theSQL.Login("nhatrang/")
‘Tìm đến đối tượng Combobox
lbx_DanhSach=aDlog.FindByName("cbmavung")
theView=av.GetActiveDoc
astring="Select * from TODANPHO"
‘Lấy các danh sách Tổ dân phố.
theTable=VTab.MakeSQL(theSQL, astring)
theField=theTable.FindField("TenTDP")
listTheme={}
for each rec in theTable
listTheme.Add(theTable.ReturnValue(theField,rec))
end
‘Gán danh sách các Tổ dân phố vào combobox
lbx_DanhSach.DefineFromList(listTheme)
4. Đóng Dialog khi người dùng Thoát
Self.GetDialog.Close

-129-
5. Hủy các thao tác
theView=av.getActivedoc
theDisplay=theView.GetDisplay
theGraphics=theView.GetGraphics
theGraphics.empty
theTheme = theView.GetEditableTheme
‘Hủy bỏ các thao tác
if (theView.GetGraphics.HasSelected) then
av.GetProject.SetModified(true)
end
if (theTheme = nil) then
theView.GetGraphics.ClearSelected
else
theTheme.GetFtab.BeginTransaction
theTheme.ClearSelected
theTheme.GetFTab.EndTransaction
end
‘Đóng hộp thoại cần lưu
self.GetDialog.Close
6. Mở Dialog
theView = av.GetActiveDoc
aDlog=av.FindDialog("timtrenduong")
if(aDlog <> nil)then
aDlog.Open
else
MsgBox.info("Không tìm thây Tìm theo đường","Thông Báo")
end
7. Tìm kiếm dữ liệu không gian.
‘Tìm đến đối tượng Combobox
alistbox = self.GetDialog.FindByName("cbcskd")
tabletab = av.FindDoc("CSKD.shp").GetVTab
thebitmap = tabletab.GetSelection
‘Chọn tên CSKD từ danh sách tìm kiếm
qry = "([Tencskd_tn] = """ + alistbox.GetCurrentValue.AsString + """)"
tabletab.Query(qry, thebitmap, #VTAB_SELTYPE_NEW)

theView = av.GetActiveDoc
theView.Invalidate

-130-
8. Tìm kiếm dữ liệu thuộc tính từ SQL.
‘Tìm đến đối tượng Dialog, Combobox
dlog=av.FindDialog("ANNK")
f0= dlog.FindByName("cbmank")
f1 = dlog.FindByName("cbsc")
f2 = dlog.FindByName("txtngay")
f3 = dlog.FindByName("txtthiethai")
f4 = dlog.FindByName("txtghichu")
‘Kết nối SQL và dùng câu lệnh SQL tìm kiếm
theSQL=SQLCon.Find("VinhTho")
theSQL.Login("nhatrang/")
astring="Select * from ANNINHNK
where MaNK='"+f0.GetSelection.AsString+"'"
theVTab=VTab.MakeSQL(theSQL,astring)
‘Nếu nó tìm thấy
n=theVTab.GetNumRecords
if(n<>0)then
for each rec in theVTab
‘Tìm trường MaNK
ma = theVTab.Findfield("MaNK")
‘Trả về giá trị của trường tương ứng vứi chỉ số của mẫu tin
mas = theVTab.ReturnValue(ma,rec)
masc = theVTab.FindField("Masuco")
mascs = theVTab.ReturnValue(masc,rec)

ngay = theVTab.Findfield("Ngaygioxayra")
ngays = theVTab.ReturnValue(ngay,rec)

thai = theVTab.Findfield("Mucdothiethai")
thais = theVTab.ReturnValue(thai,rec)

gc = theVTab.Findfield("Ghichu")
gcs = theVTab.ReturnValue(gc,rec)

str="Select * from SUCO where Masuco='"+mascs.asString+"'"


theVTab1=VTab.MakeSQL(theSQL,str)
for each rec in theVTab1
m = theVTab1.FindField("Tensuco")

-131-
ms = theVTab1.ReturnValue(m,rec)
end
‘Gán giá trị của trường tương ứng chỉ số mẫu tin
f0.SetCurrentValue(mas.asString)
f1.SetCurrentValue(ms.asString)
f2.SetText(ngays.asString)
f3.SetText(thais.asString)
f4.SetText(gcs.asString)
end
else
MsgBox.info("Không tim thấy dữ liệu","Thông báo")
end
9. Thêm mới dữ liệu
dlog=av.FindDialog("ThemCSKD")
tb=_theTheme.GetFtab
f0 = dlog.FindByName("txttencskd")
f1 = dlog.FindByName("cbmaduong")
f2 = dlog.FindByName("cbmavung")

theSQL=SQLCon.Find("VinhTho")
theSQL.Login("nhatrang/")

str="Select * from TODANPHO


where TenTDP='"+f2.GetSelection.asString+"'"
theVTab=VTab.MakeSQL(theSQL,str)

for each rec in theVTab


ma = theVTab.FindField("MaTDP")
mas = theVTab.ReturnValue(ma,rec)
end

str1="Select * from DUONG


where Tenduong='"+f1.GetSelection.asString+"'"
theVTab1=VTab.MakeSQL(theSQL,str1)

for each rec in theVTab1


masc = theVTab1.FindField("Maduong")
mascs = theVTab1.ReturnValue(masc,rec)

-132-
end
tcs=tb.FindField("Tencskd_tn")
maduong=tb.FindField("Maduong")
mapho=tb.FindField("Ma_khu_pho")

tb.SetValue(tcs,_re,f0.GetText.asString)
tb.SetValue(maduong,_re,mascs.asString)
tb.SetValue(mapho,_re,mas.asString)

av.GetActiveDoc.SetEditableTheme(NIL)
av.finddialog("ThemCSKD").close
10. Xóa dữ liệu
dlog=av.FindDialog("ANNK")
f0 = dlog.FindByName("cbmank")
theSQL=SQLCon.Find("VinhTho")
theSQL.Login("nhatrang/")
astring="Delete From ANNINHNK
Where MaNK ='"+f0.GetSelection.asString+"'"
TheSQL.ExecuteSQL(astring)

-133-
PHỤ LỤC 4
ARCGIS ONLINE
1. ArcGIS Online là gì?
ArcGIS Online là một nền tảng điện toán đám mây để tạo, chia sẻ và truy cập bản
đồ, các ứng dụng cũng như dữ liệu, bao gồm bản đồ nền (basemaps) được xuất bản bởi
ESRI. Thông qua ArcGIS Online, chúng ta sẽ được truy cập vào điện toán đám mây
của ESRI một cách an toàn, tại đây ta có thể quản lý, tạo, lưu trữ và truy cập nhiều lớp
dữ liệu. Vì ArcGIS Online là một phần không thể thiếu của hệ thống phần mềm ArcGIS
nên ta có thể sử dụng để mở rộng khả năng của ArcGIS cho máy tính để bàn, cho
ArcGIS Server, những ứng dụng liên quan đến ArcGIS,... Cũng có thể truy cập vào
các ứng dụng có sẵn của ESRI để tiến hành thành lập bản đồ trong Excel, giám sát các
hoạt động của người sử dụng cũng như chia sẻ các bản đồ đến mọi người trong nhóm
hoặc các tổ chức khác.
Ba khái niệm cơ bản khi bạn sử dụng công cụ Esri Maps for Office để thành lập
bản đồ từ dữ liệu Excel đó là:
- Feature services: Mỗi lớp dữ liệu như lớp điểm các cửa hàng hay lớp các vùng
phân phối sản phẩm của SGFOODS được gọi là một feature service.
- Web Map: Một bản đồ Web bao gồm nhiều lớp dữ liệu khác nhau (tức bao gồm
nhiều feature services) và một lớp bản đồ nền. Người thành lập có thể thiết lập
các thông tin, nội dung của bản đồ Web sao cho phù hợp với mục đích của tổ
chức, cá nhân.
- Web Application: Ứng dụng Web để người sử dụng sau dễ dàng biên tập hoặc in
ấn các bản đồ theo nhu cầu của họ.
Sơ đồ quá trình thành lập bản đồ sử dụng ứng dụng Esri Maps for Office:

2. Thành lập bản đồ web


Tạo bản đồ từ dữ liệu Excel dễ dàng như vẽ một biểu đồ hoặc sơ đồ, cũng như
nhanh chóng lập bản đồ vị trí và những dữ liệu địa lý khác như vùng bán hàng, địa điểm
bán hàng, hoặc hệ thống phân phối sản phẩm. Có thể kiểm soát bản đồ của mình theo
nhiều kiểu, có thể nhấn mạnh thông tin nào là quan trọng khi ứng dụng phần mềm Esri
Maps for Office.
Sau khi cài đặt ứng dụng Esri Maps for Office, trên thanh công cụ, công cụ Esri
Maps đã được tự động kích hoạt, click vào tab Esri Maps, kết quả hiển thị như sau:

-134-
Click vào để đăng nhập vào tài khoản ArcGIS Online. Đăng nhập thành công

biểu tượng khóa sẽ đóng lại .


Chú ý: Trường hợp công cụ Esri Maps sau khi cài đặt thành công vẫn chưa xuất
hiện trên thanh công cụ, tiến hành kích hoạt bằng cách: Vào mục File  Options 
Add-Ins. Tại mục Manage, chọn COM Add-ins  click Go… Đảm bảo mục Esri Maps
for Office đã được chọn  Click OK.
Sau đó, ta có thể tạo các lớp bản đồ dạng điểm, dạng đường hoặc vùng và chia sẻ
cho phép người dùng khác cùng biên tập và cập nhật dữ liệu.

-135-
TÀI LIỆU THAM KHẢO
TÀI LIỆU TIẾNG VIỆT
[1] Đặng Văn Đức, Hệ thống thông tin địa lý, NXB. Khoa học và Kỹ thuật, Hà Nội,
2001.
[2] Nguyễn Duy Liêm, Bài giảng GIS đại cương, 2018.
[3] Trần Tấn Lộc, Lê Tiến Thuần, Bản đồ học chuyên đề, NXB Đại học Quốc gia
TP. HCM, 2004.
[4] Nguyễn Văn Lợi, Nguyễn Thị Mong, Xây dựng cơ sở dữ liệu GIS sơ đồ địa bàn
phường Vĩnh Thọ - TP.Nha Trang, Đồ án tốt nghiệp, 2010.
[5] Trần Vĩnh Phước, GIS đại cương - phần lý thuyết, NXB Đại học Quốc gia Tp.
HCM, 2003
[6] Trần Vĩnh Phước, GIS đại cương - phần thực hành, NXB Đại học Quốc gia Tp.
HCM, 2005.
[7] Ngô Đạt Tam, Bản đồ học, Nhà xuất bản Giáo dục 1986.
[8] Trần Thị Băng Tâm, Giáo trình Hệ thống thông tin địa lý, 2006.
[9] Nguyễn Thạch, Bài giảng Cơ sở hệ thống thông tin địa lý và viễn thám trong
quản lý môi trường ngành thuỷ sản.
[10] Nguyễn Thế Thận, Cơ sở hệ thống thông tin địa lý, NXB Khoa học & Kỹ thuật,
Hà Nội, 2002.
[11] Bài giảng lập trình Avenue, Đại học Bách Khoa TP.HCM.
[12] Tập thể GV Trung tâm Công nghệ thông tin địa lý, Giáo trình thực hành phân
tích không gian, Đại học Bách khoa TP.HCM.
[13] Esri Việt Nam, Training Guideline Một số ứng dụng trong ArcGIS Online for
Organization/Portal for ArcGIS, 2014.
TÀI LIỆU TIẾNG ANH
[14] Keith C. Clarke: Getting Started with Geographic Information Systems,
Prentice Hall 1999.
[15] Yue-Hong Chou, Exploring Spatial analysis in Geographic information
systems, ONWORD press, USA, 1997.
[16] Graeme F. Bonham-Carter, Geographic Information Systems for Geoscientists:
Modelling with GIS, 1994.
TRANG WEB
[17] https://esrivn.com/
[18] www.ditagis.org
[19] www.geoviet.vn
[20] http://www.vidagis.com
[21] http://www.ekgis.com.vn
[22] www.khoahocvacongnghevietnam.com.vn

-136-
[23] https://nguyendinhcong.files.wordpress.com/2012/01/baigiangthutapgis.pdf
[24] Geographic Information Systems (GIS) Software Fundamentals: A Video
Lecture, https://www.youtube.com/watch?v=Slf6EftrN8k, 2014.
[25] Basic Spatial Analysis Geographic Information Systems (GIS): A Technical
Video Lecture, https://www.youtube.com/watch?v=HnlqXXhu9HA, 2017.
[26] Các diễn đàn về GIS khác trên internet.

-137-

You might also like