數據文件
下列文件組合起來描述一個圖層:
后綴名
描述
格式
.tab
描述Mapinfo表結構,說明數據文件格式
文本
.dat(.mdb/.dbf/.txt/.xls/.wks)
表格數據
二進制
.map
圖形對象(無圖形對象則不存在)
二進制
.id
連接數據和地圖對象的參照文件(無對象則不存在)
二進制
.ind
索引文件,查找地圖對象
二進制
描述地圖的文件有兩種:
.gst
文本格式,.tab文件的集合,不能存入數據庫
.mdf
XML格式,包含各圖層的信息,可以存入數據庫,推薦使用
.tab文件結構
header
!table
!version 300
!charset WindowsLatin1
body
commands
MapBasic命令,在讀入下一部分(table definition)前順序執行。
table definition
描述表結構
有下列幾種:
NATIVE格式
Definition Table
必須
Type NATIVE Charset "WindowsLatin1"
必須
Fields 4
必須,域段數量
id Integer Index 1 ;
域段名字,類型,索引
structure_type Char (13) ;
...
mast_type Char (15) ;
…
foundation_type Char (17) ;
…
柵格文件
Definition Table
必須
File "sf_rastc.bil"
必須,柵格文件名
Type "RASTER"
必須
(548421,4183579) (0,0) Label "Pt 1",
(548441,4183579) (1,0) Label "Pt 2",
(548421,4183559) (0,1) Label "Pt 3"
CoordSys Earth Projection 8, 62, "m", -123, 0, 0.9996, 500000, 0 Units "m"
RasterStyle 2 62
mig文件
Definition Table
必須
File "bidon_value.mig"
必須,MIG文件名
Type "RASTER"
必須
(297153.63503593224,5007379.3522604182) (0,0) Label "",
(312554.15366307431,5007379.3522604182) (204,0) Label "",
(312554.15366307431,4992205.3118483815) (204,201) Label "",
(297153.63503593224,4992205.3118483815) (0,201) Label ""
CoordSys Earth Projection 8, 33, "m", -73.5, 0, 0.9999, 304800, 0 Units "m"
RasterStyle 6 1
begin_metadata
…
end_metadata
元數據
分隔ASCII
Definition Table
必須
Type ASCII Delimiter 09 Titles Charset "WindowsLatin1"
必須
Fields 3
和NATIVE類似
Start Float ;
End Float ;
Side Char (6) ;
Excel XLS文件
Definition Table
必須
TypeXLSTitlesRange "Sheet1"
必須
Fields 3
和NATIVE類似
A Float ;
B Float ;
C Char (6) ;
Lotus WK*文件
Definition Table
必須
File "lotus.wk4"
必須,指定文件名
Type WKS Titles
必須
Fields 1
和NATIVE類似
A Char (1) ;
Access MDB文件
Definition Table
必須
File "sample.mdb"
MDB文件名
Type ACCESS TABLE "rdatbln_line" Charset "WindowsLatin1"
必須
Fields 5
和NATIVE類似
FNODE_ Integer ;
TNODE_ Integer ;
LPOLY_ Integer ;
RPOLY_ Integer ;
LENGTH Float ;
元數據
begin_metadata
"\IsReadOnly" = "FALSE"
"\Identification" = ""
"\Identification\Use Constraints" = "For use with MapInfo Professional"
"\Identification\Access Constraints" = "Licensed Users"
"\Identification\Domain" = ""
"\Identification\Domain\Bounds" = ""
"\Identification\Domain\Bounds\West" = "-16190368.44"
"\Identification\Domain\Bounds\East" = "16606614.14"
"\Identification\Domain\Bounds\North" = "6743291.67"
"\Identification\Domain\Bounds\South" = "-5501153.1"
"\Identification\Citation" = "MapInfo Professional Bundled Maps; World Capitals"
"\Identification\Description" = ""
"\Identification\Description\Abstract" = "Location of world capitals.Also included regional and colonial capitals of significant areas belonging to other countries.Based on current World Almanac and UN definitions of Countries."
"\Identification\Time Period" = ""
"\Identification\Time Period\Currentness" = "1995"
"\Identification\Keywords" = ""
"\Identification\Keywords\Theme" = ""
"\Identification\Keywords\Theme\Geography" = "World"
"\Identification\Keywords\Theme\Geography\Abbreviation" = ""
"\Identification\Keywords\Theme\Content" = "Reference Data"
"\Identification\Keywords\Place" = ""
"\Identification\Keywords\Place\Layers" = ""
"\Identification\Keywords\Place\Layers\Count" = "1"
"\Identification\Keywords\Place\Layers\Layer1Name" = "World"
"\Identification\Keywords\Place\Layers\Layer1" = "World"
"\Spatial Reference" = ""
"\Spatial Reference\Geographic" = ""
"\Spatial Reference\Geographic\Projection" = ""
"\Spatial Reference\Geographic\Projection\Clause" = "CoordSys Earth Projection 12, 62, ""m"", 0 Bounds (-34012036.7393, -8625248.51472) (34012036.7393, 8625248.51472)"
"\Spatial Reference\Geographic\Projection\Name" = "Robinson"
"\Spatial Reference\Geographic\Coordinate Units" = "Meters"
"\Spatial Reference\Geodetic" = ""
"\Spatial Reference\Geodetic\Datum" = "NAD 27"
"\Spatial Reference\Geodetic\Ellipsoid" = "Clarke 1866"
"\Spatial Organization" = ""
"\Spatial Organization\Object" = ""
"\Spatial Organization\Object\Type1" = "Regions"
"\Spatial Organization\Object\Type1\Count" = "0"
"\Spatial Organization\Object\Type2" = "Points"
"\Spatial Organization\Object\Type2\Count" = "214"
"\Spatial Organization\Object\Type3" = "Polylines"
"\Spatial Organization\Object\Type3\Count" = "0"
"\Spatial Organization\Object\Type4" = "Lines"
"\Spatial Organization\Object\Type4\Count" = "0"
"\Spatial Organization\Object\All" = ""
"\Spatial Organization\Object\All\TotalCount" = "214"
"\Spatial Organization\Method" = ""
"\Spatial Organization\Method\Type" = "Points"
"\Quality" = ""
"\Quality\Lineage" = ""
"\Quality\Lineage\Source" = ""
"\Quality\Lineage\Source\Vintage" = "1995"
"\Quality\Lineage\Source\Scale" = "~ 1:20,000,000"
"\Quality\Lineage\Source\Citation" = "MapInfo from Digital Chart of the World"
end_metadata
Oracle Spatial
一個空間數據表對應著下面數據字典表中的一行。
MAPINFO_MAPCATALOG
CREATE TABLE MAPINFO.MAPINFO_MAPCATALOG (
SPATIALTYPE NUMBER,
TABLENAME VARCHAR2(32),
OWNERNAME VARCHAR2(32),
SPATIALCOLUMN VARCHAR2(32),
DB_X_LL NUMBER,
DB_Y_LL NUMBER,
DB_X_UR NUMBER,
DB_Y_UR NUMBER,
COORDINATESYSTEM VARCHAR2(254),
SYMBOL VARCHAR2(254),
XCOLUMNNAME VARCHAR2(32),
YCOLUMNNAME VARCHAR2(32),
RENDITIONTYPE NUMBER,
RENDITIONCOLUMN VARCHAR2(32),
RENDITIONTABLE VARCHAR2(32));
--在TABLENAME,OWNERNAME上創建索引
CREATE
UNIQUE INDEX MAPINFO_MAPCATALOG_INDEX ON MAPINFO.MAPINFO_MAPCATALOG (TABLENAME,OWNERNAME);
表域段說明
域段名
取值
示例
SPATIALTYPE
SpatialWare值:
5.0 (SpatialWare points)
5.1 (SpatialWare lines)
5.2 (SpatialWare regions)
5.3 (SpatialWare, all types of features)
Informix IUS值:
11.0 (IUS SW Blade points)
11.1 (IUS SW Blade lines)
11.2 (IUS SW Blade regions)
11.3 (IUS SW Blade, all types of features)
5.3
TABLENAME
表名
Country
OWNERNAME
所有者
PKUGIS
SPATIALCOLUMN
字段名,可能包含空間屬性
SW_GEOMETRY(mappable using SpatialWare Type/IUS)
NO_COLUMN (mappable using X-Y)
MI_SQL_MICODE (mappable using MI Code)
或IUS字段名(ST_SPATIAL數據類型)
SW_GEOMETRY
DB_X_LL
圖層外接四邊形左下角的X坐標
-360
DB_Y_LL
圖層外接四邊形左下角的Y坐標
-90
DB_X_UR
圖層外接四邊形右上角的X坐標
360
DB_Y_UR
圖層外接四邊形右上角的Y坐標
90
COORDINATESYSTEM
參考坐標系
Earth Projection 1, 0
SYMBOL
若圖層只包含點,則用Symbol;
若有線或區域邊界,則用Pen
另外還有Brush
Symbol(35,0,12) Pen(1,2,0) Pen(1,2,0) Brush(2,255,255)
XCOLUMNNAME
包含X坐標的字段的名稱,若沒有,則為NO_COLUMN.
NO_COLUMN
YCOLUMNNAME
包含Y坐標的字段的名稱,若沒有,則為NO_COLUMN.
NO_COLUMN
RENDITIONTYPE
1
RENDITIONCOLUMN
RENDITIONTABLE