Trang

Thứ Năm, 26 tháng 4, 2012

Nội suy đường đồng mức


Nội suy đường đồng mức rất quan trọng trong việc thành lập bản đồ. Khi đo độ cao, người ta không thể nào đo hết tất cả các điểm trên mặt đất mà chỉ đo một số điểm điển hình. Để thể hiện bề mặt đó, dĩ nhiên phải tiến hành nội suy bề mặt. Trên sơ sở bề mặt đó, đường đồng mức sẽ được vẽ ra. Hầu như phần mềm bản đồ hay GIS nào cũng hỗ trợ việc nội suy bề mặt và vẽ đường đồng mức. Trong phần này, tôi chỉ nói về nội suy bề mặt trên ArcGIS. Giả sử tôi có dữ liệu các điểm độ cao như sau :
Để thực hiện nôi suy, thanh công cụ 3D Analyst, được bật lên (View/Toolbars/3D Analyst). Trên thanh công cụ này, vào Interpolate to Raster, bạn sẽ thấy có các mục Inverse Distance Weighted, Spline hay Kriging. Đó là các thuật toán dùng để nội suy. Mỗi thuật toán có cách tính cũng như các thông số nhập khác nhau. Đơn giản nhất là thuật toán IDW. Do đó, tôi sẽ sử dụng cái này, còn 2 thuật toán còn lại sẽ tìm hiểu sau bởi chúng hơi phức tạp. Bấm vào mục Inverse Distance Weighted thì menu sao sẽ hiện ra.
Chỗ Input points khai báo tên layer sử dụng để nội suy. Z value field khai bao trường độ cao. Power khai báo số mủ của hàm nghịch đảo khoảng cách. Search radius type chọn loại bán kính tiềm kiếm. Bán kính tiềm kiếm khai báo phạm vi mà những giá trị trong đó được xem là lân cận với điểm cần tính. Những điểm lân cận này được dùng để tính giá trị của điểm cần tính. Có hai loại có thể khai báo trong phần này là Variable hay Fixed.
Fixed sử dụng khoảng cách để xác định một vòng tròn mà những điểm nằm trong đó là những điểm lân cận. Ngoài ra còn cần thêm thông số số điểm tối thiểu. Số điểm tối thiểu là số điểm điểm nằm trong vòng tròn đó dùng để tính. Nếu trong vòng tròn đó, số điểm nhỏ hơn số điểm cần tính thì vòng tròn đó sẽ được mở rộng đến khi có đủ số điểm. Bán kính và số điểm này sẽ cố định khi tính trên tất cả các vị trí cần tính.
Variable sử dụng số điểm để ước tính giá trị điểm cần tính. Chương trình sẽ tìm những điểm xung quanh điểm cần tính đến khi đủ số điểm như khai báo thì sẽ thực hiện tính toán. Ngoài ra, còn có thông số maximum distance, thông số này sẽ giới hạn phạm vi tìm kiếm số điểm. Nếu số điểm chưa đủ nhưng vượt quá maximum distance thì không tìm nữa mà sẽ thực hiện tính luôn.
Use barrier polylines là tùy chọn hỏi người dùng có dùng barrier không. Barrier là một tập những đường phân chia để giới hạn phạm vi tiềm kiếm. Như các đường phân chia đất liền với sông, đường phân chia các dạng địa hình,…
Output Cell Size khai báo kích thước cell của ảnh raster tạo ra. Thường để mặc định.
Output Raster khai báo đường dẫn đến thư mục chứa ảnh raster kết quả.
Click Ok để thực hiện, tùy khu vực lớn hay nhỏ, các thông số nhập mà thời gian ước tính nhanh hay chậm. Kết quả như hình bên dưới.
Để vẽ các đường đồng mức, trên thanh 3D Analyst, chọn Surface Analysis/Contour. Giao diện sẽ xuất hiện
Input surface khai báo ảnh raster nội suy ở trên.
Phần Contour definition định nghĩa một số yếu tố của đường đồng mức như khoảng cao đều (contour interval), đường đồng mức cái (base contour). Z factor sử dụng để hiệu chỉnh đơn vị đường đồng mức, chẳng hạn, nếu dữ liệu bản đồ ở đơn vị là mét, muốn vẽ đường đồng mức đơn vị ở feet thì z factor là 3.28 (vì 1 mét = 3.28 feet ^_^).
Output features khai báo đường dẫn lưu đường đồng mức tạo ra. Click Ok, kết quả như sau
Vấn đề ở đây là làm thế nào phần mềm vẽ được đường đồng mức như vậy từ dữ liệu raster?  Raster gồm nhiều pixel hình vuông mà sao đường đồng mức lại trơn vậy ?
Các vấn đề này sẽ giải quyết sau.
NNS

