luận văn về các giải pháp bản đồ trực tuyến và ứng dụng
2 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Nguyễn Đức Phương CÁC GIẢI PHÁP BẢN ĐỒ TRỰC TUYẾN VÀ ỨNG DỤNG KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin HÀ NỘI - 2008 3 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Nguyễn Đức Phương CÁC GIẢI PHÁP BẢN ĐỒ TRỰC TUYẾN VÀ ỨNG DỤNG KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin Cán bộ hướng dẫn : TS. Nguyễn Hải Châu HÀ NỘI - 2008 4 TÓM TẮT KHÓA LUẬN GIS-Geography Information System(Hệ thống thông tin địa lý) ra đời và được phát triển mạnh trong những năm gần đây. Cùng với sự bùng nổ về công nghệ của Internet, GIS cũng đã phát triển công nghệ cho phép chia sẻ thông tin thông qua mạng toàn cầu bằng cách kết hợp GIS và Web. Bên cạnh đó, xu hướng chia sẻ dữ liệu, phát triển phần mềm trên công nghệ mã nguồn mở cũng được quan tâm ở các nước đang phát triển vì nhiều lợi ích mà nó mang lạ i. Vì thế, việc nghiên cứu ứng dụng trên cơ sở mã nguồn mở sẽ mang lại khả năng chia sẻ thông tin địa lý rộng rãi cho các ngành. Nội dung chính của đề tài là nghiên cứu nền tảng công nghệ GIS, từ đó đưa ra các giải pháp về bản đồ trực tuyến, khả năng xây dựng ứng dụng bản đồ trên cơ sở mã nguồn mở và từ đó xây dựng website bản đồ tr ực tuyến về các địa điểm du lịch trên thành phố Hà Nội. Khóa luận được chia thành các phần chính sau: Mở đầu: Đặt vấn đề và đưa ra mục tiêu nghiên cứu. Chương 1: Giới thiệu về bản đồ, nghiên cứu về công nghệ GIS và ứng dụng công nghệ GIS trên nền web. Chương 2: Tìm hiểu một số giải pháp về bản đồ trực tuyến, đi xâu nghiên cứu giả i pháp sử dụng phần mền mã nguồn mở MapServer. Chương 3: Xây dựng ứng dụng bản đồ trực tuyến phục vụ nhu cầu du lịch thành phố Hà Nội. Kết luận: Kết quả đạt được và định hướng phát triển trong tương lai. 5 LỜI CẢM ƠN Lời đầu tiên cho em được cảm ơn chân thành tới thầy Nguyễn Hải Châu, người đã trực tiếp hướng dẫn tận tình và đóng góp những ý kiến quý báu trong suốt quá trình em làm khóa luận tốt nghiệp này. Em xin cảm ơn và gửi những lời chúc tốt đẹp nhất đến các thầy cô giáo trường Đại Học Công Nghệ - Đại Học Quốc Gia Hà Nội, đã tận tâm truyền đạt những kiến thức quý báu làm nề n tảng để em bước vào đời. Cuối cùng, em xin được cảm ơn gia đình, bạn bè và người thân đã giúp đỡ em, là chỗ dựa tinh thần vững chắc giúp em hoàn thành tốt khóa luận tốt nghiệp này. Người thực hiện NGUYỄN ĐỨC PHUƠNG 6 MỤC LỤC DANH MỤC CÁC HÌNH VẼ .8 DANH MỤC BẢNG 10 MỘT SỐ KHÁI NIỆM VÀ THUẬT NGỮ .11 MỞ ĐẦU .12 1. Đặt vấn đề 12 2. Nội dung và mục tiêu nghiên cứu 13 CHƯƠNG 1: GIỚI THIỆU VỀ CÔNG NGHỆ GIS TRÊN NỀN WEB 14 1.1 Giới thiệu về bản đồ .14 1.2 Các phương pháp biểu diễ n bản đồ .14 1.2.1 Phân loại bản đồ 14 1.2.2 Các thành phần của bản đồ 15 1.2.3 Độ chính xác của bản đồ .16 1.2.4 Các chú giải trên bản đồ 16 1.2.5 Phương pháp thể hiện thông tin trên bản đồ .18 1.2.6 Sự khái quát hóa và sự phóng đại .19 1.3 Công nghệ GIS trên nền Web .19 1.4 Sơ đồ hoạt động của ứng dụng GIS trên nền Web 20 1.5 Dữ liệu về GIS .21 1.5.1 Các khái niệm cơ bản 21 1.5.2 Các dạng dữ liệu của GIS 24 1.5.3 Mô hình thông tin không gian .24 1.5.4 Mô hình thông tin phi không gian .30 CHƯƠNG 2: CÁC GIẢI PHÁP BẢN ĐỒ TRỰC TUYẾN .33 2.1 Một số giải pháp bản đồ trực tuyến .33 2.1.1 MapBender 33 2.1.2 MapGuide Open Source 33 2.1.3 OpenLayers .34 2.2 Phần mềm mã nguồn mở MapServer 34 2.2.1 Giớ i thiệu về Mapserver .34 2.2.2 Thành phần và mô hình xử lý của Mapserver .36 2.2.3 Tìm hiểu Mapfile .39 7 2.2.4 Xử lý kết nối các loại dữ liệu 48 CHƯƠNG 3: XÂY DỰNG WEBSITE BẢN ĐỒ TRỰC TUYẾN VỀ CÁC ĐỊA ĐIỂM DU LỊCH TRÊN THÀNH PHỐ HÀ NỘI 52 3.1 Phân tích .52 3.1.1 Hiện trạng và nhu cầu của thông tin .52 3.1.2 Phân tích hệ thống và định hướng công nghệ 52 3.2 Thiết kế 53 3.2.1 Thiết kế kiến trúc 53 3.2.2 Thiết kế cơ sở d ữ liệu 54 3.2.3 Thiết kế chức năng 64 3.2.4 Thiết kế giao diện 66 3.3 Xây dựng 70 3.3.1 Xây dựng máy chủ cung cấp dữ liệu .70 3.4 Cài đặt và thử nghiệm 70 KẾT LUẬN 72 1. Kết quả đạt được .72 2. Hướng phát triển đề tài .72 PHỤ LỤC .73 Phụ lục 1: Một số giao diện người dùng người dùng 73 Phụ lục 2: Giao diện quản trị .79 TÀI LIỆU THAM KHẢO .81 8 DANH MỤC CÁC HÌNH VẼ Hình 1: Bản đồ dạng đường nét .14 Hình 2: Bản đồ dạng ảnh .15 Hình 3: Sơ đồ hoạt động của WebGIS 20 Hình 4: Số liệu vector được biểu thị dưới dạng điểm (Point). 25 Hình 5: Số liệu vector được biểu thị dưới dạng đường .26 Hình 6: Số liệu vector được biểu thị dưới dạng vùng (Polygon) 26 Hình 7: Một số khái ni ệm trong cấu trúc cơ sở dữ liệu bản đồ. 27 Hình 8: Sự biểu thị kết quả bản đồ dưới dạng Raster 29 Hình 9: Sự chuyển đổi dữ liệu giữa raster và vector .30 Hình 10: Sơ đồ hoạt động của Mapserver .36 Hình 11: Quy trình xử lý của Mapserver .38 Hình 12: Mô hình đối tượng trong Mapfile .39 Hình 13: Chồng xếp các Layer 39 Hình 14: Danh sách font sử dụng 40 Hình 15: Thứ t ự được vẽ các Layer .43 Hình 16: Mô hình 3 tầng trong thiết kế kiến trúc 53 Hình 17: Quan hệ giữa thực thể Phường/Xã và Quận/Huyện .55 Hình 18: Quan hệ giữa thực thể Đường giao thông và Bảo tàng 55 Hình 19: Quan hệ giữa thực thể Đường giao thông và Khách sạn 55 Hình 20: Quan hệ giữa thực thể Đường giao thông và Nhà hàng .55 Hình 21: Quan hệ giữa thực thể Đường giao thông và Di tích danh lam 56 Hình 22: Quan hệ giữa thực thể Đườ ng giao thông và Công ty lữ hành .56 Hình 23: Quan hệ giữa thực thể Quận/Huyện và Bảo tàng .56 Hình 24: Quan hệ giữa thực thể Quận/Huyện và Khách sạn 56 Hình 25: Quan hệ giữa thực thể Quận/Huyện và Nhà hàng 56 Hình 27: Quan hệ giữa thực thể Phường/Xã và Bảo tàng .57 Hình 28: Quan hệ giữa thực thể Phường/Xã và Khách sạn .57 Hình 29: Quan hệ giữa thực thể Phường/Xã và Nhà hàng 57 Hình 30: Quan hệ giữa thực thể Phườ ng/Xã và Di tích danh lam .57 Hình 31: Quan hệ giữa thực thể Phường/Xã và Công ty lữ hành 58 Hình 32: Lược đồ mô tả các thực thể và mối quan hệ giữa các thực thể 63 Hình 33: Sơ đồ các chức năng .64 Hình 34: Sơ đồ quản trị .66 Hình 35: Sơ đồ web dành cho người dùng 67 9 Hình 36: Giao diện trang chủ 68 Hình 37: Giao diện Danh sách bảo tàng 68 Hình 38: Giao diện chi tiết bảng tàng 69 Hình 39: Giao diện bản đồ .69 10 DANH MỤC BẢNG Bảng 1: Các phương pháp thể hiện bản đồ 18 Bảng 2: Bảng lớp dữ liệu không gian 59 Bảng 3: Chi tiết bảng Quản trị .59 Bảng 4: Chi tiết bảng bảo tàng 60 Bảng 5: Chi tiết bảng Công ty lữ hành 60 Bảng 6: Chi tiết bảng Danh lam 61 Bảng 7: Chi tiết bảng khách sạn 61 Bảng 8: Chi tiết bảng Nhà hàng 62 Bảng 9: Chi tiết bảng Quận .62 Bảng 10: Chi tiết bảng Phường .62 Bảng 11: Chi tiết bảng Đường giao thông .63 Bảng 12: Kết quả kiểm thử 71 11 MỘT SỐ KHÁI NIỆM VÀ THUẬT NGỮ Thuật ngữ Từ tiếng Anh Định nghĩa tiếng Việt API Application Program Interface Giao diện lập trình ứng dụng Cartogram Biểu đồ diện tích CGI Common Gateway Interface Chuẩn để kết nối chương trình ứng dụng với Web server GDAL Geospatial Data Abstraction Library Là thư viện biên dịch định dạng dữ liệu địa lý[15] GIS Geography Information System Hệ thống thông tin địa lý. Sử dụng công nghệ này là một công nghệ dựa trên máy tính để xây dựng bản đồ, phân tích và xử lý các đối tượng tồn tại và các sự kiện xảy ra trên trái đất. GML Geography Markup Language Ngôn ngữ đặc tả về dữ liệu địa lý. OGC Open Geospatial Consortium Là tổ chức tập hợp các nhà phát triển nghiên cứu đưa ra các chuẩn cho hệ địa lý SDE Spatial Database Enginee Cơ sở dữ liệu không gian tập trung [...]... cũng có một sai số nhỏ Về thực chất bản đồ là một hệ thống về không gian Chúng ta có thể xem bản đồ và tìm thấy các thông tin trên bản đồ 1.2 Các phương pháp biểu diễn bản đồ 1.2.1 Phân loại bản đồ Bản đồ có 2 dạng chính Dạng đường nét Hình 1: Bản đồ dạng đường nét 14 Dạng ảnh Hình 2: Bản đồ dạng ảnh Bản đồ đường nét dùng các kí hiệu, nét vẽ để thể hiện thông tin một cách tóm lược về khu vực thể hiện,... quy ước bản đồ: Trên bản đồ ta sử dụng các dạng đồ họa, mầu sắc, các loại chữ và con số Các kí hiệu trên bản đồ thường được thể hiện dưới dạng: - Kí hiệu điểm (Point) - Kí hiệu tuyến (Polyline) 16 - Kí hiệu diện tích(Polygon) - Kí hiệu tượng hình - Kí hiệu hình học - Kí hiệu chữ 17 1.2.5 Phương pháp thể hiện thông tin trên bản đồ Bảng 1: Các phương pháp thể hiện bản đồ Phương Đối tượng pháp dùng Cách... có thể chứa toạ độ phân bố của nó, số hiệu mảnh bản đồ, mô tả khu vực hoặc con trỏ đến vị trí lưu trữ của số liệu liên quan Bộ xác định được lưu trữ cùng với các bản ghi toạ độ hoặc mô tả số khác của các hình ảnh không gian và cùng với các bản ghi số liệu thuộc tính liên quan 32 CHƯƠNG 2: CÁC GIẢI PHÁP BẢN ĐỒ TRỰC TUYẾN 2.1 Một số giải pháp bản đồ trực tuyến 2.1.1 MapBender Mapbender là kết quả của... mã nguồn mở thì sẽ có được các lợi ích mà phần mềm mã nguồn mở mang lại như chi phí đầu tư về phần mềm giảm, tận dụng được các thành quả ý tưởng chung của cộng đồng, tính chất an toàn cao 2 Nội dung và mục tiêu nghiên cứu Nghiên cứu về công nghệ GIS, ứng dụng công nghệ GIS trên nền Web, đưa ra các giải pháp về bản đồ trực tuyến, từ đó xây dựng website bản đồ trực tuyến về các địa điểm du lịch trên thành... máy tính Bản đồ ảnh thường là những hình chụp ngoài thực địa từ trên cao, người ta thường vẽ thêm đường nét để nhấn mạnh các thực thể vào trong bản đồ ảnh Bản đồ dạng này có ưu điểm là vẽ nhanh, miêu tả được những địa hình mà dùng nét vẽ thì khó thể hiện được(Ví dụ ao hồ, sa mạc ) Tuy nhiên bản đồ này thường gặp khó khăn trong việc giải đoán các thực thể trên bản đồ 1.2.2 Các thành phần của bản đồ Thành... hình cho ứng dụng Mapfile có thể bao gồm cả thông tin về vẽ bản đồ như thế nào, ghi chú trên bản đồ ra sao và vẽ kết quả của câu truy vấn Mapfile có phần mở rộng là.map iii Template file Template file điều kiển các hình bản đồ và các ghi chú trả về bởi Mapserver sẽ xuất hiện trên trang html Cách làm của Mapserver như sau Trước hết Mapserver đọc từ file template này và nếu gặp các từ khóa hoặc các từ... 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... đồ 1.2.2 Các thành phần của bản đồ Thành phần của bản đồ liên quan đến mục đích sử dụng của nó Các thành phần của bản đồ là: • Thành phần chính: Là phần chủ đề của bản đồ, ví dụ như địa lý, địa chất, dân số Đối với bản đồ địa hình, thành phần chính là tất cả thông tin được vẽ bao gồm cả tên của các vùng • Thành phần thứ hai (Bản đồ nền): Đối với bản đồ chủ đề, thành phần này này là phần địa hình, bao... MapServer hoạt động dựa vào các mẫu là chính Trước khi thực thi yêu cầu của web, MapServer đọc tệp tin cấu hình (mapfile) mô tả các lớp và các thành phần khác của bản đồ Nó sẽ vẽ và lưu lại bản đồ Tiếp theo, nó sẽ đọc một hoặc nhiều tệp tin mẫu HTML mà nó nhận diện trong tệp tin cấu hình Mỗi tệp tin mẫu sẽ chứa đựng các thẻ (tags) HTML và các chuỗi MapServer đặc biệt Các chuỗi này sẽ được sử dụng, ví dụ chuỗi... Mapserver Hình 10: Sơ đồ hoạt động của Mapserver 2.2.2 Thành phần và mô hình xử lý của Mapserver a Các thành phần của Mapserver Ứng dụng Mapserver sử dụng chuẩn giao tiếp CGI để giao tiếp với các thành phần và với HTTP Server, nên đôi khi ta gọi ứng dùng Mapserver là ứng dụng Mapserver CGI Do có mã nguồn mở nên cũng có những ứng dụng được biên dịch thể có thể dùng mapscript truy xuất trực tiếp các hàm API của . ra các giải pháp về bản đồ trực tuyến, khả năng xây dựng ứng dụng bản đồ trên cơ sở mã nguồn mở và từ đó xây dựng website bản đồ tr ực tuyến về các địa. một số giải pháp về bản đồ trực tuyến, đi xâu nghiên cứu giả i pháp sử dụng phần mền mã nguồn mở MapServer. Chương 3: Xây dựng ứng dụng bản đồ trực tuyến