Mục lục
Mục lục . 1
Mở đầu . 4
Ch−ơng I Giới thiệu chung về đồ án 6
I.1 Giới thiệu chung về bản đồ 6
I.1.1 Bản đồ thông th−ờng . 6
I.1.2 Bản đồ số . 6
I.1.3 Bản đồ trực tuyến 6
I.2 Mục đích, yêu cầu 7
I.2.1 Tên đề tμi . 7
I.2.2 Mục đích . 7
I.2.3 Yêu cầu . 7
Ch−ơng II Những khái niệm cơ bản liên quan đến hệ thống bản đồ trực tuyến 9
II.1 Các thμnh phần có liên quan . 9
II.1.1 Phần mềm mã nguồn mở . 9
II.1.2 Cơ sở dữ liệu 10
II.2 Tổng quan về bản đồ . 12
II.2.1 Bản đồ lμ gì 12
II.2.2 Các yếu tố nội dung của bản đồ 13
II.2.3 Các phép toán cơ bản trên bản đồ 17
II.2.4 Các phép phân tích không gian trong GIS . 19
II.2.5 Tổng quan các kiến trúc chung của các WebGIS 21
II.3 Những khái niệm cơ bản về hệ thống bản đồ trực tuyến 24
II.3.1 Khái niệm Bản đồ trực tuyến (webmap) 24
II.3.2 Giao thức IP (Internet Protocol - Giao thức Liên mạng) . 25
II.3.3 Tên miền (domain name) . 26
II.3.4 DNS (Domain Name Server) . 28
II.3.5 Web Server . 29
II.3.6 Cơ sở dữ liệu thông tin địa lý . 30
II.3.7 Map server . 32
II.3.8 Map Services 33
II.3.9 Cartoweb 34
Ch−ơng III Khảo sát các công nghệ trên thế giới vμ lựa chọn công nghệ để xây dựng đề tμi 35
III.1 Khảo sát các website bản đồ trực tuyến trong n−ớc vμ trên thế giới . 35
III.1.1 Các phần mềm Web GIS hiện nay . 35
III.1.2 Khảo sát các trang web bản đồ trực tuyến trên thế giới . 38
III.1.3 Đánh giá . 45
III.2 Lựa chọn công nghệ 49
Ch−ơng IV : Phân tích vμ xây dựng ứng dụng bản đồ trực tuyến bằng công nghệ CartoWeb 50
IV.1 Phân tích hệ thống bản đồ trực tuyến 50
IV.1.1 Sơ đồ khối chức năng hệ thống 50
IV.1.2 Chức năng của hệ thống bản đồ trực tuyến 50
IV.1.3 Các yêu cầu 53
IV.2 Xây dựng ứng dụng bản đồ trực tuyến bằng công nghệ Cartoweb . 58
IV.2.1 Hệ điều hμnh 58
IV.2.2 Cμi đặt Webmap Server 58
IV.2.3 Cμi đặt postgreSQL 61
IV.2.4 Cμi đặt postGIS . 64
IV.2.5 Cμi đặt Cartoweb 65
IV.3 Đ−a dữ liệu vμo cơ sở dữ liệu 67
IV.4 Chuẩn hóa dữ liệu . 68
IV.5 Thiết lập các thông số cho Mapserver & CartoWeb để hiển thị thông tin địa lý 69
IV.5.1 Thiết lập thông số cho Mapserver 69
IV.5.2 Thiết lập thông số cho CartoWeb 77
IV.6 Chỉnh sửa giao diện ng−ời dùng 79
IV.7 Một số hình ảnh demo ứng dụng bản đồ trực tuyến . 80
Kết luận, kiến nghị vμ đánh giá . 82
Những kết quả đạt đ−ợc . 82
H−ớng phát triển 82
Kết luận chung 83
Tμi liệu tham khảo . 85
Phụ lục 87
Các hình vẽ trong đồ án . 87
87 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 2529 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Đồ án Xây dựng ứng dụng bản đồ trực tuyến trên công nghệ CartoWeb, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
më míi lµ ch×a khãa cho sù thµnh c«ng cña Web kÕ thõa,
trong sè ®ã: c¸c chuÈn cña OGC lµ ch×a kho¸ ®Ó hîp nhÊt m«i tr−êng Web d÷
liÖu kh«ng gian.
VÝ dô: ®Æc t¶ WMS lµ mét bé API cÇn thiÕt cho phÐp c¸c lËp tr×nh viªn
®−a vµo c¸c giao tiÕp kÕ thõa trong hÖ thèng xö lý d÷ liÖu ®Þa lý cña hä. ViÖc
sö dông HTTP – nghi thøc truyÒn t¶i ®−îc sö dông trªn Web - ®Æc t¶ ®Þnh
nghÜa nghi thøc yªu cÇu (request) vµ håi ®¸p (response) cho c¸c t−¬ng t¸c
gi÷a server vµ client b¶n ®å trªn Web.
Sö dông giao tiÕp WMS cung cÊp ®a lîi Ých, ®ã còng lµ c©u tr¶ lêi t¹i
sao rÊt nhiÒu hiÖn thùc ®−îc thùc hiÖn WMS. Cô thÓ, mét giao tiÕp WMS:
− Cho phÐp chång ghÐp c¸c b¶n ®å trùc tiÕp cña c¸c d÷ liÖu ph©n
t¸n qua Web; bÊt chÊp vÞ trÝ kh«ng gian, tû lÖ, l−íi chiÕu, hÖ to¹ ®é.
Internet
Map Server 1
Giao th«ng
Map Server 2
Thöa ®Êt
Map Server 3
Quy häach
Web Client
Map
WMS interface
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 49 Tin häc Tr¾c ®Þa K47
− KÕt xuÊt mét h×nh ¶nh raster cña d÷ liÖu mµ cã c¸c th«ng tin h÷u
Ých trong khi vÉn kiÓm so¸t viÖc truy cËp ®èi víi c¸c d÷ liÖu nh¹y c¶m
vµ chi tiÕt.
− Cho phÐp c¸c tæ chøc t¹o m¹ng l−íi d÷ liÖu WMS t¹o kh¶ n¨ng
cho ng−êi sö dông kÕt hîp c¸c d÷ liÖu GIS tõ c¸c nguån kh¸c nhau dùa
trªn c¸c yªu cÇu, tiªu chÝ c«ng viÖc cña hä.
− Cho phÐp c¸c nhµ cung cÊp dÞch vô WMS c¸ thÓ lµm næi bËt c¸c
d÷ liÖu cô thÓ ®èi víi øng dông cña hä vµ kh«ng cÇn diÔn dÞch toµn bé
néi dung cña c¸c tËp d÷ liÖu trong CSDL cña hä.
− Cã thÓ dÔ dµng nhanh chãng hiÖn thùc, kh«ng cÇn c¸c truy cËp
tèc ®é cao, vµ mang l¹i lîi Ých to lín víi chi phÝ gi¶m ®i ®¸ng kÓ.
− §−îc chøng thùc bëi ISO.
Còng nh− rÊt nhiÒu c¸c dù ¸n x©y dùng c¬ së h¹ tÇng d÷ liÖu kh«ng
gian cña c¸c quèc gia vµ l·nh thæ trªn thÕ giíi, ®å ¸n “X©y dùng øng dông b¶n
®å trùc tuyÕn trªn c«ng nghÖ CartoWeb” còng chän lùa chuÈn më OpenGIS
(OGC) lµ 1 trong nh÷ng chuÈn cÇn ph¶i thùc thi trong c¸c hÖ thèng lµ hoµn
toµn phï hîp víi xu thÕ hiÖn nay vµ hoµn toµn kh¶ thi.
III.2 Lùa chän c«ng nghÖ
Qua t×m hiÓu vÒ c¸c c«ng nghÖ b¶n ®å trùc tuyÕn trong n−íc vµ trªn thÕ
giíi nh− trªn, em nhËn thÊy mét øng dông b¶n ®å trùc tuyÕn cã thÓ cung cÊp
®Çy ®ñ th«ng tin GIS vµ cã kh¶ n¨ng øng dông cao trong thùc tÕ víi chi phÝ
kh«ng cao, cÇn ph¶i ®−îc x©y dùng theo xu h−íng kÕ thõa, ®ång thêi, chuÈn
sö dông nªn sö dông lµ chuÈn më OpenGIS (OGC). V× thÕ, c«ng nghÖ sö dông
cho øng dông b¶n ®å trùc tuyÕn trong luËn v¨n lµ c«ng nghÖ Cartoweb, mét
c«ng nghÖ dùa trªn m· nguån më, sö dông c¬ së d÷ liÖu PostgreSQL còng lµ
c¬ së d÷ liÖu m· nguån më. Cïng víi ng«n ng÷ lËp tr×nh web PHP, øng dông
x©y dùng ra sÏ lµ mét øng dông B¶n ®å trùc tuyÕn trªn dùa trªn c«ng nghÖ
Web m· nguån më, phï hîp víi xu thÕ hiÖn nay vµ hoµn toµn kh¶ thi, cã tÝnh
øng dông cao trong thùc tÕ.
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 50 Tin häc Tr¾c ®Þa K47
Ch−¬ng IV: Ph©n tÝch vµ x©y dùng øng dông
b¶n ®å trùc tuyÕn b»ng c«ng nghÖ
CartoWeb
IV.1 Ph©n tÝch hÖ thèng b¶n ®å trùc tuyÕn
IV.1.1 S¬ ®å khèi chøc n¨ng hÖ thèng
C¸c khèi chøc n¨ng b¶n ®å cña hÖ thèng bao gåm:
− Khèi chøc n¨ng dÉn nhËp ph©n phèi th«ng tin
− Khèi chøc n¨ng thao t¸c c¬ b¶n
− Khèi chøc n¨ng t×m kiÕm th«ng tin thuéc tÝnh
− Khèi chøc n¨ng GIS c¬ b¶n
− Nhãm n¨ng tiÖn Ých
C¸c khèi chøc n¨ng trªn cã quan hÖ nh− s¬ ®å sau:
H×nh 4.1. S¬ ®å khèi chøc n¨ng hÖ thèng
IV.1.2 Chøc n¨ng cña hÖ thèng b¶n ®å trùc tuyÕn
a. Khèi chøc n¨ng dÉn nhËp ph©n phèi th«ng tin
§©y lµ khèi giao diÖn ®Ó dÉn nhËp ng−êi dïng vµo khai th¸c c¸c chøc
n¨ng cô thÓ cña dÞch vô ph©n phèi th«ng tin.
− T¹o ®−êng dÉn thuËn lîi cho ng−êi sö dông khai th¸c c¸c khèi d÷
liÖu cña hÖ thèng ph©n phèi
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 51 Tin häc Tr¾c ®Þa K47
− Cã giíi thiÖu tæng quan vÒ tõng khèi d÷ liÖu, råi dÉn nhËp vµo chi
tiÕt
− Cã h×nh ¶nh ®¹i diÖn phï hîp víi tõng khèi th«ng tin
− Qu¶n lý c¸c khèi d÷ liÖu nµy theo m« h×nh ph©n cÊp b»ng c¬ së
d÷ liÖu ®Ó dÔ dµng cËp nhËp vµ thay ®æi th«ng tin
− ViÖc ®i vµo chi tiÕt tõng khèi ®−îc yªu cÇu cô thÓ trong ®Æc t¶
yªu cÇu tõng khèi
− Th«ng b¸o hiÖn tr¹ng, thèng kª d÷ liÖu tÝch hîp hiÖn ®ang cã
− Tin tøc cËp nhËt (Tíi thêi ®iÓm c«ng bè d÷ liÖu)
− Th«ng b¸o cô thÓ chøc n¨ng nµo cña ch−¬ng tr×nh sÏ yªu cÇu cÊu
h×nh hÖ thèng vµ tr×nh duyÖt t−¬ng thÝch
b. Khèi chøc n¨ng thao t¸c b¶n ®å c¬ b¶n
§©y lµ khèi chøc n¨ng c¬ b¶n ®Ó thao t¸c b¶n ®å víi bÊt kú hÖ thèng
Map service nµo còng cÇn ph¶i cã: zoom, dÞch chuyÓn, xem toµn m¶nh, chän
®èi t−îng vµ xem th«ng tin thuéc tÝnh gåm cã c¸c chøc n¨ng:
− Chøc n¨ng phãng to (Zoom in)
− Chøc n¨ng thu nhá (Zoom out)
− Chøc n¨ng dÞch chuyÓn (Pan)
− Chøc n¨ng xem toµn m¶nh (Full extent)
− Chøc n¨ng xem th«ng tin thuéc tÝnh (Info)
Cã thÓ khai th¸c c¸c chøc n¨ng nµy víi tÊt c¶ c¸c tr×nh duyÖt th«ng
dông lµ IE, Netscape, Mozilla, Opera, ...
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 52 Tin häc Tr¾c ®Þa K47
c. Khèi chøc n¨ng t×m kiÕm th«ng tin thuéc tÝnh
Cung cÊp c¸c c«ng cô t×m kiÕm vµ truy vÊn víi th«ng tin thuéc tÝnh cña
c¸c ®èi t−îng vµ c¸c ®èi t−îng ®−îc chän trªn b¶n ®å gåm c¸c chøc n¨ng
− Th«ng tin (Identify): Chøc n¨ng Identify thùc hiÖn víi líp ®ang
®−îc kÝch ho¹t (active layer) bÊm vµo mét ®èi t−îng ®Ó xem th«ng tin
thuéc tÝnh cña ®èi t−îng ®ã.
− T×m kiÕm theo th«ng tin thuéc tÝnh (Search):
+ T×m kiÕm th«ng th−êng: T×m kiÕm trªn tÊt c¶ tr−êng text cã
trong c¸c b¶ng cña CSDL tÝch hîp
+ T×m kiÕm theo Metadata
+ T×m kiÕm n©ng cao: T×m kiÕm n©ng cao buffer search theo
®iÓm
− C¸c chøc n¨ng t×m kiÕm c¬ b¶n cã thÓ khai th¸c víi tÊt c¶ c¸c
tr×nh duyÖt th«ng dông nh− IE, Netscape, c¸c chøc n¨ng n©ng cao chØ
cung cÊp cho c¸c tr×nh duyÖt t−¬ng thÝch.
− HiÓn thÞ kÕt qu¶ t×m ®−îc theo mÉu quy ®Þnh tr−íc theo ph©n
quyÒn sö dông
d. Khèi chøc n¨ng c¸c phÐp to¸n GIS c¬ b¶n
− §o kho¶ng c¸ch
− T¹o User Layer
− C¸c c«ng cô ®o ph¶i chuÈn ho¸ theo thang ®o tiªu chuÈn ViÖt
Nam
− Khi ng−êi sö dông vÏ thªm yªu cÇu kh«ng ®−îc phÐp thay ®æi d÷
liÖu gèc trªn Server
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 53 Tin häc Tr¾c ®Þa K47
e. Nhãm chøc n¨ng tiÖn Ých
− In b¶n ®å ra m¸y in
− XuÊt m¶nh b¶n ®å ®ang ®−îc xem ra file ¶nh (khu«n d¹ng bmp,
jpg hoÆc png)
IV.1.3 C¸c yªu cÇu
a. C¸c yªu cÇu ®èi víi hÖ thèng b¶n ®å trùc tuyÕn
Tõ n¨m 1995, Internet ®−îc sö dông réng r·i trªn toµn cÇu. Cïng víi sù
ph¸t triÓn cña Internet cã nhiÒu dù ¸n c¸c hÖ thèng GIS chia sÎ c¸c th«ng tin
kh«ng gian th«ng qua c¸c dÞch vô cña Internet.
Cã thÓ ®Þnh nghÜa hÖ thèng th«ng tin cho phÐp tæ chøc l−u tr÷ vµ khai
th¸c th«ng tin th«ng qua Internet ®−îc gäi lµ hÖ thèng th«ng tin ®Þa lý trùc
tuyÕn (GIS trùc tuyÕn).
C¸c øng dông cña hÖ thèng GIS trùc tuyÕn cã thÓ ®¬n gi¶n lµ b¶n ®å vÏ
tr−íc trong c¸c trang web cho ®Õn c¸c hÖ thèng phøc t¹p cho phÐp ng−êi dïng
tõ xa chia sÎ d÷ liÖu dïng chung trong thÕ giíi thêi gian thùc.
Mét hÖ thèng GIS trùc tuyÕn bao gåm:
− Server: L−u d÷ liÖu vµ øng dông
− Client: Sö dông d÷ liÖu vµ øng dông
− M¹ng th«ng tin: §iÒu khiÓn luång th«ng tin gi÷a Client vµ Server
Khi hÖ thèng GIS trùc tuyÕn ho¹t ®éng, mét lo¹t c¸c c«ng viÖc sÏ ®−îc
thùc hiÖn, bao gåm xö lý c¸c yªu cÇu, thùc hiÖn t×m kiÕm, ph©n tÝch ®Þa lý,
ph¸t sinh c¸c b¸o c¸o vµ liªn tôc hiÓn thÞ b¶n ®å.
Khi thiÕt kÕ mét hÖ thèng GIS trùc tuyÕn lµ cÇn c©n nh¾c vµ x¸c ®Þnh râ
lo¹i c«ng viÖc dµnh cho Server vµ Client.
B¶ng sau thÓ hiÖn viÖc ph©n bæ c«ng viÖc trªn hÖ thèng GIS trùc tuyÕn:
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 54 Tin häc Tr¾c ®Þa K47
NhÑ Client C©n ®èi NÆng Client GIS trªn Client
NhiÖm vô
cña Server
- DuyÖt b¶n ®å
- Truy vÊn d÷ liÖu
- Ph©n tÝch
- VÏ b¶n ®å
- Truy vÊn d÷ liÖu
- Ph©n tÝch
- VÏ b¶n ®å
- Ph©n tÝch
- VÏ b¶n ®å
DÞch vô tÖp
TruyÒn t¶i B¶n ®å Raster D÷ liÖu Raster/Vector B¶n ®å vector D÷ liÖu th«
NhiÖm vô
cña Client
- HiÓn thÞ - HiÓn thÞ
- DuyÖt b¶n ®å
- Truy vÊn ®Çu vµo
- HiÓn thÞ
- DuyÖt b¶n ®å
- Truy vÊn d÷ liÖu
- HiÓn thÞ
- DuyÖt b¶n ®å
- Truy vÊn d÷ liÖu
- VÏ b¶n ®å
- Ph©n tÝch
H×nh 4.2. M« h×nh chung cña hÖ thèng øng dông GIS
Môc tiªu cë b¶n cña m« h×nh tÝnh to¸n kh¸ch/chñ lµ tËp trung d÷ liÖu vµ
phÇn mÒm trªn m¸y Server ®Ó c¸c Client x©m nhËp. Khi d÷ liÖu GIS ®−îc ®Æt
trªn hÖ thèng Server trung t©m, ph¸t huy ®−îc c¸c lîi thÕ nh− dÔ dµng cËp
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 55 Tin häc Tr¾c ®Þa K47
nhËt, dÔ dµng qu¶n lý truy nhËp. Trªn thùc tÕ, d÷ liÖu GIS lµ rÊt lín, khi cã
qu¸ nhiÒu ng−êi yªu cÇu khai th¸c ®Õn hÖ thèng Server sÏ qu¸ t¶i cho bé xö lý
dÉn ®Õn dõng ho¹t ®éng. §©y còng lµ nguyªn nh©n khi triÓn khai c¸c Server
cho hÖ thèng GIS trùc tuyÕn ph¶i yªu cÇu cÊu h×nh m¹nh víi hiÖu n¨ng cña
c¸c bé xö lý song song. Khi ph©n t¸n d÷ liÖu GIS trªn Internet cÇn quan t©m
®Õn vÊn ®Ò ®−êng truyÒn. Ngoµi ra c¸c thao t¸c cña ng−êi dïng víi d÷ liÖu
GIS nh− phãng to, thu nhá, dÞch chuyÓn b¶n ®å ®−îc göi tõ Client tíi Server,
b¶n ®å míi ®−îc Server ph¸t sinh vµ göi tr¶ l¹i Client.
Th«ng th−êng c¸c tr×nh duyÖt web lµ nhãm Client “nhÑ”, phÇn lín c¸c
xö lý ®−îc thùc hiÖn trªn Server vµ tr×nh duyÖt chØ lµm nhiÖm vô hiÓn thÞ. Khi
hÖ thèng GIS trùc tuyÕn yªu cÇu nÆng vÒ phÝa Client, nghÜa lµ yªu cÇu tr×nh
duyÖt ph¶i cã kh¶ n¨ng ®å häa cao vµ xö lý c¸c chøc n¨ng cña GIS nh− phãng
to, thu nhá, dÞch chuyÓn b¶n ®å vµ truy vÊn d÷ liªuu kh«ng gian. C¸c tr×nh
duyÖt ®−îc më réng c¸c tÝnh n¨ng nµy b»ng c¸c c«ng nghÖ kh¸c nh− Java
applet, ActiveX vµ Plug-ins.
Java applet ®−îc x©y dùng b»ng ng«n ng÷ lËp tr×nh Java cña Sun
Microsystems. §o¹n m· ch−¬ng tr×nh cña Java ch¹y trªn bÊt kú m¸y tÝnh nµo
cã m«i tr−êng Java mµ kh«ng ph¶i dÞch l¹i ®o¹n m· (applet) ®ã.
§iÒu khiÓn ActiveX lµ nh÷ng thµnh phÇn lËp tr×nh h−íng ®èi t−îng trªn
nÒn hÖ ®iÒu hµnh Windows. ActiveX cã h¹n chÕ lµ chØ t−¬ng thÝch trªn m¸y
tÝnh cã m«i tr−êng hÖ ®iÒu hµnh vµ tr×nh duyÖt Web cña Microsoft.
Plug-in lµ th− viÖn liªn kÕt ®éng (DLL) cho phÐp tr×nh duyÖt t−¬ng t¸c
víi lo¹i d÷ liÖu míi. Chóng ®−îc cµi ®Æt bªn trong tr×nh duyÖt vµ trong suèt
víi ng−êi sö dông. Plug-in cã kh¶ n¨ng x©m nhËp c¸c tµi nguyªn cña Client
nh− ®èi t−îng OLE, thiÕt bÞ MIDI, m¸y in...
Khi ph¸t triÓn c¸c phÇn mÒm GIS, viÖc tËn dông c¸c kh¶ n¨ng trªn cho
phÐp tr×nh duyÖt cã c¸c applet xö lý d÷ liÖu kh«ng gian. §iÒu bÊt lîi cña gi¶i
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 56 Tin häc Tr¾c ®Þa K47
ph¸p nµy lµ c¸c m¸y Client ph¶i n¹p c¸c applet tíi hµng megabyte d÷ liÖu khi
khai th¸c trang chñ.
ChÝnh v× lý do nh− vËy, ng−êi thiÕt kÕ hÖ thèng GIS trùc tuyÕn sÏ ph¶i
®¸nh gi¸ hiÖn tr¹ng d÷ liÖu kh«ng gian, h¹ tÇng c«ng nghÖ th«ng tin cña ®¬n
vÞ ®Ó ®−a ra gi¶i ph¸p “nÆng Client” hay “nhÑ Client” hay “c©n ®èi
Client/Server”. ViÖc lùa chän gi¶i ph¸p nÆng hay nhÑ phô thuéc vµo nhiÒu yÕu
tè. NÕu nÆng phÝa Client sÏ cho kh¶ n¨ng ph©n tÝch mÒm dÎo vµ phong phó
h¬n, gi¶m t¶i ®−êng truyÒn, t¨ng sè ng−êi sö dông ®ång thêi, tuy nhiªn cã khã
kh¨n lµ thêi gian n¹p d÷ liÖu ®Çu tiªn l©u, phô thuéc b¶n chÊt d÷ liÖu kh«ng
gian cÇn khai th¸c vµ phøc t¹p trong viÖc cËp nhËt. NÕu nhÑ vÒ phÝa Client, ®ßi
hái Server ph¶i cã cÊu h×nh cao cÊp, phÇn mÒm ph©n tÝch vµ xö lý d÷ liÖu GIS
ph¶i chuyªn nghiÖp, d÷ liÖu ®Çu ra cho hÖ thèng GIS trùc tuyÕn cã thÓ chØ lµ
c¸c file Raster thuÇn tóy, muèn thùc hiÖn c¸c thao t¸c víi hÖ thèng th× Client
ph¶i liªn tôc chuyÓn c¸c yªu cÇu ®Õn Server ®Ó xö lý råi nhËn l¹i c¸c th«ng tin
ph¶n håi.
Tr−íc ®©y, khi kiÕn tróc m¸y Server phô thuéc rÊt nhiÒu vµo c«ng nghÖ
vi ®iÖn tö víi gi¸ thµnh ®¾t ®á, khi x©y dùng c¸c hÖ thèng GIS trùc tuyÕn
ng−êi ta v× lý do kinh tÕ th−êng lùa chän gi¶i ph¸p nÆng phÝa Client. Khã kh¨n
trong gi¶i ph¸p nµy lµ d÷ liÖu kh«ng gian ®−îc ph©n phèi trùc tuyÕn mang tÝnh
®éc lËp, kh«ng liªn kÕt tæng thÓ, ¸p dông cho c¸c bµi to¸n chuyªn m«n hay
qu¶n lý cô thÓ. NÕu d÷ liÖu cÇn khai th¸c lµ lín, mçi lÇn n¹p d÷ liÖu ®Çu vµo lµ
mÊt kho¶n thêi gian ®¸ng kÓ, toµn bé d÷ liÖu kh«ng gian sÏ ®−îc t¶i vÒ m¸y
Client vµ xö lý c¸c thao t¸c GIS trªn nã. NÕu ng−êi sö dông muèn tham chiÕu
®Õn mét d÷ liÖu kh«ng gian kh¸c l¹i ph¶i tiÕp tôc t¶i vÒ d÷ liÖu kh«ng gian ®ã
råi tiÕn hµnh thao t¸c GIS cña m×nh. ¦u ®iÓm cña gi¶i ph¸p nµy lµ nÕu ®· lÊy
®−îc d÷ liÖu kh«ng gian n¹p vµo applet råi, th× tr×nh duyÖt cã thÓ khai th¸c
offline, tr−íc ®©y ®−êng truyÒn cã tèc ®é h¹n chÕ, viÖc nµy ph¸t huy thÕ m¹nh
cña gi¶i ph¸p nµy.
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 57 Tin häc Tr¾c ®Þa K47
Tõ khi Internet b¨ng th«ng réng ®−îc sö dông réng r·i, viÖc khai th¸c
c¸c hÖ thèng GIS trùc tuyÕn nÆng phÝa Client cµng ph¸t huy kh¶ n¨ng h¬n.
Tuy nhiªn, nh− ®· ph©n tÝch ë trªn, gi¶i ph¸p nµy phï hîp víi tõng d÷ liÖu
kh«ng gian ®¬n gi¶n, nÕu ®øng trªn quan ®iÓm qu¶n lý tæng thÓ vÒ d÷ liÖu
GIS, ®¬n vÞ së h÷u trong tay mét khèi l−îng d÷ liÖu kh«ng gian lín, mang tÝnh
tæng thÓ sÏ kh«ng muèn Client t¶i toµn bé d÷ liÖu vÒ m¸y tÝnh c¸ nh©n cña
m×nh ®Ó khai th¸c. §iÒu nµy ®−îc c©n nh¾c kü l−ìng v× c¸c lý do nh− tÝnh mËt
vµ b¶n quyÒn cña d÷ liÖu kh«ng gian. §èi víi mçi quèc gia, d÷ liÖu kh«ng
gian cña mçi quèc gia g¾n liÒn víi c¸c th«ng tin gi¸ trÞ vÒ ®Þa h×nh, tµi nguyªn
thiªn nhiªn, ®iÒu kiÖn tù nhiªn, kinh tÕ, chÝnh trÞ, x· héi. Tïy thuéc vµo c¸c
yªu cÇu cô thÓ mµ ng−êi khai th¸c sÏ yªu cÇu vµ hÖ thèng sÏ trÝch chän c¸c d÷
liÖu phï hîp. Nh− vËy, gi¶i ph¸p nÆng vÒ phÝa Server vµ nhÑ vÒ phÝa Client
®¸p øng ®−îc nhu cÇu trªn.
C¸c m¸y chñ ®a vi xö lý, c¸c hÖ qu¶n trÞ c¬ së d÷ liÖu th−¬ng m¹i víi
kh¶ n¨ng qu¶n trÞ d÷ liÖu cùc lín cïng víi sù ph¸t triÓn cña Internet b¨ng
th«ng réng lµm c¬ së khoa häc kü thuËt cho ph¸t triÓn c¸c hÖ thèng GIS trùc
tuyÕn víi nguyªn lý Server/Client hoµn chØnh, Server ®¶m nhËn xö lý mäi thao
t¸c GIS vµ tr¶ l¹i cho tr×nh duyÖt c¸c ®¸p øng mong muèn d−íi d¹ng d÷ liÖu
truyÒn thèng ®¬n gi¶n cña ng«n ng÷ html ®ã lµ ¶nh vµ v¨n b¶n (text).
Mét hÖ thèng GIS trùc tuyÕn ph¶i cã c¸c chøc n¨ng c¬ b¶n sau:
− HiÓn thÞ b¶n ®å: Cung cÊp c¸c c«ng cô trªn web cã thÓ thùc hiÖn
®−îc c¸c thao t¸c c¬ b¶n víi b¶n ®å nh−: xem, phãng, dÞch chuyÓn.
− Hái ®¸p vµ ph©n tÝch GIS trªn c¬ së Web: t×m kiÕm trªn th«ng tin
thuéc tÝnh, t×m kiÕm kh«ng gian trªn c¸c ®èi t−îng vµ c¸c phÐp to¸n ®o
kho¶ng c¸ch, vÏ thªm ®−êng...
XuÊt ph¸t tõ c¸c yªu cÇu chøc n¨ng trªn, phÇn tiÕp theo cña luËn v¨n
nµy sÏ ph©n tÝch cô thÓ m« h×nh c«ng nghÖ Cartoweb cho x©y dùng hÖ thèng
GIS trùc tuyÕn. §©y lµ m« h×nh ®−îc x©y dùng trªn quan ®iÓm nhÑ phÝa Client
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 58 Tin häc Tr¾c ®Þa K47
vµ nÆng vÒ phÝa Server. Môc ®Ých cña Cartoweb lµ nh»m ph¸t triÓn bé c«ng cô
hoµn h¶o ®Ó cho phÐp ng−êi dïng qu¶n lý, sö dông, vµ cung cÊp c¸c th«ng tin
®Þa lý hiÖu qu¶. Cartoweb cßn cung cÊp c¸c dÞch vô t− vÊn, x©y dùng vµ hç trî
kü thuËt. Th«ng tin chi tiÕt vÒ Cartoweb ®−îc ®¨ng t¶i t¹i trang Web
www.cartoweb.org
IV.2 X©y dùng øng dông b¶n ®å trùc tuyÕn b»ng c«ng nghÖ
Cartoweb
IV.2.1 HÖ ®iÒu hµnh
Sö dông hÖ ®iÒu hµnh Linux (Debian, Mandrak, Fedora): mét hÖ ®iÒu
hµnh m¹ng m¶ nguån më kh¶ n¨ng tïy biÕn cao, an toµn cho c¸c øng dông
web.
Chóng ta còng cã thÓ sö dông Windows Server hay Windows XP bëi
øng dông cartoweb ®· ®−îc x©y dùng nhiÒu phiªn b¶n trªn hÖ ®iÒu hµnh nµy.
IV.2.2 Cµi ®Æt Webmap Server
Server ®−îc sö dông lµ Wamp server (WAMP5) phiªn b¶n 1.6.5, ®−îc
down load tõ trang web vÒ.
C¸c b−íc cµi ®Æt server nµy cã thÓ dÔ dµng thùc hiÖn qua nh− c¸c b−íc
sau (theo thø tù tõ tr¸i qua ph¶i, tõ trªn xuèng d−íi), ch−¬ng tr×nh sÏ ®−îc cµi
mÆc ®Þnh vµo th− môc C:\wamp, sau khi cµi ch−¬ng tr×nh, c¸c thµnh phÇn
kh¸c nh− MySQL, Apache còng ®−îc cµi ®Æt.
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 59 Tin häc Tr¾c ®Þa K47
B−íc 1: B¾t ®Çu cµi ®Æt
Chän next
B−íc 2: C¸c ®iÒu kho¶n cña GNU vµ WAMP5
Chän “I accept the agreement” vµ Ên next
B−íc 3: Chän ®−êng dÉn cµi ®Æt WAMP5
Chän l¹i ®−êng dÉn cµi ®Æt nÕu muèn råi Ên
next hoÆc Ên next ®Ó cµi ®Æt mÆc ®Þnh vµo
th− môc C:\wamp
B−íc 4: Chän tªn hiÓn thÞ cho WAMP5 trªn
Start menu
Chän tªn hiÓn thÞ l¹i nÕu muèn hoÆc Ên next
B−íc 5: Chän WAMP5 khëi ®éng cïng hÖ
thèng:
Chän vµo « trèng råi Ên next ®Ó WAMP khëi
®éng cïng hÖ thèng hoÆc Ên next, WAMP sÏ
kh«ng tù khëi ®éng
B−íc 6: X¸c nhËn b¾t ®Çu cµi ®Æt WAMP5:
Chän Install ®Ó b¾t ®Çu cµi ®Æt
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 60 Tin häc Tr¾c ®Þa K47
B−íc 7: Chê cho hÖ thèng cµi ®Æt WAMP5
B−íc 8: Chän tªn cho m¸y chñ côc bé
Chän l¹i tªn m¸y chñ côc bé hoÆc Ên next, mÆc
®Þnh lµ localhost
B−íc 9: Lùa chän hßm th− cho hÖ thèng
göi:
Chän hßm th− kh¸c råi Ên next hoÆc Ên next
®Ó cho m¸y chän theo chÕ ®é mÆc ®Þnh
B−íc 10: Chê hÖ thèng cµi ®Æt vµ tù ®éng cÊu
h×nh trang chñ localhost
B−íc 11: Hoµn tÊt qu¸ tr×nh cµi ®Æt
NhÊn Finish ®Ó khëi ®éng WAMP5
H×nh 4.3. C¸c b−íc cµi ®Æt WAMP5
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 61 Tin häc Tr¾c ®Þa K47
H×nh 4.4. Giao diÖn trang chñ localhost sau khi cµi ®Æt WAMP5
IV.2.3 Cµi ®Æt postgreSQL
Download postgreSQL theo ®−êng dÉn
sau ®ã chän phiªn b¶n muèn down
load vÒ vµ tiÕn hµnh down load, ®Ò tµi sö dông phiªn b¶n 8.2.4 cña
PostgreSQL
Sau khi download xong file cµi ®Æt PostgreSQL, ch¹y file cµi ®Æt cña
postgreSQL, cµi ®Æt theo c¸c b−íc sau:
B−íc 1: Lùa chän ng«n ng÷ sö dông
Chän vµo ng«n ng÷ sö dông hoÆc ®Ó mÆc
®Þnh lµ tiÕng Anh, Ên start.
B−íc 2: B¾t ®Çu cµi ®Æt
Ên next
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 62 Tin häc Tr¾c ®Þa K47
B−íc 3: Chó ý khi cµi ®Æt PostgreSQL
Chän next
B−íc 4: Lùa chän cµi ®Æt
Chän c¸c øng dông cµi cïng PostgreSQL
hoÆc Ên next ®Ó cµi theo mÆc ®Þnh
B−íc 5: Cµi ®Æt services PostgreSQL
Cµi ®Æt account name, domain, password.
Chó ý cÇn ph¶i nhí password nµy ®Ó sö dông
khi ®¨ng nhËp vµo c¬ së d÷ liÖu. Sau ®ã Ên
next
B−íc 6: Cµi ®Æt c¬ së d÷ liÖu ban ®Çu
Chän cæng truy nhËp, ®Þa chØ, vÞ trÝ cµi ®Æt,
chuÈn bé gâ... Chó ý nhí mËt khÈu nµy ®Ó
më b¶ng d÷ liÖu. Sau ®ã Ên next
B−íc 7: Chän ng«n ng÷ SQL cho
PostgreSQL
Cã nhiÒu ng«n ng÷, ë ®©y lµ pgsql. Chän
PL/pgsql råi Ên next
B−íc 8: Chän c¸c module ®Ó cµi cïng
PostgreSQL
Chän c¸c module muèn cµi cïng
PostgresSQL, sau ®ã Ên next
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 63 Tin häc Tr¾c ®Þa K47
B−íc 9: ChuÈn bÞ cµi ®Æt
Ên next
B−íc 10: Chê hÖ thèng cµi ®Æt
B−íc 11: Hoµn tÊt qu¸ tr×nh cµi ®Æt
Ên finish ®Ó hoµn tÊt
H×nh 4.5. C¸c b−íc cµi ®Æt PostgreSQL
H×nh 4.6. Giao diÖn PgAdmin III cña PostgreSQL 8.2.4
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 64 Tin häc Tr¾c ®Þa K47
IV.2.4 Cµi ®Æt postGIS
PostGIS lµ mét plugin më réng dïng ®Ó thao t¸c víi d÷ liÖu trªn
PostgreSQL. PostGIS cã thÓ ®−îc download vÒ tõ ®Þa chØ
1.exe (øng víi phiªn b¶n PostgreSQL 8.2, phiªn b¶n PostGIS 1.2.1)
Sau khi download vÒ, ta tiÕn hµnh cµi ®Æt theo c¸c b−íc sau (thø tù tõ
tr¸i qua ph¶i, tõ trªn xuèng d−íi)
B−íc 1: B¾t ®Çu cµi ®Æt PostGIS
Ên I Agree
B−íc 2: Lùa chän cµi ®Æt plugin cho hÖ thèng
Chän chØ cµi PostGIS hoÆc chän thªm phÇn t¹o
d÷ liÖu kh«ng gian, sau ®ã Ên next
B−íc 3: Chän ®−êng dÉn ®Ó cµi PostGIS
Chän l¹i ®−êng dÉn hoÆc ®Ó mÆc ®Þnh lµ
®−êng dÉn ®· cµi PostgreSQL
B−íc 4: Cµi ®Æt kÕt nèi c¬ së d÷ liÖu
Chän Username, password (lµ password khi cµi
®Æt PostgreSQL) vµ cæng truy cËp, sau ®ã Ên
next
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 65 Tin häc Tr¾c ®Þa K47
B−íc 5: Chän tªn c¬ së d÷ liÖu
Chän l¹i tªn c¬ së d÷ liÖu hoÆc ®Ó mÆc
®Þnh lµ postGIS råi Ên Install
B−íc 6: Chê hÖ thèng cµi ®Æt
B−íc 7: Hoµn tÊt cµi ®Æt
Ên close ®Ó hoµn tÊt cµi ®Æt
H×nh 4.7. C¸c b−íc cµi ®Æt PostGIS
IV.2.5 Cµi ®Æt Cartoweb.
Download CartoWeb theo ®−êng link:
Sau khi download xong, gi¶i nÐn gãi
download ®−îc ra vÞ trÝ mµ ta muèn cµi ®Æt mµ cã thÓ ®−îc sö dông bëi
webserver. Sau khi download vÒ, ta tiÕn hµnh cµi ®Æt theo c¸c b−íc sau:
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 66 Tin häc Tr¾c ®Þa K47
B−íc 1: B¾t ®Çu cµi ®Æt
B−íc 2: C¸c ®iÒu kho¶n cña Cartoweb 3
Chän accept råi next
B−íc 3: §äc th«ng tin vÒ CartoWeb3
Ên next
B−íc 4: B¾t ®Çu cµi ®Æt
Ên next
B−íc 5: Chê qu¸ tr×nh cµi ®Æt hoµn tÊt
B−íc 6: §äc c¸c th«ng b¸o cña CartoWeb
Ên next
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 67 Tin häc Tr¾c ®Þa K47
B−íc 7: Hoµn tÊt viÖc cµi ®Æt
Ên finish, khëi ®éng l¹i m¸y tÝnh
H×nh 4.8. C¸c b−íc cµi ®Æt CartoWeb 3.3
H×nh 4.9. Giao diÖn trang chñ CartoWeb 3.3.0
IV.3 §−a d÷ liÖu vµo c¬ së d÷ liÖu
Sau khi cµi ®Æt PostgreSQL, ta cã thÓ Import d÷ liÖu vµo c¬ së d÷ liÖu
b»ng nhiÒu c¸ch:
− NhËp d÷ liÖu ban ®Çu b»ng tay: Ph−¬ng ¸n nµy sö dông khi d÷
®Çu vµo ch−a cã c¸c file d¹ng sè, ng−êi sö dông ph¶i tù cËp nhËt.
− NhËp d÷ liÖu ban ®Çu b»ng c¸ch cho ch¹y c¸c query cã trong c¸c
file *.sql cã s½n: Khi t¹o c¬ së d÷ liÖu ban ®Çu, ng−êi t¹o c¬ së d÷ liÖu
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 68 Tin häc Tr¾c ®Þa K47
sÏ l−u c¸c file d÷ liÖu ®Çu vµo d−íi d¹ng query trong c¸c file *.sql,
ng−êi sö dông chØ viÖc cËp nhËt d÷ liÖu b»ng c¸ch ®−a c¸c c©u lÖnh
trong c¸c file *.sql vµo ®Ó thi hµnh. C¸ch nµy cÇn chó ý, c¬ së d÷ liÖu sÏ
kh«ng hiÓn thÞ chÝnh x¸c tiÕng ViÖt nÕu nh− ®Çu vµo kh«ng ph¶i lµ
chuÈn UTF-8.
− NhËp d÷ liÖu ®Çu vµo b»ng c¸ch restore d÷ liÖu tõ c¸c file backup
®· cã ®Çy ®ñ d÷ liÖu cÇn thiÕt. C¸ch nµy dÔ dµng sö dông nhÊt vµ kh«ng
mÊt nhiÒu thêi gian thùc hiÖn. §Ò tµi ®−îc x©y dùng trªn c¬ së cã s½n
c¬ së d÷ liÖu cña 1 tØnh, v× thÕ ph−¬ng ¸n ®−îc lùa chän cho ®Ò tµi lµ
ph−¬ng ¸n nµy
IV.4 ChuÈn hãa d÷ liÖu
Khi nhu cÇu khai th¸c b¶n ®å trùc tuyÕn ph¸t sinh c¸c yªu cÇu nh−
phiªn b¶n hãa c¬ së d÷ liÖu ®Þa lý, sö dông c¸c gi¶i ph¸p Java hay gi¶i ph¸p
nÆng phÝa client, sÏ triÓn khai c¸c dÞch vô kh¸c nh− ArcMap Image Service vµ
Feature Service.
NÕu biªn tËp b¶n ®å b»ng c«ng cô ArcGIS cña ESRI, ta cã s¶n phÈm
cuèi cïng tr×nh bµy b¶n ®å lµ file cã ®u«i më réng lµ (*.MXD).
NÕu biªn tËp b¶n ®å b»ng c«ng cô Author cña ArcIMS, ta cã s¶n phÈm
cuèi cïng tr×nh bµy b¶n ®å lµ file cã ®u«i më réng lµ (*.AXL). §©y lµ mét file
theo khu«n d¹ng XML - ng«n ng÷ ®¸nh dÊu siªu v¨n b¶n më réng. Cã thÓ
biªn tËp l¹i file AXL b»ng bÊt kú mét tr×nh xö lý v¨n b¶n nµo ®Ó t¨ng c−êng
c¸c tÝnh n¨ng tr×nh bµy nh− chuÈn hãa c¸c ký hiÖu hay mµu s¾c. Riªng ®èi víi
c¸c file khu«n d¹ng MXD chØ xö lý vµ thay ®æi b»ng bé c«ng cô ArcGIS.
§èi víi ®Ò tµi, ®−îc x©y dùng trªn c¬ së d÷ liÖu PostgreSQL, d÷ liÖu
®−îc ®−a vµo tõ c¸c file SQL. §Ó cã ®−îc c¸c file nµy:
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 69 Tin häc Tr¾c ®Þa K47
B−íc ®Çu, d÷ liÖu lµ c¸c file *.dgn, *.shp, *.tab,... Ng−êi biªn tËp b¶n
®å cã nhiÖm vô chuÈn hãa d÷ liÖu: chuÈn hãa vÒ líp (c¸c ®èi t−îng trªn cïng
1 líp th× ®−a vÒ 1 level). C¸c file nh− *.dgn, *.tab ph¶i ®−îc convert vÒ d¹ng
*.shp, b»ng nhiÒu c«ng cô. Sau khi cã file d¹ng *.shp, tiÕn hµnh convert font
ch÷, v× c¸c font ch÷ ®Ó ®−a vµo c¬ së d÷ liÖu lµ font ch÷ kiÓu truetype vµ m·
UTF-8 (nÕu cÇn hiÓn thÞ tiÕng ViÖt), v× thÕ cÇn ph¶i convert c¸c lo¹i font kh¸c
thµnh d¹ng truetype vµ m· UTF-8. V× bé ký hiÖu b¶n ®å trªn c¸c file khu«n
d¹ng kh¸c cã thÓ kh«ng gièng víi bé ký hiÖu b¶n ®å cña file shp, v× thÕ cÇn
®−a vÒ chuÈn ký hiÖu b¶n ®å cña file shp. TiÕp theo sö dông bé c«ng cô cña
ArcGIS ®Ó tiÕn hµnh ®−a d÷ liÖu tõ c¸c file shp sang thµnh c¸c file sql, lµ c¸c
file cã thÓ ®−a trùc tiÕp vµo c¬ së d÷ liÖu, mÆt kh¸c còng cã thÓ thay ®æi th«ng
tin GIS mét c¸ch dÔ dµng trªn c¬ së d÷ liÖu.
IV.5 ThiÕt lËp c¸c th«ng sè cho Mapserver & CartoWeb ®Ó
hiÓn thÞ th«ng tin ®Þa lý
IV.5.1 ThiÕt lËp th«ng sè cho Mapserver
C¸c file map lµ nÒn t¶ng cña cÊu h×nh cho c¬ chÕ ho¹t ®éng cña
MapServer. Map file cña project nµo cã tªn project ®ã víi phÇn më réng
*.map. Mapfile lµ tr¸i tim cña MapServer. Nã x¸c ®Þnh c¸c quan hÖ gi÷a c¸c
®èi t−îng, c¸c ®iÓm sÏ ®−îc ®−a vµo MapServer vµ nã x¸c ®Þnh c¸ch mäi thø
®−îc vÏ lªn b¶n ®å. Trong mapfile cã chøa nhiÒu tõ khãa, mçi tõ khãa ®−îc
cÊu h×nh bëi nhiÒu tham sè kh¸c, sau ®©y lµ mét sè tõ khãa c¬ b¶n, quan träng
nhÊt vµ c¸c tham sè cña nã.
Tõ khãa MAP: MAP ®Þnh nghÜa c¸c ®èi t−îng tæng thÓ cña mapfile.
Nã ®Þnh nghÜa c¸c tham sè më réng cña øng dông hoÆc b¶n ®å, gåm 1 sè
tham sè c¬ b¶n sau:
− NAME [name]: TiÒn tè ®Ýnh kÌm víi b¶n ®å (map), thanh tØ lÖ
(scalebar) vµ chó thÝch (legend). NAME nªn ®−îc ®Æt ng¾n gän.
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 70 Tin häc Tr¾c ®Þa K47
− SIZE [x][y]: KÝch th−íc cña ¶nh (b¶n ®å), ®¬n vÞ pixel
− EXTENT [minx] [miny] [maxx] [maxy]: T¹o ph¹m vi kh«ng
gian cña b¶n ®å. Trong phÇn lín tr−êng hîp, ta cÇn ®Æc t¶ kh«ng gian
b¶n ®å, mÆc dï vËy mapserver cã ®«i lóc cã thÓ tù tÝnh to¸n ®−îc kÝch
th−íc nÕu nh− ta kh«ng khai b¸o.
− UNITS [feet/meters]: Tham sè nµy quy ®Þnh ®¬n vÞ ®o chiÒu dµi
sö dông trong øng dông.
− FONTSET [filename]: Lµ tham sè quy ®Þnh ®−êng dÉn ®Õn file
cµi ®Æt font ch÷ cã thÓ ®−îc sö dông trong øng dông, filename cã thÓ lµ
®−êng dÉn t−¬ng ®èi so víi vÞ trÝ ®Æt mapfile hoÆc lµ ®−êng dÉn ®Çy ®ñ.
− SYMBOLSET [filename]: Lµ tham sè quy ®Þnh ®−êng dÉn ®Õn
file cµi ®Æt c¸c ký tù trong øng dông, filename cã thÓ lµ ®−êng dÉn
t−¬ng ®èi so víi vÞ trÝ ®Æt mapfile hoÆc lµ ®−êng dÉn ®Çy ®ñ.
− SHAPEPATH [path]: Lµ tham sè quy ®Þnh ®−êng dÉn ®Õn th−
môc chøa file shape (d÷ liÖu b¶n ®å).
Tõ khãa CLASS: CLASS x¸c ®Þnh chñ ®Ò cña c¸c líp cho mçi líp b¶n
®å vµ mçi líp b¶n ®å ph¶i chøa Ýt nhÊt 1 tõ khãa CLASS. CLASS ®−îc b¾t ®Çu
b»ng tõ khãa CLASS vµ kÕt thóc bëi tõ khãa END. Ngoµi mét sè tham sè cã
tÝnh n¨ng t−¬ng tù MAP, CLASS cã c¸c tham sè sau:
− NAME [string]: Tªn sö dông trong chó thÝch cña CLASS, nÕu
kh«ng ®Æt NAME, CLASS sÏ kh«ng cã tªn chó thÝch.
− BACKGROUNDCOLOR [r] [g] [b] : Mµu sö dông cho c¸c ®èi
t−îng kh«ng trong suèt.
− COLOR [r] [g] [b]: Mµu sö dông trong CLASS.
− DEBUG [on/off]: Cho phÐp gì lçi (bËt / t¾t).
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 71 Tin häc Tr¾c ®Þa K47
− EXPRESSION [string]: §Þnh nghÜa biÓu thøc trong 1 CLASS,
cã 4 lo¹i biÓu thøc ®−îc hç trî cho 1 CLASS: biÓu thøc d¹ng chuçi,
biÓu thøc d¹ng th«ng th−êng, biÓu thøc logic ®¬n gi¶n vµ c¸c hµm
chuçi. NÕu CLASS kh«ng ®−a ra mét lo¹i biÓu thøc nµo, tÊt c¶ c¸c c«ng
cô sÏ ®−îc hç trî cho CLASS ®ã.
− KEYIMAGE [filename]: X¸c ®Þnh tªn file ®Çy ®ñ cña h×nh ¶nh
chó thÝch cho CLASS. H×nh ¶nh nµy ®−îc sö dông khi x©y dùng mét
chó thÝch. (VÝ dô nh− trong ®å ¸n, ta quy ®Þnh KEYIMAGE lµ
keymap.png, khi ®ã KEYIMAGE sÏ chØ ®Õn file keymap.png trong th−
môc Images, chän nã lµm h×nh ¶nh ®¹i diÖn cho b¶n ®å)
− MAXSCALE [double]: TØ lÖ co d·n lín nhÊt cña 1 h×nh ¶nh
®−îc vÏ.
− MAXSIZE [integer]: KÝch th−íc lín nhÊt (®¬n vÞ pixel) ®Ó vÏ 1
ký hiÖu, gi¸ trÞ mÆc ®Þnh lµ 50.
− MINSCALE [double]: TØ lÖ co d·n nhá nhÊt cña 1 h×nh ¶nh
®−îc vÏ.
− MINSIZE [integer]: KÝch th−íc nhá nhÊt (®¬n vÞ pixel) ®Ó vÏ 1
ký hiÖu, gi¸ trÞ mÆc ®Þnh lµ 0.
− OUTLINECOLOR [r] [g] [b]: Mµu sö dông ®Ó vÏ ®−êng viÒn
cña 1 vïng hay 1 ký hiÖu, ký hiÖu ®−êng th¼ng vµ ®iÓm kh«ng hç trî
OUTLINECOLOR.
− SIZE [integer]: ChiÒu cao cña 1 ký hiÖu/ 1 mÉu ®−îc sö dông
(®¬n vÞ pixel). ChØ h÷u Ých khi sö dông víi ®èi t−îng cã tØ lÖ, gi¸ trÞ mÆc
®Þnh lµ 1.
− SYMBOL [integer/string/filename]: C¸c tham sè cã thÓ lµ sè
hiÖu cña ký hiÖu trong file chøa c¸c ký hiÖu (b¾t ®Çu b»ng 1), tham sè
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 72 Tin häc Tr¾c ®Þa K47
còng cã thÓ lµ tªn trùc tiÕp cña ký hiÖu (®−îc ®Þnh nghÜa bëi tõ khãa
NAME trong file symbol), hoÆc tham sè cã thÓ lµ tªn file h×nh ¶nh cña
ký hiÖu, nh− lµ file png hoÆc gif... tuy nhiªn ®−êng dÉn ®Õn file ¶nh
ph¶i lµ ®−êng dÉn t−¬ng ®èi so víi mapfile.
Tõ khãa LABEL: LABEL ®−îc sö dông ®Ó ®Þnh nghÜa 1 nh·n, nh·n
th−êng sö dông ®Ó chó thÝch cho 1 mÈu text. Tuy nhiªn c¸c nh·n còng cã thÓ
®−îc sö dông nh− lµ c¸c ký hiÖu th«ng qua c¸ch sö dông kiÓu font ch÷
truetype. LABEL cã thÓ ®−îc ®Æt trong CLASS ®Ó lµm chó thÝch cho CLASS
®ã. LABEL b¾t ®Çu b»ng tõ khãa LABEL vµ kÕt thóc b»ng tõ khãa END,
LABEL cã c¸c tham sè quan träng sau:
− TYPE [bitmap/truetype]: KiÓu font ch÷ sö dông. Th«ng th−êng
kiÓu bitmap vÏ nhanh h¬n kiÓu TrueType. Tuy nhiªn TrueType cã thÓ
thay ®æi tØ lÖ vµ cã thÓ thay ®æi giao diÖn.
− SIZE [integer]/[tiny/small/medium/large/giant]: KÝch th−íc
ch÷. Sö dông “integer” ®Ó ®Æt cì ch÷ theo ®¬n vÞ pixel khi dïng kiÓu
TrueType, hoÆc cã thÓ dïng 5 kÝch th−íc cßn l¹i ®Ó cµi ®Æt cì ch÷ khi
dïng kiÓu bitmap.
− COLOR [r] [g] [b]: mµu ch÷
− SHADOWCOLOR [r] [g] [b]: Mµu cña bãng ch÷.
− SHADOWSIZE [x][y]: KÝch th−íc kho¶ng bãng ( ®¬n vÞ pixel)
− BACKGROUNDCOLOR [r] [g] [b]: Mµu nÒn, chän tham sè
Off nÕu muèn ®Æt ë chÕ ®é mÆc ®Þnh.
− BACKGROUNDSHADOWCOLOR [r] [g] [b]: Mµu ®Ó vÏ
bãng cña nÒn, chän tham sè Off nÕu muèn ®Æt ë chÕ ®é mÆc ®Þnh.
− BACKGROUNDSHADOWSIZE [x][y]: ChØnh kho¶ng c¸ch tõ
bãng ®Õn nÒn, gi¸ trÞ mÆc ®Þnh lµ 1 ( ®¬n vÞ pixel)
− ANGLE [double/auto/follow]: Gãc cña ch÷, kiÓu double, hoÆc
cã thÓ ®Æt auto ®Ó øng dông tù ®éng tÝnh gãc, auto chØ cã t¸c dông ®èi
víi líp ®−êng th¼ng. Sö dông follow ®Ó xö lý vµ thiÕt kÕ nh·n theo kiÓu
®−êng cong.
− ENCODING [string]: KiÓu m·, cã nhiÒu kiÓu m·, tuy nhiªn ®Ó
hiÓn thÞ ®−îc tiÕng ViÖt trªn nÒn øng dông, chØ cã thÓ dïng m· UTF8.
− MAXSIZE [integer]: KÝch th−íc ch÷ lín nhÊt khi phãng ®¹i, gi¸
trÞ mÆc ®Þnh lµ 256 (®¬n vÞ pixel)
− MINDISTANCE [integer]: Kho¶ng c¸ch nhá nhÊt gi÷a 2 nh·n
trïng nhau, ®¬n vÞ pixel.
− MINSIZE [integer]: KÝch th−íc nhá nhÊt cña font ch÷ khi thu
nhá, gi¸ trÞ mÆc ®Þnh lµ 4 ( ®¬n vÞ pixel)
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 73 Tin häc Tr¾c ®Þa K47
− OUTLINECOLOR [r] [g] [b]: Mµu ®Ó vÏ 1 ®−êng bao xung
quanh ch÷, ®−êng nµy cã ®é réng 1 pixel.
Tõ khãa OUTPUTFORMAT: Mét file map cã thÓ kh«ng cã hoÆc cã
1, nhiÒu mÉu d÷ liÖu ®Çu ra cña kiÓu d÷ liÖu ®Çu ra OUTPUTFORMAT. Hç
trî c¸c ®Þnh d¹ng PNG, GIF, JPEG, GeoTIFF vµ FLASH (SWF).
OUTPUTFORMAT cã c¸c th«ng sè quan träng sau:
− NAME [name]: Tªn ®−îc sö dông ®Ó lùa chän mÉu ra. Tªn nµy
ph¶i trïng víi tªn trong tõ khãa IMAGETYPE cña mapfile
− DRIVER [name]: Tªn cña driver sö dông ®Ó sinh ra mÉu d÷ liÖu
®Çu ra nµy. Mét sè driver cã bao gåm c¶ ®Þnh nghÜa c¸c mÉu mµ driver
hç trî. C¸c driver th−êng dïng: “GD/Gif”, “GD/PNG”, “GD/WBMP”,
“GD/JPEG”, “SWF”, “GDAL/GTiff”, PNG, JPEG vµ GIF...
− IMAGEMODE [PC256/RGB/RGBA/INT16/FLOAT32]:
Chän chÕ ®é ¶nh ®−îc t¹o ra, ®iÒu nµy rÊt quan träng khi chän lo¹i ¶nh
kh«ng ph¶i lµ ¶nh raster ®Ó hiÓn thÞ (vÝ dô nh− Flash). Cô thÓ:
• PC256: Cho kÕt qu¶ lªn tíi 256 mµu ®èi víi mµu gi¶ (ChÕ ®é
truyÒn thèng cña MapServer)
• RGB: Tr¶ vÒ chÕ ®é 24bit mµu Red/Green/Blue. Hç trî tÊt c¶ c¸c
mµu, nh−ng kh«ng hç trî cho phÐp chiÕu.
• RGBA: Tr¶ vÒ chÕ ®é 32bit mµu Red/Green/Blue/Alpha. Hç trî
tÊt c¶ c¸c mµu vµ cho phÐp chiÕu alpha.
• BYTE: Tr¶ vÒ gi¸ trÞ 8bit pixel. ChØ lµm viÖc víi líp RASTER vµ
líp WMS hiÖn thêi.
• INT16: Tr¶ vÒ gi¸ trÞ 16bit pixel kiÓu Integer. ChØ lµm viÖc víi
líp RASTER vµ líp WMS hiÖn thêi.
• FLOAT32: Tr¶ vÒ gi¸ trÞ 32bit pixel kiÓu Float. ChØ lµm viÖc víi
líp RASTER vµ líp WMS hiÖn thêi.
− MIMETYPE [type]: Cung cÊp kiÓu mime, sö dông khi tr¶ vÒ
gi¸ trÞ th«ng qua web (vÝ dô nh− image/png,image/jpeg)
− EXTENSION [type]: Cung cÊp kiÓu më réng khi t¹o c¸c file
theo kiÓu ®−a vµo.
− TRANSPARENT [ON/OFF]: BËt hoÆc t¾t chÕ ®é h×nh trong
suèt, lùa chän nµy kh«ng lµm viÖc ®−îc víi kiÓu IMAGEMOD RGB.
− FORMATOPTION [option]: Cung cÊp 1 driver hoÆc lùa chän
kiÓu cô thÓ. Khai b¸o FORMATOPTION cã thÓ ®−îc ®Æt trong khai
b¸o OUTPUTFORMAT nh− sau:
• GD/JPEG: Lùa chän “QUALITY=n” cã thÓ ®−îc sö dông ®Ó cµi
®Æt chÊt l−îng ¶nh jpeg, gi¸ trÞ n trong kho¶ng 0 – 100.
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 74 Tin häc Tr¾c ®Þa K47
• GD/PNG: Lùa chän “INTERLACE=[ON/OFF]” cã thÓ ®−îc sö
dông ®Ó bËt/ t¾t chÕ ®é xen kÏ.
• GD/GIF: Lùa chän “INTERLACE=[ON/OFF]” cã thÓ ®−îc sö
dông ®Ó bËt/ t¾t chÕ ®é xen kÏ.
• GDAL/GTiff: Hç trî c¸c mÉu lùa chän cô thÓ: TILED=YES,
BLOCKXSIZE=n, BLOCKYSIZE=n,
INTERLEAVE=[PIXEL/BAND] vµ
COMPRESS=[NONE,PACKBITS,JPEG,LZW,DEFLATE].
• GDAL/*: Lùa chän tÊt c¶ c¸c mÉu, dùa trªn hµm cña GDAL.
Tõ khãa PROJECTION: B¾t ®Çu b»ng tõ khãa PROJECTION, kÕt
thóc b»ng tõ khãa END. PROJECTION quy ®Þnh c¸c th«ng sè cho hÖ täa ®é
sö dông trong øng dông ®Ó hiÓn thÞ d÷ liÖu, bao gåm phÐp chiÕu, elipsoid,
mèc, ®¬n vÞ ®o,... sau ®©y lµ 1 vÝ dô:
PROJECTION
"proj=utm" //PhÐp chiÕu UTM
"ellps=GRS80" //Elipsoid GRS80
"datum=NAD83" //Gèc täa ®é NAD83
"units=m" //§¬n vÞ m
"north" //B¸n cÇu B¾c
END
Tõ khãa REFERENCE: B¾t ®Çu b»ng tõ khãa REFERENCE, kÕt thóc
b»ng tõ khãa END. Nã x¸c ®Þnh c¸ch t¹o ra c¸c b¶n ®å tham chiÕu. Tõ 1 ®iÓm
®−îc truy vÊn, b¶n ®å tham chiÕu sÏ t¹o ra 1 h×nh ¶nh cã ®¸nh dÊu t¹i ®iÓm
truy vÊn. TÇng truy vÊn c¬ së sÏ vÏ ra 1 khu vùc cã liªn quan xung quanh ®ã.
Cuèi cïng, c«ng cô truy vÊn c¬ b¶n sÏ hiÓn thÞ ra c¸c c«ng cô ®−îc lùa chän
®Ó sö dông. Nã cã c¸c tõ khãa quan träng sau:
− IMAGE [filename]: Tªn file ¶nh (chøa ®ñ c¶ ®−êng dÉn).
− EXTENT [minx][miny][maxx][maxy]: Kh«ng gian cña khu
vùc ¶nh hiÓn thÞ (theo täa ®é pixel)
− STATUS [on/off]: T×nh tr¹ng b¶n ®å tham chiÕu cã ®−îc t¹o hay
kh«ng, mÆc ®Þnh ë chÕ ®é off.
− COLOR [r] [g] [b]: Mµu hiÓn thÞ cña hép chøa b¶n ®å tham
chiÕu, cho gi¸ trÞ -1 ë c¶ r,g,b nÕu muèn b¶n ®å hiÓn thÞ mµ kh«ng che
phñ. MÆc ®Þnh lµ red.
− OUTLINECOLOR [r] [g] [b]: Mµu sö dông ®Ó hiÓn thÞ bao
xung quanh hép chøa b¶n ®å tham chiÕu. Cho gi¸ trÞ -1 ë c¶ r,g,b nÕu
kh«ng muèn hiÓn thÞ ®−êng bao xung quanh.
− SIZE [x][y]: KÝch cì ¶nh tham chiÕu, ®¬n vÞ pixel
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 75 Tin häc Tr¾c ®Þa K47
Tõ khãa SCALEBAR: X¸c ®Þnh c¸ch 1 thanh tØ lÖ ®−îc t¹o ra. B¾t ®Çu
b»ng tõ khãa SCALEBAR vµ kÕt thóc bëi tõ khãa END. Gåm 1 sè th«ng sè
quan träng sau:
− POSITION [ul/uc/ur/ll/lc/lr]: VÞ trÝ ®Æt thanh tØ lÖ (trªn tr¸i,
trªn gi÷a, trªn ph¶i, d−íi tr¸i, d−íi gi÷a, d−íi ph¶i). Gi¸ trÞ mÆc ®Þnh lµ
lr (d−íi ph¶i).
− POSTLABELCACHE [true/false]: ChØ cã t¸c dông khi sö
dông thanh tØ lÖ ®−îc nhóng vµo b¶n ®å. Chän true nÕu muèn
MapServer nhóng thanh tØ lÖ vµo øng dông sau khi ®· vÏ tÊt c¶ c¸c
nh·n. Gi¸ trÞ mÆc ®Þnh lµ false.
− UNITS [feet/inches/kilometers/meters/miles]: §¬n vÞ ®Çu ra,
mÆc ®Þnh lµ miles.
− SIZE [x][y]: KÝch th−íc thanh tØ lÖ, ®¬n vÞ pixel.
− TRANSPARENT [on/off]: Chän on nÕu muèn thanh hiÓn thÞ
mµu gièng víi mµu nÒn, gi¸ trÞ mÆc ®Þnh lµ off.
− BACKGROUNDCOLOR [r] [g] [b]: Mµu nÒn cña thanh tØ lÖ,
kh«ng ph¶i lµ mµu ¶nh.
− COLOR [r] [g] [b]: Mµu sö dông ®Ó vÏ tÊt c¶ c¸c c«ng cô, nÕu
thuéc tÝnh table kh«ng ®−îc sö dông.
− IMAGECOLOR [r] [g] [b]: Mµu khëi t¹o cña thanh tØ lÖ.
− INTERVALS [integer]: Sè kho¶ng c¸ch ®Ó chia thanh tØ lÖ ra,
mÆc ®Þnh lµ 4.
− STATUS [on/off/embed]: Chän chÕt ®é cã hiÓn thÞ, kh«ng hiÓn
thÞ thanh tØ lÖ hoÆc chÕ ®é nhóng, gi¸ trÞ mÆc ®Þnh lµ off
Tõ khãa LEGEND: X¸c ®Þnh c¸ch 1 chó thÝch ®−îc t¹o ra. Thµnh
phÇn LEGEND ®−îc t¹o ra tù ®éng tõ c¸c líp ®èi t−îng riªng. B¾t ®Çu b»ng tõ
khãa LEGEND vµ kÕt thóc b»ng tõ khãa END. Ngoµi c¸c th«ng sè nh−
IMAGECOLOR (mµu s¾c chó thÝch), LABEL (nh·n), OUTLINECOLOR
(mµu ®−êng khung), POSITTION (vÞ trÝ), STATUS (t×nh tr¹ng),
TRANSPARENT (trong suèt), LEGEND cã thªm c¸c th«ng sè:
− TEMPLATE [filename]: Chän file mÉu cho chó thÝch.
− KEYSIZE [x][y]: KÝch th−íc « chøa ký hiÖu (symbol), ®¬n vÞ
pixel, gi¸ trÞ mÆc ®Þnh lµ 20 vµ 10.
− KEYSPACING [x][y]: Kho¶ng c¸ch gi÷a « chøa ký hiÖu vµ c¸c
nh·n, gi¸ trÞ mÆc ®Þnh lµ 5 vµ 5, ®¬n vÞ pixel.
Tõ khãa LAYER:
LAYER lµ 1 trong nh÷ng tõ khãa quan träng nhÊt cña mapfile. C¸c líp
®−îc vÏ ë vÞ trÝ mµ nã xuÊt hiÖn trong mapfile, ®Çu tiªn lµ líp ë d−íi cïng,
cu«i cïng lµ líp ë bªn trªn. B¾t ®Çu b»ng tõ khãa LAYER vµ kÕt thóc b»ng tõ
khãa END. LAYER cã 1 sè tham sè ®¸ng chó ý sau:
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 76 Tin häc Tr¾c ®Þa K47
− NAME [string]: Tªn cña líp, ®é dµi lín nhÊt lµ 20 ký tù. Dùa
vµo viÖc gäi tªn nµy, mapfile vµ giao diÖn web kÕt nèi víi nhau.
− TYPE [point/line/polygon/circle/annotation/raster/query]:
Chän kiÓu cña líp (®iÓm, ®−êng th¼ng, vïng, ®−êng trßn, chó thÝch,
raster, truy vÊn).
− STATUS [on/off/default]: §Æt tr¹ng th¸i cho LAYER (hiÓn thÞ,
t¾t, mÆc ®Þnh), th−êng ®−îc thay ®æi bëi MapServer. Gi¸ trÞ default cho
phÐp LAYER ®−îc hiÓn thÞ cè ®Þnh, l©u dµi.
− CONNECTION [string]: C©u lÖnh ®Ó kÕt nèi víi c¬ së d÷ liÖu.
VÝ dô, khi kÕt nèi víi hÖ qu¶n trÞ c¬ së d÷ liÖu PostgreSQL, tªn kÕt nèi
lµ postgres, mËt khÈu lµ admin, tªn c¬ së d÷ liÖu lµ data, m¸y chñ lµ
localhost vµ cæng kÕt nèi lµ 5432, ta sö dông c©u lÖnh nh− sau:
CONNECTION “user=postgres password=admin dbname=data host=localhost port=5432”
− CONNECTIONTYPE
[local/sde/ogr/postgis/oraclespatial/wms]: KiÓu kÕt nèi, gi¸ trÞ mÆc
®Þnh lµ local.
− DATA [filename]/[sde parameters][postgis table/ column]
[oracle table/column]: Lùa chän lÊy c¬ së d÷ liÖu tõ ®©u: trong ®Ò tµi
lÊy c¬ së d÷ liÖu tõ addin PostGIS, khi ®ã c©u lÖnh lµ:
DATA “collumname from tablename”
VÝ dô sau thÓ hiÖn 1 LAYER cã tªn song, kiÓu hiÓn thÞ lµ ®−êng th»ng,
chÕ ®é bËt, kiÓu kÕt nèi lµ postgis, kÕt nèi th«ng qua m¸y chñ côc bé,
tªn cë së d÷ liÖu lµ yenbai, tªn ®¨ng nhËp lµ postgres, mËt khÈu lµ
admin, lÊy d÷ liÖu tõ b¶ng song1, cét the_geom, tªn chó thÝch lÊy tõ file
Song1.shp...
LAYER
NAME "song1"
TYPE line
STATUS on
CONNECTIONTYPE postgis
CONNECTION “host=localhost dbname=yenbai user=postgres
password=admin”
DATA “the_geom from song1”
CLASS
Name 'Song1.shp'
COLOR 165 250 255
OUTLINECOLOR 0 0 0
END # CLASS
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 77 Tin häc Tr¾c ®Þa K47
END # LAYER
IV.5.2 ThiÕt lËp th«ng sè cho CartoWeb
Trªn Client: cµi ®Æt th«ng sè trong file client.ini ë th− môc client_conf.
Sau ®©y lµ c¸c th«ng sè c¬ b¶n ®−îc vÝ dô qua file client.ini cña ®å ¸n:
CÊu h×nh ®¨ng nhËp vµo CartoServer
− cartoclientBaseUrl: §−êng dÉn gèc cña CartoClient
− mapId = string: tªn b¶n ®å
− initialMapStateId = string: Khëi t¹o tr¹ng th¸i b¶n ®å.
Qu¶n lý cÊu h×nh Project:
− showProjectChooser = true/false: Chän hiÓn thÞ hay kh«ng hiÓn
thÞ 1 danh s¸ch c¸c ®Ò ¸n ®Ó lùa chän.
− availableProjects = list: Danh s¸ch c¸c ®Ò ¸n ®Ó lùa chän. NÕu
kh«ng cã c©u lÖnh nµy, tÊt c¶ c¸c ®Ò ¸n sÏ ®−îc sö dông.
CÊu h×nh c¸c Plugins:
− loadPlugins = list: Danh s¸ch c¸c plugin n¹p thªm vµo. PhÇn lín
c¸c plugin phÝa client muèn sö dông ®−îc ph¶i cã 1 plugin t−¬ng øng ë
phÝa server. Danh s¸ch nµy cã trong file .ini ë trong th− môc
server_conf.
VÝ dô: loadPlugins = exportCsv, outline, layerReorder, mapOverlay
CÊu h×nh ng«n ng÷:
− defaultLang = string: ng«n ng÷ mÆc ®Þnh, chØ cã c¸c ng«n ng÷
®−îc ký hiÖu theo chuÈn ISO míi cã thÓ sö dông. (en, fr, vi, ru...)
VÝ dô: defaultLang = vi, khëi t¹o øng dông víi ng«n ng÷ lµ tiÕng ViÖt
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 78 Tin häc Tr¾c ®Þa K47
− langList = list: Danh s¸ch c¸c ng«n ng÷ cã thÓ sö dông. Danh
s¸ch c¸c ng«n ng÷ nµy cã trong th− môc locale cña th− môc gèc
CÊu h×nh c¸c c«ng cô:
− initialTool: Khëi t¹o c«ng cô, c¸c c«ng cô cã thÓ dïng lµ zoomin,
zooout, pan, query, distance, surface.
− toolbarRendering: HiÓn thÞ c¸ch tr¶ vÒ biÓu t−îng (icon) cña c¸c
c«ng cô cã trªn toolbar. C¸c gi¸ trÞ cã thÓ sù dông lµ ‘radio’, ‘outline’,
‘swap’.
− toolPickerOn: Më c¸c c«ng cô, gi¸ trÞ true nÕu më, false nÕu
®ãng.
CÊu h×nh m· hãa:
− EncoderClass.config: Chän cÊu h×nh m·.
− EncoderClass.output: Chän cÊu h×nh m· ®Çu ra
VÝ dô: EncoderClass.config= EncoderUTF
EncoderClass.output= EncoderUTF
víi ®å ¸n cÇn hiÓn thÞ th«ng tin tiÕng ViÖt, v× vËy lùa chän code lµ UTF
PhÝa Server, cµi ®Æt th«ng sè trong file server.ini ë th− môc server_conf.
C¸c th«ng sè phÝa Server ®−îc cµi ®Æt t−¬ng tù phÝa Client, ngoµi ra cã thÓ cµi
®Æt thªm chi tiÕt mét sè plugin, líp hiÓn thÞ ban ®Çu... tïy theo ý muèn cña
ng−êi qu¶n trÞ. C¸c th«ng sè vÒ líp hiÓn thÞ trªn øng dông ®−îc cÊu h×nh trong
file layer.ini, trªn file nµy, ta cã thÓ cÊu h×nh c¸c yÕu tè nh− tªn líp, c¸c líp
con, ID cña líp, nh·n cña líp...
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 79 Tin häc Tr¾c ®Þa K47
IV.6 ChØnh söa giao diÖn ng−êi dïng
Giao diÖn øng dông ®−îc chØnh söa b»ng viÖc thay ®æi c¸c th«ng sè vµ
thay ®æi giao diÖn trªn c¸c file mÉu (template) cña trang web, th«ng qua viÖc
söa ®æi bè côc c¸c template nµy, ng−êi dïng cã thÓ thay ®æi:
− Giao diÖn trang chÝnh:
ChØnh söa file client.tpl trong th− môc “templates”, thay ®æi bè côc
trang web b»ng c¸ch söa ®æi vÞ trÝ cña c¸c khèi div.
− Giao diÖn c¸c thanh c«ng cô phô trî hiÓn thÞ b¶n ®å:
ChØnh söa file taskbar.tpl trong th− môc gèc.
Ngoµi ra, trang web còng cã thÓ thay ®æi ng«n ng÷ hiÓn thÞ b»ng c¸ch
thay ®æi c¸c thÎ cã trong c¸c file *.po trong th− môc “po”. C¸c file dïng cho
viÖc thay ®æi ng«n ng÷ lµ: client.po, client.en.po, server.yenbai.po, yenbai.po,
yenbai.en.po ...
Trong c¸c file nµy, c¸c thÎ ®−îc ®Þnh nghÜa víi c¸c tªn gäi riªng ®· ®Æt
cho nã trong c¸c file cÊu h×nh vµ file mÉu cña ®Ò ¸n, øng víi mçi thÎ, ta cã thÓ
thay ®æi ký tù hiÓn thÞ ®Ó tiÖn cho viÖc sö dông theo ng«n ng÷ mong muèn.
CÇn chó ý, ng«n ng÷ tiÕng ViÖt muèn hiÓn thÞ ®−îc ph¶i ®−îc sö dông bé gâ
UTF
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 80 Tin häc Tr¾c ®Þa K47
IV.7 Mét sè h×nh ¶nh demo øng dông b¶n ®å trùc tuyÕn
Giao diÖn trang b¶n ®å, víi phÇn xem, tra cøu th«ng tin b¶n ®å theo líp
Giao diÖn víi phÇn ®æi vÞ trÝ líp (thay ®æi thø tù hiÓn thÞ cña c¸c líp)
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 81 Tin häc Tr¾c ®Þa K47
Giao diÖn víi phÇn ghi chó thÝch
Giao diÖn víi phÇn tra cøu th«ng tin...
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 82 Tin häc Tr¾c ®Þa K47
KÕt luËn, kiÕn nghÞ vµ ®¸nh gi¸
Nh÷ng kÕt qu¶ ®¹t ®−îc
§· øng dông thµnh c«ng c«ng nghÖ GIS vµo gi¶i quyÕt bµi to¸n x©y
dùng b¶n ®å trùc tuyÕn trªn c«ng nghÖ web, cho phÐp truy suÊt th«ng tin tõ
xa.
§Ò tµi ®· gi¶i quyÕt vÒ c¬ b¶n c¸c vÊn ®Ò ®Æt ra.
Khai th¸c thµnh c«ng hÖ qu¶n trÞ CSDL m· nguån më (PostgreSQL) víi
d÷ liÖu kh«ng gian ®Ó qu¶n lý c¸c ®èi t−îng h×nh häc.
X©y dùng thµnh c«ng mét Website b¶n ®å trùc tuyÕn cã ®Çy ®ñ c¸c
chøc n¨ng yªu cÇu:
− Cã c¸c c«ng cô ®iÒu khiÓn mµn h×nh, nh−: phãng to, thu nhá,
pan, fit view, print, quay vÒ h×nh ¶nh tr−íc, tíi h×nh ¶nh sau, ®Þnh vÞ
®iÓm gi÷a,…
− Cã c¸c c«ng cô ®iÓu khiÓn líp b¶n ®å (Layer): C¸c layer ®−îc
s¾p xÕp theo thø tù ®Þnh s¼n vµ cã c¸c c«ng cô tïy biÕn vÞ trÝ còng nh−
t¾t më theo yªu cÇu ng−êi sö dông.
− Cã mµn h×nh b¶n ®å thu nhá (Overview)
− Cã c«ng cô hiÖn thÞ chó gi¶i (Legend) c¸c ký hiÖu vµ h×nh thøc
hiÖn thÞ c¸c líp d÷ liÖu.
− Cã phÇn hiÓn thÞ tû lÖ vµ täa ®é.
− C¸c c«ng cô t×m kiÕm theo c¸c th«ng tin vµ liÖt kª ®èi t−îng trªn
b¶n ®å theo khung nh×n hiÖn t¹i.
H−íng ph¸t triÓn
Trong t−¬ng lai øng dông cã thÓ ph¸t triÓn hoµn thiÖn h¬n nh−:
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 83 Tin häc Tr¾c ®Þa K47
− Më réng b¶n ®å, ¸p dông cho d÷ liÖu lín h¬n
− Më réng thªm cho ng−êi sö dông cã thÓ lùa chän cë së d÷ liÖu
hiÓn thÞ. (Cã thÓ chän b¶n ®å cña c¸c thµnh phè kh¸c nhau chø kh«ng
ph¶i lµ d÷ liÖu mÆc ®Þnh nh− hiÖn t¹i)
− TÝch hîp thªm qu¶n trÞ d−íi d¹ng tµi kho¶n ®¨ng nhËp, ®Ó dÔ
dµng qu¶n lý sè l−îng vµ dung l−îng truy cËp vµo øng dông b¶n ®å,
nh»m ng¨n chÆn viÖc ¸ch t¾c ®−êng truyÒn do cã qu¸ nhiÒu ng−êi truy
cËp vµo c¬ së d÷ liÖu, n©ng cao tèc ®é cho øng dông.
H−íng ph¸t triÓn míi:
T−¬ng lai, cã thÓ thµnh lËp øng dông ë phÝa client trªn hÖ ®iÒu hµnh
Windows Mobile dïng cho Pocket PC. C«ng nghÖ Internet kh«ng d©y trong
t−¬ng lai sÏ ®−îc triÓn khai réng ë n−íc ta, v× thÕ h−íng ®i nµy sÏ n©ng kh¶
n¨ng di ®éng cña øng dông b¶n ®å trùc tuyÕn trë nªn rÊt cao.
KÕt luËn chung
Mét trong nh÷ng môc tiªu c¬ b¶n cña viÖc ph¸t triÓn kinh tÕ, x· héi vµ
hiÖn ®¹i hãa ®Êt n−íc lµ ph¶i ®−a tù ®éng hãa, ®−a øng dông c«ng nghÖ th«ng
tin vµo s¶n xuÊt. §Ó ®¹t ®−îc môc tiªu ®ã, tr−íc tiªn cÇn øng dông c«ng nghÖ
th«ng tin vµo trong c¸c c¬ quan Nhµ n−íc ®Ó t¨ng nhanh tèc ®é x©y dùng, xö
lý c¸c th«ng tin cÇn thiÕt.
C¸c tæ chøc chÝnh phñ tõ c¸c c¬ quan Trung −¬ng ®Õn ®Þa ph−¬ng cã
thÓ sö dông hÖ thèng th«ng tin ®Þa lý nh− mét c«ng cô ®Ó qu¶n lý ®Êt ®ai, tµi
nguyªn thiªn nhiªn, qu¶n lý th«ng tin m«i tr−êng, gi¶i quyÕt c¸c vÊn ®Ò x· héi
vµ c¬ së h¹ tÇng. C¸c tæ chøc kinh tÕ cã thÓ sö dông c¸c th«ng tin ®Þa lý ®Ó
qu¶n lý c«ng viÖc kinh doanh, n©ng cao n¨ng lùc c¹nh tranh vµ tiÕp thÞ. Céng
®ång d©n c− cã thÓ sö dông hÖ thèng th«ng tin ®Þa lý ®Ó tra cøu th«ng tin.
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 84 Tin häc Tr¾c ®Þa K47
HÖ thèng th«ng tin ®Þa lý (GIS) lµ mét lÜnh vùc ®ang cã sù ph¸t triÓn
m¹nh mÏ vµ v−ît bËc trªn thÕ giíi. GIS ®ang lµ mét c«ng cô h÷u Ých cho c¸c
c¬ quan ChÝnh phñ, c¸c tæ chøc kinh tÕ vµ céng ®ång trong viÖc hç trî ra
quyÕt ®Þnh vÒ sö dông tµi nguyªn, m«i tr−êng, qu¶n lý c¬ së h¹ tÇng vµ tra cøu
th«ng tin. Tõ nh÷ng b¶n ®å giÊy nh− tr−íc ®©y, th«ng tin ®Þa lý ®· vµ ®ang
®−îc chuyÓn ®æi sang c¸c th«ng tin d¹ng sè, nay l¹i ®−îc ®−a lªn trªn m¹ng
Internet, tiÕt kiÖm rÊt nhiÒu chi phÝ cho viÖc in Ên, xuÊt b¶n b¶n ®å vµ c«ng
khai hãa th«ng tin GIS. ViÖc ph¸t triÓn cña c«ng nghÖ phÇn mÒm, n©ng cao
dung l−îng l−u tr÷ vµ sù gi¶m gi¸ thµnh s¶n xuÊt liªn tôc cña phÇn cøng m¸y
tÝnh ®· lµm cho hÖ thèng th«ng tin ®Þa lý tr−íc ®©y chØ thùc hiÖn trªn nÒn t¶ng
c¸c hÖ thèng phÇn cøng lín vµ ®¾t tiÒn nay cã thÓ sö dông ®−îc trªn c¸c m¸y
tÝnh c¸ nh©n vµ cã thÓ khai th¸c trùc tuyÕn mét c¸ch réng r·i vµ phæ cËp trªn
Internet.
¸p dông CartoWeb cho viÖc x©y dùng vµ triÓn khai c¸c dÞch vô b¶n ®å
trùc tuyÕn trªn c¬ së m· nguån më lµ mét øng dông thiÕt thùc, ®i theo xu
h−íng chung hiÖn nay ®¸p øng nhu cÇu tra cøu th«ng tin vµ khai th¸c hÖ thèng
th«ng tin ®Þa lý trªn Internet.
Mét lÇn n÷a, em xin göi lêi c¸m ¬n ®Õn PGS, TS Lª TiÕn V−¬ng cïng
Th.S NguyÔn TiÕn H−ng, còng nh− c¸c anh trong phßng Qu¶n lý M¹ng th«ng
tin vµ C¬ së d÷ liÖu – Trung t©m th«ng tin Bé tµi nguyªn vµ M«i tr−êng ®·
h−íng dÉn tËn t×nh trong suèt thêi gian em thùc tËp vµ lµm b¸o c¸o tèt nghiÖp.
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 85 Tin häc Tr¾c ®Þa K47
Tµi liÖu tham kh¶o
Tµi liÖu tiÕng Anh
[1]. CartoWeb Documentation 3.3.0 Edition - Cartoweb.org - 30/08/2006
[2]. Getting started with CartoWeb - Cartoweb.org - 15/09/2006
[3]. What is ArcGIS ? – ESRI Press - 2002
[4]. Using ArcIMS – ESRI Press – 2002
Tµi liÖu tiÕng ViÖt
[5]. Vâ Quang Minh, NguyÔn Hång §iÖp , TrÇn Ngäc Trinh, TrÇn V¨n
Hïng - HÖ thèng th«ng tin ®Þa lý - 1998
[6]. PGS.TS L©m Quang §èc (§HSP Hµ Néi) - B¶n ®å häc ®¹i c−¬ng -
2004
[7]. Tæng côc §Þa chÝnh - B¸o c¸o khoa häc – X©y dùng hÖ quy chiÕu vµ hÖ
thèng ®iÓm to¹ ®é quèc gia – 2000
[8]. PTS. Ph¹m Träng M¹nh - PTS. Ph¹m Väng Thµnh - C¬ së hÖ thèng
th«ng tin ®Þa lý (GIS) trong quy ho¹ch vµ qu¶n lý ®« thÞ - NXB X©y dùng Hµ
Néi, 1999
[9]. Lª Huúnh - Lª Ngäc Nam - B¶n ®å häc chuyªn ®Ò - NXB Gi¸o dôc,
2001
C¸c trang web liªn quan
[10]. DÞch vô b¶n ®å trùc tuyÕn CIRENet Map Online
[11]. Trang web vÒ WebServer
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 86 Tin häc Tr¾c ®Þa K47
[12]. ESRI ViÖn nghiªn cøu hÖ thèng m«i tr−êng Hoa Kú
[13]. Cartoweb.org - HÖ th«ng tin ®Þa lý n©ng cao cho m¹ng m¸y tÝnh
[14]. Website GIS cña Côc B¶o vÖ M«i tr−êng:
[15]. Website GIS cña chÝnh phñ:
[16]. Trang web b¶n ®å trùc tuyÕn cña c«ng ty Dolsoft:
[17]. Trang web t×m ®Þa ®iÓm cña nhãm VietNamHomes:
[18]. Cæng th«ng tin ®Þa lý cña Mü
[19]. Cæng th«ng tin ®Þa lý cña EU
§å ¸n tèt nghiÖp chuyªn ngµnh Tin häc Tr¾c ®Þa
Hoµng Anh §øc 87 Tin häc Tr¾c ®Þa K47
Phô lôc
C¸c h×nh vÏ trong ®å ¸n
STT H×nh Trang
1 2.1. BiÓu thÞ cña bÒ mÆt tr¸i ®Êt lªn mÆt ph¼ng 12
2 2.2. M« h×nh c¸c líp d÷ liÖu trong GIS 16
3 2.3 C¸c phÐp ph©n tÝch kh«ng gian 19-20
4 2.4. KiÕn tróc 3 tÇng (3-tier) 21
5 2.5. KiÕn tróc n-tier gi÷a c¸c hÖ thèng 23
6 2.6. KiÕn tróc n-tier t−¬ng t¸c gi÷a client víi c¸c hÖ thèng 24
7 2.7. CÊu tróc hÖ c¬ së d÷ liÖu 32
8 2.8. MapServices 34
9 3.1. KiÕn tróc ArcIMS 35
10 3.2. KiÕn tróc GeomediaWebMap Server 36
11 3.3. KiÕn tróc UMN MapServer 37
12 3.4. KiÕn tróc Geoserver 38
13 3.5, 3.6, 3.7. Trang web b¶n ®å trùc tuyÕn cña Trung t©m th«ng
tin – Bé tµi nguyªn m«i tr−êng. 39 - 40
14 3.8. Web GIS cña chÝnh phñ 41
15 3.9. Cæng th«ng tin ®Þa lý cña Mü 43
16 3.10. Cæng th«ng tin ®Þa lý cña EU 43
17 3.11. Trang web 45
18 3.12. Xu h−íng kh«ng kÕ thõa 46
19 3.13. Xu h−íng kÕ thõa 48
20 4.1. S¬ ®å khèi chøc n¨ng hÖ thèng 50
21 4.2. M« h×nh chung cña hÖ thèng øng dông GIS 58
22 4.3. C¸c b−íc cµi ®Æt WAMP5 60-61
23 4.4. Giao diÖn trang chñ localhost sau khi cµi ®Æt WAMP5 62
24 4.5. C¸c b−íc cµi ®Æt PostgreSQL 61-63
25 4.6. Giao diÖn PgAdmin III cña PostgreSQL 8.2.4 63
26 4.7. C¸c b−íc cµi ®Æt PostGIS 64-65
27 4.8. C¸c b−íc cµi ®Æt CartoWeb 3.3 66-67
28 4.9. Giao diÖn trang chñ CartoWeb 3.3.0 67
Các file đính kèm theo tài liệu này:
- Tin học trắc địa- Xây dựng ứng dụng bản đồ trực tuyến trên công nghệ CartoWeb.pdf