Thứ Tư, 25 tháng 4, 2012

Hiển thị dữ liệu PostgreSQL - PostGIS trong Pmapper


PostgreSQL và PostGIS có thể tải tại trang chủ của chúng. Người dùng chỉ việc vào Google vào gõ vào chữ PostgreSQL hoặc PostGIS sẽ dễ dàng tìm thấy trang chủ của chúng. Có nhiều phiên bản PostgreSQL cũng như nhiều phiên bản PostGIS. Ở trên các trang web đó có ghi cụ thể phiên bản nào của PostGIS có thể dùng với phiên bản nào của PostgreSQL. Nghe có vẻ phức tạp, nhưng trên trang web sẽ cung cấp thông tin đầy đủ cho người dùng. Tôi thì quen dùng PostgreSQL 8.2 và phiên bản PostGIS 1.4. À mà để đơn giản khi cài đặt, người dùng nên tải các gói exe trên Windows. Khi đó bạn chỉ việc Click Next, khai báo các thông số và cài đặt. Nếu ai muốn thử thách hơn chút thì tải gói binary về cài. Hướng dẫn thường đi kèm theo file tải về. Đối với các phiên bản PostgreSQL 8.3 trở lên thì cài đặt đơn giản hơn, còn đối với phiên bản 8.2 đòi hỏi ổ đĩa cài đặt phải ở NTFS. Thường thì ổ đĩa của bạn ở FAT32 hay FAT, muốn chuyển sang NTFS cũng đơn giản thôi. Vào Start/Run. Gõ lệnh cd/ để trở về thư mục gốc là ổ C. Gõ vào lệnh convert C:/fs:NTFS. Tiếp theo, sẽ yêu cầu bạn nhập các chữ Y là Yes hoặc N là No. Sau khi hoàn tất khởi động lại máy, đợi máy tự chuyển đổi là xong. Sau đó, cài PostgreSQL bình thường. Sau đó cài PostGIS.
Sau khi cài đặt xong, người dùng có thể vào pgAdmin III để kiểm tra kết quả. Gaio diện như sau
Như hình trên, khi cài PostGIS tôi tạo CSDL tayninh, bạn nhìn chỗ Functions, nó có 684 hàm, điều đó có nghĩa là PostGIS đã cài đặt thành công, các hàm đó là các hàm hỗ trợ xử lý các vấn đề liên quan đến đối tượng không gian.
Vấn đề bây giờ là đưa dữ liệu vào CSDL và hiển thị dữ liệu đó lên Pmapper. Ở đây tôi sử dụng dữ liệu shapefile đưa vào CSDL. Trong CSDL, nó lưu tất cả các đối tượng kể cả đối tượng không gian ở dạng text. Do đó, cần chuyển đổi các đối tượng này sang dạng text (.sql). Mở cửa sổ Command Prompt của PostgreSQL lên. Sử dụng lệnh sau để chuyển shapefile sang file .sql
shp2pgsql –D –c huyen huyen > huyen.sql
Với shapefile cần chuyển tên là huyen và nằm trong thư mục bin của PostgreSQL, nếu file nằm ở vị trí khác thì chỉ việc thêm đường dẫn trước tên file.
Khi đã có file huyen.sql, chỉ việc gõ vào dòng lệnh :
Psql –d tayninh –U postgres –f  huyen.sql
Dữ liệu sẽ được đưa vào trong CSDL tayninh.
Ở các phiên bản sau này của PostGIS, nó có hỗ trợ công cụ để đưa shapefile trực tiếp vào CSDL, người dùng chỉ việc Add shapefile vào, khai báo kết nối với CSDL và Import.
Thường tôi cài QuantumGIS (QGIS) để kiểm ra việc kết nối với CSDL, nếu bạn có cài QGIS thì có thể sử dụng nó để đưa shapefile vào CSDL.
Sau khi đã đưa dữ liệu vào thành công, bạn sẽ thấy tên dữ liệu của mình trong phần Tables, như ở hình trên, dữ liệu của tôi có tên là huyen.
Để pmapper có thể lấy dữ liệu trong CSDL hiển thị lên web thì đòi hỏi phải khai báo kết nối trong mapfile. Việc khai báo cũng rất đơn giản.
LAYER
  NAME "huyen"
  CONNECTIONTYPE POSTGIS
  CONNECTION "user=postgres password=nhatsinh dbname=tayninh host=localhost port=5432"
  DATA "the_geom from huyen USING UNIQUE gid"
  STATUS ON
  TYPE polygon
