- Sau khi đã cài đặt thành công Mapserver và Pmapper trên
máy tính, người dùng có thể xem pmapper với dữ liệu demo có sẵn. Tuy nhiên, để
hiểu rõ hơn về Pmapper, người dùng nên tự đưa dữ liệu của mình vào. Việc đưa dữ
liệu shapfile vào cũng khá đơn giản, chỉ việc hiệu chỉnh một số file cấu hình
trong Pmapper. Cụ thể là các file : mapfile, config_default.xml, và
config_uilayout.xml
- Dữ liệu dùng để sử dụng trong phần này là dữ liệu hành
chính tỉnh Tây Ninh. Có thể download tại đây.
- Mapfile là file rất quan trọng của Pmapper. Nó xác định
mối quan hệ giữa các đối tượng và chỉ cho Mapserver biết nơi mà dữ liệu được
lấy ra và xác định những thứ sẽ được vẽ ra. Mapfile khai báo các yếu tố được
thể hiện trên Pmapper như các thành phần của web, các ký hiệu, màu sắc, layer,
scalebar, dữ liệu sử dụng, …Cụ thể như sau :
+ Phần MAP là nơi khai báo các thành phần liên quan đến bản
đồ như phạm vi bản đồ, đơn vị sử dụng, nơi lấy dữ liệu, phép chiếu,…Những phần
quan trọng mà người dùng nên khai báo là phạm vi bản đồ, đơn vị, nơi lấy dữ
liệu. Phạm vi bản đồ (EXTENT) khai báo tọa độ 2 đỉnh của hình chữ nhật bao bản
đồ. Được viết theo thứ tự minX, minY, maxX, maxY. Các con số này có thể được
lấy thông qua ArcGIS. Click phải vào layer, chọn Properties, chọn tab Source.

