Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 70 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
70
Dung lượng
2,24 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TRẦN THỊ THU NGÂN NGHIÊN CỨU XÂY DỤNG BẢN ĐỒ TRỰC TUYẾN TRÊN NỀN MÃ NGUỒN MỞ LUẬN VĂN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN HÀ NỘI - 2012 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TRẦN THỊ THU NGÂN NGHIÊN CỨU XÂY DỤNG BẢN ĐỒ TRỰC TUYẾN TRÊN NỀN MÃ NGUỒN MỞ Ngành: Công nghệ thông tin Chuyên ngành: Công nghệ phần mềm Mã số: 60 48 10 LUẬN VĂN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: TS CAO TUẤN DŨNG HÀ NỘI - 2012 MỤC LỤC trang MỞ ĐẦU Chƣơng CƠ SỞ LÝ THUYẾT BẢN ĐỒ TRỰC TUYẾN 1.1 Bản đồ - Cách biểu diễn giới thực 1.1.1 Khái niệm chung đồ 1.1.2 Cơ sở toán học cho đồ 1.1.3 Các phƣơng pháp thể đồ 1.2 Phân loại đồ trực tuyến 1.3 Kiến trúc đồ trực tuyến 1.4 Các nguyên tắc đồ học phát triển cho đồ trực tuyến 12 1.4.1 Khái quát hóa đồ trực tuyến 12 1.4.2 Thể nội dung theo chuyên đề 13 1.4.3 Nguyên tắc thiết kế ký hiệu 13 1.4.4 Màu sắc trình bày đồ trực tuyến 16 1.4.5 Các thành phần đồ trực tuyến 16 Chƣơng PHƢƠNG PHÁP XÂY DỰNG BẢN ĐỒ MẠNG TRÊN NỀN MÃ NGUỒN MỞ 19 2.1 Các tính MapServer 19 2.2 Các thành phần cách thức hoạt động MapServer 21 2.2.1 Các thành phần MapServer 21 2.2.2 Cách thức hoạt động MapServer 22 2.2.3 Qui trình xử lý MapServer 23 2.2.4 Một số ví dụ đồ mạng sử dụng công nghệ MapServer 24 2.3 Hệ CSDL không gian PostgreSQL 25 2.3.1 Tổng quan PostgreSQL 25 2.3.2 Các đặc trƣng PostgreSQL 26 2.3.3 Kiến trúc hệ quản trị CSDL PostgreSQL 27 2.3.4 Truy vấn liệu tham chiếu không gian từ PostgresSQL 29 2.4 Quy trình thành lập đồ sử dụng MapServer PostgreSQL 30 2.4.1 Xây dựng CSDL PostgreSQL cho toán dự báo 31 2.4.2 Tổ chức liệu đồ MapFile 32 2.4.3 Xây dựng giao diện cho trang đồ trực tuyến 36 2.4.4 Xây dựng chức thành phần đồ trực tuyến 37 Chƣơng XÂY DỰNG CHƢƠNG TRÌNH ỨNG DỤNG DỰ BÁO THỜI TIẾT TRÊN BẢN ĐỒ MẠNG 39 3.1 Khảo sát trạng 39 3.1.1 Số liệu thời tiết dự báo 39 3.1.2 Các vấn đề toán dự báo thời tiết đồ 40 3.2 Ứng dụng RSS xây dựng quy trình cập nhật sở liệu 41 3.2.1 RSS gì? 41 3.2.2 Các chuẩn chung RSS 42 3.2.3 Điểm mạnh RSS 43 3.2.4 Trao đổi liệu RSS 44 3.2.5 Ứng dụng RSS cập nhật sở liệu thời tiết 46 3.2.6 Cách thức phối hợp hoạt động Mapserver, C# Mapscript, PostGIS RSS xây dựng chƣơng trình demo 48 3.2.7 Ứng dụng phần mềm cho thiết bị di động 50 3.3 Xây dựng Website dự báo thời tiết 50 3.3.1 Kiến trúc hệ thống 50 3.3.2 Tổ chức liệu dự báo 51 3.3.3 Xây dựng biểu đồ Use - case 54 3.3.4 Biểu đồ 57 3.3.5 Biểu đồ lớp 59 3.4 Thiết kế số hình 60 KẾT LUẬN VÀ ĐỊNH HƢỚNG PHÁT TRIỂN 62 TÀI LIỆU THAM KHẢO 63 DANH MỤC CÁC CHỮ VIẾT TẮT Khái niệm GIS (Geographic Information System) GML (Geography Markup Language) OGC (Open Geospatial Consortium) UMN MapServer XML (Extensible Markup Languge) WCS (Web Coverage Service) WFS (Web Feature Service) WMS (Web Map Service) CSDL RSS (Readlly Simple Syndication) Đinh ̣ nghiã Ghi chú Hê ̣ thố ng thông tin điạ lý Ngôn ngƣ̃ đă ̣c tả về dƣ̃ liê ̣u điạ lý Chuẩ n OGC Tổ chƣ́c phi lơ ̣i nhuâ ̣n đƣa các chuẩ n về dƣ̃ liê ̣u điạ lý và các dich ̣ vu ̣ Phầ n mề m mã nguồ n mở của trƣờng đa ̣i ho ̣c Minnesota Ngôn ngƣ̃ đă ̣c tả mở rô ̣ng Dịch vụ cung cấp liệu Coverage Dịch vụ cung cấp liệu theo định dạng thống GML Dịch vụ cung cấp đồ dƣới dạng ảnh Cơ sở liệu Định dạng tập tin thuộc họ XML dùng việc chia sẻ tin tức Web Chuẩ n OGC Chuẩ n OGC Chuẩ n OGC DANH MỤC CÁC BẢNG trang Bảng 1.1 Các phƣơng pháp thể đồ Bảng 2.1 Các chức đồ 38 Bảng 2.2 Các chức dự báo thời tiết 38 Bảng 3.1 Danh sách bảng liệu 52 Bảng 3.2 Chi tiết bảng ThongTin_DuBao 52 Bảng 3.3 Chi tiết bảng LoaiThoiTiet 53 Bảng 3.4 Chi tiết bảng Cac_Buoi 53 Bảng 3.5 Chi tiết bảng Khu_Vuc 53 Bảng 3.6 Chi tiết bảng Tinh_TP 54 DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ trang Hình 1.1 Biểu thị bề mặt trái đất lên mặt phẳng Hình 1.2 Phân loại đồ trực tuyến Hình 1.3 Kiến trúc đồ trực tuyến 10 Hình 1.4 Kiến trúc hƣớng máy khách 11 Hình 1.5 Kiến trúc hƣớng máy chủ 12 Hình 1.6 Ví dụ kiểu ký hiệu điểm, đƣờng, vùng chữ ghi 14 Hình 1.7 Các thành phần đồ trực tuyến 17 Hình 2.1 Sơ đồ biểu diễn hoạt động tạo đồ MapServer 20 Hình 2.2 Sơ đồ hoạt động MapServer 22 Hình 2.3 Qui trình xử lý MapServer 23 Hình 2.4 Trang đồ thành phố Komotini – Hy Lạp 24 Hình 2.5 Trang đồ vùng nƣớc Pháp 25 Hình 2.6 Kiến trúc hệ quản trị CSDL PostgreSQL 28 Hình 2.7 Kiến trúc mô đun thƣ̣c hiê ̣n truy vấ n 29 Hình 2.8 Mơ đun phân tích truy vấn - Parse 30 Hình 2.9 Sơ đồ kết nối liệu 31 Hình 2.10 Kết nối liệu khơng gian liệu thuộc tính 32 Hình 2.11 Mơ hình đối tƣợng Mapfile 33 Hình 2.12 Chồng lắp layer 34 Hình 2.13 Bài tốn truy vấn liệu 37 Hình 3.1 Trao đổi số liệu thời tiết 40 Hình 3.2 Các chức Web Map Service 45 Hình 3.3 Mơ hình hệ thống 46 Hình 3.4 Qui trình RSS cập nhật sở liệu thời tiết yêu cầu từ ngƣời dùng 47 Hình 3.5 Các dạng yêu cầu từ phía Client 48 Hình 3.6 Kiến trúc hệ thống 50 Hình 3.7 Sơ đồ Logic liệu 51 Hình 3.8 Biểu đồ Use – case 54 Hình 3.9 Biểu đồ chức tìm kiếm 57 Hình 3.10 Biểu đồ chức thống kê tình hình bão, lũ 58 Hình 3.11 Biểu đồ lớp 59 Hình 3.12 Giao diện đồ dự báo thời tiết 60 Hình 3.13 Giao diện phóng to/ thu nhỏ có hiển thị thơng tin dự báo 60 Hình 3.14 Giao diện truy vấn dự theo lớp tỉnh có hiển thị thơng tin dự báo 61 Hình 3.15: Giao diện thống kê tỉnh có nguy xảy bão, lũ 61 MỞ ĐẦU Giới thiệu Trong giới internet, trƣớc ngƣời ta biết dùng đồ để tìm đƣờng, ngày họ tìm hiểu tình trạng phạm tội khu vực, nghiên cứu thời tiết, chọn lựa trƣờng học, v.v Tất hoạt động trực tuyến Ở Mỹ, ngƣời ta tìm trạm đổ xăng, khách sạn, nhà máy thủy điện bang qua Google Còn Việt Nam, họ vừa tìm địa danh đồ thành phố, vừa xem ảnh chụp thành phố Các thành viên trang web ghi lên đồ tin tức vừa xảy Ngƣời sử dụng nhìn thấy vị trí tịa nhà Hà Nội bị ảnh hƣởng trận động đất địa điểm vụ đắm tàu sơng Sài Gịn thời gian trƣớc Thơng tin địa lý đƣợc thể chủ yếu dƣới dạng đồ đời từ xa xƣa Một đồ đƣợc cho cổ phát trình khai quật di khảo cổ Thổ Nhĩ Kỳ năm 1961 Bản đồ mô tả khu định cƣ từ thời kỳ đồ đá có niên đại khoảng chừng từ năm 6500 trƣớc Công nguyên Các đồ trƣớc tiên đƣợc phác thảo để mơ tả vị trí, cảnh quan, địa hình, chủ yếu gồm điểm đƣờng Bản đồ dạng thích hợp cho quân đội thám hiểm đƣợc sử dụng nhƣ công cụ khai thác tiềm địa lý Bản đồ tiếp tục đƣợc in giấy máy tính đời thời gian dài, nhiên bộc lộ hạn chế nhƣ: thời gian xây dựng, đo đạc, tạo lập lâu tốn Lƣợng thông tin đồ giấy hạn chế, hiển thị hết thơng tin đồ khó đọc, bên cạnh đồ giấy cập nhật theo thời gian, Hiện nay, ngành vẽ đồ khơng cịn đặc quyền quan địa lý “Bản đồ trái đất ngày chi tiết hơn,” phát biểu ông John Hanke, giám đốc sản phẩm Google Maps Nghĩa rành rẽ hệ thống xe buýt Hà Nội, bạn thấy chẳng khó khăn nhìn hình chụp đƣờng, nhấn chuột để ghi dấu trạm xe buýt Kết cuối cùng: bạn có đồ riêng tuyến xe buýt thành phố để chia sẻ với nhiều ngƣời khác Đó khởi đầu cách mạng đồ số Theo Dan Gillmore, giám đốc trung tâm Báo chí tồn dân (citizen media) Đại học Harvard (Mỹ) cho biết: “Khả tạo điều thú vị, khả kể chuyện đồ trực tuyến vô hạn” Bản đồ đƣợc ứng dụng từ vài thập niên trƣớc đây, nhƣng dƣờng nhƣ chƣa đến đƣợc với ngƣời Lý trƣớc ứng dụng đồ hầu hết chạy máy tính cá nhân, điều cản trở khả ứng dụng đồ rộng rãi Ví dụ: người cần biết tuyến xe buýt để di chuyển ngoại trừ trang bị Pocket PC cài ứng dụng Tìm đường xe bt, cịn trở nhà hay đến quan tìm đến máy tính cài ứng dụng để tìm kiếm thơng tin Từ ví dụ cho thấy với ứng dụng đồ mang tính cộng đồng cần sử dụng nơi đâu, mơ hình ứng dụng chạy máy đơn không đáp ứng đƣợc Bản đồ trực tuyến đóng vai trị quan trọng việc xử lý liệu truyền bá thông tin dự báo Nhờ có khả hiển thị thơng tin tức thời, đồ trực tuyến trở thành phƣơng tiện chuyển tải thông tin dự báo phù hợp Ƣu điểm đồ dự báo mạng cho phép ngƣời dùng truy cập lấy thông tin vào thời gian nào, không nhƣ phƣơng tiện thông tin đại chúng khác, phát vào thời điểm định Nhƣ vậy, đồ trực tuyến không phƣơng tiện để mơ tả vị trí, tính chất đối tƣợng địa lý mối quan hệ chúng mà phƣơng tiện để chuyển tải thơng tin có tính chất thời nhƣ tuyến đƣờng mở, điểm dịch vụ giá thời, dự báo thời tiết, cảnh báo thiên tai, tin tức thiệt hại thiên tai gây v.v Một số đồ trực tuyến đƣợc thiết kế công phu, đẹp hình thức, dễ sử dụng có lƣợng thơng tin đƣợc chuyển tải phong phú, ví dụ trang Bản đồ giao thông Châu âu (www.mappy.com), trang Atlas Quốc gia Canada (atlas.gc.ca), nhiều nƣớc khác giới v.v… Internet đời thu ngắn khoảng cách ngƣời, cho phép tìm kiếm thơng tin lúc nơi Ngày nay, việc sử dụng Intemet nhƣ phƣơng tiện để truyền thông tin đến tầng lớp xã hội Hầu hết quan báo chí, tỉnh, thành phố quan trung ƣơng thành lập trang web để phục vụ cho mục đích Trên trang web, hiệu việc truyền đạt thông tin đƣợc tăng lên nhiều so với phƣơng tiện khác kết hợp nhiều hình thức cơng nghệ khác nhƣ viết, hình ảnh, video, v.v… Mơ hình ứng dụng đồ mạng cho phép ngƣời dùng cơng cụ (máy PC, Laptop, mobile, Pocket PC,…) truy cập Internet tìm kiếm đƣợc thơng tin cần Việc sử dụng đồ trang web nƣớc ta phát triển, số trang web có cung cấp đồ trực tuyến kể tên là: trang thông tin Trung tâm Thông tin - Bộ Tài nguyên Môi trƣờng (ciren.gov.vn), trang đồ thời tiết www.nchmf.gov.vn, www.hymettdata.com (Trung tâm tƣ liệu Khí tƣợng Thủy văn), Mục đích luận văn Luận văn đƣợc thực nhằm đạt đƣợc mục đích sau đây: 1- Nghiên cứu sở lý thuyết Bản đồ trực tuyến (Web Cartography) kiến trúc, cách biểu diễn giới thực, phƣơng pháp hiển thị liệu khơng gian, quy trình phát hành đồ trực tuyến, nguyên tắc đồ học phát triển cho đồ trực tuyến v.v 2- Phƣơng pháp xây dựng đồ trực tuyến mã nguồn mở sử dụng công cụ MapServer, CSDL không gian PostgreSQL, xây dựng quy trình cơng nghệ thành lập phát hành đồ trực tuyến Intemet 3- Ứng dụng Really Simple Syndication (RSS) cập nhật sở liệu, thử nghiệm ứng dụng “ứng dụng đồ thời tiết Việt Nam” lên mạng Internet sở vấn đề đƣợc nghiên cứu Đối tƣợng phạm vi nghiên cứu: Về giới hạn địa lý: Việc xây dựng đồ thời tiết ứng dụng tất quốc gia giới Việt Nam quốc gia có tình hình thời tiết phức tạp, ln biến động cách khó lƣờng , thảm họa xảy cách bất ngờ để lại hậu nặng nề Do đó, phạm vi đề tài nghiên cƣ́u , Việt Nam đƣợc chọn để xây dựng thí điểm Về cơng nghệ: Sử dụng cơng nghệ mã nguồn mở vì: - Tính an tồn cao - Tính ổn định đáng tin cậy - Giảm phụ thuộc vào nhà cung cấp - Không hạn chế quyền sử dụng - Tiết kiệm chi phí trực tiếp - Tận dụng đƣợc ý tƣởng cộng đồng - Tuân thủ chuẩn công nghệ chung giới Về phần mềm: Sử dụng phần mềm mã nguồn mở MapServer kết hợp với hệ quản trị sở liệu PostgreSQL lập trình ASP.NET C sharp để kết hợp sức mạnh hai công nghệ tạo nên đồ trực tuyến đáp ứng đƣợc nhiều loại yêu cầu ngƣời dùng Yêu cầu luận văn: Luận văn đƣợc đề xuất thực phải đạt đƣợc yêu cầu sau đây: - Đúc kết đƣợc vấn đề lý thuyết đồ trực tuyến đại - Đúc kết đƣợc vấn đề công nghệ liên quan xây dựng quy trình cơng nghệ thành lập phát hành đồ mạng Internet - Quy trình cơng nghệ xây dựng đƣợc phải đảm bảo tính khả thi điều kiện trình độ hạ tầng sở công nghệ thông tin Việt Nam Từ chọn cơng nghệ tiêu biểu để xây dựng sản phẩm thử nghiệm - Sản phẩm thử nghiệm phải đạt chất lƣợng đồ dự báo thời tiết mặt nội dung thông tin cần truyền tải, tính thẩm mỹ thể đƣợc ƣu điểm đồ trực tuyến cung cấp khối lƣợng lớn thơng tin ngồi thơng tin địa lý Nội dung Luận văn: Luận văn gồm chƣơng Nội dung chƣơng nhƣ sau: Chƣơng Cơ sở lý thuyết đồ trực tuyến Chƣơng trình bày vấn đề lý thuyết khoa học đồ truyền thống nhƣ khái quát phân loại đồ, bố cục đồ, phƣơng pháp thiết kế ký hiệu, v.v đƣợc nhà đồ học nghiên cứu phát triển cho biên tập đồ trực tuyến Chƣơng Phƣơng pháp xây dựng đồ trực tuyến mã nguồn mở Biên tập phát hành đồ trực tuyến trình phức tạp liên quan đến nhiều lĩnh vực công nghệ khác Chƣơng giới thiệu công nghệ nhƣ vấn đề cần thiết mà biên tập viên, lập trình viên đồ cần nghiên cứu tham gia vào qui trình thành lập phát hành 49 khơng gian tỉnh, thành phố tồn quốc, thứ hai thông tin thời tiết, số thơng tin thuộc tính khác tỉnh thành phố - Mapserver C# Mapscript Để điều khiển đồ (phóng to, thu nhỏ, tìm kiếm theo tên tỉnh thành phố), trả lời truy vấn theo yêu cầu ngƣời dùng (truy vấn thời tiết địa phƣơng, tìm thời tiết theo thời gian), chƣơng trình sử dụng C# Mapscript để lập trình xử lý yêu cầu đó, chuyển đổi yêu cầu thành lệnh phù hợp gửi đến phần mềm Mapserver (thực chất file mapserver.exe) để Mapserver thực thi, tạo ảnh đồ C# Mapscritp dựa vào thơng tin cấu hình, u cầu ngƣời dùng yêu cầu từ thân chƣơng trình để điều khiển việc vẽ ảnh đồ lên trang giao diện web Khi nhận đƣợc yêu cầu, chƣơng trình đọc tham số khởi tạo ngƣời lập trình đặt nhƣ: đƣờng dẫn ảnh đồ đƣợc tạo địa nào, layer đƣợc vẽ, phạm vi đồ Chƣơng trình đọc file định nghĩa thơng tin đồ họa đồ, map file, file định nghĩa màu sắc, layer, đơn vị đo, định dạng hình ảnh đồ, v.v… Tiếp đó, chƣơng trình lấy liệu thời tiết ngày địa phƣơng có sở liệu, ứng với vùng khơng gian tỉnh, thành phố, chƣơng trình tạo vùng gọi tooltip map (vùng cho phép hiển thị thông tin dạng pop up) chứa thông tin thời tiết thông tin khác địa phƣơng Thơng tin thời tiết có từ trƣớc sở liệu Việc tạo thông tin thời tiết địa phƣơng sở dƣ liệu module RSS chƣơng trình thực - Module RSS Module RSS ln chạy chƣơng trình thực thi Nhiệm vụ module RSS lấy liệu thời tiết từ trang thơng tin thời tiết miễn phí http://weather.msn.com Microsoft, cập nhật thông tin thời tiết lấy đƣợc vào sở liệu PostgreSQL Đầu tiên module RSS phải kiểm tra xem sỡ liệu có thời tiết ngày chƣa, có module RSS khơng thực thi, chƣa có, module RSS tạo lần lƣợt truy vấn đến trang http://weather.msn.com, số lần truy vấn ứng với số tỉnh thành phố cần lấy thông tin thời tiết Trang http://weather.msn.com trả lại tài liệu dạng XML chứa thơng tin thời tiết Module RSS phân tích cấu trúc trang XML kết quả, lấy ngày giờ, nhiệt độ tại, nhiệt độ dự báo, v.v… tỉnh thành phố đƣợc truy vấn, lƣu thông tin vào sở liệu Đối với yêu cầu điều khiển đồ nhƣ phóng to, thu nhỏ Chƣơng trình thực nhƣ sau: Chuyển đổi tọa độ x, y trỏ ngƣời dùng chọn ảnh đồ, sang tọa độ không gian tƣơng ứng, xác định kiểu truy vấn đồ gì: phóng to, thu nhỏ hay dịch chuyển Tạo câu truy vấn với tham số thích hợp, truyền câu truy vấn đến chƣơng trình mapserver để thực thi 50 Mapserver sau thực thi yêu cầu, tạo ảnh đồ mới, hiển thị lên giao diện web 3.2.7 Ứng dụng phần mềm cho thiết bị di động Ngày nay, việc phát triển ứng dụng server, thiết bị di động đƣợc quan tâm phát triển mạnh mẽ Tuy nhiên phần mềm luận văn đƣợc lập trình hồn tồn phía server, sử dụng mapscript phần mềm mã nguồn mở mapserver để xây dựng ứng dụng Mapscript hỗ trợ loại ngôn ngữ: PHP, Python, Perl, Ruby, Java, NET Mapscript phải có kèm theo phần mềm mapserver để hoạt động Vì để phát triển sản phẩm ứng dụng thiết bị di động, cho phép thiết bị điện thoại di động truy cập sử dụng đồ nhƣ máy tính thơng thƣờng thiết bị di động đóng vai trị nhƣ máy khách Và ứng dụng cần phải đóng gói dựa tảng IIS 3.3 Xây dựng Website dự báo thời tiết 3.3.1 Kiến trúc hệ thống Hệ thống đƣợc thiết kế với tầng khác nhƣ hình 3.5 Client Layer Máy tính cá nhân Web browse (HTML+JavaScript+DHTML) Application Layer Web Sever Web Form + MapServer Data Layer CSDL quan hệ Hình 3.6 Kiến trúc hệ thống - Tầng Client: đƣợc xây dựng JavaScript, HTML DHTML, thực nhiệm vụ xử lý thao tác, lƣu trữ thông tin ứng với ngƣời sử 51 dụng, đảm nhận vai trò trung gian, truyền nhận liệu ngƣời sử dụng với Websever - Tầng ứng dụng (Applicaton Layer) chia làm phần: WebForm MapServer Cả hai đƣợc phát triển dựa công nghệ NET (ASP.NET) o WebForm: đảm nhận trách nhiệm phát sinh giao diện đoạn script để tƣơng tác với client, đóng vai trị trung gian client MapServer, gửi yêu cầu client tới MapServer nhận liệu trả ngƣợc cho client o MapServer: xử lý thao tác phát sinh đồ, phóng to, thu nhỏ, dịch chuyển, tra cứu thông tin đồ Nó thành phần trung gian WebForm tầng sở liệu, tiếp nhận yêu cầu từ WebForm gọi xuống tầng sở liệu để rút trích thơng tin, sau tiến hành xử lý trả kết cho WebForm - Tầng sở liệu: đóng vai trị trung gian tầng ứng dụng với sở liệu 3.3.2 Tổ chức liệu dự báo Sơ đồ logic: Hình 3.7 Sơ đồ Logic liệu Trong sơ đồ logic quan hệ bảng thông tin dự báo bảng khác quan hệ nhiều, tức có kiện cần phải thơng tin chƣơng trình truy vấn vào bảng thơng tin dự báo trƣớc, sau dựa vào mã buổi để xác định thơng tin cịn lại nhƣ nhiệt độ, độ ẩm,… đặc biệt khóa khác Từ khóa tiến hành truy vấn vào bảng khác để lấy thông tin cụ thể nhƣ tên buổi, tên khu vực,… để hiển thị lên đồ Danh sách bảng: Bộ liệu bao gồm bảng sau: 1- Tỉnh - thành phố 52 Khu vực Các buổi Loại thời tiết Thông tin dự báo Bảng 3.1 Danh sách các bảng liệu STT Tên Ý nghĩa Ghi Tinh_TP Bảng lƣu trữ thông tin tỉnh, thành phố KhuVuc Bảng lƣu trữ khu vực nƣớc Cac_Buoi Bảng lƣu trữ buổi ngày ngày LoaiThoiTiet Bảng lƣu trữ thông tin phân loại thời tiết ThongTin_DuBao Bảng lƣu trữ thông tin để Chỉ số thông tin dự báo thời tiết thời tiết đƣợc quan tâm, không cung cấp đầy đủ yêu cầu khí tƣợng thủy văn 2345- Mơ tả chi tiết các bảng - Tên: ThongTin_DuBao Ý nghĩa: Thông tin dự báo Bảng 3.2 Chi tiết bảng ThongTin_DuBao TT 10 11 12 13 Tên cột Ma_buoi Matinh_TP MaLoaiThoiTiet MaKhuVuc Ngày NhietdoMax NhietdoMin DoAmTB KhiApTB SucGio Luong_Mua Sukien_Dacbiet MoTa Kiểu Integer Varchar(3) Integer Varchar(3) Date Integer Integer Varchar(10) Varchar(10) Varchar(10) Varchar(20) Varchar(256) Varchar(256) Ràng buộc Khóa Khóa Khóa Khóa Ghi Mô tả thông tin thời tiết lời 53 - Tên: LoaiThoiTiet o Ý nghĩa: Loại thời tiết Bảng 3.3 Chi tiết bảng LoaiThoiTiet STT Tên cột Kiểu MaLoaiThoiTiet Integer Ten_Loai HinhAnh Ràng buộc Khóa Varchar(30) Varchar(30) Ghi Nắng Nắng, nhiều mây Mƣa Mƣa dông Mƣa rào dơng Mây thay đổi Ít mây Nhiều mây Chứa tên file ảnh tƣơng ứng với loại thời tiết - Tên: Cac_Buoi o Ý nghĩa: Tên buổi ngày Bảng 3.4 Chi tiết bảng Cac_Buoi STT Tên cột Ma_Buoi Kiểu Integer Varchar(10) Ten_Buoi Ràng buộc Ghi Khóa Ma_Buoi nhận giá trị sau: 0: Cả ngày 1: Buổi sáng Buổi trƣa Buổi chiều - Tên: Khu_Vuc Ý nghĩa: Khu vực Bảng 3.5 Chi tiết bảng Khu_Vuc STT Tên cột MaKhuVuc TenKhuVuc Kiểu Varchar(3) Varchar(100) Ràng buộc Khóa Ghi 54 - Tên: Tinh_TP Ý nghĩa: Tỉnh - Thành phố Bảng 3.6 Chi tiết bảng Tinh_TP STT Tên cột MaTinh_TP TenTinh_TP MaKhuVuc Kiểu Varchar(3) Varchar(30) Varchar(3) Ràng buộc Khóa Ghi 3.3.3 Xây dựng biểu đồ Use - case - Duyệt đồ Di chuyển đồ Phóng to, thu nhỏ đồ Truy vấn thơng tin đồ Tìm vị trí tỉnh, thành phố, địa danh đồ - Xem thời tiết ngày trƣớc: Xem thời tiết ngày vài ngày trƣớc Di chuyển đồ Phóng to, thu nhỏ đồ Tìm vị trí tỉnh, đồ Thống kê tình hình bão, lũ tỉnh User Xem thời tiết ngày trước Hình 3.8 Biểu đồ Use – case - Di chuyển đồ Mô tả: Use-case mô tả cách thức ngƣời dùng di chuyển đồ để xem vùng không gian khác đồ Luồng kiện: Luồng kiện chính: Use - case bắt đầu ngƣời dùng muốn dịch chuyển đồ để xem vùng không gian khác đồ Ngƣời dùng nhấn chuột lên button 55 Hệ thống ghi nhận tình trạng nhấn chuột, thay đổi trạng thái button sang trạng thái đậm Chuyển trạng thái button trạng thái đậm đƣợc nhấn chuột trƣớc trạng thái bình thƣờng Ngƣời dùng nhấn chuột lên đồ Hệ thống xác định vị trí nhấn chuột đồ, dịch chuyển đồ theo chiều ngƣợc lại Các kiện khác: Post-condition: Nếu Use Case thực thành cơng, hệ thống hiển thị vùng không gian đồ cho ngƣời dùng, ngƣợc lại trạng thái đồ khơng thay đổi - Phóng to, thu nhỏ đồ Mô tả: Use-case mô tả cách thức ngƣời dùng phóng to hay thu nhỏ đồ hiển thị Luồng kiện Luồng kiện chính: Use-case bắt đầu có ngƣời dùng muốn phóng to, thu nhỏ đồ hiển thị Ngƣời dùng nhấn chuột lên button ZoomIn hay ZoomOut Hệ thống xác định loại button chọn, tô đậm button để ngƣời dùng biết button đƣợc chọn Ngƣời dùng nhấn chuột lên đồ Hệ thống xác định vị trí nhấn chuột, sau tùy theo button đƣợc chọn ZoomIn hay ZoomOut mà hệ thống phóng to hay thu nhỏ đồ vị trí đƣợc nhấn chuột Ngƣời dùng tiếp tục nhấn chuột lên đồ để tiếp tục phóng to hay thu nhỏ đồ Các luồng kiện khác: khơng có Post - conditions: Nếu use case thực thành công hệ thống hiển thị vùng khơng gian đồ đƣợc phóng to hay thu nhỏ cho ngƣời dùng, ngƣợc lại trạng thái đồ không gian thay đổi - Xem thông tin thời tiết ngày trước Mô tả: Use-case cho phép ngƣời dùng tìm kiếm thơng tin thời tiết Ngƣời dùng tìm kiếm thơng tin q khứ hay tƣơng lai tùy thuộc vào thời gian tìm kiếm ngƣời dùng chọn lựa Các luồng kiện: Luồng kiện chính: Use case bắt đầu ngƣời dùng muốn tim kiếm thông tin thời tiết Ngƣời dùng xác định ngày, tháng, năm cần tìm Ngƣời dùng nhấn chuột vào button tìm kiếm Hệ thống xác định thời gian, sau hiển thị kết hình Các luồng kiện khác 56 Ngƣời dùng chọn thời gian tìm kiếm xa so với (cách q nhiều năm) hệ thống khơng tìm thơng tin thời tiết, xuất thông báo tới ngƣời dùng Ngƣời dùng khơng chọn thời gian tìm kiếm, hệ thống xuất thông báo tới ngƣời dùng Post - conditions: Nếu use case thực thành công, thông tin thời tiết cần tìm đƣợc hiển thị cho ngƣời dùng, ngƣợc lại hệ thống xuất thông báo tới ngƣời dùng - Tìm vị trí tỉnh, thành phố, khu vực đồ Mô tả: Use-case mơ tả cách ngƣời dùng tìm vị trí tỉnh, thành phố hay khu vực đồ Bản đồ dịch chuyển tới vùng không gian chứa tỉnh cho ngƣời dùng, đồng thời phóng to kích thƣớc cố định để nhìn rõ ranh giới tỉnh, thành phố hay khu vực Luồng kiện; Luồng kiện chính: Use case bắt đầu ngƣời dùng muốn tìm vị trí tỉnh, thành phố hay khu vực đồ Khi tỉnh đƣợc tìm kiếm đƣợc tơ màu hiển thị Ngƣời dùng chọn tên tỉnh, thành phố hay khu vực cần tìm danh sách chứa tỉnh, thành phố hay khu vực Chƣơng trình xử lý dịch chuyển đồ đến vùng không gian chứa tỉnh, thành phố hay khu vực vừa chọn, đồng thời phóng to đồ cách vừa phải để ngƣời dùng tiện quan sát - Các luồng kiện khác: Khơng có Post - conditions: Nếu use case thực thành công vùng không gian đồ chứa tỉnh, thành phố hay khu vực đƣợc thể hiện, ngƣợc lại trạng thái đồ không thay đổi - Thống kê tình hình bão, lũ tỉnh Mô tả: Khi ngƣời dùng bấm nút “Thống kê”, hệ thống trả kết tỉnh có nguy bị bão lũ cách tơ màu khác biệt cho tỉnh Tiêu chí để xác định khả xảy lũ lụt: xác định khả lũ lụt đơn giản thông tin mức độ mƣa, nắng module RSS chƣơng trình thu thập đƣợc từ trang cung cấp thơng tin thời tiết miễn phí MSN Biểu tƣợng mƣa, mây sấm chớp có tên hình ảnh 4.gif đƣợc dùng làm tiêu chí xác định khả xảy lũ lụt Quy trình thực đoạn chƣơng trình thực chức dự báo lũ lụt Thực truy vấn bảng thông tin dự báo sở liệu để kiểm tra khoảng thời gian ngày (từ hôm đến ngày kia) tên tỉnh nào, có mã loại thời tiết Nghĩa 57 ngày đó, tỉnh có thơng tin dự báo có xảy tƣợng mƣa giông sấm chớp, tƣợng đƣợc mơ tả hình ảnh: Với danh sách tỉnh thành có khả lũ lụt trên, chƣơng trình tạo xâu expression (xâu biểu thức) điều kiện để lọc tỉnh có khả lũ lụt Mapserver truy vấn liệu không gian, sau vẽ đồ dựa vào kết truy vấn Kết truy vấn đƣợc lọc xâu biểu thức Để thực vẽ tầng lên đồ, chƣơng trình đọc file thoitietVN.map, thƣ mục phần mềm Mapserver (C:\ms4w\mapserver\mapfiles), file dùng để định nghĩa cách phần mềm mapserver vẽ đồ nhƣ Trong file thoitietVN.map, có định nghĩa layer, layer có class: lần lƣợt có tên luongmuabao, timkiem binhthuong Đoạn chƣơng trình dùng class luongmuabao file thoitietVN.map để vẽ tỉnh đƣợc dự báo có khả lũ lụt 3.3.4 Biểu đồ - Tìm kiếm thơng tin đồ Truy vấn thời tiết (ngày) Tìm kiếm tỉnh Hiển thị Người dùng yêu cầu tìm kiếm yêu cầu nhập tên tỉnh yêu cầu hiển thị tỉnh Trả thông tin tỉnh yêu cầu tìm kiếm theo ngày Chọn ngày yêu cầu hiển thị thông tin dự báo thời tiết trả thơng tin dự báo thời tiết Hình 3.9 Biểu đồ chức tìm kiếm 58 - Mơ tả: Tìm kiếm tên tỉnh: Ngƣời dùng nhập tên tỉnh vào form tìm kiếm kết trả vùng không gian chứa tỉnh hiển thị thông tin thời tiết tỉnh Truy vấn thời tiết theo ngày (trong khứ): Ngƣời dùng nhấp chọn ngày cần tìm, hệ thống hiển thị thơng tin thời tiết tỉnh ngày hơm - Thống kê tỉnh có nguy bão, lũ Thống kê Hiển thị Người dùng yêu cầu thống kê tỉnh có nguy bão lũ Kích hoạt thống kê yêu cầu thông tin Trả thông tin thống kê tỉnh nguy bão, lũ Reset Hình 3.10 Biểu đồ chức thống kê tình hình bão, lũ - Mô tả: Ngƣời dùng yêu cầu thông tin cảnh báo nguy bão, lũ Hệ thống tổng hợp thông tin từ đài quan sát xử lý thông tin đƣa tỉnh có nguy xảy bão, lũ 59 3.3.5 Biểu đồ lớp Thời tiết -Mabuoi : Integer -Tenbuoi : Char -Tenloai : Char -NhietdoMax : Integer -NhietdoMin : Integer -DoAmTB : Char -KhiApTB : Char -SucGio : Char -Luong_Mua : Char +hienthi() Biểu đồ -MaTinh_TP : Char -TenTinh_TP : Char -MaKhuVuc : Char +hinhanh() * * * 1 1 Chi tiết tìm kiếm tỉnh Chi tiet tìm thời tiết theo ngày +get tentinh() +get thoitiet() 1 Thống kê +get thongke() +get reset() Hình 3.11 Biểu đồ lớp - Mô tả: Class Biểu đồ cho biết thông tin: Mã tỉnh, thành phố Tên tỉnh, thành phố Mã khu vực Hiển thị hình ảnh đồ Class Thời tiết cho biết thông tin: Mã buổi Tên buổi Tên loại thời tiết Nhiệt độ cao Nhiệt độ thấp Sức gió Lƣợng mƣa Độ ẩm trung bình Áp suất trung bình Class Chi tiết tìm kiếm tỉnh: Trả kết hình ảnh tỉnh đồ Class Chi tiết tìm thời tiết theo ngày: Trả kết thời tiết tỉnh ngày tìm kiếm Class Thống kê: Thống kê tình hình thời tiết tỉnh hiển thị tỉnh có nguy bão, lũ Reset để trả đồ chế độ hiển thị thông tin thời tiết thông thƣờng 60 3.4 Thiết kế số hình Hình 3.12 Giao diện đồ dự báo thời tiết Hình 3.13 Giao diện phóng to/thu nhỏ có hiển thị thơng tin dự báo 61 Hình 3.14 Giao diện truy vấn dự theo lớp tỉnh có hiển thị thơng tin dự báo Hình 3.15: Giao diện thống kê các tỉnh có nguy xảy bão, lũ 62 KẾT LUẬN VÀ ĐỊNH HƢỚNG PHÁT TRIỂN KẾT LUẬN Cơ sở thực tiễn nhu cầu phát triển đồ trực tuyến từ hai phía: phía ngƣời sử dụng phía ngƣời tạo lập đồ đƣợc khảo sát phân tích để thấy rõ cần thiết để hình thành phát triển công nghệ đồ trực tuyến Trọng tâm nghiên cứu luận văn gồm phần đƣợc trình bày chƣơng chƣơng Đó tìm hiểu đƣợc vấn đề sau: - Các vấn đề công nghệ mã nguồn mở vào việc xây dựng WebGIS: WebServer, MapServer hệ quản trị sở liệu PostgreSQL - ứng dụng phần mềm mã nguồn mở để biên tập đồ trực tuyến, xây dựng chức tìm kiếm vị trí tỉnh đồ, dựa vào thông tin thời tiết Việt Nam Internet cập nhật trang web xử lý thông tin thu đƣợc đƣa thông tin nhiệt độ, độ ẩm, sức gió, … ngày tiếp theo; sau tổng hợp thơng tin đƣa cảnh báo bão, lũ tỉnh - Nghiên cứu quy trình khảo sát trạng, ứng dụng RSS cập nhật sở liệu cho tốn dự báo thời tiết Bản đồ hồn tồn phát hành đƣợc mạng Internet đáp ứng đƣợc u cầu tìm kiếm thơng tin thời tiết sở liệu PostgreSQL lên nội dung website, thơng tin thuộc tính liên quan đến đối tƣợng không gian dễ dàng đƣợc cập nhật phát triển sau Trong suốt trình thực luận văn, học viên bám sát vào nội dung đăng ký đƣợc duyệt Đề tài hoàn thành mục tiêu yêu cầu đề ĐỊNH HƢỚNG PHÁT TRIỂN Do công nghệ thành lập phát hành đồ trực tuyến mà luận văn tập trung nghiên cứu gồm MapServer PostgreSQL hai hệ phần mềm mã mở có nhiều tính mạnh, nên việc sử dụng hai cơng nghệ để thành lập đồ trực tuyến có hƣớng phát triển khả quan Phát triển thêm tính truy vấn liệu liệu không gian lẫn liệu thuộc tính Ngƣời dùng nhập liệu từ bàn phím để thực truy vấn thông tin môi trƣờng, điểm dịch vụ giá thời, dự báo thời tiết, cảnh báo thiên tai, tin tức thiệt hại thiên tai gây ra, v.v 63 TÀI LIỆU THAM KHẢO Tiếng Việt Đặng Văn Đức (2001), Hệ thống thông tin địa lý, NXB Khoa học Kỹ thuật Hà Nội, Hà Nội Dƣơng Anh Đức Lê Đình Duy, Khoa Công nghệ Thông tin, trƣờng Đại học Khoa học Tự Nhiên thành phố Hồ Chí Minh, Báo cáo Hội nghị Khoa học lần II (2000), Nghiên cứu số cách tiếp cận xây dựng hệ thống WebGIS Nguyễn Thế Thận (1999), Cơ sở hệ thống thông tin địa lý GIS, Nhà xuất Khoa Học Và Kỹ Thuật, Hà Nội Trần Quốc Vƣơng (2006), Nghiên cứu WebGis phục vụ du lịch, Luận văn Thạc sỹ, Đại học Quốc Gia TP Hồ Chí Minh, TP Hồ Chí Minh A.M Berliant, Phương pháp nghiên cứu đồ (2004), Hoàng Phƣơng Nga, Nhữ Thị Xuân (biên dịch), NXB Đại học Quốc gia Hà Nội Tiếng Anh Bill Kropla (2005), Beginning MapServer Open Source GIS Development, Berkeley, California Clarke P (2005), Dynamic web-mapping using Scaleable Veclor Graphic (SVG), QinetiQ Malvern Technology Centre, England Dixon E.R (2002), Cartographic Design Principles in Interactive Multimedia, Preloria, South Africa Doyle, A (ed.) (2000), OpenGIS Web Map Service Implementation Specification 1.0.0, Kraak M.J and Brown A (2001), Web Cartography Developmenls and Prospects, Taylor & Francis, London Stephen Potts and Mike Kopack (2003), Sams Teach Yourself Web Services in 24 Hours, Sams Publishing ... BẢN ĐỒ TRỰC TUYẾN Bản đồ tĩnh Bản đồ động Bản đồ đọc Bản đồ tƣơng tác Hình 1.2 Phân loại đồ trực tuyến Tuy nhiên, cách phân loại bất biến Trong tƣơng lai, ảnh hƣởng công nghệ mà đồ trực tuyến. .. triển cho đồ trực tuyến v.v 2- Phƣơng pháp xây dựng đồ trực tuyến mã nguồn mở sử dụng công cụ MapServer, CSDL không gian PostgreSQL, xây dựng quy trình cơng nghệ thành lập phát hành đồ trực tuyến. .. 13 1.4.4 Màu sắc trình bày đồ trực tuyến 16 1.4.5 Các thành phần đồ trực tuyến 16 Chƣơng PHƢƠNG PHÁP XÂY DỰNG BẢN ĐỒ MẠNG TRÊN NỀN MÃ NGUỒN MỞ 19 2.1 Các tính MapServer