END

Chỗ CONNECTIONTYPE khai báo là postgis do dữ liệu được lấy từ đó. CONNECTION khai báo chuỗi kết nối bao gồm user, password, tên CSDL (dbname), host, port. Phần DATA khai báo cột chứa dữ liệu không gian, thường là cột the_geom (hoặc geom trong các phiên bản PostGIS sau này). USING UNIQUE gid là sử dụng gid để tăng tốc độ load dữ liệu. gid là trường khóa mặc địng khi bạn đưa shapefile vào CSDL. Để thể hiện mỗi huyện một màu và tên mỗi huyện, tôi thực hiện như đã đề cập ở phần trước. Kết quả như sau :
Kinh nghiệm : quá trình thực hiện như trên khá đơn giản. Nhưng tôi lại mất khá nhiều thời gian do gặp phải một vấn đề. Tôi sử dụng PostgreSQL phiên bản 9.1 và PostGIS 2.0 để kết nối với Mapserver 3.0.4. Trong Postgis 2.0 không còn hỗ trợ hàm geofromtext. Mà hàm này được sử dụng để vẽ đối tượng không gian từ text lưu trong CSDL, không có nó, các đối tượng không gian không được vẽ ra, và kết quả là pmapper không hiển thị được các huyện. Tôi kiểm tra kết nối, kiểm tra CSDL (bằng QGIS như tôi đã nói), kiểm tra mapfile nhưng không tìm được lỗi. Có lúc tưởng như bó tay, tôi chợt nhớ đến việc Mapserver có báo cáo lỗi cho người dùng thông qua file ms_error.txt. Người dùng chỉ việc khai báo dòng lệnh sau trong mapfile.

CONFIG "MS_ERRORFILE" "/ms4w/tmp/ms_error.txt"

Chỉ việc mở file đó lên xem, tôi đã phát hiện lỗi, vui mừng khó tả ^_^
NNS

Thứ Năm, 19 tháng 4, 2012

Hệ sau đại học vừa học vừa làm.

