MỤC LỤC
Nội dung Trang
LỜI MỞ ĐẦU 3
PHẦN I: HỆ THỐNG THÔNG TIN ĐỊA LÝ GIS VÀ ỨNG DỤNG TRONG QUẢN LÝ DỮ LIỆU BẢN ĐỒ SỐ
1. Khái niệm hệ thống thông tin địa lý (GIS) 4
2. Các phép chiếu không gian của GIS 7
3. Cơ sở dữ liệu trong hệ thống thông tin địa lý 11
4. Các phương pháp xây dựng bản đồ số 17
5. Khả năng làm việc của GIS 22
6. Các lĩnh vực ứng dụng GIS 23
PHẦN II: KIẾN TRÚC CỦA CHƯƠNG TRÌNH ỨNG DỤNG GIS
1. Hệ quản trị cơ sở dữ liệu GIS 27
2. Kiến trúc của chương trình ứng dụng GIS 31
PHẦN III: GIẢI PHÁP SỐ HOÁ VÀ TỔ CHỨC DỮ LIỆU BẢN ĐỒ VỊNH BẮC BỘ (VBB)
1. Giải pháp số hoá và tổ chức bản đồ số VBB 34
PHẦN IV: GIỚI THIỆU VỀ MAPINFO, MAPX VÀ TỔ CHỨC DỮ LIỆU BẢN ĐỒ
1. Giới thiệu về MAPINFO 38
2. Giới thiệu về MAPX 39
3. Cách thức tổ chức dữ liệu bản đồ của MAPINFO 43
PHẦN V: PHÂN TÍCH, THIẾT KẾ VÀ XÂY DỰNG CHƯƠNG TRÌNH
1. Phân tích các yêu cầu đặt ra cho chương trình 48
2. Phân tích chức năng nhận tín hiệu GPS 50
3. Phân tích và thiết kế chương trình 60
4. Thiết kế module của chương trình 71
KẾT LUẬN 76
TÀI LIỆU THAM KHẢO 77
77 trang |
Chia sẻ: netpro | Lượt xem: 2080 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Đề tài Hệ thống thông tin địa lý biển Vịnh Bắc Bộ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ừu tượng CSDL thấp hơn, trước hết là phân cấp, mạng và thực thể. ER được biểu diễn bằng sơ đồ quan hệ thực thể (entry relationship diagram- ERD), trong đó các thành phần chính như thực thể, quan hệ và thuộc tính được biểu diễn bởi các hình chữ nhật, thoi và ovan, liên kết giữa chúng là các đường thẳng, ví dụ:
Loại
Tên
Đường giao thông
Tên
Dân số
Tỉnh, thành phố
Trực thuộc
Diện tích
Sơ đồ quan hệ thực thể
1.2. Mô hình ngữ nghĩa
Cung cấp mức trừu tượng cao hơn để biểu diễn các chức năng thế giới thực của hệ quản trị CSDL. Mô hình này dùng khái niệm “ đối tượng “ thay cho khái niệm “ thực thể “ khi đề cập tới vật thể thực đã mô hình hóa. Sơ đồ mô hình ngữ nghĩa đưa ra một số phương pháp trừu tượng để phân biệt các quan hệ khác nhau, các trừu tượng này bao gồm: phân layer, khái quát, tập hợp và kết hợp.
Phân layer được phản ánh trong mô hình ngữ nghĩa bằng các tiến trình khái quát hóa, chúng chuyển một số kiểu đối tượng cùng chia sẻ vài đặc tính lên mức cao hơn. Tiến trình phân layer có thể được xem như một khía cạnh của khái quát hóa. Tuy nhiên do mục đích mô hình hóa dữ liệu nên tiến trình phân layer chỉ được áp dụng cho đối tượng mức thấp trong phân cấp. Các đối tượng mức thấp này được gọi là thẻ, tập các thẻ phân thành kiểu. Khi các kiểu được tập hợp lại để hình thành kiểu phức tạp hơn thì khái niệm khái quát hóa được dùng. Như vây, phân layer là bước đầu tiên sử dụng cho khái quát hóa, chúng còn được gọi là quan hệ “là_kiểu_của” (a_kind_of) hay “nó_là” (is_a).
Is a
Đảo
Đ. Cát Bà
Đ. Long Châu
Is a
Phân layer
Quần Đảo
Đ. Cát Bà
Đ.Long Châu
Cơ chế trừu tượng của kết hợp cho phương tiện tham chiếu nhóm các đối tượng cùng loại, cùng chia sẻ một vài thuộc tính hay điều kiện, khái niệm này sử dụng với mục đích tập hợp các tập đối tượng con để thao tác hay phân tích.
Kết hợp
Tiến trình tổ hợp các thuộc tính hay tập các đối tượng để hình thành một thực thể hay đối tượng được gọi là tập hợp, phương pháp này khác với khái quát hóa ở chỗ các đối tượng được tập hợp có các kiểu khác nhau.
Bản đồ biển
Chỉ số độ sâu
Hệ thống phao
Đảo, Quần đảo
Tập hợp
1.3. Mô hình lôgic
Kết quả của mô hình hóa khái niệm là biểu diễn rõ ràng các thực thể và thuộc tính của chúng và toàn bộ các quan hệ giữa các thực thể để thỏa mãn nhu cầu khai thác, lưu trữ thông tin đã dự đoán trước. Mục đích của mô hình dữ liệu lôgic là biểu diễn các thành phần mô hình khái niệm theo quan niệm tính toán của loại CSDL cụ thể.
1.4. Mô hình quan hệ
Hệ quản trị CSDL thông dụng hiện nay là hệ quản trị CSDL quan hệ (Relation Database Management System-RDBMS). Hệ quản trị CSDL quan hệ lưu trữ dữ liệu thành các bản ghi trong các bảng có quan hệ với nhau. Bản ghi là tập các sự kiện liên quan với nhau theo một cách nào đó hay các sự kiện được gộp thành tập. Mỗi sự kiện trong bản ghi đều có giá trị được xác định từ lĩnh vực cụ thể. Các lĩnh vực này gọi là thuộc tính. Các bản ghi có cùng kiểu hình thành bảng hay quan hệ. Mỗi hàng trong bảng là một bản ghi và mỗi cột là một thuộc tính hay trường. Vì bản ghi là tập các giá trị và quan hệ là tập các bản ghi nên quan hệ là tập của các tập. Quan hệ được biểu diễn như các bảng.
Việc quản lý CSDL không gian nảy sinh vấn đề liên quan đến xác định bản ghi trong CSDL. Dữ liệu không gian bao gồm tập các tọa độ để hình thành đường, cung, đa giác. Trong CSDL quan hệ chuẩn thì các dữ liệu như vậy phải được ghi vào các bản ghi riêng biệt, kết quả sẽ làm tăng kích thước lưu trữ trong bộ nhớ và giảm khả năng xâm nhập nhanh dữ liệu. CSDL hướng đối tượng giải quyết được vấn đề này và nhiều khía cạnh khác liên quan.
1.5. CSDL hướng đối tượng
Là xu thế mới trong công nghệ phần mềm và thiết kế CSDL, thích hợp với CSDL GIS hơn các mô hình trước kia. Các mô hình trước hướng bản ghi nghĩa là dữ liệu sắp xếp theo từng bản ghi nên các đối tượng bản đồ phải lưu trữ trong vài bản ghi trong các tệp khác nhau. Mô hình CSDL hướng đối tượng có thể vượt qua khó khăn này bằng cách biểu diễn trung thực hơn thế giới thực, bao gồm các đối tượng bên trong và ngoài. Ví dụ như dữ liệu trắc địa có thể nhóm thành các layer để biểu diễn các thực thể tương tự, phương pháp tiệm cận công nghệ này cho khả năng dữ liệu không gian được lưu trữ trong sơ đồ cấu trúc phong phú và hoàn hảo.
2.Kiến trúc của chương trình ứng dụng GIS
Trong chương trình ứng dụng GIS, CSDL là thành phần quan trọng nhất, có thể coi đây là trọng tâm của chương trình. Do đó kiến trúc của một chương trình ứng dụng GIS chính là cách thức sử dụng hệ quản trị CSDL để quản lý CSDL của chương trình. Có 2 phương pháp chính sử dụng hệ quản trị CSDL trong một chương trình GIS, đó là phương pháp sử dụng một hệ quản trị CSDL duy nhất để quản lý dữ liệu đồ hoạ và dữ liệu thuộc tính. Phương pháp này có ưu điểm luôn đảm bảo tính thống nhất và tồn tại duy nhất về CSDL giữa dữ liệu đồ hoạ và dữ liệu thuộc tính nhưng kém linh hoạt. Phương pháp thứ 2 là sử dụng hai hay nhiều hệ quản trị CSDL để quản lý riêng rẽ dữ liệu đồ hoạ và dữ liệu thuộc tính, phương pháp này có độ linh hoạt cao, tiết kiệm thời gian và thao tác trong quá trình xử lý dữ liệu.
Ngày nay, hầu hết các hệ thống thông tin được xây dựng xung quanh CSDL quan hệ. Tuy nhiên, GIS đòi hỏi CSDL của mình không những lưu trữ được các đối tượng mà còn có khả năng tìm kiếm trực tiếp và tính toán dữ liệu không gian. Do đó, hệ thống GIS thương mại đều xây dựng CSDL dựa trên một trong ba kiến trúc sau:
Kiến trúc đối ngẫu
GIS có hai hệ thống CSDL tách biệt, một cho dữ liệu đồ hoạ và một cho dữ liệu thuộc tính. Kiến trúc này tách thành các hệ con để lưu trữ và truy nhập dữ liệu không gian, và thông tin thuộc tính được lưu trữ trong RDBMS. Các thành tố đồ hoạ và thuộc tính của các đối tượng được liên kết với nhau bởi chỉ danh duy nhất. Ðể xâm nhập đối tượng phải truy nhập cả hai hệ con sau đó tổ hợp kết quả. Lợi thế của kiến trúc này là từng phần trên cơ sở RDBMS chuẩn cho nên việc lưu trữ và truy nhập có hiệu quả cao nhưng bất lợi ở chỗ không bảo đảm tính toàn vẹn dữ liệu như trong trường hợp thực thể vẫn tồn tại trong hệ con lưu trữ không gian trong khi đã bị xóa trong RDBMS.
Công cụ GIS
Giao diện người dùng
Phần mềm quản lý dữ liệu
DBMS thương mại
CSDL Đồ họa
Tệp tọa độ
Tệp tôpô
CSDL Thuộc Tính
Bảng thuộc tính
Tệp tôpô
Kiến trúc đối ngẫu của GIS
Kiến trúc tầng
Lưu cả dữ liệu không gian trong mô hình dữ liệu quan hệ, thực thể đồ hoạ phải được tách ra làm nhiều phần để lưu vào các bảng khác nhau. Để truy cập tới dữ liệu cần thực hiện kết nối các bảng, hệ thống chạy chậm và khó sử dụng, để tránh khó khăn ta hình thành giao dịch không gian trong tầng đỉnh của CSDL quan hệ chuẩn. Tầng này có trách nhiệm thông dịch câu lệnh truy vấn đồ hoạ thành câu lệnh SQL chuẩn, kết quả sẽ cho truy nhập không gian nhanh hơn nhưng truy vấn phức tạp hơn.
Hệ thông tin địa lý
Tầng trợ giúp đối tượng không gian
Hệ quản trị CSDL quan hệ chuẩn
Kiến trúc phân tầng của GIS
Kiến trúc tích hợp
Phần mở rộng không gian được tích hợp vào DBMS, khi đó ngôn ngữ truy vấn được mở rộng bởi khả năng truy vấn các kiểu hình học và các toán tử không gian như tính toán khoảng cách, giao điểm, chu vi... Mô hình GIS kiểu này có hai giải pháp tích hợp là:
Mở rộng hệ quản trị dữ liệu thương mại chuẩn cho dữ liệu không gian.
Hệ quản trị CSDL mới theo hướng đối tượng.
Công cụ GIS
Giao diện người dùng
Công cụ GIS
Giao diện người dùng
Mở rộng
DBMS thương mại
Mở rộng
DBMS tự thiết kế
CSDL thuộc tính và hình học
Tệp đồ họa
Tệp tôpô
Bảng thuộc tính
CSDL thuộc tính và hình học
Tệp đồ họa
Tệp tôpô
Bảng thuộc tính
Kiến trúc tích hợp của hệ GIS
PHẦN III
GIẢI PHÁP SỐ HOÁ VÀ TỔ CHỨC DỮ LIỆU BẢN ĐỒ SỐ
VỊNH BẮC BỘ (VBB)
1.Giải pháp số hoá và tổ chức bản đồ số VBB
Từ tìm hiểu thực tế tại trung tâm đo đạc và biên vẽ bản đồ, bản đồ vùng biển Vịnh Bắc Bộ được quản lý như sau: Bản đồ tổng quát Vịnh Bắc Bộ với tỷ lệ 1:1.000.000 và tại những khu vực riêng biệt sẽ được quản lý bằng các mảnh bản đồ có tỷ lệ nhỏ hơn (1:500.000 - 1:25.000). Từ thực tế đó khi số hoá bản đồ Vịnh Bắc Bộ em số hoá bản đồ tổng quát (tỷ lệ 1:1.000.000) và bản đồ chi tiết vùng biển Hải Phòng (tỷ lệ 1:100.000) theo các bản đồ giấy hiện có.
Bản đồ toàn cảnh VBB với tỷ lệ 1:1.000.000 và một góc VBB
(vùng biển HP) với tỷ lệ 1:100.000
1.1. Giải Pháp số hoá bản đồ số VBB
Để số hoá các bản đồ đã nêu trên em sử dụng phương pháp số hoá bằng tay từ các bản đồ giấy hiện có và kết hợp với phương pháp số hoá tự động bằng máy quét với độ phân giải cao.
Để số hoá các bản đồ giấy bằng bàn số hoá, nội dung phương pháp này đã được trình bầy trong phần I.4. Trong phương pháp này điều quan trọng nhất là phải lựa chọn các điểm mốc phù hợp để thực hiện cố định bản đồ giấy trong quá trình mã hoá đồng thời xác định hệ quy chiếu hợp lý. Trên các bản đồ, đối tượng thể hiện có toạ độ chính xác nhất đó là các đèn biển do đó để cố định bản đồ giấy em lựa chọn các đèn biển làm các điểm mốc qua đó số hoá các đối tượng khác có vị trí tương đối với các đèn biển. Sau đó thực hiện chỉnh sửa các đối tượng trên bản đồ số bằng phương pháp xác định biên bản đồ. Trước hết các bản đồ giấy được quét về dạng ảnh số bằng máy quét có độ phân giải cao, sau đó dùng MapInfo Professional import các ảnh số về dạng Raster. Để có thể chỉnh sửa các sai số của bản đồ được số hoá bằng bàn số hoá so với bản đồ giấy thực hiện trồng khít layer được số hoá và layer Raster bằng cách xác định sao cho các vị trí đèn biển trùng khít với nhau. Khi 2 layer này được trồng khít với nhau ta dễ dàng nhận ra các sai số của bản đồ số với bản đồ giấy và chỉnh sửa lại vị trí giữa chúng. Kết quả của quá trình chỉnh sửa là bản đồ số thu được có độ chính xác gần như tuyệt đối so với bản đồ giấy.
1.2. Tổ chức dữ liệu bản đồ số VBB
Với mục đích xây dựng hệ thống thông tin địa lý Biển Vịnh Bắc Bộ đi sâu vào lĩnh vực an toàn hàng hải, các đối tượng của Vịnh Bắc Bộ cần số hoá phục vụ cho quá trình tác nghiệp khi hành trình trên biển gồm :
Đối tượng hải đảo và đất liền : Các hòn đảo nằm rải rác trong vịnh và phần đất liền trải dài tiếp giáp với vịnh.
Đối tượng bãi lầy : là các khu vực có độ sâu từ 0m đến 2m so với mực nước biển, các khu vực này chỉ lộ lên trên mặt nước khi thuỷ chiều xuống mức thấp nhất. Phần lớn các khu vực bãi lầy là các bãi cát chạy dọc bờ biển.
Đối tượng đá ngầm : gồm các bãi đá ngầm nằm rải rác trong các khu vực khác nhau trong Vịnh Bắc Bộ.
Đối tượng chỉ số độ sâu : là chỉ số độ sâu tại các điểm khác nhau trong Vịnh Bắc Bộ, các chỉ số này được đo vào lúc thuỷ triều xuống thấp nhất trong ngày và lấy trung bình trong năm.
Đối tượng đường đẳng sâu : là các đường nối các điểm có chỉ số độ sâu tương đồng nhau nhằm thuận tiện cho quá trình hành trình trên biển.
Đối tượng lớp nước theo độ sâu : Các khu vực có độ sâu trong khoảng giới hạn sẽ được xác định là một vùng chung, các vùng này được phân biệt với nhau theo màu sắc thể hiện.
Đối tượng khu vực nguy hiểm : là các khu vực cần chú ý trong quá trình hành trình trên biển, các khu vực này có thể là khu vực có độ sâu chênh lệch cao so với vùng xung quanh hoặc các khu vực có dòng chảy nguy hiểm, các khu vực có chất nổ.
Đối tượng hệ thống công trình an toàn hàng hải : là hệ thống hải đăng trên các hòn đảo, dọc bờ biển và hệ thống phao tiêu dẫn đường vào các luồng lạch. Các đối tượng này đặc biệt quan trọng trong quá trình tác nghiệp hành trình trên biển.
Đối tượng xác tàu đắm : là các vị trí có tàu đắm nhưng không được trục vớt trong biển Vịnh Bắc Bộ, chúng có thể là các xác tàu nổi trên mặt nước, chìm dưới mặt nước với độ sâu nhỏ hơn 18m hoặc lớn hơn 18m.
Như vậy bản đồ số phục vụ yêu cầu an toàn hàng hải phải có tối thiểu 9 layer như sau :
Layer
Mục đích lưu trữ
Dao
Lưu trữ các đối tượng hải đảo, đất liền
Bailay
Lưu trữ các đối tượng bãi lầy
Dangam
Lưu trữ các khu vực có đá ngầm
Dosau
Lưu trữ các chỉ số độ sâu
Ctbien
Lưu trữ các đối tượng thuộc hệ thống an toàn hàng hải
Kvnguyhiem
Lưu trữ các khu vực nguy hiểm
Kvnuoc
Lưu trữ các khu vực phân lớp nước theo độ sâu
Dangsau
Lưu trữ các đường đẳng sâu
Taudam
Lưu trữ các vị trí tàu đắm
Ngoài ra còn các layer : layer Diadanh lưu trữ tên các đối tượng, layer Khung lưu trữ khung bản đồ và các đường kinh, vĩ tuyến nhằm mục đích tạo thuận lợi khi tác nghiệp trên bản đồ số.
Tuy nhiên do tỷ lệ các bản đồ được số hoá là khác nhau, các đối tượng được thể hiện khác nhau nên số layer mã hoá của các bản đồ cũng khác nhau.
Với bản đồ tổng quát Vịnh Bắc Bộ (tỷ lệ 1:1.000.000)
Số hiệu bản đồ : I-1000-01
Phạm vi thể hiện :- Kinh độ :1020 10’ 00’’ ÷ 1090 05’ 00’’
- Vĩ độ :150 00’ 00’’ ÷ 230 30’00’’
Bản đồ này có tỷ lệ lớn (1:1.000.000) nên không thể hiện các đối tượng bãi lầy và đá ngầm, khi số hoá bản đồ này thiếu 2 layer chứa các đối tượng kể trên.
Với bản đồ chi tiết vùng biển Hải Phòng (tỷ lệ 1:100.000)
Số hiệu bản đồ : IA-100-03
Phạm vi thể hiện :- Kinh độ :1060 32’ 00’’ ÷ 1070 10’ 40’
- Vĩ độ :200 12’ 00’’ ÷ 210 01’00’’
Đây là bản đồ có tỷ lệ nhỏ (1:100.000) các đối tượng được thể hiện đầy đủ do đó bản đồ này gồm đủ các layer như đã kể trên.
PHẦN IV
GIỚI THIỆU MAPINFO, MAPX VÀ TỔ CHỨC DỮ LIỆU BẢN ĐỒ
1.Giới thiệu về MAPINFO
Mapinfo là công ty chuyên các sản phẩm GIS, các sản phẩm của Mapinfo đã có mặt ở Việt Nam từ rất sớm, các chương trình ứng dụng GIS sử dụng bản đồ được số hoá trên nền Mapinfo chiếm tỷ lệ khá lớn.
Mapinfo gồm các sản phẩm nền cho phép làm các công việc như thu thập dữ liệu, thực hiện các phân tích không gian, thao tác, tích hợp dữ liệu từ nhiều nguồn khác nhau, tạo các loại bản đồ chuyên đề và đặc biệt là có thể số hoá dữ liệu như Mapinfo Professional, Mapinfo ProPress, MapBasic… Mapinfo cung cấp các công cụ phát triển như Mapinfo MapX… cho phép xây dựng các ứng dụng GIS độc lập dùng bản đồ số hoá trên nền Mapinfo từ các ngôn ngữ lập trình chuẩn trong môi trường Windows như : Visual Basic, Visual C++, Delphi, ...
Mapinfo lưu trữ dữ liệu theo hệ thống file riêng của mình gồm các file : *.tab, *.dat (*.mdb, *.aid,*.dbf), *.map, *.id, *.ind. Chức năng của từng loại file này sẽ được trình bầy trong phần tiếp theo.
Mapinfo dễ dàng Import dữ liệu về dạng chuẩn của Mapinfo từ các nguồn dữ liệu khác nhau như MGE, Arc/Info, Arc/View, CAD, v.v...Ngoài ra Mapinfo còn dễ dàng kết nối với các thiết bị ngoại vi phục vụ công việc số hoá bản đồ như bàn số hoá…
Mapinfo dễ dàng Export dữ liệu từ dạng chuẩn của Mapinfo về các định dạng dữ liệu khác nhau theo yêu cầu của người sử dụng như MGE, Arc/Info, Arc/View, CAD, Bitmap...
Mapinfo sử dụng công nghệ hướng đối tượng làm nền tảng, lợi dụng tính kế thừa nên giảm khối lượng lưu trữ và xử lý.
Mapinfo có ưu điểm có thể quản lý đồng thời CSDL không gian và CSDL phi không gian mà không phải cài bất kì phần mềm nào, điều này bảo đảm tính thống nhất của CSDL. Ngoài ra Mapinfo còn dễ dàng kết nối với các CSDL phi không gian khác thông qua ODBC.
2.Giới thiệu về Mapx
Mapx là công cụ phát triển thuộc họ các sản phẩm của Mapinfo cho phép xây dựng các ứng dụng GIS độc lập sử dụng bản đồ số hoá trên nền Mapinfo từ các ngôn ngữ lập trình chuẩn trong môi trường Windows như : Visual Basic, Visual C++, Delphi... Mapx được đóng gói dưới dạng một OCX 32 bit do đó các ứng dụng GIS có sử dụng Mapx chỉ chạy được trên nền Windows 32 bit. Mapx cho phép các ứng dụng GIS sử dụng nó thực hiện các chức năng hiển thị các layer, phóng to, thu nhỏ, dịch chuyển bản đồ, quay bản đồ, nhận dạng đối tượng, truy xuất thông tin đối tượng…ngoài ra còn có thể xử lý các sự kiện trên đối tượng như kích chuột, ấn phím. Để thực hiện được các khả năng đó Mapx xử lý thông qua hai đối tượng cơ bản là Geoset và Dataset.
2.1. Geoset
Geoset được tạo nên bởi các layer bản đồ số và các đặc trưng của nó. Ví dụ bản đồ số thành phố Hải Phòng có thể được coi là một Geoset được tạo nên bởi các layer đường giao thông, địa hình, nhà ở, hệ thống cống ngầm…Geoset là phương tiện để Mapx có thể tác động tới từng layer bản đồ số. Một ứng dụng GIS có sử dụng Mapx khi hiển thị và tác động tới các layer bản đồ trước hết phải khởi tạo một Geoset hoặc tải một Geoset đã tồn tại từ trước vào bộ nhớ. Geoset cung cấp các phương thức để có thể mở, hiển thị và tác động tới một layer bản đồ một cách thuận tiện. Khi một Geoset được xác lập các layer tạo nên Geoset đó sẽ được Mapx nhận dạng khi đó ta thực hiện các thao tác trên layer như với một đối tượng (Layer Object).
Object.geoset=” đường dẫn” : Mở một geoset đã tồn tại
Object.layers.add=” đường dẫn” : Thêm một layer vào Geoset hiện tại.
Tất cả các layer tạo nên bản đồ số được quản lý bởi Geoset, chúng có thể chia làm 3 loại cơ bản. Đó là layer ẩn (Hidelayer), layer lựa chọn (Selectablelayer), layer động (Animation layer).
Layer ẩn là các layer không được hiển thị trong nền bản đồ số hoặc được hiển thị nhưng không được tác động. Layer này được sử dụng trong trường hợp một layer không được hiển thị trên bản đồ chuyên đề hoặc layer đó là layer không cho phép tác động khi hiển thị. Để xác lập một layer về trạng thái ẩn sử dụng phương thức :
Object.layers(i).Visible=true : Xác lập layer thứ i của Geoset về trạng thái hiển thị (= false - không hiển thị).
Object.layers(“name”).Visible=true : Xác lập layer có tên “name” của Geoset về trạng thái hiển thị (= false - không hiển thị).
Layer lựa chọn là layer khi hiển thị trên nền bản đồ số có thể được tác động thông qua các trạng thái kích chuột hoặc được nhận dạng thông qua các phương thức lựa chọn của Mapx. Ví dụ trong bản đồ chuyên đề biển Vịnh Bắc Bộ khi muốn tác động duy nhất tới các đối tượng đảo chỉ xác lập trạng thái lựa chọn cho layer chứa các đối tượng đảo. Để xác lập trạng thái lựa chọn một layer ta sử dụng phương thức :
Object.layers(i).Selectable=true: Xác lập layer thứ i trong Geoset về trạng thái được lựa chọn (= false - huỷ về trạng thái ẩn).
Object.layers(“name”).Selectable=true: Xác lập layer có tên “name” trong Geoset về trạng thái được lựa chọn (= false - huỷ về trạng thái ẩn).
Layer động là layer được sử dụng khi thông tin trên layer được cập nhật liên tục một cách tuần tự như trong một ứng dụng GIS thời gian thực. Ví dụ bài toán xây dựng một ứng dụng GIS cần cập nhật toạ độ vị trí của các con tàu từ hệ thống định vị toàn cầu GPS (Global Positioning System) sau đó hiển thị các vị trí đó trên nền bản đồ số. Các đối tượng được chứa trong layer động sẽ được vẽ lại nhanh hơn nhiều lần so với các layer còn lại. Khi một layer được xác lập là layer động nó sẽ được ưu tiên vẽ trên tất cả các layer còn lại không phụ thuộc vào thứ tự của layer đó trong geoset. Trong một geoset chỉ duy nhất tồn tại tối đa một layer động. Để xác lập layer về trạng thái layer động sử dụng phương thức :
Object.layers.AnimationLayer = layers(i): Xác lập layer thứ i trong geoset về trạng thái layer động.
Object.layers.AnimationLayer = nothing: Tắt bỏ trạng thái động của layer
2.2.DataSet
Dataset cung cấp các phương thức cho phép kết nối dữ liệu phi không gian với bản đồ số. Ngoài việc cung cấp các phương thức giúp liên kết dữ liệu phi không gian với các đối tượng đồ hoạ tương ứng trên bản đồ số Dataset còn cung cấp các phương thức để có thể cập nhật dữ liệu vào cơ sở dữ liệu thuộc tính nếu chúng được xây dựng và quản lý trên nền Mapinfo. Ví dụ khi có một cơ sở dữ liệu thuộc tính về các hòn đảo và muốn kết nối chúng với các đối tượng đảo tương ứng trên nền bản đồ số Mapx sẽ sử dụng các phương thức của layer Dataset. Để liên kết dữ liệu Dataset sử dụng phương thức :
Object.Datasets.add Type, Source, [name], [geofield], [Secondary geofield], [Bindlayer],[Fields],[Dynamic]
Với :
Tham số Type
Kiểu dữ liệu liên kết
miDataSetDAO
Dữ liệu Access
miDataSetODBC
Cơ sở dữ liệu ODBC
miDataSetUnbound
Mapx yêu cầu dữ liệu từ tệp tin chứa
miDataSetGlobalHandle
Bảng dữ liệu không giới hạn
miDataSetOLEData
Dữ liệu nguồn OLE
miDataSetLayer
Dữ liệu từ bảng của Mapinfo
miDataSetNotesQuery
Lotus Notes Query
miDataSetNotesView
Lotus Notes View
miDataSetDelphi
Dữ liệu sinh từ Delphi
miDataSetSafeArray
Dữ liệu mảng
2.3.Các phương thức khác
Bản thân Mapx cũng có các phương thức để hiển thị bản đồ số độc lập không phải thông qua các đối tượng Geoset và DataSet. Do không thông qua đối tượng quản lý layer (Geoset) và đối tượng liên kết dữ liệu (DataSet) nên các phương thức chỉ có thể hiển thị các layer bản đồ và không thể tác động trực tiếp vào các layer cũng như các thao tác liên kết dữ liệu. Tuy nhiên các phương thức này không phải khởi tạo thông qua một đối tượng khác do đó tốc độ thực hiện sẽ nhanh hơn. Các phương thức này cho phép phóng to, thu nhỏ bản đồ số, in bản đồ hay lựa chọn các công cụ tác động tới bản đồ số. Các phương thức có thể kể đến là :
Object.CurrentTool =type
Tham số Type
Công cụ lựa chọn
miCenterTool
Lựa chọn trung tâm
miPanTool
Công cụ di chuyển
miSelectTool
Công cụ lựa chọn
Nhiều tham số khác
MAPX
Geoset
DataSet
Phương thức #
HideLayer
Selectable layer
AnimationLayer
Label Layer
Liên kết dữ liệu
Cập nhật dữ liệu
Xuất dữ liệu
Phóng to, thu nhỏ
In bản đồ
Chọn công cụ
Mô hình tổng quan của Mapx
3.Cách thức tổ chức dữ liệu bản đồ của MAPINFO
Mapinfo sử dụng công nghệ hướng đối tượng làm nền tảng do đó đơn vị quản lý nhỏ nhất của Mapinfo là các đối tượng điểm. Mỗi đối tượng gồm các thông tin không gian và phi không gian được lưu trữ một cách riêng rẽ trong các file khác nhau. Tập hợp các đối tượng có đặc điểm giống nhau theo một tiêu chí của người dùng sẽ được đưa vào một layer. Dữ liệu về layer sẽ được lưu trữ trong các file khác nhau như:
Các file *.tab: lưu trữ cấu trúc của layer, khi xâm nhập dữ liệu của Mapinfo phải thông qua file này. Trong cấu trúc của mình phải tồn tại ít nhất một trường.
Các file *.dat (*.mdb, *.aid,*.dbf) : lưu trữ dữ liệu theo các danh sách liên kết.
Các file *.map : mô tả các đối tượng đồ hoạ, file này sẽ không tồn tại nếu trong layer không tồn tại một đối tượng nào.
Các file *.id : lưu trữ địa chỉ tham chiếu nhằm liên kết các đối tượng với dữ liệu của nó cũng như liên kết giữa dữ liệu không gian và phi không gian. File này cũng không tồn tại nếu như không có một đối tượng nào trong layer.
Các file *.ind : mỗi đối tượng khi được sinh ra sẽ được chương trình quản lý thông qua index và dữ liệu về index sẽ được lưu trữ trong file này, index file sẽ giúp tìm kiếm một đối tượng trong quá trình tìm kiếm.
Các layer của cùng một bản đồ chuyên đề được quản lý dưới dạng một Geoset (*.gst). Ví dụ bản đồ chuyên đề về hệ thống giao thông công cộng của thành phố Hải Phòng có thể coi là 1 Geoset được tạo thành từ các layer : layer nhà cửa, layer địa hình, layer đường bộ, layer đường sắt…
Dữ liệu đồ hoạ của Mapinfo gồm các dạng như : điểm, đường, vùng, hình chữ nhật, ellip và text ... chúng được lưu trữ như sau :
Nếu không tồn tại một dữ liệu đồ hoạ nào trong layer, Mapinfo sẽ lưu trữ duy nhất một bản ghi có nội dung
NONE
Dữ liệu điểm sẽ được lưu trữ bởi 2 thông số, một thông số về toạ độ X và thông số kia là toạ độ Y. Ngoài ra có thể lựa chọn dạng hiển thị của điểm thông qua SYMBOL, giá trị SYMBOL là một số tự nhiên ứng với thứ tự của kí hiệu trong bảng. Nếu giá trị SYMBOL bị bỏ trống khi đó chương trình sẽ sử dụng kí hiệu mặc định của Mapinfo.
POINT X Y
[ SYMBOL]
Dữ liệu đường được lưu trữ theo 4 thông số đó là toạ độ X, Y của 2 điểm tạo nên đường đó. Ngoài ra chúng ta có thể lựa chọn dạng hiển thị của đường thông qua tham số PEN. Nếu giá trị này bị bỏ trống chương trình sẽ hiển thị đường theo dạng mặc định mà Mapinfo đang sử dụng.
LINE X1 Y1 X2 Y2
[PEN]
Dữ liệu đường gấp khúc được lưu trữ dựa theo các thông số: số lượng điểm, toạ độ X, Y của mỗi điểm, dạng hiển thị của đường qua tham số PEN. Ngoài ra còn có tham số làm trơn đuờng SMOOTH, nếu giá trị SMOOTH càng lớn độ trơn đường càng cao.
PLINE numpts
X1 Y1
X2 Y2
:
[ PEN]
[SMOOTH]
Một đối tượng vùng có thể được tạo thành bởi một hoặc nhiều đường gấp khúc. Do đó để lưu trữ một đối tượng vùng chúng ta phải lưu trữ các đường gấp khúc tạo nên nó, với mỗi một đường gấp khúc cần lưu các tham số về toạ độ X, Y của từng điểm. Có thể lựa chọn dạng hiển thị của vùng qua tham số BRUSH và dạng hiển thị của đường biên qua tham số PEN. Nếu 2 tham số này không được xác lập chương trình sẽ sử dụng định dạng hiển thị của vùng và đường biên theo mặc định. Tham số CENTER X Y lưu trữ toạ độ trọng tâm của đối tượng vùng.
REGION # pgons
Numpts1
X1 Y1
X2 Y2
:
Numpts2
X1 Y1
X2 Y2
:
[ PEN]
[BRUSH]
[ CENTER X Y]
Một đối tượng cung được xác định thông qua một hình chữ nhật bao quanh cung có diện tích nhỏ nhất và các góc bắt đầu (a), góc kết thúc (b). Do đó một đối tượng cung được lưu trữ cùng các tham số về toạ độ đỉnh trên trái, đỉnh dưới phải của hình chữ nhật và độ lớn các góc bắt đầu (a) góc kết thúc (b), các góc được xác định theo chiều quay của kim đồng hồ. Tham số PEN xác lập dạng hiển thị của cung.
ARC X1 Y1 X2 Y2
a b
[PEN]
Một đối tượng TEXT được lưu trữ gồm một chuỗi kí tự mà nó thể hiện cùng với toạ độ các đỉnh trên trái, dưới phải của hình chữ nhật có diện tích nhỏ nhất bao quanh đối tượng TEXT đó. Có thể lựa chọn font chữ thể hiện cùng mầu sắc của đối
Các file đính kèm theo tài liệu này:
- Hệ thống thông tin địa lý biển Vịnh Bắc Bộ.doc