数据文件
下列文件组合起来描述一个图层:
后缀名 |
描述 |
格式 |
.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 |