Đọc báo thấy hiện nay có hình thức đào tạo sau đại học hệ vừa học vừa làm. Thiệt là rất bất ngờ. Mà không những thạc sĩ, tiến sĩ cũng có đào tạo không chính quy luôn. Nói sơ qua về sự khác biệt giữa đại học – cao học – và trình độ tiến sĩ. Đại học trang bị cho sinh viên những kiến thức cơ bản nhất về lĩnh vực mà sinh viên theo học. Khi hoàn thành chương trình đào tạo, sinh viên có khả năng giải quyết được những vấn đề gặp phải trong lĩnh vực mình học. Nghĩa là tìm được cách giải quyết 1 vấn đề mà chỉ hiểu những nét cơ bản của bản chất của phương pháp mình thực hiện. Còn đối với chương trình đào tạo thạc sĩ, học viên sau khi hoàn thành sẽ có khả năng tự tìm hiểu, nghiên cứu 1 vấn đề, hiểu được vấn đề mình tìm hiểu (nói chung là chỉ tìm hiểu, vận dụng những cái có sẵn nhưng khác ở đại học là nắm vững các phương pháp được vận dụng giải quyết vấn đề). Còn đối với trình độ tiến sĩ, đòi hỏi phải làm ra một cái gì đó mới phục vụ cho khoa học. Mà muốn có cái mới đòi hỏi nghiên cứu sinh phải làm việc cật lực mới hy vọng có được. Không những vậy sau khi thành tiến sĩ vẫn phải tiếp tục cống hiến cho khoa học bằng các công trình nghiên cứu của mình.
Trở lại với đào tạo thạc sĩ, tiến sĩ hệ vừa học vừa làm. Học đại học hệ vừa học vừa làm so với đại học chính quy thế nào thì ai cũng biết rồi. Vậy thì thạc sĩ, tiến sĩ hệ vừa học vừa làm thì thế nào ? Tôi không biết. Mà hình như mỗi tỉnh đều có chỉ tiêu cử người đi học mà. Vậy tại sao cần phải học chương trình này ?
Dần dần thì ai cũng là thạc sĩ, tiến sĩ hết. Ôi những các danh xưng phù phiếm.
Thi 3 môn mà sao điểm tối đa có 20 điểm. Không hiểu nữa.
NNS

Thứ Ba, 17 tháng 4, 2012

Trò chơi thuở bé


Trò chơi thuở bé, anh hay kéo mo cau, chở em khắp ngõ vườn.
Cô bé mỹ miều cười run run bờ vai, tay ôm chắc vành mo.
Chiếc tàu mo nhỏ bé
Anh giả người phu xe
Hỏi : “Đi đâu bé à ?”
Em trả lời : “ Nhà em ở cuối thôn”
Mo cau anh lại kéo, làm vui cô bé nghèo.

Hôm nay tình cờ nghe lại bài nhạc này, khiến tôi nhớ lại những trò chơi thuở bé. Mặc dù bài nhạc hơi buồn nhưng nó gợi lên những kỷ niệm thời thơ ấu của tôi với những trò chơi dân gian giản dị.
Tôi còn nhớ hồi đó người ta hay trồng trầu và cau lắm, bởi vì hầu hết ai cũng ghiền ăn trầu mà. Những mo cau khô, tôi và mấy đứa hàng xóm lấy xuống, thường một đứa ngồi, một đứa kéo, cảm giác rất vui. Mà cũng may là ngày đó đường đất rất mịn chứ như đường đá sỏi bây giờ chắc tiêu quá.^_^
Ngoài ra còn một số trò chơi thú vị khác như năm mười đá banh, ô ăn quan, nhảy dây,…
Năm mười đá banh thực chất là trò chơi trốn tìm kết hợp với trái banh. Một người đi tìm, nhiều người trốn. Trái banh được đặt trong vòng tròn được vẽ trên mặt đất. Người đi tìm nếu thấy một đứa nào đó thì la lên : “xí bắt thằng gì đó” rồi chạy ra chạm vào trái banh. Nếu người trốn nhanh hơn, đá trái banh ra khỏi vòng thì có thể tiếp tục chạy trốn, người tìm phải lụm trái banh về đặt trong vòng và tiếp tục đi tìm. Khi 1 người bị bắt gọi là tử (chết). Và sẽ được cứu nếu có 1 người nào đó đá trái banh ra khỏi vòng. Nếu tất cả những người trốn đều tử thì người tử đầu tiên trở thành người tìm cho những người còn lại trốn.
Một trò chơi khác là nhảy dây. Nhảy dây mà cả con trai và con gái có thể chơi là quăng-lộn-chung (chui). Có 2 người giữ 2 đầu sợi dây, và sợi dây được nâng lên từng mức (đầu gối, thắt lưng,…). Những người còn lại có thể quăng người qua cộng dậy, lộn qua hay chui qua. Điểm thú vị nhất là khi cộng dây được đưa lên cao nhất, người chơi không thể quăng người tới, hay lộn cũng không tới. Khi đó, chỉ còn cách chui qua, nhưng nếu chui không khéo bị dây giật trúng thì sẽ tử. Một số đứa rất nhanh nhẹn, làm bộ chui qua, nhưng khi dây giật xuống, nó lập tức lộn người và thế là qua được. Nhưng nhiều khi hai đứa giữ dây không giật dây, thế là nó lộn không tới dây nên sẽ tử. Đây có thể xem là màn đấu trí vui nhộn. Nói không thể nào diễn tả được hết cái cảm giác háo hức. Chỉ những người chơi rồi mới hiểu.
Và còn rất nhiều trò thú vị khác nữa.
Nhưng một điều đáng buồn là bây giờ tôi ít thấy mấy đứa trẻ trong xóm chơi những trò chơi đó. Hầu như chúng chỉ làm bạn với game máy tính thôi. Theo thời gian, chắc sau này không còn ai biết về mấy trò chơi dân dã đó nữa. Thật đáng tiếc.
NNS
Hãy cùng thưởng thức Anniversary của Beethoven qua âm thanh của Music Box

