Đồ án Xây dựng ứng dụng bản đồ trực tuyến trên công nghệ CartoWeb

Tài liệu Đồ án Xây dựng ứng dụng bản đồ trực tuyến trên công nghệ CartoWeb: Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 1 Tin học Trắc địa K47 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.................................

pdf87 trang | Chia sẻ: hunglv | Lượt xem: 1348 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Đồ án Xây dựng ứng dụng bản đồ trực tuyến trên công nghệ CartoWeb, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 1 Tin học Trắc địa K47 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 Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 2 Tin học Trắc địa K47 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 Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 3 Tin học Trắc địa K47 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 Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 4 Tin học Trắc địa K47 Mở đầu Hệ thống thông tin địa lý (GIS - Geographic Information System) là một trong những ứng dụng rất có giá trị của công nghệ tin học trong ngành địa lý, điều tra cơ bản, quy hoạch đô thị, cảnh báo môi tr−ờng,... Sự phát triển không ngừng của công nghệ thông tin đã đ−a tin học thâm nhập sâu vào nhiều lĩnh vực khoa học và đời sống, mở ra một giai đoạn mới trong quá trình phát triển khoa học, đặc biệt là sự phát triển của GIS trong việc khai thác thông tin địa lý. ở n−ớc ta, trong những năm gần đây đã ứng dụng hệ thống thông tin địa lý trong nhiều lĩnh vực, chủ yếu trong lĩnh vực quản lý nhà n−ớc về tài nguyên và môi tr−ờng: quản lý đất đai, đo đạc bản đồ, môi tr−ờng, tài nguyên n−ớc, khí t−ợng thủy văn, địa chất khoáng sản. Cùng với sự phát triển đó, việc đ−a thông tin địa lý lên Internet là điều dễ hiểu và đang đ−ợc phát triển khá mạnh. Tuy nhiên cũng ch−a có nhiều tổ chức xây dựng đ−ợc một hệ thống giúp cho việc tra cứu thông tin địa lý đ−ợc dễ dàng, nhanh chóng và chính xác. H−ớng đi nói chung để xây dựng hệ thống giúp cho việc tra cứu thông tin GIS trực tuyến một cách hiệu quả và nhanh chóng là xây dựng một website, trong đó ng−ời sử dụng có thể tra cứu các thông tin GIS trực tiếp trên bản đồ của khu vực mà họ quan tâm. Đứng tr−ớc yêu cầu thực tế đó, em đã chọn cho mình đề tài để làm luận văn tốt nghiệp là “Xây dựng ứng dụng bản đồ trực tuyến trên công nghệ CartoWeb”. Luận văn gồm: Phần I: Giới thiệu chung về đồ án Phần II: Những khái niệm cơ bản liên quan đến hệ thống bản đồ trực tuyến Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 5 Tin học Trắc địa K47 Phần 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 Phần 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 Xin trân trọng gửi lời cám ơn tới 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 cho em hoàn thành luận văn này. Xin trân trọng cám ơn, Sinh viên thực hiện: Hoàng Anh Đức Lớp Tin học – Trắc Địa K47 Khoa Công Nghệ Thông Tin Tr−ờng Đại Học Mỏ - Địa Chất Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 6 Tin học Trắc địa K47 Ch−ơng I Giới thiệu chung về đồ án I.1 Giới thiệu chung về bản đồ I.1.1 Bản đồ thông th−ờng Bản đồ thông th−ờng là bản vẽ đơn giản miêu tả một không gian, địa điểm và hiển thị những thông số liên quan trực tiếp đến vị trí ấy có liên quan đến khu vực xung quanh. Bản đồ thông th−ờng không thể dùng để tra cứu cùng một lúc và nhanh chóng các thông tin địa lý (nh− thông tin về số dân, diện tích, năm thành lập địa điểm, tổng thu nhập bình quân...) cũng nh− không có khả năng chỉ ra đ−ờng đi ngắn nhất giữa 2 điểm, tìm kiếm địa điểm... I.1.2 Bản đồ số Bản đồ số là 1 cơ sở dữ liệu l−u giữ các thông tin đã đ−ợc số hoá từ bản đồ th−ờng. Các thông tin này có thể là khoảng cách, các vật thể, độ cao (số hoá 3D) ... Bản đồ số có thể có một lớp hoặc nhiều lớp. Bản đồ số đ−ợc l−u trong cơ sở dữ liệu ( có thể là các file hình ảnh của các phần mềm đồ họa, hoặc là dữ liệu đ−ợc đ−a vào một hệ quản trị cơ sở dữ liệu nào đó), do đó, nó có thể có thêm nhiều thông tin khác ngoài thông tin hình ảnh của một bản đồ thông th−ờng. Bằng nhiều cách, bản đồ số có thể đ−ợc dùng làm công cụ để tra cứu thông tin địa lý một cách hiệu quả, thay thế một cách hoàn hảo cho bản đồ thông th−ờng. I.1.3 Bản đồ trực tuyến Là một dạng của bản đồ số, nh−ng có khả năng cơ động rất cao, chỉ cần máy tính có kết nối với Internet, với nhiều tính năng bản đồ trực tuyến Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 7 Tin học Trắc địa K47 giúp ng−ời sử dụng rất thuận tiện trong việc tìm kiếm, tra cứu thông tin địa lý trên bản đồ. Với bản đồ trực tuyến, một đối t−ợng đ−ợc gắn liền với thông tin địa lý, do đó cho phép ng−ời sử dụng tra cứu thông tin rất nhanh chóng và hiệu quả, gần nh− làm việc với một ứng dụng bản đồ của máy tính thông th−ờng mà có khả năng tra cứu thông tin GIS. Với một số tính năng nh− in ấn, zoom phóng,... Bản đồ trực tuyến có thể đ−ợc chuyển thành dạng bản đồ giấy cho ng−ời dùng sử dụng lúc cần thiết qua thao tác in ấn bản đồ hoặc cũng có thể chuyển thành dạng bản đồ số khác nh− xuất ra các file dxf, jpg, bmp... Bản đồ trực tuyến đang là h−ớng đi đ−ợc phát triển mạnh, nhằm đ−a thông tin đến cho mọi ng−ời ở mọi lúc, mọi nơi. I.2 Mục đích, yêu cầu I.2.1 Tên đề tài “Xây dựng ứng dụng bản đồ trực tuyến trên công nghệ CartoWeb” I.2.2 Mục đích Xây dựng một ứng dụng bản đồ trực tuyến trên cơ sở mã nguồn mở bằng công nghệ CartoWeb, nhằm hộ trợ tối đa ng−ời sử dụng trong việc tìm kiếm thông tin địa lý của một khu vực trên nền bản đồ. I.2.3 Yêu cầu Xây dựng 1 website trong đó ng−ời sử dụng có thể thao tác với bản đồ nh− sau: − Có các công cụ điều khiển màn hình, nh−: phóng to, thu nhỏ, dịch chuyển, xem toàn bộ bản đồ, in ấn, quay về hình ảnh tr−ớc, tới hình ảnh sau, định vị điểm giữa,… Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 8 Tin học Trắc địa K47 − Có các công cụ điểu khiển Layer (Lớp bản đồ): 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ỏ − Có công cụ hiện thị chú giải 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. − Có công cụ tìm đ−ờng theo đ−ờng đi ngắn nhất từ 2 điểm trên bản đồ. Tính khoảng cách ... − Có thể xuất ra các định dạng pdf, html… Ra dạng ảnh bmp, jpg… Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 9 Tin học Trắc địa K47 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 II.1 Các thành phần có liên quan II.1.1 Phần mềm mã nguồn mở Hiểu theo nghĩa rộng là một khái niệm chung đ−ợc sử dụng cho tất cả các phần mềm mà mã nguồn của nó đ−ợc công bố rộng rãi công khai và cho phép mọi ng−ời tiếp tục phát triển phần mềm đó. Các ứng dụng mã nguồn mở bao gồm: a. Ngôn ngữ lập trình web Việc xây dựng các trang web dựa trên công nghệ mã nguồn mở hiện nay đang là xu h−ớng mới và đang phát triển rất mạnh. Có nhiều ngôn ngữ lập trình web mã nguồn mở đang đ−ợc sử dụng rộng rãi nh− PHP, Ruby, Ruby on Rails... Đồ án đ−ợc xây dựng dựa trên ngôn ngữ lập trình mã nguồn mở PHP. PHP (Personal Home Page) đ−ợc phát triển từ một sản phẩm có tên là PHP/FI (Personal Home Page/Forms Interpreter). PHP/FI do Rasmus Lerdorf tạo ra năm 1995, ban đầu đ−ợc xem nh− là một tập con đơn giản của các mã kịch bản Perl để theo dõi tình hình truy cập đến bản sơ yếu lý lịch của ông trên mạng. Ông đã đặt tên cho bộ mã kịch bản này là 'Personal Home Page Tools'. Khi cần đến các chức năng rộng hơn, Rasmus đã viết ra một bộ thực thi bằng C lớn hơn để có thể truy vấn tới các cơ sở dữ liệu và giúp cho ng−ời sử dụng phát triển các ứng dụng web từ đơn giản đến phức tạp. Rasmus đã quyết định công bố mã nguồn của PHP/FI cho mọi ng−ời xem, sử dụng cũng nh− sửa các lỗi có trong nó đồng thời cải tiến mã nguồn. Trải qua quá trình phát triển hơn 10 năm, đến nay, PHP đã trải qua nhiều phiên bản, với nhiều Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 10 Tin học Trắc địa K47 tính năng đ−ợc cải tiến, phiên bản hiện tại là PHP 5.2.2 đ−ợc công bố ngày 3/5/2007 trên trang web II.1.2 Cơ sở dữ liệu a. Cơ sở dữ liệu MySQL MySQL là một phần mềm mã nguồn mở, MySQL sử dụng GPL (GNU General Public License) để định nghĩa những gì bạn có thể và không thể làm với phần mềm trong các tr−ờng hợp khác nhau. MySQL Server hoạt động trong các hệ thống nhúng hoặc client/server Phần mềm cơ sở dữ liệu MySQL là một hệ thống client/server bao gồm một SQL server đa tiến trình hỗ trợ cho các ứng dụng ở các server khác nhau, nhiều ch−ơng tình và các th− viện phía client và các công cụ cho việc quản trị, và một khối l−ợng lớn các hàm APIs. MySQL hỗ trợ l−u trữ dữ liệu không gian theo chuẩn Open GIS của tổ chức OGC. Đây là một tổ chức quốc tế gồm hơn 250 công ty, chi nhánh và các tr−ờng đại học tham gia vào sự phát triển cho các giải pháp còn là ý niệm mà có thể sẽ hữu dụng với tất cả các loại ứng dụng quản lý dữ liệu không gian. MySQL cài đặt một phần môi tr−ờng SQL với kiểu dữ liệu hình học Geometry Types đ−ợc đ−a ra bởi OGC. Điều này muốn đề cập đến môi tr−ờng SQL đ−ợc mở rộng với một tập các kiểu dữ liệu hình học Geometry Type. Một sql column có kiểu là Geometry đ−ợc hiểu là column có kiểu là Geometry. Các đặc tả cho tập các kiểu dữ liệu SQL geometry, cũng nh− các hàm cho các kiểu dữ liệu này tạo và phân tích các giá trị Geometry. MySQL hỗ trợ l−u trữ dữ liệu không gian theo chuẩn Open GIS của tổ chức OGC. Đây là một tổ chức quốc tế gồm hơn 250 công ty, chi nhánh và các tr−ờng đại học tham gia vào sự phát triển cho các giải pháp còn là ý niệm mà có thể sẽ hữu dụng với tất cả các loại ứng dụng quản lý dữ liệu không gian. MySQL cài đặt một phần môi tr−ờng SQL với kiểu dữ liệu hình học Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 11 Tin học Trắc địa K47 Geometry Types đ−ợc đ−a ra bởi OGC. Điều này muốn đề cập đến môi tr−ờng SQL đ−ợc mở rộng với một tập các kiểu dữ liệu hình học Geometry Type. Một sql column có kiểu là Geometry đ−ợc hiểu là column có kiểu là Geometry. Các đặc tả cho tập các kiểu dữ liệu SQL geometry, cũng nh− các hàm cho các kiểu dữ liệu này tạo và phân tích các giá trị Geometry. Một đặc tính của geometry là bất kỳ thứ gì mà có vị trí, có đặc tính có thể là: − Một thực thể: Ví dụ: một ngọn núi, một cái hồ, một thành phố − Một vùng: Ví dụ một vùng có cùng mã b−u điện, những vùng nhiệt đới. − Một vị trí có thể định nghĩa đ−ợc. Ví dụ, một ngã t−, là một nơi đặc biệt là nơi giao nhau giữa hai con đ−ờng. b. Cơ sở dữ liệu PostgreSQL Đề tài sử dụng PostgreSQL 8.2 làm ngôn ngữ quản trị cơ sở dữ liệu. PostgreSQL 8.2 là một ngôn ngữ quản trị cơ sở dữ liệu quan hệ đối t−ợng (ORDBMS). Ban đầu, PostgreSQL đ−ợc xây dựng trên nền tảng là hệ quản trị cơ sở dữ liệu POSTGRES phiên bản 4.2, đ−ợc phát triển ở tr−ờng đại học Công nghệ máy tính Berkeley California Mỹ. Postgres đã mở đ−ờng cho nhiều t− t−ởng chỉ có thể thực hiện đ−ợc ở một vài hệ cơ sở dữ liệu phát triển rất lâu sau này. PostgreSQL hỗ trợ phần lớn chuẩn SQL và cho phép nhiều công cụ hiện đại: − Các query phức tạp − Các khóa ngoài − Các trigger Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 12 Tin học Trắc địa K47 − Các view − Giao dịch toàn vẹn (Transactional integrity) Hơn nữa, PostgreSQL có thể đ−ợc mở rộng bởi ng−ời sử dụng bằng nhiều cách, ví dụ nh− thêm mới: − Kiểu dữ liệu − Các hàm, các toán tử − Các hàm tập họp − Các ph−ơng thức chỉ mục − Các ngôn ngữ thủ tục PostgreSQL có thể đ−ợc sử dụng, sửa và phân bố một cách miễn phí. Vì thế, đề tài đã chọn lựa PostgreSQL để dùng làm cơ sở dữ liệu. II.2 Tổng quan về bản đồ II.2.1 Bản đồ là gì Bản đồ địa lý là sự biểu thị thu nhỏ qui −ớc của bề mặt trái đất lên mặt phẳng, xây dựng trên cơ sở toán học với sự trợ giúp và sử dụng các ký hiệu qui −ớc để phản ánh sự phân bố, trạng thái và mối quan hệ t−ơng quan của các hiện t−ợng thiên nhiên và xã hội đ−ợc lựa chọn và khái quát hoá để phù hợp với mục đích sử dụng và đặc tr−ng cho khu vực nghiên cứu. Hình 2.1. Biểu thị của bề mặt trái đất lên mặt phẳng Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 13 Tin học Trắc địa K47 II.2.2 Các yếu tố nội dung của bản đồ a. Thuỷ hệ Gồm các đối t−ợng thuỷ văn: biển, sông, kênh, hồ, các hồ chứa n−ớc nhân tạo, mạch n−ớc, giếng, m−ơng máng, ... các công trình thuỷ lợi khác và giao thông thuỷ: bến cảng, cầu cống, thuỷ điện, đập. Theo giá trị giao thông chia sông thành tàu bè đi lại đ−ợc hay không, theo tính chất dòng chảy: có dòng chảy hoặc khô cạn một mùa,... nguồn n−ớc: tự nhiên nhân tạo các kiểu đ−ờng bờ. Khi thể hiện thuỷ hệ ng−ời ta dùng các ký hiệu khác nhau ho phép phản ánh đầy đủ nhất các đặc tính. Bằng những ký hiệu bổ sung, giải thích con số,... thể hiện các đặc tính nh−: chiều rộng, sâu tốc độ h−ớng dòng chảy, chất đáy, điểm đ−ờng bờ chất l−ợng n−ớc,... đối với những đối t−ợng quan trọng ta ghi chú tên gọi địa lý của chúng. Trên bản đồ sông đ−ợc thể hiện bằng một hoặc hai nét phụ thuộc vào độ rộng trên thực địa mức độ quan trọng và tỷ lệ bản đồ. b. Điểm dân c− Là một trong các yếu tố quan trọng nhất của bản đồ địa hình đ−ợc đặc tr−ng bởi kiểu c− trú: (TT,TN), dân số ý nghĩa hành chính chính trị. Đặc điểm của dân c− đ−ợc biểu thị bằng độ lớn màu sắc, kiểu dáng của ký hiệu và ghi chú tên gọi. Ví dụ: trên bản đồ địa hình tỷ lệ 1/5000 biểu thị tất cả các công trình xây dựng theo tỷ lệ, đặc tr−ng của vật liệu xây dựng ... Trên bản đồ 25.000 đến 100.000 biểu thị các điểm dân c− tập trung bằng các ô phố và khái quát đặc tr−ng chất l−ợng. Các công trình xây dựng độc lập biểu thị bằng ký hiệu phi tỷ lệ, cố gắng giữ sự phân bố. Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 14 Tin học Trắc địa K47 c. Đ−ờng giao thông Gồm đ−ờng sắt, đ−ờng bộ, đ−ờng thuỷ, đ−ờng hàng không. Đặc tính của các đ−ờng giao thông đ−ợc thể hiện khá đầy đủ, tỉ mỉ về khái niệm giao thông và trạng thái cấp quản lý đ−ờng. Mạng l−ới đ−ờng giao thông thể hiện chi tiết hay khái l−ợc phụ thuộc vào tỷ lệ bản đồ, cần thiết phải phản ánh mật độ, h−ớng và vị trí của đ−ờng giao thông. Đ−ờng sắt phân theo chiều rộng, số đ−ờng rầy, hiện trạng và số dạng sức kéo. Trên đ−ờng sắt biểu thị nhà ga, các vật kiến trúc, thiết bị đ−ờng sắt (cầu, cống, tháp n−ớc, trạm canh...), đ−ờng tàu điện. Đ−ờng bộ phân ra theo tình trạng kỹ thuật, chiều rộng, cấp quản lý, giá trị giao thông Để nêu bật các đặc tr−ng trên bản đồ sử dụng các ký hiệu với màu sắc, kiểu dán khác nhau và các ghi chú giải thích. Khi lựa chọn biểu thị đ−ờng giao thông phải xét đến ý nghĩa của đ−ờng sá, −u tiên biểu thị những con đ−ờng đảm bảo mối quan hệ giữa các điểm dân c− và các đầu nút giao thông, các trung tâm văn hoá – kinh tế, ... d. Các đối t−ợng kinh tế xã hội Đ−ờng dây thông tin, dẫn điện, dầu, khí đốt, các đối t−ợng kinh tế, văn hoá, lịch sử, sân bay, cảng e. Ranh giới hành chính - chính trị Bao gồm ranh giới quốc gia và ranh giới cấp hành chính tuỳ thuộc vào vào tỷ lệ và mục đích sử dụng của bản đồ. f. Lớp phủ thực vật - thổ nh−ờng Trên bản đồ biểu thị các loại rừng, cây bụi, v−ờn cây, đồn điền, ruộng muối, đất mặn, đầm lầy. Ranh giới các khu vực đ−ợc biểu thị chính xác về ph−ơng diện đồ hoạ, các loại thực vật và thổ nh−ờng khác nhau đ−ợc thể hiện bằng ký hiệu qui −ớc đặc tr−ng. Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 15 Tin học Trắc địa K47 Ví dụ: Đầm lầy phân ra thành đầm lầy qua đ−ợc, đầm lầy không qua đ−ợc và khó qua. Rừng, rừng già, rừng th−a, rừng non, rừng mới trồng ... Các loại thực vật tự nhiên và ng−ời trồng ... Trên bản đồ chuyên đề lớp phủ thực vật và thổ nh−ờng th−ờng không đ−ợc thể hiện hoặc thể hiện sơ l−ợc phụ thuộc vào nội dung, tỷ lệ và mục đích sử dụng của bản đồ. g. Địa hình Trên bản đồ địa lý đ−ợc thể hiện bằng các đ−ờng bình đồ. Một số dạng riêng biệt thể hiện bằng ký hiệu (vực, khe xói, đá tảng, đá vụn). Độ cao so với mặt biển của một số điểm đặc tr−ng Các đối t−ợng sơn băng (dãy núi, đồng bằng, thung lũng yên ngựa, địa hình caster, đ−ờng phân thuỷ, tụ thuỷ, ...). Khoảng cao đều giữa các đ−ờng bình độ trên bản đồ địa hình đ−ợc qui định trong các qui phạm theo tỷ lệ bản đồ và đặc điểm khu vực (đồng bằng hoặc núi). Ví dụ: bản đồ 1/50.000 khoảng cao đều bằng 10-20 m; 1/100.000 khoảng cao đều 20-40 m. Để thể hiện đầy đủ các tính chất đặc tr−ng của địa hình, đặc biệt là các vùng đồng bằng, ng−ời ta vẽ thêm các đ−ờng bình độ nửa khoảng cao đều và đ−ờng bình độ phụ. Các đ−ờng bình độ cái đ−ợc đánh số, các đ−ờng bình độ ở yên núi bổ sung vạch chỉ dốc. Dáng đất (địa hình) có khi đ−ợc thể hiện bằng ph−ơng pháp tô bóng địa hình, hoặc phân tầng màu theo độ cao hoặc kết hợp giữa các ph−ơng pháp. Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 16 Tin học Trắc địa K47 Hình 2.2. Mô hình các lớp dữ liệu trong GIS h. Ghi chú trên bản đồ Ghi chú trên bản đồ là các chữ viết nhằm giải thích theo ký hiệu, các địa danh, tên các đối t−ợng. Chúng kết hợp với ký hiệu trên bản đồ và làm phong phú nội dung của bản đồ. Ghi chú bản đồ giúp chúng ta khái quát nội dung của bản đồ cũng nh− phân biệt các đối t−ợng. * Phân loại ghi chú trên bản đồ: − Có nhiều loại ghi chú khác nhau − Tên riêng của các đối t−ợng: tên thành phố, tên tỉnh, ... − Ghi chú chỉ dẫn − Ghi chú giải thích tính chất của các đối t−ợng, thuật ngữ địa lý, các đặc tr−ng về số l−ợng, chất l−ợng ... − Ghi chú có khả năng chuyển tải thông tin bằng font chữ, kích th−ớc, màu sắc, định h−ớng ...Ghi chú th−ờng đ−ợc bố trí gần với các đối t−ợng liên quan Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 17 Tin học Trắc địa K47 II.2.3 Các phép toán cơ bản trên bản đồ a. Phép chiếu bản đồ Phép chiếu bản đồ là sự biểu diễn bề mặt Elipsoid hay mặt cầu của Trái Đất lên mặt phẳng bằng các quy tắc toán học xác định. Các quy tắc này đ−ợc xác định thông qua ph−ơng trình của phép chiếu bản đồ, th−ờng gọi tắt là ph−ơng trình chiếu. Có bốn hệ ph−ơng trình th−òng gặp nhất t−ơng ứng với hai hệ toạ địa lí và hệ toạ độ cực cầu khi biểu diễn trên mặt phẳng bằng hai hệ toạ độ vuông góc và hệ toạ độ cực phẳng. Từ hệ toạ độ địa lí, ta có: x = f1 (φ, λ) y = f2 (φ, λ) và ρ = f3 (φ, λ) δ = f4 (φ, λ) Trong đó φ, λ là toạ độ địa lí của một điểm nào đó trên bề mặt đ−ợc chiếu ; x, y là toạ độ vuông góc và ρ, δ là toạ độ cực phẳng t−ơng ứng của điểm đó trên mặt phẳng chiếu. b. Từ hệ toạ độ cực cầu, ta có: x = f5 (Z, α) y = f6 (Z, α) và ρ = f7 (Z, α) δ = f8 (Z, α) Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 18 Tin học Trắc địa K47 Trong đó Z, α là toạ độ cực cầu của một điểm nào đó trên bề mặt đ−ợc chiếu; x, y là toạ độ vuông góc và ρ, δ là toạ độ cực phẳng t−ơng ứng của điểm đó trên mặt phẳng chiếu. Toạ độ của một điểm trong hệ toạ độ cực cầu Z, α có thể tính chuyển sang φ, λ của hệ toạ độ địa lí bằng công thức chuyển đổi đã nêu trong mục hệ thống toạ độ cực cầu. Cũng có thể chuyển đổi toạ độ của một điểm từ hệ toạ độ cực phẳng sang hệ toạ độ vuông góc phẳng và ng−ợc lại theo công thức chung: x = ρ.cosδ y = ρ.sinδ Từ đó, ng−ời ta đ−a ra một hệ ph−ơng trình chung nhất cho các phép chiếu bản đồ là hệ ph−ơng trình sau: x = f1 (φ, λ) y = f2 (φ, λ) Các hàm số f1 và f2 là những hàm số đơn trị và liên tục, ngoại trừ một số điểm có các toạ độ φ, λ bị chặn bởi khung của tờ bản đồ. Tính chất của các phép chiếu phụ thuộc vào tính chất và đặc điểm của các hàm số f1 và f2. Có bao nhiêu hàm f1, f2 thì có bấy nhiêu loại phép chiếu. Mỗi một phép chiếu bản đồ lại có một dạng kinh vĩ tuyến riêng của nó. Các kinh vĩ tuyến đ−ợc biểu diễn trên bản đồ đ−ợc gọi là l−ới bản đồ. Ph−ơng trình chiếu cho ta biết đặc điểm định dạng của hệ thống l−ới bản đồ này. Hệ thống l−ới bản đồ có hình dáng đơn giản nhất khi ph−ơng trình chiếu có dạng x = f1 (φ), y = f2 (λ). Lúc đó, kinh tuyến và vĩ tuyến đều đ−ợc biểu diễn thành những đ−ờng thẳng vuông góc với nhau. Nếu x = f1 (φ), y = f2 (φ, λ) thì vĩ tuyến đ−ợc biểu diễn thành những đ−ờng thẳng song song với trục Y, kinh tuyến là những đ−ờng cong. Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 19 Tin học Trắc địa K47 Nếu x = f1 (φ, λ), y = f2 (λ) thì kinh tuyến đ−ợc biểu diễn thành những đ−ờng thẳng song song với trục X, vĩ tuyến là những đ−ờng cong.Nếu x = f1 (φ, λ), y = f2 (φ, λ) thì ta có thể nhận đ−ợc vô số phép chiếu có l−ới bản đồ khác nhau. Hình dáng của chúng phụ thuộc vào f1 và f2. II.2.4 Các phép phân tích không gian trong GIS GIS cung cấp rất nhiều phép toán phân tích không gian trên mô hình dữ liệu vector. Các phép toán này dựa trên cơ sở so sánh logic tập các đối t−ợng này với tập đối t−ợng khác. Sử dụng vùng đệm (Buffer) Cho tr−ớc một đối t−ợng và một giá trị khoảng cách, phép toán buffer sẽ tạo ra một vùng đệm là một polygon bao phủ xung quanh tất cả các điểm mà khoảng cách từ chúng đến đối t−ợng nhỏ hơn hoặc bằng khoảng cách đề ra. So sánh (Difference) Cho tr−ớc hai đối t−ợng giao nhau là đối t−ợng cơ sở và đối t−ợng so sánh. Phép toán difference sẽ tạo ra một đối t−ợng mới trong đó giữ nguyên phần của đối t−ợng cơ sở không nằm trong đối t−ợng so sánh. Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 20 Tin học Trắc địa K47 Cắt ngắn (Clip) Cho tr−ớc một đối t−ợng và một hình chữ nhật. Phép toán clip sẽ tạo ra một đối t−ợng mới bằng cách cắt đối t−ợng đầu vào theo hình chữ nhật Phân cách (Intersect) Cho tr−ớc hai đối t−ợng. Phép toán intersect sẽ tạo ra một đối t−ợng mới chính là phần giao giữa hai đối t−ợng. Bao lồi (Convex hull) Cho tr−ớc một đối t−ợng, phép toán convex hull sẽ tạo ra một đối t−ợng mới là một polygon bằng cách nối tất cả các điểm ở biên của đối t−ợng đó. Nói cách khác, đây là polygon nhỏ nhất bao kín đối t−ợng. So sánh khác biệt (Symmetric difference) Phép toán symmetric difference sẽ tiến hành so sánh vị trí hai đối t−ợng và tạo ra một đối t−ợng mới từ hai đối t−ợng ban đầu và bỏ đi phần giao giữa chúng. Hình 2.3 Các phép phân tích không gian Mô hình dữ liệu vector cho ta nhiều thao tác hơn trên các đối t−ợng so với mô hình raster. Việc tính diện tích, đo khoảng cách của các đối t−ợng đ−ợc thực hiện bằng các tính toán hình học từ toạ độ của các đối t−ợng thay vì việc tính toán trên các điểm ảnh của mô hình raster. Các thao tác trong mô Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 21 Tin học Trắc địa K47 hình này nói chung th−ờng chính xác hơn. Thí dụ, tính diện tích, chu vi của một vùng nào đó trên cơ sở đa giác sẽ chính xác hơn việc đếm các điểm ảnh trên bản đồ có các phép chiếu khác nhau. Một số thao tác ở mô hình này cũng thực hiện nhanh hơn nh− tìm đ−ờng đi trong mạng l−ới giao thông dựa trên lý thuyết đồ thị. Tuy nhiên, ở một số thao tác khác thì mô hình này sẽ chậm hơn so với mô hình raster, chẳng hạn khi thực hiện nạp chồng các lớp của bản đồ, các thao tác vùng đệm. Mô hình dữ liệu vector hình thành trên cơ sở quan sát đối t−ợng của thế giới thực. Quan sát các đặc tr−ng theo h−ớng đối t−ợng là ph−ơng pháp tổ chức thông tin trong các hệ GIS để định h−ớng các hệ thống quản trị CSDL. Chúng tối −u trong việc l−u trữ số liệu bản đồ vì chỉ cần l−u các đ−ờng biên của các đặc tr−ng mà không cần phải l−u toàn bộ vùng của chúng. Do các thành phần đồ hoạ biểu diễn các đặc tr−ng của bản đồ liên kết trực tiếp với các thuộc tính của CSDL nên ng−ời dùng dễ dàng tìm kiếm và hiển thị các thông tin từ CSDL. II.2.5 Tổng quan các kiến trúc chung của các WebGIS Hình 2.4. Kiến trúc 3 tầng (3-tier) Bất cứ công nghệ WebGIS nào cũng phải thỏa mãn tr−ớc hết kiến trúc 3-tier thông dụng của môt ứng dụng Web. Tùy thuộc vào từng công nghệ Application server Database Client, Browser Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 22 Tin học Trắc địa K47 riêng biệt của từng hãng mà chúng có khả năng phát triển, mở rộng thành kiến trúc đa tầng (n-tier) hay không. Kiến trúc 3-tier đ−ợc mô tả nh− sau: Chúng gồm 3 thành phần cơ bản, đại diện cho 3 tầng: Database (Data tier): là nơi l−u trữ các dữ liệu địa lý bao gồm cả các dữ liệu không gian và phi không gian. Các dữ liệu này đ−ợc quản trị bởi các hệ quản trị cơ sở dữ liệu nh− ORACLE, MS SQL SERVER, ESRI SDE, POSGRESQL,… hoặc là các file dữ liệu dạng flat nh− shapefile, tab, XML,… Các dữ liệu này đ−ợc thiết kế, cài đặt và xây dựng theo từng quy trình đặc thù của từng cá thể hay tổ chức. Tùy theo quy mô và yêu cầu của hệ thống mà tổ chức chọn lựa công nghệ quản trị cơ sở dữ liệu cho phù hợp. Application Server (Bussiness Tier): th−ờng đ−ợc tích hợp trong một web server nào đó, ví dụ nh− các webserver nổi tiếng nh− Tomcat, Apache, Internet Information Server. Đó là một ứng dụng phía server nhiệm vụ chính của nó th−ờng là tiếp nhận các request từ client, lấy dữ liệu từ cơ sở dữ liệu theo yêu cầu client, trình bày dữ liệu theo cấu hình định sẵn hoặc theo yêu cầu của client và trả (response) kết quả về theo yêu cầu. Tùy theo dạng client mà kết quả về khác nhau: có thể là một hình ảnh dạng bimap (jpeg, gif, png) hay dạng vector đ−ợc mã hóa nh− SVG, KML, GML,…Một khi dạng vector đ−ợc trả về thì việc trình bày hình ảnh bản đồ đ−ợc đảm nhiệm bởi Client (ta gọi đó là thick client), thậm trí client có thể xử lý một số bài tóan về không gian. Thông th−ờng các response và request đều theo chuẩn HTTP POST hoặc GET. Nếu theo công nghệ Web Service thì chúng có thể đ−ợc mã hóa các thông điệp bằng các định dạng XML. Client (Presentation tier): thông th−ờng đơn thuần là một browser nh− InternetExplorer, FireFox, Nescape,…để mở các trang web theo URL định sẵn. Các ứng dụng cient có thể là 1 website, Applet, Flash,… đ−ợc viết bằng các công nghệ chuẩn mà W3C đã chứng thực. Các Client đôi khi cũng là một ứng dụng desktop t−ơng tự nh− phần mềm MapInfo, ArcMap,… Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 23 Tin học Trắc địa K47 Kiến trúc 3-tier là kiến trúc phổ cập nhất dành cho các ứng dụng web, tuy nhiên trong thực tế nhằm để giải quyết các vấn đề chúng ta đòi hỏi cần phải kết nối, trao đổi nhiều thành phần của hệ thống lại với nhau hoặc giữa các hệ thống lại với nhau để có thể đ−a cho ngừơi sử dụng những thông tin hữu ích nhất có thể có. Với nhu cầu đó kiến trúc 3-tier sẻ trở nên không linh họat và nặng nề trong vận hành. Trong bối cảnh nh− vậy các kiến trúc n-tier sẻ đ−ợc phát triển và mở rộng cho các hệ thống thông tin. Kiến trúc n-tier th−ờng đ−ợc áp dụng trong các hệ thống phân tán. Khái niệm “phân tán” ở đây không ám chỉ về mặt địa lý mà chỉ nói đến các hệ thống độc lập nh−ng có khả năng kết hợp với nhau thành 1 hệ thống lớn hơn. Tính phân tán của hệ thống có thể là phân tán các ứng dụng hoặc cơ sở dữ liệu. Hình 2.5. Kiến trúc n-tier giữa các hệ thống Để thực hiện một yêu cầu của ng−ời sử dụng hệ thống theo kiến trúc n- tier cần phải truy cập, trao đổi thông điệp (message) và xử lý qua nhiều tầng Application của nhiều hệ thống hay thành phần khác nhau. Trong nhiều mô hình khác, kiến trúc n-tier còn đ−ợc thể hiện qua sự t−ơng tác trực tiếp của Application Database Client, Browser Application Database Client, Browser Application Database Client, Browser System 1 System 2 System 3 Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 24 Tin học Trắc địa K47 client với nhiều hệ thống . Kiến trúc n-tier này hiện nay đang phát triển rất mạnh song song với phát triển các công nghệ khác, đặc biệt là công nghệ Webservice theo SOA (Serviced-Oriented Architecture). Một trong những minh chứng cụ thể là sự bùng nố các website dựa trên các dịch vụ của Google và các website GIS theo chuẩn mở OGC (Open Geospatial Consortium). Hình 2.5. Kiến trúc n-tier t−ơng tác giữa client với các hệ thống. Thuật ngữ Mashup cũng đ−ợc xuất phát từ đây, có nghĩa là một website sử dụng nhiều nội dung từ các hệ thống khác nhau. Sức hấp dẫn của kiến trúc này là các tổ chức có thể tận h−ởng các nguồn dữ liệu mà mình không thể làm đ−ợc để áp dụng vào các ứng dụng với các dữ liệu của riêng mình. II.3 Những khái niệm cơ bản về hệ thống bản đồ trực tuyến II.3.1 Khái niệm Bản đồ trực tuyến (webmap) Là 1 webservices (th−ờng đ−ợc gọi là - WMS). Webservices luôn gắn kèm với webserver, vì thế nên cần thiết phải xây dựng một webserver dùng Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 25 Tin học Trắc địa K47 cho việc quản lý trang web (trong mạng LAN hoặc trên Internet...). Webserver này có thể là Apache, IIS... II.3.2 Giao thức IP (Internet Protocol - Giao thức Liên mạng) Là một giao thức h−ớng dữ liệu đ−ợc sử dụng bởi các máy chủ nguồn và đích để truyền dữ liệu trong một liên mạng chuyển mạch gói. Dữ liệu trong một liên mạng IP đ−ợc gửi theo các khối đ−ợc gọi là các gói (packet hoặc datagram). Cụ thể, IP không cần thiết lập các đ−ờng truyền tr−ớc khi một máy chủ gửi các gói tin cho một máy khác mà tr−ớc đó nó ch−a từng liên lạc với. Giao thức IP cung cấp một dịch vụ gửi dữ liệu không đảm bảo (còn gọi là cố gắng cao nhất), nghĩa là nó hầu nh− không đảm bảo gì về gói dữ liệu. Gói dữ liệu có thể đến nơi mà không còn nguyên vẹn, nó có thể đến không theo thứ tự (so với các gói khác đ−ợc gửi giữa hai máy nguồn và đích đó), nó có thể bị trùng lặp hoặc bị mất hoàn toàn. Nếu một phần mềm ứng dụng cần đ−ợc bảo đảm, nó có thể đ−ợc cung cấp từ nơi khác, th−ờng từ các giao thức giao vận nằm phía trên IP. IP có dạng xxx.xxx.xxx.xxx, các giá trị này đ−ợc cung cấp bởi 1 tổ chức chung trên thế giới gọi là NIC, các tổ chức NIC đ−ợc chia thành các cấp nhỏ hơn ở mỗi quốc gia, mỗi thành phố, mỗi cơ quan, cuối cùng đến mỗi máy tính, IP đ−ợc đảm bảo là duy nhất, do đó giao thức IP cũng có thể đ−ợc gọi là địa chỉ IP của 1 máy tính. Địa chỉ Internet (IP) đang đ−ợc sử dụng hiện tại là (IPv4) có 32 bit chia thành 4 Octet ( mỗi Octet có 8 bit, t−ơng đ−ơng 1 byte ) cách đếm đều từ trái qua phải bít 1 cho đến bít 32, các Octet tách biệt nhau bằng dấu chấm (.) và biểu hiện ở dạng thập phân đầy đủ là 12 chữ số. Ví dụ một địa chỉ Internet: 203.168.110.224 Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 26 Tin học Trắc địa K47 (Địa chỉ IP t−ơng lai đ−ợc sử dụng là IPv6 có 128 bit dài gấp 4 lần của IPv4. Version IPv4 có khả năng cung cấp 232 = 4 294 967 296 địa chỉ. Còn Version IPv6 có khả năng cung cấp 2128 địa chỉ ). II.3.3 Tên miền (domain name) Địa chỉ IP không mang thông tin về địa lý, tổ chức hay ng−ời dùng. Do đó ng−ời ta xây dựng hệ thống đặt tên gọi là Domain Name System để cung cấp cho ng−ời dùng cách đặt tên cho các máy tính với cách đặt tên thông th- −ờng quen thuộc. Thực tế ng−ời sử dụng không cần biết đến địa chỉ IP mà chỉ cần nhớ tên Miền là truy nhập đ−ợc. Một máy tính có thể có nhiều tên trên mạng, nh−ng mỗi tên chỉ là duy nhất. Giống nh− địa chỉ IP, tên miền (Domain name) bao gồm nhiều thành phần cấu tạo nên cách nhau bởi dấu chấm (.) . Tên miền không nhất thiết có 4 phần nh− địa chỉ IP, chúng có thể chỉ có hai phần: một vùng mức đỉnh chẳng hạn nh− "edu" hay "com" (th−ờng dành để chỉ thể loại của tổ chức có máy chủ, ví dụ "edu" (education) dành cho các tổ chức giáo dục), và tr−ớc nó là tên miền con ("msu" trong ví dụ "msu.edu"), cả tên không quá 255 ký tự, và mỗi phần tên không quá 63 ký tự. Một domainame thông th−ờng có dạng: [Tên miền con].[Tên miền mức đỉnh] Tên miền mức đỉnh (Top Level Domain - TLD): bao gồm các mã quốc gia của các n−ớc tham gia Internet đ−ợc quy định bằng hai chữ cái theo tiêu chuẩn ISO -3166 nh− Việt nam là VN, Anh quốc là UK v.v.. và 7 lĩnh vực dùng chung(World Wide Generic Domains) nh− bảng sau: Tên miền Mô tả com Các tổ chức th−ơng mại, doanh nghiệp edu Các tổ chức giáo dục gov Các tổ chức chính phủ Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 27 Tin học Trắc địa K47 int Các tổ chức Quốc tế mil Các tổ chức quân sự net Các nhà cung cấp dịch vụ mạng org Các tổ chức không thuộc một trong các loại trên 7 Lĩnh vực dùng chung Tên miền Quốc gia t−ơng ứng us Mỹ ca Canada fi Phần Lan fr Pháp th Thái Lan ru Nga vn Việt Nam 7 mã quốc gia của một số n−ớc theo tiêu chuẩn ISO – 3166 Tên_miền_con( Second Level ): Đối với các quốc gia nói chung tên miền mức hai này do Tổ chức quản lý mạng của quốc gia đó định nghĩa, có thể định nghĩa khác đi, nhiều hơn hay ít đi nh−ng thông th−ờng các quốc gia vẫn định nghĩa các Lĩnh vực kinh tế, xã hội của mình t−ơng tự nh− 7 lĩnh vực dùng chung nêu trên. Ví dụ: ciren.gov.vn là tên miền máy chủ Web của Trung tâm thông tin Bộ tài nguyên và Môi tr−ờng, trong đó: − “ciren”: tên máy chủ (host) − “gov”: tên miền cấp 2 (second domain name level) − “vn”: tên miền mức đỉnh (Top level domain name - TLD) Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 28 Tin học Trắc địa K47 II.3.4 DNS (Domain Name Server) DNS, Domain Name Server, hay còn gọi là máy chủ tên miền - là một trong những khâu vô cùng quan trọng trong tiến trình duyệt web. Thông th−ờng, ng−ời dùng Internet không thể nhớ hết các con số trên địa chỉ IP, nh−ng vì một lý do nào đó địa chỉ IP cũng có thể thay đổi. Vì vậy, tất cả các máy chủ trên Internet đều phải có một tên sao cho dễ đọc, th−ờng đ−ợc gọi là “tên miền” – Domain names. Ví dụ, tên miền www.vnexpress.net là tên cố định, dễ đọc hơn so với việc phải nhớ địa chỉ IP 210.245.0.22. Tên miền www.vnexpress.net gồm có 3 phần: − Tên máy ("www") − Tên miền ("vnexpress.net") − Tên miền cấp một ("net") Tên miền đ−ợc quản lý bởi một công ty, tên là VeriSign. VeriSign tạo ra các tên miền “cấp một” và đảm bảo tất cả tên miền khác trong tên miền cấp một là duy nhất. VeriSign cũng duy trì các thông tin liên quan đến mỗi địa chỉ tên miền trên cơ sở dữ liệu “whois”. Tên máy đ−ợc tạo bởi công ty cung cấp dịch vụ l−u trữ tên miền. “www” là tên máy phổ biến, nh−ng nhiều nơi nó có thể đ−ợc thay thế bởi tên khác, ví dụ tên máy thể hiện một khu vực địa lý, ví dụ nh− “encarta.msn.com”, tên miền của Microsoft's Encarta encyclopedia, tên máy "encarta" đ−ợc thay thế cho www. Tập hợp các máy chủ tên miền (domain name servers - DNS) ánh xạ các tên miền dễ đọc tới các địa chỉ IP t−ơng ứng. Những máy chủ này l−u trữ cơ sở dữ liệu tên miền ánh xạ đến địa chỉ IP, và chúng đ−ợc bố trí nhiều nơi trên mạng Internet. Các công ty, các nhà cung cấp dịch vụ Internet hoặc các tr−ờng đại học đều duy trì máy chủ tên miền cỡ nhỏ để ánh xạ các tên máy Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 29 Tin học Trắc địa K47 tới các địa chỉ IP t−ơng ứng. Tại VeriSign, cũng có các máy chủ tên miền trung tâm sử dụng dữ liệu đ−ợc cung cấp bởi VeriSign để ánh xạ các tên miền đến địa chỉ IP. Nếu bạn gõ địa chỉ server.htm vào trình duyệt web, trình duyệt sẽ tách tên miền www.howstuffworks.com và gửi nó tới máy chủ tên miền, sau đó máy chủ tên miền sẽ gửi ng−ợc lại địa chỉ IP đúng với tên miền www.howstuffworks.com. Trên máy chủ UNIX, bạn có thể biết các thông tin t−ơng tự bằng cách sử dụng lệnh nslookup và đơn giản chỉ cần gõ vào một cái tên www.howstuffworks.com trên dòng lệnh, câu lệnh sẽ tìm kiếm tên máy chủ và chuyển địa chỉ IP t−ơng ứng cho bạn. Nh− vậy, Internet đ−ợc tạo thành bởi hàng triệu máy tính, mỗi máy sẽ có địa chỉ IP duy nhất. Trong số đó, rất nhiều các máy tính là các máy chủ cung cấp dịch vụ cho các máy khác trên Internet, ví dụ nh− máy chủ e-mail, máy chủ web, máy chủ FTP, máy chủ Gopher, máy chủ Telnet… II.3.5 Web Server Là một ch−ơng trình cung cấp dịch vụ triển khai 1 website trong LAN (Local Area Network) hoặc Internet. Có rất nhiều phần mềm để làm webserver.Chẳng hạn nh−: Apache, IIS… Trên phía Client: webserver chỉ có thể hiểu đ−ợc ngôn ngữ HTML và javascript. Webserver là trình chuyển đổi từ server sang client Thành phần Web Server phục vụ việc xử lý dữ liệu từ cơ sở dữ liệu theo yêu cầu ng−ời dùng và kết xuất dữ liệu theo định dạng đ−ợc yêu cầu. Trong Web Server có hai thành phần con: Web Gis Server: hoạt động theo cơ chế dịch vụ web dữ liệu không gian theo chuẩn mở OpenGIS. Thành phần này cung cấp các dịch vụ web nhằm Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 30 Tin học Trắc địa K47 phục vụ truy xuất, xử lý và đóng gói các dữ liệu không gian theo yêu cầu ng−ời sử dụng thông qua các đặc tả OpenGIS. Ng−ời sử dụng có thể dùng các ứng dụng nh− ArcMap, MapInfo,… để lấy dữ lịêu về d−ới dạng hình ảnh đã đ−ợc quy chiếu hoặc dữ liệu đ−ợc mã hóa dạng GML (nếu cho phép). Điều này bảo đảm việc chia sẻ dữ liệu trên Internet mà không mất đi quyền cập nhật dữ liệu của Sở TN&MT. Web application: là thành phần chính trong dự án nhằm kết xuất các thông tin GIS d−ới dạng Web phục vụ yêu cầu ng−ời sử dụng. Thành phần này bản chất là 1 ứng dụng Web có thể truy xuất dữ liệu GIS qua Web GIS Server hoặc truy cập các dữ liệu không gian hoặc phi không gian trực tiếp cơ sở dữ liệu web thông qua các th− viện kết nối có sẵn. II.3.6 Cơ sở dữ liệu thông tin địa lý Một cơ sở dữ liệu của hệ thống thông tin địa lý có thể chia ra làm 2 loại số liệu cơ bản: số liệu không gian và phi không gian. Mỗi loại có những đặc điểm riêng và chúng khác nhau về yêu cầu l−u giữ số liệu, hiệu quả, xử lý và hiển thị. Số liệu không gian là những mô tả số của hình ảnh bản đồ, chúng bao gồm toạ độ, quy luật và các ký hiệu dùng để xác định một hình ảnh bản đồ cụ thể trên từng bản đồ. Hệ thống thông tin địa lý dùng các số liệu không gian để tạo ra một bản đồ hay hình ảnh bản đồ trên màn hình hoặc trên giấy thông qua thiết bị ngoại vi, … Số liệu phi không gian là những diễn tả đặc tính, số l−ợng, mối quan hệ của các hình ảnh bản đồ với vị trí địa lý của chúng. Các số liệu phi không gian đ−ợc gọi là dữ liệu thuộc tính, chúng liên quan đến vị trí địa lý hoặc các đối t−ợng không gian và liên kết chặt chẽ với chúng trong hệ thống thông tin địa lý thông qua một cơ chế thống nhất chung. Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 31 Tin học Trắc địa K47 Cơ sở dữ liệu sử dụng cho việc l−u trữ thông tin bản đồ đ−ợc sử dụng trong đề tài là cơ sở dữ liệu postgreSQL đ−ợc cài đặt thêm addin postGIS. Trong hệ thống thông tin địa lý bao gồm dữ liệu địa lý và dữ liệu thuộc tính: * Dữ liệu địa lý: bao gồm các thể loại − ảnh hàng không vũ trụ − Bản đồ trực ảnh (orthophotomap) − Bản đồ nền địa hình lập từ ảnh hàng không - vũ trụ − Bản đồ địa hình lập từ số liệu đo đạc mặt đất − Bản đồ địa chính − Bản đồ địa lý tổng hợp từ các loại bản đồ địa hình. Các loại ảnh và bản đồ nói trên đều ở dạng số và l−u lại d−ới dạng vector hoặc raster hỗn hợp raster-vector. Các dữ liệu địa lý d−ới dạng vector đ−ợc phân lớp thông tin yêu cầu của việc tổ chức các thông tin. Thông th−ờng ng−ời ta hay phân lớp theo tính chất thông tin: lớp địa hình, lớp thuỷ văn, lớp đ−ờng giao thông, lớp dân c−, lớp thức phụ, lớp giới hành chính v.v.. Trong nhiều tr−ờng hợp để quản lý sâu hơn, ng−ời ta sẽ phân lớp chuyên biệt hơn nh− trong lớp thuỷ văn đ−ợc phân thành các lớp con: các lớp sông lớn, sông nhỏ, lớp biển, lớp ao hồ,v.v… Các thông tin ở dạng raster là các thông tin nguồn và các thông tin hỗ trợ, không gian quản lý nh− một đối t−ợng địa lý. Các thông tin ở dạng vector tham gia trực tiếp quản lý và đ−ợc định nghĩa nh− những đối t−ợng địa lý. Các đối t−ợng này thể hiện ở 3 dạng: điểm, đ−ờng và vùng hoặc miền. Mỗi đối t−ợng đều có thuộc tính hình học riêng nh− kích th−ớc, miền vị trí. Vấn đề đ−ợc đặt ra là tổ chức l−u trữ và hiển thị các thông tin vector nh− thế nào để thoả mãn các yêu cầu sau: Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 32 Tin học Trắc địa K47 Thể hiện đầy đủ các thông tin cần thiết: − Độ d− và độ thừa nhỏ nhất − Truy cập thông tin nhanh − Cập nhật thông tin dễ dàng và không sai sót (xoá bỏ thông tin không cần thiết, bổ sung thông tin mới, chỉnh lý các thông tin đã lạc hậu), thuận lợi cho việc hiển thị thông tin * Dữ liệu thuộc tính (Attribute): là các thông tin giải thích cho các hiện t−ợng địa lý gắn liền với hiện t−ợng địa lý. Các thông tin này đ−ợc l−u trữ dữ liệu thông th−ờng. Vấn đề đặt ra là là phải tìm mối quan hệ giữa thông tin địa lý và thông tin thuộc tính. Từ thông tin ta có thể tìm ra đ−ợc các thông tin kia trong cơ sở dữ liệu. Một CSDL đ−ợc phân thành các mức khác nhau. ở đây có thể xem nh− chỉ có một CSDL đơn giản và có một hệ phần mềm quản trị CSDL. Hình 2.7. Cấu trúc hệ cơ sở dữ liệu II.3.7 Map server Mapserver là môi tr−ờng phát triển mã nguồn mở dùng cho việc phát triển xây dựng các ứng dụng bản đồ trên môi tr−ờng mạng. Đây là một ứng dụng cổng giao diện phổ biến (Common Gateway Interface - CGI) thực hiện trao đổi trực tuyến, có ảnh h−ởng tới hệ thông tin địa lý và xử lý thông tin hình ảnh một cách nhanh chóng và chắc chắn. Mapserver đ−ợc phát triển một Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 33 Tin học Trắc địa K47 cách sáng tạo bởi tr−ờng đại học Minnesota và đ−ợc cải tiến về mặt chức năng và tiếp tục đ−ợc phát triển thêm bởi nhóm DM Solutions. Nhóm này sử dụng MapServer để phát triển, tùy biến các ứng dụng bản đồ trực tuyến xử lý cho phía clients. Tính mềm dẻo và đáng tin cậy của MapServer làm nó trở thành một ứng dụng lý t−ởng để dựa vào và để xây dựng các xử lý theo yêu cầu ở mức độ cao. II.3.8 Map Services Hình 2.8. MapServices MapServices là một tập hợp các giao diện lập trình và tài liệu cần thiết cho lập trình. MapServices chứa các module phổ biến cho giao diện, nh− là module dịch vụ phiên ng−ời dùng, module quản lý phần cứng, v.v.. Nó cũng là một kết nối giữa MapCenter server và hệ thống MapBase. Các chức năng đã sử dụng đã đ−ợc tạo ra bởi hệ thống, nhờ có các giao diện: HTTP API: phía trong giao diện sử dụng riêng chuyên dùng cho các ứng dụng mạng (Tất cả các chức năng của MapCenter và MapBase) – có hiệu quả cao, truyền dữ liệu sử dụng một mẫu không chuẩn ở trong. HTTP/XML API: một giao diện t−ơng thích với giao diện của phiên bản MapCenter tr−ớc đó (đã lựa chọn các chức năng của MapCenter và MapBase) – có hiệu quả, truyền files dữ liệu của chuẩn XML của cấu trúc tr−ớc khi xác định đặc điểm. Web Services: Giao diện t−ơng thích với ứng dụng web WSDL (đã lựa chọn các chức năng của MapCenter và MapBase) – có hiệu quả ít hơn, truyền Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 34 Tin học Trắc địa K47 file dữ liệu sử dụng chuẩn SOAP (Simple Object Access Protocol) cho phép nhanh chóng tích hợp MapCenter và MapBase với hệ điều hành bên ngoài. Các giao diện cho phép sự hiện hành của mọi kiểu ứng dụng trên nhiều kiểu nền tảng và nhập nó với hệ thống đang tồn tại. Đây có thể bao gồm các ứng dụng để bàn với giao diện ng−ời dùng (GUI) hoặc ứng dụng Internet nh−: WWW, WAP, v.v.. II.3.9 Cartoweb CartoWeb là một ứng dụng web - GIS mã nguồn mở, đ−ợc xây dựng nh− một khung để ng−ời lập trình có thể tự nâng cấp và tùy biến các ứng dụng theo ý mình. CartoWeb đ−ợc phát triển bởi Camptocamp SA, đây là nền tảng trên ph−ơng tiện UMN MapServer và đ−ợc phát hành d−ới GNU General Public License (GPL). CartoWeb đ−ợc viết sử dụng ngôn ngữ mới PHP5, CartoWeb mang tính modul và có thể tùy biến, dựa trên kỹ thuật h−ớng đối t−ợng. Chạy đều trên Windows hoặc trên nền hệ điều hành tựa Unix và sức mạnh thực sự khi kết hợp với PostgreSQL hoặc PostGIS. CartoWeb có thể đ−ợc cài đặt nh− là một dịch vụ Web SOAP (Simple Object Access Protocol) cho phép có lối vào server trên 1 máy và dữ liệu cùng với việc khởi tạo bản đồ khác. Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 35 Tin học Trắc địa K47 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 III.1 Khảo sát các website bản đồ trực tuyến trong n−ớc và trên thế giới III.1.1 Các phần mềm Web GIS hiện nay a. Các phần mềm th−ơng mại Hai sản phẩm tiêu biểu cho các phần mềm về bản đồ có tính th−ơng mại đ−ợc sử dụng rộng rãi ở Việt Nam là ArcIMS của ESRI và Geomedia WebMap Server của Intergraph. Hình 3.1. Kiến trúc ArcIMS (nguồn: www.esri.com) Phần mềm ArcIMS của ESRI là một trong những phần mềm mạnh hỗ trợ đ−a dữ liệu GIS lên Internet. Bình th−ờng kiến trúc ArcIMS là kiến trúc 3- tier, đi kèm với bộ ArcGIS, tuy nhiên có khả năng mở rộng thành kiến trúc n- tier ( mạng l−ới Geography NetWork là 1 ví dụ). Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 36 Tin học Trắc địa K47 Thông th−ờng ArcIMS đ−ợc cấu hình mặcđịnh để hỗ trợ trức tiếp các sản phẩm khác của ESRI nh− ArcMAP, SDE, …theo chuẩn riêng của hãng. Tuy nhiên, ArcIMS có hỗ trợ mở rộng để kế thừa theo chuẩn mở OGC thông qua các WMS connector, … Hiện tại, cổng thông tin địa lý quốc gia của Mỹ, EU và nhiều n−ớc khác đang sử dụng ESRI ArcIMS để hiện thực cơ sở hạ tầng dữ liệu không gian. ArcIMS có nhiều phiên bản chạy trên các platform khác nhau. Hình 3.2. Kiến trúc GeomediaWebMap Server (nguồn: www.intergraph.com) Geomedia Web Map Server là 1 sản phẩm của hãng Intergraph. Đây là 1 trong những sản phẩm đi đầu trong việc tiếp cận kế thừa theo chuẩn mở OGC. Kiến trúc chuẩn của Geomedia Web Map Server là 3-tier, có hỗ trợ phát triển thành n-tier. Khả năng phát triển còn hạn chế do chỉ hỗ trợ trên .Net platform và Microsoft IIS. Ngòai các sản phẩm trên còn có bộ Mapinfo Xtreme, Demis Web Map Server,…hầu hết các sản phẩm trên đều có các tính năng t−ơng tự nh− trên. Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 37 Tin học Trắc địa K47 b. Các phần mềm mã nguồn mở: 2 sản phẩm tiêu biểu cho các sản phẩm phần mềm bản đồ trực tuyến mã nguồn mở mở là: UMN MapServer của tr−ờng đại học Minesota (Mỹ) và GeoServer của tổ chức OpenLand (Canada). Hình 3.3. Kiến trúc UMN MapServer Đây là 1 trong những phần mềm mã mở hỗ trợ đ−a dữ liệu GIS lên Internet đầu tiên trên thế giới, đ−ợc phát triển theo cơ chế CGI. UMN MapServer có nhiều phiên bản và chạy trên nhiều platform khác nhau. UMN Mapserver đ−ợc hiều tổ chức hỗ trợ và nhiều công ty phát triển thành các sản phẩm của riêng mình (nh− Autodesk MapServer). Mapserver đ−ợc sử dụng trong nhiều viện nghiên cứu và các tổ chức thuộc chính phủ của các quốc gia nh− Mỹ, Đức, Nhật,…Thực tế đã chứng minh Mapserver cóthể chạy với khối l−ợng dữ liệu rất lớn nh− ảnh vệ tinh, dự báo thời tiết,…UMN MapServer hỗ trợ nhiều cơ sở dữ liệu nh−: Oracle, SDE, Shape file, PostGIS, MySQL, Db2,…Bên cạnh đó, có rất nhiều tài nguyên mã mở phía client khác để hỗ trợ để phát triển các ứng dụng Web. UMN MapServer hỗ trợ các chuẩn mở OpenGIS, hiện thực theo cơ chế h−ớng dịch vụ SOA hoặc sử dụng nh− một ứng dụng độc lập (stand-alone application). Cũng t−ơng tự nh− UMN MapServer, Geoserver là phần mềm mã mở đ−ợc viết băng ngôn ngữ Java. Mặc dù ra đời sau UMN MapServer nh−ng Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 38 Tin học Trắc địa K47 Geoserver phát triển khá nhanh và là một trong những dự án OpenSource có tỷ lệ cập nhật nhanh nhất hiện nay. Geoserver là sản phẩm tuân thủ theo chuẩn OpenGIS, hỗ trợ kết nối với nhiều cơ sở dữ liệu nổi tếng nh−: Oracle, SDE, Shape file, tiger, VPF, PostgreSQL, My SQL, …. Hình 3.4. Kiến trúc Geoserver(nguồn: Ngòai các phần mềm kể trên còn có rất nhiều các ứng dụng client khác nh−: Mapbuilder, Openlayers, Carto web, Deegree, JVN MobileGIS, Gmap,… III.1.2 Khảo sát các trang web bản đồ trực tuyến trên thế giới a. Các website GIS tại Việt Nam. Theo khảo sát các webgis tại Việt Nam, đa số các website đều sử dụng các kiến trúc 3 tầng, một số website sử dụng kiểu Mashup với công nghệ của Google nh−ng không mang tính chính thống. Mặc dù các hãng GIS nổi tiếng trên thế giới nh− ESRI, Intergraph, MapInfo đã vào Việt Nam nh−ng số l−ợng Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 39 Tin học Trắc địa K47 WebGIS trên Internet có đ−ợc lại rất ít, không đáng kể so với quy mô đ−ợc đầu t−. Sau đây là một số website bản đồ trực tuyến ở Việt Nam. 1. Trang Web của Trung tâm thông tin - Bộ tài nguyên môi tr−ờng: Tham khảo tại địa chỉ Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 40 Tin học Trắc địa K47 Hình 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. Sử dụng công nghệ ArcIMS/ESRI, bao gồm: − Hệ quản trị cơ sở dữ liệu là MS SQL Server 2000, kết nối với các ứng dụng thông qua cổng SDE. − ứng dụng Web Map Server là ESRI Internet Web map Server (ARCIMS) chạy trong Web Server của Microsoft IIS. − Cung cấp các chức năng của một WebGIS nh−: phóng to, thu nhỏ, fitview, xem thông tin, in ấn, tìm kiếm. Về cơ bản, website GIS của Trung tâm thông tin – Bộ tài nguyên môi tr−ờng có nhiều −u điểm, nh− tốc độ truy cập nhanh, giao diện dễ sử dụng, khả năng l−u trữ dữ liệu cực lớn, với độ chính xác cao. Tuy nhiên, công nghệ mang tính th−ơng mại nên giá thành triển khai cao, quá trình cập nhật thông tin t−ơng đối khó khăn, do đó khó có thể thay đổi thông tin GIS của bản đồ các tỉnh, việc thay đổi này tốn rất nhiều công sức. Vì thế, Trung tâm thông in – Bộ tài nguyên môi tr−ờng đã ngừng khai thác hệ thống, chuyển sang h−ớng mới đang đ−a vào khai thác trong năm 2007. 2. Website GIS của Cục Bảo vệ Môi tr−ờng: Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 41 Tin học Trắc địa K47 Tham khảo tại địa chỉ: Sử dụng công nghệ của ESRI, bao gồm: − Hệ quản trị cơ sở dữ liệu là MS SQL Server, kết nối với các ứng dụng thông qua cổng SDE . − ứng dụng Web Map Server là ESRI Internet Web map Server (ARCIMS) chạy trong Web Server của Microsoft IIS. − Website đ−ợc phát triển từ gói phần mềm GIS HTML Viewer của ESRI − Cung cấp các chức năng cơ bản của một WebGIS nh−: phóng to, thu nhỏ, fitview, xem thông tin, in ấn. Các website GIS của Cục Môi tr−ờng đ−ợc trình bày theo dạng chuyên đề, bao gồm Hành chính Việt Nam, Dân số Việt Nam, Bảo tồn và Bản đồ Hà Nội,…thông tin đơn giản và hình nh− không đ−ợc cập nhật. Tốc độ ch−a đ−ợc nhanh, điều này phụ thuộc vào nhiều yếu tố khách quan nh− Server, đ−ờng truyền,…nên ch−a thể đánh giá một cách chính xác và khoa học. 3. Website GIS của chính phủ: Tham khảo tại địa chỉ: Hình 3.8. Web GIS của chính phủ (nguồn: Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 42 Tin học Trắc địa K47 Website GIS của chính phủ đ−ợc xây dựng trên nền công nghệ của công ty Dolsoft (Việt Nam, tham khảo ). Dữ liệu đ−ợc l−u trữ d−ới định dạng riêng của hãng. ứng dụng Client đ−ợc viết dứơi dạng Java Applet. Website cung cấp khá đầy đủ các chức năng của một WebGIS nh− phóng to, thu nhỏ, Fitview, Pan, print, xem thông tin. Thông tin cung cấp cho ng−ời dùng khá đơn giản. Dữ liệu GIS còn nhiều sai sót và trình bày nghèo nàn (điều này không đáng giá về công nghệ). 4. Các website khác: Ngoài 2 trang web trên, n−ớc ta còn khá nhiều trang web bản đồ trực tuyến khác nh−: - Cổng giao tiếp điện tử UBND tỉnh BắcNinh . Đây đ−ợc coi nh− là nơi đầu tiên trên cả n−ớc công khai cơ sở dữ liệu địa chính. Cổng thông tin này mới chỉ đáp ứng ở mức tra cứu rời rạc từng chuyên đề. Khả năng chồng nghép hay tích hợp dữ liệu trực tuyến từ các nguồn dữ liệu khác nhau ch−a có. - do công ty Dolsoft thực hiện, chủ yếu chỉ giải quyết vấn đề công khai thông tin trên GIS, nh−ng không đáp ứng đ−ợc tính thời sự của thế giới thực, không có khả năng tích hợp từ nhiều nguồn khác nhau. - do nhóm “VietNamHomes” thực hiện, ch−a thể gọi là một website về GIS, phục vụ chủ yếu để tìm địa điểm theo địa chỉ, số điện thoại đã có. b. Các website GIS nổi tiếng trên thế giới. Trong quá trình khảo sát các website trên thế giới, em tạm chia thành 2 nhóm website: Nhóm thứ nhất là các website của chính phủ, nhóm thứ hai là các website GIS mang tính dịch vụ: 1. Các website GIS của chính phủ: Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 43 Tin học Trắc địa K47 Nổi trội trong nhóm này là các Website của Chính phủ Mỹ và Liên minh Châu Âu. Các WebGIS đ−ợc tích hợp lại với nhau theo dạng portal nh−ng không phải là tất cả các lĩnh vực. Công nghệ sử dụng th−ờng có kiến trúc n-tier với việc chuẩn hóa các giao tiếp giữa các hệ thống cao. Sản phẩm WebGIS th−ờng là sản phẩm cuối cùng của các dự án xây dựng cơ sở hạ tầng dữ liệu không gian của quốc gia, nh− dự án Geospatial-One-Stop của Mỹ, dự án INSPIRE (Infrastructure for Spatial Information in Europe) của Châu Âu, … Các dự án này luôn đ−ợc phát triển và mở rộng về công nghệ cũng nh− về thể chế họat động. Hình 3.9. Cổng thông tin địa lý của Mỹ Hình 3.10. 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 44 Tin học Trắc địa K47 Nội dung của các cổng thông tin này bao gồm các dữ liệu cho mọi lĩnh vực nh−: an ninh, quản lý hành chánh, giao thông, địa chính, sinh vật, thảm họa thiên nhiên và do con ng−ời, nông nghiệp, môi tr−ờng, địa chất, đại d−ơng,… Ngòai các chức năng tối thiểu cần phải có nh− đa số các website GIS ở Việt Nam thì các website GIS này còn có các chức năng nổi trội sau: − Quản trị ng−ời dùng theo cơ chế Single – Sign – On. − Cho phép ng−ời dùng tự tạo bản đồ theo mục đích của riêng mình. − Cho phép tìm kiếm và truy cập đến các tài nguyên phân tán. − Ghi lại không gian làm việc (Workspace) để truy cập sau có thể sử dụng. − Có thể khai thác trực tiếp các dịch vụ dữ liệu vector bằng nhiều hình thức. − Công bố các giao thức truy cập và khai thác các dịch vụ cũng nh− dữ liệu. Các chuẩn thông tin địa lý chủ chốt sử dụng trong các dự án này là ISO/TC 211 và OGC. 2. Các website mang tính dịch vụ: Nổi trội trong nhóm này các các website bản đồ của Google, Microsoft Virtual Earth và Yahoo Map. Các hệ thống này đều thực hiện bằng cơ chế h−ớng dịch vụ với Web Service. Tuy nhiên các giao tiếp thì không theo chuẩn mở, mặc dù có công bố. Các công nghệ lập trình Web hiện đại đều đ−ợc sử dụng nh− AJAX, Ruby,…Các hãng đều cung cấp các bộ Map API (bằng javascript) để ng−ời sử dụng có thể phát triển các ứng dụng riêng của mình theo kiểu Mashup. Chính điều này cộng thêm dữ liệu ảnh vệ tinh độ phân giải cao đã bùng nổ cơn sốt xây dựng website bản đồ theo kiểu Mashup khắp thế giới nhằm tạo ra các dịch vụ khác nh− quảng bá du lịch, buôn bán bấtđộng sản, giới thiệu đất n−ớc con ng−ời,…đặc biệt đối với các dịch vụ của Google Map. Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 45 Tin học Trắc địa K47 Một website Mashup kinh doanh bất động sản dựa vào Google Map Ngòai ra các website mang tính dịch vụ còn đ−ợc xây dựng trên nhiều nền tảng công nghệ khác nhau nh− của ESRI, MapInfo, GeoMedia, MapGuide, Mapserver, OpenMap, Demis Server,… Có thể tham khảo thêm tại III.1.3 Đánh giá Qua khảo sát các Website GIS tại Việt Nam và trên thế giới, có thể thấy: các Web site cho dù sử dụng cộng nghệ gì, sử dụng các bản quyền mã đóng hay mã mở đều đi theo 2 xu h−ớng chính. Mà việc chọn lựa xu h−ớng nào lại phụ thuộc chủ yếu vào ý chí chủ quan của con ng−ời chứ không phải là bản thân công nghệ. Hai xu h−ớng đó tạm gọi là: - Xu h−ớng kế thừa - Xu h−ớng không kế thừa. a. Xu h−ớng không kế thừa. Ví dụ: ở Việt Nam, rất nhiều đơn vị, tổ chức và địa ph−ơng đ−ợc trang bị các gói phần mềm đắt tiền nh− ArcGIS hay Geomedia. Các phần mềm này đều hỗ trợ cả hai xu h−ớng trên. Nh−ng trong thực tế hầu hết các Web GIS tại Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 46 Tin học Trắc địa K47 Việt nam đều theo xu h−ớng không kế thừa. Điều đó có nghĩa: tất cả các WebGIS đều mang tính cục bộ và theo các chuẩn của từng hãng riêng lẻ, tính chia sẻ thông tin không cao và hạn chế. Trên thế giới, ngay vào năm 1996, các tổ chức và các công ty đã bắt đầu cung cấp các dịch vụ bản đồ trực tuyến (Card Reed,2003, Geosolution 2003). Những ứng dụng độc lập bản đồ trực tuyến trên Web đã đ−ợc thực hiện với việc sử dụng các hệ thống và kho dữ liệu độc quyền, có nghĩa là thuộc quyền hạn của một tổ chức cụ thể nào đó. Hiển nhiên dẫn đến kết quả của một sự phát triển “các loại ổ cắm” (plugin) xung đột nhau có nghĩa là các dịch vụ bản đồ trực tuyến từ các nhà cung cấp khác nhau không thể giao tiếp và kế thừa với nhau trong hầu hết tr−ờng hợp, nh− đã nói ở trên do sự đa dạng về công nghệ. Vì lý do đó, có rất ít khả năng cho một ng−ời sử dụng lấy một bản đồ từ một Website và một bản đồ đ−ờng phố từ một Website khác rồi chồng khít chúng trong một bản đồ duy nhất. Hơn nữa, hầu hết các ứng dung bản đồ trên Web bị buộc chặt, không thể tách rời với một cơ chế thực thi của máy chủ cụ thể. Nói một cách khác, các Web client đ−ợc viết rất khó để t−ơng tác với các server độc quyền khắp mọi nơi . Cơ hội xây dựng các Web GIS có khả năng truy cập rộng rãi, không thể thực hiện đ−ợc nếu mỗi server có một cơ chế hiện thực độc quyền khác nhau với các đặc tả giao tiếp đ−ợc công bố không có tính mở. Một Website GIS cho dù rất thành công khi hiện thực một ứng dụng cụ thể cho ng−ời sử dụng cũng khó cạnh tranh trong t−ơng lai nếu nh− không áp dụng chuẩn mở trong một thế giới “kinh tế kết nối” (connected economy – ICT submit 2003). Hình 3.12. Xu h−ớng không kế thừa Internet Map Server 1 Web Client 1 Map 1 Giao thông Map Server 2 Web Client 2 Map 2 Thửa đất Map Server 3 Web Client 3 Map 3 Quy họach Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 47 Tin học Trắc địa K47 Không kế thừa, ng−ời sử dụng không thể xem 3 bản đồ từ 3 hệ thống khác nhau trên một ứng dụng duy nhất. b. Xu h−ớng kế thừa: Kế thừa có nghĩa các hệ thống có thể “nói chuyện” đ−ợc với nhau. Nguyên tắc cơ bản để thực hiện kế thừa là các hệ thống cần phải sử dụng các chuẩn mở (các hệ thống đó đ−ợc gọi là hệ thống mở - open system) giống nh− các trình duyệt web vậy. Để định h−ớng giải quyết vấn đề kế thừa giữa các Web clients và các servers, OGC đã phát triển một h−ớng tiếp cận đ−a bản đồ trên Web không có độc quyền dựa trên các giao tiếp, mã hóa, vá các l−ợc đồ chuẩn. Ch−ơng trình Kế thừa (The Interoperability Program) và Ch−ơng trình Đặc tả OGC (The OGC Specification Program) mang đến một tiến trình đồng lòng cao của nền công nghiệp GIS để hoạch định, phát triển, củng cố và tuân thủ chính thức các đặc tả của OGC mà nó cho phép các ứng dụng, dữ liệu và dịch vụ xử lý địa lý có khả năng kế thừa với nhau. Kế thừa, theo bối cảnh của một ch−ơng trình cụ thể, là các thành phần softwares cùng làm việc với nhau, hoạt động t−ơng hỗ với nhau để khắc phục các tác nghiệp chuyển đổi tốn thời gian, trở ngại import/export, và các rào cản truy cập dữ liệu đ−ợc phân tán đ−ợc áp đặt bởi các môi tr−ờng xử lý không thuần nhất (heterogeneous) và các dữ liệu không thuần nhất. Kế thừa, với khía cạnh xử lý thông tin địa lý, muốn ám chỉ tới khả năng của các hệ thống số để trao đổi tự do tất cả các kiểu thông tin không gian và cùng hợp tác qua mạng thao tác các thông tin đó. Với việc kế thừa các hệ thống thông tin địa lý trên Web dựa trên các chuẩn OGC, mỗi một server thực thi một giao tiếp chung (ví dụ nh− WMS specification) để nhận các request và trả về các response. Bây giờ, chỉ với một client có truy cập Web đến với tất cả các servers bản đồ và các nguồn dữ liệu khác nhau, trong đó mỗi một server bản đồ đ−ợc truy cập bởi cùng một client thông qua các giao tiếp chung. H−ớng tiếp cận này cho phép ng−ời sử dụng chỉ cần chạy một Web client cũng có thể khai thác tất cả các khả năng của từng server. Đồ án tốt nghiệp chuyên ngành Tin học Trắc địa Hoàng Anh Đức 48 Tin học Trắc địa K47 Hình 3.13. Xu h−ớng kế thừa Mặc dù nhiều ng−ời sử dụng GIS có thể vẫn ch−a biết các dịch vụ Web và kế thừa sẽ có ý nghĩa nh− thế nào trong công việc hàng ngày của họ, chính vì thế OGC đang đ−ợc xây dựng sự nhất trí toàn cầu trên các chỉ dẫn để làm t−ơng thích giữa các sản phẩm GIS và giữa tất cả các loại hệ thống xử lý dữ liệu địa lý – làm dễ dàng hơn trong vấn đề quản lý, khảo sát, định h−ớng và các dịch vụ xác định vị trí. Một chỉ thị về sự phát triển của OGC là số l−ợng các sản phẩm và ứng dụng hiện thực theo đặc tả OGC bởi các nhà sản xuất, các tổ chức sử dụng và các thành viên trong cộng đồng mã nguồn mở, nh− OSGEO (Open Source Geomatics Foundation).Chỉ có các chuẩn đ−ợc đồng lòng nhất trí và 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ằn

Các file đính kèm theo tài liệu này:

  • pdfUnlock-Luan van tot nghiep HAD Final.pdf