1.3 PHẦN LÝ THUYẾT Cấu trúc File một lớp dữ liệu trong Mapinfo DAT Dữ liệu thuộc tính từ Table Mapinfo DBF Dữ liệu ñầu vào và dữ liệu thuộc tính trong ñịnh dạng dBASE ID Chỉ mục ñồ
Trang 1BÀI 3 Cấu trúc file trong phần mềm MapInfo
1.1 TÓM TẮT BÀI THỰC TẬP
F Giới thiệu các loại file sử dụng trong phần mềm MapInfo
F Cách tạo ra một lớp dữ liệu
F Các kiểu ñối tượng ñường, ñiểm, vùng trong MapInfo
F Thay ñổi những thiết ñặt phần mềm MapInfo
1.2 KIẾN THỨC LIÊN QUAN
− Kiến thức về kiểu dữ liệu sử dụng trong máy tính
− Những kiến thức bản ñồ học - ý nghĩa hệ thống tọa ñộ
1.3 PHẦN LÝ THUYẾT
Cấu trúc File một lớp dữ liệu trong Mapinfo
DAT Dữ liệu thuộc tính từ Table Mapinfo
DBF Dữ liệu ñầu vào và dữ liệu thuộc tính trong ñịnh dạng dBASE
ID Chỉ mục ñồ họa các ñối tượng trong Mapinfo
MID Nhập/xuất Table biểu từ ñịnh dạng Mapinfo Kết hợp với fle MID
TAB File chính từ Table Mapinfo, sẽ kết hợp tương thích với file DAT (hay DBF, XLS,
WKS hay file TXT), MAP, ID, và IND
TXT Dữ liệu trong ñịnh dạng ASCII
WKS Dữ liệu trong ñịnh dạng Lotus 1-2-3
WOR File MapInfo workspace
Mapinfow.mnu
' -
'** MapInfo version 4.0 menu and buttonpad defintions **********************
' -
'** SEND MAIL submenu ******************************************************
Trang 2Create Menu "Send &Mail" As
"&Current Window "
HelpMsg "Send active window as a Windows metafile."
calling 114,
"Wor&kspace "
HelpMsg "Send Workspace."
calling 115
'** FILE menu **************************************************************
Create Menu "&File" ID 1 As
"&New Table \tCtrl+N/W^N/Mn/XCtrl+n"
HelpMsg "Create a new table."
calling 101,
"&Open Table \tCtrl+O/W^O/Mo/XCtrl+o"
HelpMsg "Open one or more tables."
calling 102,
"Open &DBMS Table "
HelpMsg "Open a DBMS table."
calling 116,
"Open &Workspace \tCtrl+A/W^A/Ma/XCtrl+a"
HelpMsg "Open an existing workspace."
calling 108,
"(&Close Table "
HelpMsg "Close one or more tables."
calling 103,
"(Close A&ll"
HelpMsg "Close all open tables."
calling 104,
"(-",
"Close D&BMS Connection "
HelpMsg "Close a DBMS Connection."
calling 124,
"(-",
"(&Save Table \tCtrl+S/W^S/Ms/XCtrl+s"
HelpMsg "Save changes made to a table."
calling 105,
"(Save Copy &As "
HelpMsg "Save a table with a new name, projection or format."
calling 106,
"(Save &Query "
HelpMsg "Save a table as a query."
calling 117,
"Save Wor&kspace "
HelpMsg "Save current session as a named configuration."
calling 109,
"Save W&indow As "
HelpMsg "Save active window as a bitmap or metafile."
calling 609,
"(&Revert Table "
HelpMsg "Discard edits and use the last saved table version."
calling 107,
"(-",
"R&un MapBasic Program \tCtrl+U/W^U/Mu/XCtrl+u"
HelpMsg "Start a MapBasic application."
calling 110,
"(-",
"Page Se&tup "
HelpMsg "Choose a printer and configure print settings."
calling 111,
"(&Print \tCtrl+P/W^P/Mp/XCtrl+p"
HelpMsg "Print window contents."
calling 112,
'* NOTE: if MAPI is not available, this menu item will be removed! *'
"(-",
"Send &Mail" ID 30 As "Send &Mail",
"($", '* MRU list; appears as separator, if filenames follow
"(-",
"E&xit\tAlt+F4"
HelpMsg "Quit MapInfo."
calling 113
Mapinfow.prj
" - Longitude / Latitude -", 0, 0, 0, 0., 0., 0., 0., 0., 0., 0., 0
"Longitude / Latitude", 1, 0
"Longitude / Latitude (Adindan)\p4201", 1, 1
Trang 3"Longitude / Latitude (Afgooye)\p4205", 1, 2
"Longitude / Latitude (DHDN)\p4314", 1, 1000
"Longitude / Latitude (DLx)\p4207", 1, 113
"Longitude / Latitude (Hong Kong 1963)", 1, 38
"Longitude / Latitude (WGS 60)", 1, 101
"Longitude / Latitude (WGS 66)", 1, 102
"Longitude / Latitude (WGS 72)\p4322", 1, 103
"Longitude / Latitude (WGS 84)\p4326", 1, 104
" - Longitude / Latitude (v 6.0 projections) -"
"Longitude / Latitude (Indian 1954)", 1, 130
"Longitude / Latitude (Indian 1960)", 1, 131
"Longitude / Latitude (Indian 1975)", 1, 132
" - Non-Earth -"
"Non-Earth (inches)", 0, 2
"Non-Earth (feet)", 0, 3
"Non-Earth (yards)", 0, 4
"Non-Earth (miles)", 0, 0
"Non-Earth (millimeters)", 0, 5
"Non-Earth (centimeters)", 0, 6
"Non-Earth (meters)", 0, 7
"Non-Earth (kilometers)", 0, 1
" - Gauss-Kruger (Pulkovo 1942) -"
"GK Zone 18 (Pulkovo 1942)\p28418", 8, 1001, 7, 105, 0, 1, 18500000, 0
"GK Zone 19 (Pulkovo 1942)\p28419", 8, 1001, 7, 111, 0, 1, 19500000, 0
"vn2000 (Pulkovo 1942)", 8, 1001, 7, 105, 0, 1, 18500000, 0
" - Universal Transverse Mercator (WGS 84) -"
"UTM Zone 48, Northern Hemisphere (WGS 84)\p32648", 8, 104, 7, 105, 0, 0.9996, 500000, 0
"UTM Zone 48, Southern Hemisphere (WGS 84)\p32748", 8, 104, 7, 105, 0, 0.9996, 500000,
10000000
"UTM Zone 49, Northern Hemisphere (WGS 84)\p32649", 8, 104, 7, 111, 0, 0.9996, 500000, 0
"UTM Zone 49, Southern Hemisphere (WGS 84)\p32749", 8, 104, 7, 111, 0, 0.9996, 500000,
10000000
Kiểu ñối tượng bản ñồ
Kiểu ký hiệu Point (ñối tượng ñiểm), line (ñối tượng ñường), polygon (ñối tượng vùng) và text (ñối tượng chữ)
có thể chuyển ñổi kiểu dữ liệu từ thực ñơn tùy chọn - hộp công cụ hay bàn phím
Kiểu ñối tượng Biểu tượng công cụ Phím tắt Menu
Phạm vi ứng dụng của kiểu
Thay ñổi kiểu ñối tượng:
F Chọn ñối tượng trên cửa sổ bản ñồ hiện hành (lớp bản ñồ phải cho phép sửa-editable)
Trang 4F Khi vẽ những ñối tượng cùng kiểu (ñiểm, ñường, vùng hay chữ) có ảnh hưởng cho ñến khi thay ñổi kiểu khác
F Có thể chuyển ñổi kiểu của một ñối tượng, và vẽ tất cả ñối tượng theo sau, bởi nhắp vào nút style trên hộp thoại thông tin ñối tượng
Lý do kiểu không chuyển ñổi
Kiểu chọn từ ñối tượng bản ñồ sẽ chỉ chuyển ñổi nếu chúng ở lớp editable
Nếu ñối tượng trên lớp editable, mả không sửa ñược hãy kiểm tra kiểu ghi ñè Nếu kiểu ghi ñè ñược chọn,
ñối tượng sẽ hiển thị với kiểu ñược chọn Kiểu chuyển ñổi sẽ ñược tạo, nhưng chúng chỉ thể hiện khi kiểu ghi
ñè ñóng lại
Kiểu ñối tượng ñiểm (MapInfo.fnt)
Danh sách Font cho phép chọn một vài fonts cài ñặt ở Window, kể cả font MapInfo ñặc biệt Mặc ñịnh ký hiệu tương thích MapInfo Version 3, N trong font kéo xuống cho biết không có ký hiệu, ký hiệu sẽ không ñược vẽ Kích thước ký hiệu tối ña 48 ñiểm, kích thước nhỏ nhất trong hộp liệt kê thả là 9 ñiểm, nhưng kiểu có thể có kích thước rất nhỏ và thường khoảng 4 ñiểm
Rotation, Background và Effects chỉ sẵn có cho kiểu font ñúng Sự quay sinh ra góc quay trong thư mục anticlokwise Nền phụ khác (None; Halo; và Border) - chỉ có thể một lựa chọn tại riên biệt - trong khi hiệu ứng (Drop Shadow and Bold) có thể cùng áp dụng
Những ký hiệu mới có thể ñịnh nghĩa bởi ứng dụng Symbols Mapbasic, cung cấp cho MapInfo, hoặc tạo
bitmaps trong thư mục CustSymbols
Trang 5Kiểu ñối tượng ñường (Mapinfo.pen)
Kiểu ñường ñược cung cấp bởi Mapinfo Có quy ước số cho mỗi kiểu ñường
Khi bắt ñầu với “N” biểu thị danh sách không
có kiểu ñường, ñường không ñược vẽ
Kiểu ñối tượng vùng
Không cần kiểm tra hộp bên trái Background trong hộp thoại Region style tạo nền trong suốt Vì vậy ñối tượng nằm dưới có thể thấy Kiểu dáng hiện trong danh sách Pattern ñược vẽ trong màu
Chú ý “N” trong kiểu vùng hoặc danh sách Pattern có nghĩa là vùng không tô màu hay nền
Workspaces (*.WOR)
Workspaces lưu trữ những thiết ñặt thiết ñặt và những thể hiện trên cửa sổ mở hiện thời, Chúng không lưu
dữ liệu hiện tại ở table hiển thị trong cửa sổ và không lưu Table tạm thời (những lựa chọn, kết quả chất vấn)
Trang 6Trong file Workspaces, ghi lại vùng làm việc, những Table hiển thị trong cửa sổ, thứ tự lớp, phóng ñại và sắp ñặt mỗi cửa sổ, thứ tự trường trên Table truy vấn
Nó ñược lưu bởi File>Save Workspace File lưu với ñuôi mở rộng *.WOR – ñó là file văn bản ASCII, nếu
nhìn vào nội dung tổng quát hoặc trình biên tập văn bản, chứa các chỉ lệnh trên lớp hiển thị, ví dụ:
!Workspace
!Version 300
!Charset WindowsLatinl
Open Table "pickett" As PICKETT Interactive Browse * From PICKETT Position (0.0520833,-0.0833333) units "in"
Width 6.375 Units "in,' Height 2.40625 Units "in"
Map From PICKETT
Position (0.0833333,0.5625) Units "in,,
Width 5.95833 Units "in" Height 3.32292 Units "in"
Set Window Frontwindowo ScrollBars off
Set Map
CoordSys NonEarth Units "cm"
Center (1151,504.5)
Zoom 1420.186224 Units "cm"
Preserve Zoom Display Zoom
XY Units "cm" Distance Units "cm" Area Units "sq cm"
Set Map
Layer 1
Display Graphic
Label Line None Position Center
With FUNCTION
Parallel On
Truy tìm vùng làm việc dùng File> Open Workspace (Ctrl_A)
Có thể hiệu chỉnh file workspace với quá trình xử lý văn bản hoặc hiệu chỉnh như cửa sổ Notepad
Lưu ý khi sử dụng Workspace
Một số Workspace sẽ không chính xác nếu file dữ liệu ñã di chuyển tới một thư mục khác, hay nếu Table ñã
xóa hoặc tổ chức lại
Khi di chuyển Workspace tới một máy khác, cần thiết di chuyển dữ liệu cùng ñường dẫn thư mục như nhau
Ví dụ: (từ C:/PROJECT trên một máy tới C:/PROJECT trên máy khác) Nếu khác thư mục, có thể gặp trục trặc và phải hiệu chỉnh file *.WOR bằng một phần mềm xử lý văn bản và chuyển ñổi tất cả danh sách ñường dẫn thư mục tới vị trí mới Lưu lại file văn bản
Workspace không lưu những sự lựa chọn hiện hành và cũng không dùng tiêu chuẩn lựa chọn trong việc tạo
chúng, và không lưu trữ những sửa chữa dữ liệu trên bản ñồ Cần thiết phải lưu table thường xuyên, dùng
File>Save Copy As
Tiêu chuẩn hoá cách trình bày
Nếu ñối tượng trên bản ñồ chuyển ñổi, hay dữ liệu trên browser ñược hiệu chỉnh, chúng không lưu sự thay ñổi trong Workspace Sự thay ñổi ñược lưu trong table Thực tế, table ABC ñược thay thế bằng table khác
mà có tên giống nhau, workspace sẽ hiển thị thích hợp table mới cùng dữ liệu trên vị trí cũ, cung cấp cấu
trúc và khoảng rộng khác nhau Điều này có ích cho việc cung cấp tiêu chuẩn hoá cách trình bày dữ liệu mà
có thể ñã thay ñổi
Trang 71.4 PHẦN THỰC HÀNH
1.4.1 Tạo một table mới
Sử dụng File > New Table (Ctrl-N) trên menu ñể tạo một table (hay một layer-lớp) MapInfo tạo ra một table
cơ sở dữ liệu mới trong ñịnh dạng của nó (hay một cách tự chọn trên ñịnh dạng D Base - *.DBF)
Chú ý: Không cần tạo Table mới nếu ñã có bản ghi trong cơ sở dữ liệu, bảng tính hay file văn bản, bởi vì
MapInfo có thể mở ngay những ñịnh dang này
Chọn hộp thoại ñầu tiên ñể mở một Browser mới, một bản ñồ mới hay thêm vào Table từ cửa sổ bản ñồ hiện hành
Nếu tạo một Table chỉ toàn bảng biểu (không có ñối tượng bản ñồ) chỉ ñánh dấu Open New Browser cho
phép tạo Table mà không có dữ liệu bản ñồ Điều này tránh tạo trường trống không cần thiết của ñối tượng bản ñồ
Hộp thoại thứ 2 cho phép ñịnh nghĩa các trường của table Cần phải ñịnh nghĩa tối thiểu một trường với Add Field Sau khi tạo xong nhấn nút Create
Trang 8Chú ý khi ñịnh nghĩa Table
Kiểu tên phù hợp trong hộp Name dưới Field Information và chọn một kiểu thích hợp cho trường Cần lặp lại với mỗi trường trong bảng biểu
Mỗi trường chỉ xác ñịnh trong một dạng nhất ñịnh như: kiểu Small Interger (nếu nó là số) hay Character - kí
tự (nếu kết hợp ký tự và con số) Người sử dụng có kinh nghiệm thường ñặt tên trường là những kí tự ngắn gọn như tên, phần ñầu mẩu tin, những ý tưởng vv…
Tên trường không thể chứa ký tự trắng, dấu chấm hay kí tự phân cách khác Dùng một gạch dưới ñúng hơn một gạch ngang ñối với kết nối từ, như thấy trong ví dụ trên
Không phải ñánh dấu hộp Table is Mappable nếu một Table chỉ chứa bảng biểu (bảng dò tìm thông tin về
người hay giá trị nhãn cho trường ñã mã hoá) ñiều này tránh việc tạo những table dữ liệu bản ñồ không cần
thiết Hộp Table is Mappable cần ñánh dấu nếu yêu cầu MapInfo mở Table dữ liệu từ cửa sổ bản ñồ Khi nhấn Create cần gán một tên cho Table tạo trong thư mục thích hợp Chọn một tên mà nó giúp dễ nhớ
Kiểu dữ liệu
Character: Đối với văn bản cũng như người, hay ñặt tên, ñịa chỉ, ghi chú ngắn và không thể lẫn với loại khác
ñược Dùng trường kí tự ngắn cho những mã giá trị ñã miêu tả bởi những chữ viết tắt Trường lớn nhất với
ñộ rộng 254 kí tự Tránh dùng nhiều văn bản ñịnh dạng tự do vì làm tăng kích thước file, cửa sổ chậm phục hồi và có thể kết quả trong dữ liệu không ñồng nhất (do lỗi chính tả hay phân cách khác)
Small interger: Toàn bộ số nguyên, lớn nhất là + 32768, có thể dùng cho tất cả những thông tin dạng con số
và cho dữ liệu mã ñược miêu tả dữ liệu mã bởi mã số (ñộ cao, chiều dài, mẫu số, tài liệu, dạng ngày tháng)
Trang 9Interger: Tổng số khoảng ±2tỉ, chỉ dùng SmallInterger thì không ñủ (UTM hướng Đông và hướng Bắc)
Decimal: Cố ñịnh ñiểm số thập phân, thường dùng Decimal (tọạ ñộ X, Y từ 0,01m, trọng lượng mẫu vv )
Chỉ ñịnh ñộ rộng trường và vị trí thập phân cho 20 kí tự Độ chính xác ñược giới hạn khoảng 15 con số có nghĩa
Float: Chấm nổi số thập phân cho phép cách trình bày những con số rất nhỏ hay rất lớn
Date: thời gian - ngày/ tháng/ năm hay tháng/ngày/ năm (sự ghi ngày hay sẵn có)
Logical: True/False or Presence/Absence, thể hiện như T và F (xác minh ngày, hình ảnh, dùng chỉ ñịnh ñăng
ký quốc gia), câu trả lời ñơn giản Yes/No
Những trường mới có thể chèn vào với nút Add Nhiều trường có thể sắp xếp trật tự sau khi ñịnh nghĩa, dùng nút Up và Down Điều này sẽ ảnh hưởng ñến thứ tự xuất hiện trên trường, trên browser Nó là một khái niệm hay ñể ñặt trường ký tự dài không quan trọng vào cuối danh sách vì thế thông tin hữu ích xuất hiện tối ña trên browser
1.4.2 Đổi tên và xóa table
Table có thể ñược ñổi tên hay xoá một cách tương ứng, thực hiện menu:
Table>Maintenance>Rename và Table>Maintenance>Delete Table ñổi tên hay xóa phải ñược mở
Thường table vector, Rename và Delete ảnh hưởng tất cả file liên kết với table, không nên dùng Windows
File Manager Đổi tên hay xoá một table ảnh raster sẽ không ñổi tên hay xóa file raster ảnh (jpg, tiff, bmp) nó
chỉ ñơn thuần thay ñổi file (*.TAB)
Đổi tên Table làm ảnh hưởng tới file workspases (*.wor) Khi Mapinfo sẽ nhắc tìm vị trí Table khi nó không tìm thấy tên cũ trong workspases MapInfo sẽ hiệu chỉnh file (*.WOR) và cập nhập tên Table mới
1.4.3 Đóng gói dữ liệu
Khi xóa bản ghi, chúng ñược ñánh dấu như ñã xóa nhưng thực tế không di chuyển Hiện ra dòng mờ ñi trong
cửa sổ browser Table>Maintenance>Pack Table sẽ bỏ khoảng trống của bản ghi dữ liệu bị xóa Khi thực
hiện dung lượng trên ñĩa ñể giữ Table ñã ñóng gói
Đóng gói Table không hiệu quả khi nhiều nhãn lưu với workspases, vì Mapinfo hoàn toàn s d#ng b&n ghi
s( ñ- nh0n d1ng nhãn
Trong khi Mapinfo không thể lấy lại bản ghi ñã xoá Nó có thể thực hiện phục hồi bản ghi ñã xoá bởi việc mở file DAT hay DBF trong Dbase tương thích DBMS và dùng chức năng undelete, Table cung cấp ñã không ñóng gói Nên ñóng gói thường xuyên dữ liệu
Lưu ý: ñịnh dạng Maplnfo's DAT dễ dàng chuyển ñổi ñịng dạng DBase DBF với kiểu trường thêm vào, không nên hiệu chỉnh hay chuyển ñổi cấu trúc của file DAT trong DBase tương thích DBMS, bởi vì dữ liệu có thể hư Bạn phải copy Table trước khi hiệu chỉnh
1.4.3 Thay ñổi hệ thống Menu mặc ñịnh
1.4.4 Tìm hiểu thiết ñặt trong Options>Preferences