Thể hiện dữ liệu ảnh raster pmapper


Việc khai báo dữ liệu ảnh raster trong pmapper rất đơn giản, chỉ việc khai báo trong mapfile như sau :
LAYER
  NAME "Vitritayninh"
  TYPE raster
  STATUS ON
  DATA "Vitritayninh.jpg"
  PROJECTION
    "init=epsg:3405"
  END
END #Layer
Với ảnh cần thể hiện tên là Vitritayninh.jpg và được lưu trong thư mục chứa shapfile. Tuy nhiên nếu bạn đã có một layer như đã thực hiện ở phần trên thì khi khai báo như vậy ảnh raster sẽ không thể hiện được. Điều này cũng dễ hiểu bởi extent của ảnh raster thường rất nhỏ và nằm ngoài extent khai báo của layer shapefile. Để xem extent của ảnh có thể sử dụng ArcGIS, click phải vào tên ảnh chọn Properties / Extent
Để mở rộng extent của ảnh bằng extent của dữ liệu shapefile để thể hiện thì có thể sử dụng ArcGIS. Các bước thực hiện đơn giản như sau :
+ Thêm cả dữ liệu ảnh và shapefile vào ArcMap
+ Mở thanh Georeferencing nếu nó chưa được mở (View / Georeferencing)
+ Trên thanh Georeferencing, chỗ Layer chọn tên ảnh trong TOC (ví dụ Vitritayninh.jpg).
+ Click phải vào tên shapefile, chọn Zoom to Layer.
+ Chỗ Georeferencing, click vào mũi tên xổ xuống, chọn Fit to Display, ảnh và shapefile sẽ gắn lại với nhau

+ Click vào button Add Control Points trên thanh Georeferencing, để thêm các điểm khống chế đã biết tọa độ. Ví dụ, ở đây là tọa độ 4 góc khung của phần extent của shapefile.
+ Sau khi đã thêm các điểm khống chế, click vào Georeferencing và chọn Update Georeferencing. Kết quả hiển thị như hình bên dưới
Như vậy là extent của ảnh đã được hiệu chỉnh phù hợp với extent của shapefile.
Khởi động pmapper, ảnh sẽ được hiển thị như sau
NNS

Thứ Năm, 12 tháng 4, 2012

Lỗi tô màu trong Microstation SE

Tôi không rành về Microstation lắm, nhưng hầu hết các bản đồ lại đều được lập trên Microstation nên cũng có tìm hiểu chút ít. Một cái lỗi nhỏ tôi gặp phải và tốn hết 1 tuần tìm cách giải quyết. Đó là lỗi khi bản đồ được tô màu, bạn chọn Fit View thì một số đối tượng biến mất : như khung bản đồ, chú giải, …Tôi cũng không biết tại sao có lỗi này, bởi vì bản đồ này là của người khác làm. Cụ thể, bản đồ như sau :