Vi dụ, khai báo phần phạm vi như sau : EXTENT 533542.547 1212418.96 607917.195 1303092.138
Đơn vị trong bản đồ này là mét, vì vậy nó sẽ là : UNITS meters
Nơi lấy dữ liệu (SHAPEPATH) khai báo đường dẫn đến thư mục
chứa shapefile, nếu shape lưu ở thư mục TayNinh thì có thể ghi như sau : SHAPEPATH
"C:/ms4w/apps/pmapper/TayNinh".Lưu ý là sử dụng dấu “
/ ” không sử dụng dấu “ \ “.
Đối phần phép chiếu, nếu biết phép chiếu của bản đồ thì khai
báo, nếu không thì không cần khai báo, Pmapper sẽ giả định là tất cả các đối
tượng đều cùng phép chiếu. Các phần còn lại không cần phải chỉnh sửa.
+
Phần WEB, hai thứ quan trọng cần khai báo là IMAGEPATH và IMGAURL. IMAGEPATH
chỉ đường dẫn đến nơi lưu ảnh, tại vì Mapserver sẽ đọc mapfile và tạo ra ảnh
của bản đồ. Ảnh này sẽ được lưu vào trong thư mục được khai báo trong
IMAGEPATH. IMAGEURL chỉ cho maperver biết ảnh bản đồ được lưu ở đâu, để nó lấy
ra và thể hiện lên trình duyệt web. Ví dụ, có thể khai báo như sau : IMAGEPATH "/ms4w/tmp/ms_tmp/"
IMAGEURL
"/ms_tmp/"
+ Phần REFERENCE báo ảnh tham chiếu của bản đồ chính. Ảnh
này sẽ giúp người dùng dễ dàng xác định vị trí khung nhìn của mình trên bản đồ
khi phóng to bản đồ. Hai phần quan trọng nhất là EXTENT (khai báo phạm vị như
trong phần trên) và IMAGE (chỉ ảnh dùng để thể hiện). Chẳng hạn, EXTENT
533542.547 1212418.96 607917.195 1303092.138
IMAGE
"../../images/tayninh.jpg"
+ Phần LAYER, đây là nơi khai báo các layer trên bản đồ cũng
như việc thể hiện chúng như thế nào. Đối với dữ liệu này, shapefile có tên là
tayninh.shp nên chổ DATA khai báo là DATA
"tayninh". Trong
METADATA khai báo các trường trả lại khi thực hiện tìm kiếm. Cụ thể,
METADATA
"DESCRIPTION" "Tay
Ninh"
"RESULT_FIELDS" "Ten"
"RESULT_HEADERS" "Ten"
END # Metadata
Sẽ trả về tên huyện khi tìm kiếm.
Để thể hiện mỗi huyện là 1 màu và tên của từng huyện trên
bản đồ. Người dùng phải khai báo LABELITEM và CLASSITEM.
LABELITEM
"Ten"
CLASSITEM "Ten"
Chẳng hạn, khai báo trong huyện Bến Cầu như sau :
CLASS
Name "Ben Cau"
EXPRESSION "Ben Cau"
COLOR 195 194 252
LABEL
TYPE bitmap
SIZE small
POSITION auto
COLOR 0 255 0
END
OUTLINECOLOR 195 194 252
END # Class
- File config_default.xml và config_uilayout.xml được sửa
giống như nhau. Cụ thể như sau,
+ Phần <map> khai báo tên mapfile và các nhóm và layer
thể hiện. Ví dụ,
<mapFile>tayninh.map</mapFile>
<categories>
<category name="cat_dialychung">
<group>tayninh</group>
</category>
</categories>
<allGroups>
<group>tayninh</group>
</allGroups>
<defGroups>
<group>tayninh</group>
<defGroups>
+ Phần <searchlist> khai báo tên trường sử dụng trong
việc tìm kiếm đối tượng. Có thể sửa như sau,
<searchlist
version="1.0">
<dataroot>$</dataroot>
<searchitem name="Ten" description="Huyen">
<layer type="shape" name="tayninh">
<field type="s"
name="Ten" description="Huyen" wildcard="0" />
</layer>
</searchitem>
</searchlist>
Ngoải ra, người dùng có thể tham khảo chỉnh sửa một số yếu
tố trên giao diện như các button, màu sắc,…trong file js_config.php.
OK, khởi động Pmapper, kết quả bản đồ hành chính Tây Ninh sẽ
xuất hiện.

NNS
Hên quá, mình mới tìm hiểu về mapserver, đang bí về việc tạo file *.map thì gặp được bài này của bạn. Nó giúp mình hiểu rõ hơn các thành phần trong file map rất nhiều. Nhưng bạn cho mình hỏi một cái nữa là file map này mình phải tự tạo (bằng notepad chẳng hạn) hay có tool nào để xuất ra không bạn. Cảm ơn bạn nhiều.
Trả lờiXóaÀ, sao mình cài Pmapper không được bạn ơi.Nó báo vầy nè:
"Forbidden
You don't have permission to access /pmapper/ on this server."
Bạn giúp mình nha.
Nếu được bạ gửi qua mail cho mình:
soiqualang.chentreu@gmail.com
Chào chủ top! theo mình được biết ở đây chỉ là hướng dẫn tô màu cho bản đồ 1 cách thủ công và ko linh hoạt trong trường hợp người dùng muốn thay đổi màu sắc hiển thị cho từng dùng. Vậy chủ top có thể hướng dẫn tô màu 1 cách tự động linh hoạt ko? thanks
Trả lờiXóaMình đang gặp rắc rối trong vấn đề tô màu tự động cho bản đồ, mình thực hiện trên nền mapserver + postgis+ openlayers
Trả lờiXóaMong chủ top có thể chia sẻ và chỉ giúp mình về tô màu tự động , mình rất mong được sự giúp đỡ này. có j mail lại cho mình nha: lehuekute@gmail.com
Thanks chủ top nhiều.chúc chủ top vạn sự như ý