Như hình trên thì mặc dù khung bản đồ có, như nó đã bị biến mất khi Fit View, khi bạn phóng to lên, thì khung sẽ hiện ra.


Thật ra ý tưởng để giải quyết vấn đề này rất đơn giản. Cái khung biến mất chứng tỏ nó bị đè ở bên dưới. Do đó, chỉ việc đem level chứa khung lên trên là xong. Nhưng nếu bạn mới làm quen với Microstation thì quả thật không biết làm sao để đem level đó lên. Không giống như ArcGIS chỉ việc kéo layer lên trên.

Một cách đơn giản để làm là sử dụng Lusmap. Lusmap chạy trên nền Microstation, khởi động nó cũng giống như khởi động Famis. Chọn Ultilities -->
MDL Applications --> chọn nơi chứ Lusmap --> Ok. Giao diện của Lusmap sẽ hiện ra.




Tên bị sai Font là do tôi chưa chỉnh Font, muốn chỉnh font này cũng đơn giản thôi, nó được nói rất nhiều trên mạng.
Bạn để ý chỗ Level -30 và button Lên đầu. Tại đây, bạn có thể đưa 1 level lên trên hoặc xuống dưới tùy ý. Ví dụ, bạn để -30 và bấm button Lên đầu thì level 30 sẽ được đem xuống dưới, dấu “-“ chỉ sự đem xuống dưới, nếu không có dấu “-“ là đem lên trên. Sau khi chỉnh sửa, kết quả như sau ^_^:

                                                                                                                                                                                                                    NNS

Thứ Tư, 11 tháng 4, 2012

Thể hiện dữ liệu shapfile trên Pmapper


- 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

You raise me up

Không ồn ào như những bài của Kpop, you raise me up với giai điệu nhẹ nhàng, sâu lắng, có thể tạo cho người nghe những phút giây thật êm dịu, tránh khỏi những ồn ào, xô bồ của cuộc sống.

Khi tôi tuyệt vọng, tôi cảm thấy mệt mỏi, chán chường, những rắc rối đến đè nặng lên trái tim tôi
. Tôi vẫn thế, đợi ở đây trong sự im lặng. Cho đến khi bạn đến và ngồi cạnh bên tôi. Bạn nâng tôi lên để tôi có thể tự tin đứng trên đỉnh núi, có thể “đi dạo” cả trong  những cơn bão biển. Tôi luôn mạnh mẽ khi tôi có bờ vai bạn làm điểm tựa. Bạn nâng tôi lên để tôi có thể làm nhiều hơn những điều tôi có thể làm.

Lời bài hát thật hay, thật ý nghĩa. Trong đời, ai mà không có lúc thất vọng, lúc gặp khó khăn trong cuộc sống. Hi vọng, bạn luôn được những người bên cạnh nâng bạn lên, giúp bạn vượt qua những khó khăn, thử thách đó. ^_^.

When I am down and, oh my soul, so weary;
When troubles come and my heart burdened be;
Then, I am still and wait here in the silence,
Until you come and sit awhile with me.

You raise me up, so I can stand on mountains;
You raise me up, to walk on stormy seas;
I am strong, when I am on your shoulders;
You raise me up… To more than I can be.

You raise me up, so I can stand on mountains;
You raise me up, to walk on stormy seas;
I am strong, when I am on your shoulders;
You raise me up… To more than I can be.

There is no life – no life without its hunger;
Each restless heart beats so imperfectly;
But when you come and I am filled with wonder,
Sometimes, I think I glimpse eternity.

You raise me up, so I can stand on mountains;
You raise me up, to walk on stormy seas;
I am strong, when I am on your shoulders;
You raise me up… To more than I can be.

You raise me up, so I can stand on mountains;
You raise me up, to walk on stormy seas;
I am strong, when I am on your shoulders;
You raise me up… To more than I can be.
Nguồn : http://www.stlyrics.com/songs/s/secretgarden9552/youraisemeup317627.html

Thứ Hai, 9 tháng 4, 2012

Cài đặt Mapserver và ứng dụng Pmapper


1.1 Cài đặt Mapserver
- Tải gói phần mềm Mapserver phiên bản cho Windows tại địa chỉ : http://maptools.org/ms4w/index.phtml?page=downloads.html . Trong trang download này, người dùng có thể tải gói cài đặt exe hoặc khói zip. Đối với gói zip, sau khi tải về, người dùng chỉ việc giải nén vào ổ C, sau đó vào thư mục ms4w, double-click vào apache-install.bat để cài đặt Apache. Trong bài này, chúng tôi sử dụng gói exe để cài đặt Mapserver.
- Sau khi tải gói exe về máy, double-click để tiến hành cài đặt
Chọn I Agree
Cửa sổ này cho phép người dùng chọn những phần mà mình muốn cài đặt, những dấu check màu tối như MS4W Base Files, Specify Apache port hay Install and Start Apache Service được chọn mặc định. Những dấu check còn lại người dùng có thể chọn hoặc không chọn. Trong đó,
+ Create Desktop Shortcuts : là tạo shortcut trên desktop, người dùng có thể khởi động Mapserver từ Desktop.
+ Create Start Menu links : là tạo liên kết trên Start Menu, người dùng có thể khởi động Mapserver từ Start Menu.
+ Mapserver Itasca Demo Application : cho phép cài đặt ứng dụng Itasca.
+ PHP/Mapscript Sample Application (GMAP) : cho phép cài đặt GMAP.
+ dBox Mapserver : cho phép cài đặt dBox
+ OpenLayers : cho phép cài đặt OpenLayers
+ Fusion : cho phép cài đặt Fusion
+ Chameleon : cho phép cài đặt Chameleon
+ ArcIMS Emulator : cho phép cài đặt ArcIMS Emulator.
Trong các ứng dụng này không thấy có Pmapper, nên việc cài đặt Pmapper sẽ tiến hành sau khi đã cài đặt Mapserver. Click Next để tiếp tục.
Chọn nơi để cài đặt, mặc định là chọn ổ C, tốt nhất là nên cài ở ổ C, nếu cài ở ổ đĩa khác thì người dùng cần phải chỉnh lại đường dẫn trong các file cấu hình. Click Next để tiếp tục.
Chọn port, mặc định là 80. Ngoài ra, sau khi cài đặt người dùng có thể thay đổi port trong file cấu hình sau khi đã cài đặt Mapserver. Nếu cài đặt theo mặc định thì file cấu hình đó nằm tại C:\ms4w\Apache\conf. Click Install để tiến hành cài đặt.
Để kiểm tra việc cài đặt, người dùng mở trình duyệt web như Internet Explorer, Firefox,…gõ vào http://localhost hoặc http://127.0.0.1.
 
Nếu cửa sổ trên hiện ra thì Mapserver đã được cài đặt thành công.
1.2 Cài đặt Pmapper
- Người dùng có thể download gói cài đặt pmapper tại địa chỉ : http://sourceforge.net/projects/pmapper/files/ . Trang này cung cấp các phiên bản khác nhau của Pmapper. Một điều lưu ý là những phiên bản pmapper quá cũ sẽ không chạy được trên phiên bản mới của Maperver. Chọn thư mục pmapper, chọn phiên bản Pmapper, chọn Pmapper có chữ ms4w.
- Sau khi tải xong, giải nén file zip đó, người dùng sẽ thấy 3 thư mục Apache, apps và httpd.d. Copy file pmapper.pkg.html vào thư mục C:\ms4w\Apache\htdocs. Copy thư mục pmapper vào thư mục C:\ms4w\apps. Copy file http_pmapper.conf vào thư mục C:\ms4w\httpd.d.
- Refresh lại trình duyệt web, tại trang chủ Mapserver, người dùng sẽ thấy đường liên kết dẫn đến Pmapper. Click vào p.mapper start demo application để vào Pmapper.

NNS