mif文件格式说明
作者:anotherbug 日期:2007-10-27 20:22:26
| mif-readme.rar(8.1 K) | |
MapInfo MIF/MID file format description
(from Appendix A of MapInfo Reference)
This appendix describes the data interchange format for MapInfo. In this
appendix, you will find information on:
MIF File header mif文件头
MIF Data Section mif 数据区
Pen, Brush, Symbol, and Font Codes in MIF 画笔,画刷,字体代码
MID File
This versatile format allows generic data to be attached to a variety of
graphical items. It's ASCII, so it is editable, relatively easy to generate,
and works on all platforms supported by MapInfo. Perhaps the best way to
understand the MapInfo Interchange Format (MIF) is to study the sample file
at the end of this appendix in conjunction with the explanation of the file
format. You can also create samples of your own by exporting files to MIF and
then examining those files in a text editor.
Mapinfo data is in two file -- the graphics reside in a .MIF file and textual
data is contained in a .MID file. The textual data is delimited data, with
one row per record and either Carriage Return, Carriage Return plus Line Feed,
or Line Feed between lines. The MIF file has two areas -- the file header are
and the data section. Information on how to create MapInfo tables is in the
header; the graphical object definitions are in the data section.
MIF FILE HEADER
This is a description of MIF file header with optional information in square
brackets.
Version n
Charset "characterSetName"
[ DELIMITER "<c>" ]
[ UNIQUE n,n.. ]
[ INDEX n,n.. ]
[ COORDSYS... ]
[ TRANSFORM... ]
COLUMNS n
<name> <type>
<name> <type>
…
…
DATA
Version
The Version clause states whether you are using VERSION 1, VERSION 2, or
VERSION 300 of the format. Version 300, introduced with Mapinfo 3.0, allows
multiple-section polyline objects.
Charset
The Charset clause specifies which character set was used to create text in
the table. For example: Specify "WindowsLatin1" to indicate that the file was
created using the Windows US & Western Europe character set; specify
"MacRoman" to specify the Macintosh US & Western Europe character set; or
specify "Neutral" to avoid converting the text into another character set.
If you are not using one of these character sets, you can determine the
correct syntax for your character set by exporting a table and examining the
.MIF file in a text editor.
Delimiter
Specify the delimiting character in quotation marks, for example:
DELIMITER ";"
The default delimiter is Tab; if you are using the default, you do not need
the DELIMITER line.
Unique
Specify a number. This number refers to a database column; 3 is the third
column, 7 is the seventh column, and so forth. What happens to column in the
UNIQUE list is subtle. For example, imagine that you have a database with
highways in it. Each highway has only one name, but it might be represented
by several segments. You would put the NAME column in the UNIQUE list, while
the column containing data for the individual segments would not be in that
list. This has the effect of creating two related tables; one with names,
and one with the other attributes of the objects. This is how MapInfo's
various street maps (StreetInfo) are prepared.
Index
To indicate that columns in the table are indexed, include a number (or a
comma-separated list of numbers) in the Index clause. Each number refers to
a database column; 3 is the third column, 7 is the seventh column, and so
forth. Columns in the INDEX list will have indexes prepared for them.
CoordSys Clause
Specify the COORDSYS clause to note that the data is not stored in
longitude/latitude form. When no COORDSYS clause is specified, data is
assumed to be stored in longitude/latitude forms. All coordinates are stored
with respect to the northeast quadrant. The coordinates for points in the
United States have a negative X while coordinates for points in Europe (east
of Greenwich) have a positive X coordinates for points in the Northern
hemisphere have a positive Y while coordinates for points in the Southern
hemisphere have a negative Y.
Syntax 1:
CoordSys Earth
[ Projection type,
datum,
unitname
[,origin_longtitude ]
[,origin_lattitude ]
[,standard_parallel_1
[,standard_parallel_2]]
[,azimuth ]
[,scale_factor ]
[,false_easting ]
[,false_northing]
[,range ]]
[ Bounds (minx,miny) (maxx,maxy) ]
Syntax 2:
CoordSys Nonearth
Units unitname
Bounds (minx,miny) (maxx,maxy)
Transform Clause
When you have MIF files with coordinates stored with respect to the northwest
quadrant (quadrant 2), you can transform them to northeast quadrant
(quadrant 1) with a transform clause.
--------------------------------------------
| Quadrant 2: | Quadrant 1: |
| Nortwest Quadrant | Norteast Quadrant |
--------------------------------------------
| Quadrant 3: | Quadrant 2: |
| Southwest Quadrant | Southeast Quadrant |
--------------------------------------------
The transofrm clause has the following syntax:
TRANSFORM Xmultiplier, Ymultiplier, Xdisplacement, Ydisplacement
To transform quadrant 2 data into quadrant 1 data, use the following
transform clause:
TRANSFORM -1,0,0,0
The zeroes instruct MapInfo to ignore that parameter.
When you have an application which creates MIF files in quadrant 2, you can:
Add the TRANSFORM clause to the MIF files
Change the application so that it creates coordinates in quadrant 1
Change the application so that it adds a TRANSFORM clause to the MIF
Files
Columns
Specify the number of column. Then, for each column, create a row containing
the column name, the column type, and, for character and decimal columns, a
number to indicate the width of the field. Valid column types are:
char(width) integer (which is 4 bytes)
smallint (which is 2 bytes, so it can only store numbers between
-32767 and +32767) decimal (width, decimals) float
date logical
This is an example of the columns section of the header: COLUMNS 34
STATE char (15)
POPULATION integer
AREA decimal (8,4)
For the database specified in this header, the MID file has three columns:
a 15 character field that represents the STATE column,
an integer field that represents the POPULATION column,
an AREA column that consists of a decimal field with up to 8 total
and 4 character after the decimal.
MIF DATA SECTION
The data section of the MIF file follows the header and must be introduced
with DATA on a single line:
DATA
The data section of the MIF file can have any number of graphical primitives,
one for each graphic object. MapInfo matches up entries in the MIF and MID
files, associating the first object in the MIF file with the first row in the
MID file, the second object in the MIF file with the second row in the MID
file, and so on.
When there is no graphic object corresponding to a particular row in the MID
file, a "blank" object (NONE) must be written as a place holder in the
corresponding place in the MIF file.
NONE
The graphical objects that can be specified are:
point
line
polyline
region
arc
text
rectangle
rounded rectangle
ellipse
A point object takes two parameters; an X coordinate and a Y coordinate. As an
option, specify the symbol that represents the point. Symbols are designated
by numbers. If you omit the SYMBOL clause, the current symbol is used.
POINT x y
[ SYMBOL (shape, color, size) ]
MapInfo 4.0 also supports two variations on the SYMBOL clause; see Symbol
discussion later in this appendix.
A line object requires four parameters; an X and a Y coordinate for each end
point. As an option, specify a pen type. When no pen type is specified,
the current pen type is used.
LINE x1 y1 x2 y2
[ PEN (width, pattern, color) ]
A polyline object consists of one or more sections. If the polyline has more
than one section, include the MULTIPLE keyword, followed by the number of
sections. For each section, specify a numpts argument (which indicates the
number of nodes in that section), followed by an x/y coordinate pair for each
node. Use the optional PEN clause (described later in this appendix) to
specify the line style. If you include the optional SMOOTH keyword, the
polyline is smoothed.
PLINE [ MULTIPLE numsections ]
numpts1
x1 y1
x2 y2
…
…
[ numpts 2
x1 y1
x2 y2 ]
…
…
[ PEN (width, pattern, color) ]
[ SMOOTH ]
A region object consists of one or more polygons. Specify the number of
polygons through the numpolygons argument (immediately after the REGION
keyword). For each polygon, specify a numpts argument (which indicates the
number of nodes in that polygon), followed by an x/y coordinate pair for each
node. Use the optional PEN and BRUSH clauses (described later in this
appendix) to specify the object's style. Use the optional CENTER clause to
define the object's centroid explicitly.
REGION numpolygons
numpts1
x1 y1
x2 y2
…
…
[ numpts 2
x1 y1
x2 y2
…
…
[ PEN (width, pattern, color) ]
[ BRUSH (pattern, forecolor, backcolor) ]
[ CENTER x y ]
An arc requires the diagonally opposite corners of its bounding rectangle
and the beginning (a) and ending (b) angles of the arc in degrees, moving
counter-clockwise with zero at three o'clock. As an option, specify the arc
type. (An arc specifies a section of an ellipse, the corners of which are
determined by the bounding rectangle.)
ARC x1 y1 x2 y2
a b
[ PEN (width, pattern, color) ]
A text object consists of a text string, up to 255 characters long. To make
the text string wrap onto multiple lines, insert the characters \n within the
textstring argument (e.g. "First line \nSecond line \nThird line"). The x1,
y1, x2, and y2 arguments specify the location of the text on the map.
Spacing can be 1.0 (single spacing), 1.5, or 2.0 (double spacing). Use the
Font clause (described later in this chapter) to control the typeface, etc.
TEXT "textstring"
x1 y1 x2 y2
[ FONT... ]
[ Spacing {1.0 | 1.5 | 2.0} ]
[ Justify {Left | Center | Right } ]
[ Angle text_angle ]
[ Label Line {simple | arrow} x y ]
A rectangle requires the coordinates of the diagonally opposite corners. As
an option, specify pen and brush types.
RECT x1 y1 x2 y2
[ PEN (width, pattern, color) ]
[ BRUSH (pattern, forecolor, backcolor) ]
A rounded rectangle requires the coordinates of the diagonally opposite
corners and the degree of rounding (a). As an option, specify pen and brush
types. Degree of rounding is expressed in coordinate units.
ROUNDRECT x1 y1 x2 y2
a
[ PEN (width, pattern, color) ]
[ BRUSH (pattern, forecolor, backcolor) ]
An ellipse object requires the coordinates of the diagonally opposite corners
of its bounding rectangle. As an option, specify pen and brush types.
ELLIPSE x1 y1 x2 y2
[ PEN (width, pattern, color) ]
[BRUSH (pattern, forecolor, backcolor) ]
PEN STYLES
The Pen clause specifies the width, pattern, and color of a linear object,
such as a line, polyline or arc. The Pen clause has the following syntax:
PEN (width, pattern, color)
Width is a number from zero to 7. Note: zero-width lines are invisible.
Color is an integer, representing a 24-bit RGB color value.
Pattern is an integer from 1 to 77; patter number 1 is invisible.
Due to a limitness of a text file patterns cannot be shown, however they are
available in MapInfo Refernce book. More info can be obtained by contacting
MapInfo. (http://www.mapinfo.com on internet)
BRUSH STYLES
Brush specifies the pattern, foreground color, and background color of a
filled object, such as a circle or region. The Brush clause has the following
syntax:
BRUSH (pattern, forecolor [, backcolor ] )
The forecolor and backcolor arguments are both integers, representing 24-bit
RGB color values.
Pattern is a number from 1 to 71. Note: Pattern number 1 is "no fill," and
pattern number 2 is a solid fill. Pattern numbers 9-11 are reserved.
Tip: To specify a transparent fill style, use pattern number three or larger,
and omit the backcolor argument. For example: Brush( 5, 255 )
Due to a limitness of a text file patterns cannot be shown, however they are
available in MapInfo Refernce book. More info can be obtained by contacting
MapInfo. (http://www.mapinfo.com on internet)
SYMBOL STYLES
The Symbol clause specifies the appearance of a Point object. There are
three different forms of the Symbol clause, described below.
Symbol Clause -- MapInfo 3.0 Syntax
The Symbol clause specifies the appearance of a Point object. There are
three different forms of the Symbol clause. To specify a symbol style using
"Old MapInfo Symbols" (the symbols that were used in earlier version of
MapInfo), use the following syntax:
SYMBOL (shape, color, size)
The shape argument is an integer value, 31 or larger; 31 represents a blank
symbol (i.e. the object will not be visible). The standard set of symbols
includes symbols 32 through 67, inclusive, but the user can customize the
symbol set by using the Symbol application.
The color argument is an integer representing a 24-bit RGB color value.
The size argument is an integer from 1 to 48, representing a point size.
The following table lists the default symbols provided with Mapinfo:
Due to a limitness of a text file symbols cannot be shown, however they are
available in MapInfo Refernce book. More info can be obtained by contacting
MapInfo. (http://www.mapinfo.com on internet)
Symbol Clause -- TrueType Font Syntax
To specify a symbol style based on a character from a TrueType font, use
the following syntax:
SYMBOL (shape, color, size, fontname, fontstyle, rotation)
The fontstyle argument is an integer that controls settings such as Bold.
The following table lists the values you can use as fontstyle.
------------------------------------------------------------------------------
fontstyle value Effect on Symbol style
------------------------------------------------------------------------------
0 Plain text
1 Bold text
16 Black border around symbol
32 Drop shadow
256 White border around symbol
------------------------------------------------------------------------------
To specify two or more style attributes, add the values from the lef column.
For example, to specify Bold and Drop Shadow, use 33.
The rotation argument is a floating-point number, representing a rotation
angle, in degrees.
Symbol clause - Custom Bitmap File Syntax
To specify a symbol style based on a character from a TrueType font, use the
following syntax:
SYMBOL (filename, color, size, customstyle)
The filename argument is a text string that identifies a bitmap file (e.g.
"Arrow.BMP") in the CustSymb directory.
The customstyle argument is an integer that controls whether color and
background attributes are used. The following table lists the values
you can use as customstyle:
------------------------------------------------------------------------------
customstyle value Effect on Symbol style
------------------------------------------------------------------------------
0 Both the Shadow Background setting and the
Apply Color setting are off; symbol appears
in default states. White pixels in the bitmap
appear transparent, allowing whatever is
behind the symbol to show through.
1 The Show Background setting is on; white
pixels in the image are opaque.
2 The Apply Color setting is on; non-white
colors in the image are replaced with the
Symbol's color value.
3 Both Show Background and Apply Color settings
are on.
------------------------------------------------------------------------------
FONT STYLES
The Font clause specifies the appearance (typeface, color, etc.) or text
objects. The Font clause has the following syntax:
FONT ("fontname", style, size, forecolor [, backcolor] )
Fontname in double quotation marks is the typeface to be displayed. Style is
the text attribute of the typeface as shown in the following table. Size
must be 0 in a MIF file, because each text object on a Map is attached to
the map itself (thus the text size changes as you zoom in or out). Forecolor
is an integer representing a 24-bit RGB color. The background color is
optional; if you include it, MapInfo fills the are behind the text with the
color you specify.
------------------------------------------------------------------------------
style value Effect on Font Appearance
------------------------------------------------------------------------------
0 Plain 1 Bold
2 Italic 4 Underline
16 Outline (only supported on the Macintosh)
32 Shadow 256 Halo
512 All Caps 1024 Expanded
------------------------------------------------------------------------------
To specify two or more style attributes, add the values from the left column.
For example, to specify Bold and All Caps, use 513.
COLORS
Colors are often defined in relative concentractions of red, green, and blue.
Each color is a number from 0 to 255, inclusive; the RGB value of a color is
calculated by the following formula:
(red * 65536) + (green * 256) + blue
These are some often used colors and their values:
Red: 16711680
Green: 65280
Blue: 255
Cuan: 65535
Magenta: 16711935
Yellow: 16776960
Black: 0
MID FILE
The MID file contains data, one record of data per row, delimited by the
character specified in the delimiter statement. The default delimiter is
Tab. Each row in the MID file is associated with a corresponding object in
the MIF file; first row with first object, second row with second object.
If delimiter character is included as part of the data in a field, enclose
the field in quotation marks.
The MID file is an optional file. When ther is no MID file, all fields are blank
平均得分
(0 次评分)
评论: 19 | 查看次数: 8337
发表评论
订阅
上一篇
|

文章来自:
标签: 





jianyang
TCM
Diabeat
jimpness beauty
furunbao
星座
TCM
Diabeat
中医
TCM
You can wow gold understand, i'm sure, how easy it was to confuse you two. At least world of warcraft gold you sound like you're joking, the other guy was serious!This Also you have no idea if it will get more armor/energy The new rocket cluster or the yamato gun? you buy wow gold gotta choose. Either way they still suck, why build one wow po of them? When I can literally build x4 wraiths. 80 dps per sec versus 25 dps per 25 sec. Figure out the math.Battlecruiser wow or and Carrier need some help. They are destroyed easily even with support.
For them, melee wow gold stands next to their hind leg."Don't stand behind her! Who got thrown into the eggs? MINUS FIFTY DKP!!!"Aaaaah, Yahtzee! This post says it all. Fight your raid mobs from the back, nearly wow gold all of them are not friendly to DPSers in the front. As a dagger spec rogue, I could probably describe a boss's rear better than I could wow gold their front, either that or their giant feet.Thanks for all the info! When I am instancing, should I try to stand behind mobs when DPSing? Or is this really only wow gold important in the late game?lmao, this is so true and made me bash my face in my keyboard many of times on my druid.If you're DPSing and a tank has the mob's aggro, you should be behind it as wow gold a melee DPS class.Unless there's something special like a knockback that will send you over an edge, melee should ALWAYS stand behind a mob wow gold if at all possible. You do more damage, the tank takes less damage, and mobs with a cleave won't destroy you. Simply standing behind a mob makes you at least 5% better overall!Description:WOW gold,WOW money,WOW accounts,WOW power leveling wow gold are avalable here that you can get at low price. Action at once!Wow, there wasn't clickable links in mine lol xD Suppose everything is different o.o I use hotmail, probably wow gold why I thought it was fake as well, but here I am happily downloading the beta. I'm going to be just another Northrend noob, but am I going to have some fun wow gold testing out the new rogue tree.
So the number of kamas dofus times my rogue has had attacks parried or dodged from dofus kamas behind their target while in stealth never happened. Got it. that's because you dofus kamas didn't position yourself right!if you stand inside the mob or too close, your weapons can go through it, and you will get Lord of the Rings Online Gold parried etc.This idea Kerrigan had LOTRO Gold against heavy units came after she witnessed Terran Armor Annihilators tear through some Ultalisks very easily. This fly for fun penya new member of the swarm was engineered directly towards flyff penya eliminating heavy units. The only drawback is to the Protoss with Twilight Archons. However since the Infiltratorlisk jumps inside and tears Final Fantasy XI gil a hole then destroys the heavy unit would mean that the Infiltratorlisk could be used against Immortals, evening ffxi gil things up with the Armor Annihilator not being able to attack Immortals but could attack Twilight Archons well.thats Lord of the Rings Online Gold my Zerg unit for my heavy unit counter idea, I hope you enjoy This unit would be the protoss equivalent to LOTRO Gold the Armor Annihilator and the Infiltratorlisk. The Hyper Destroyer would be mechanical and would fire flyff penya from one photon cannon at the top. However this photon cannon wouldnt be a photon cannon it would be a charged buy flyff gold weapon to fire at enemy ffxi gil heavy units. It would take about 3-5 seconds buy ffxi gil for the weapon to get fully charged. During Lord of the Rings Online gold those three seconds a large LOTRO gold ball of deadly energy will mass in front of the photon cannon then after 3-5 seconds will fire, doing much more fly for fun penya damage in one blow but taking more time. Since this cannon takes a while to use, small units wil be able to overpower it easily, as all that power flyff penya is used on only 1 unit where it isnt neccesary. The Hyper Destroyers cannon activates Immortals shields so it is not usefull The Protoss Final Fantasy XI gil seeing that Terrans and Zerg apparently had some sort of heavy unit destroyer decided to develop one of their own. The Protoss ffxi gil realized that weren't as strong as what a protoss could come up with but ugg boots faster firing. Pay more attention to buy! It would be attacking small units ugg boots weakly like a zergling just weaker since it is specialized against ugg boots heavy units With Kerrigan creating and eq2 plat testing Zerg genes.Will some achievements enable small visual buffs if you activate eq2 gold them?as much as you fanboys like to think, achievements and a "gamerscore" aren't new ideas eq2 plat that microsoft sprung out of their ass.I can has flaming feets for killing Illidan? Sorry guys, but it's not new to Xbox.Random eq2 gold meaningless miniquests have been around for far longer.I can live with that. This is I can live with that. This is absolutely awesome!So is this a segway to the Xbox 360? Sounds like the Achievements they have too... hope not!We need achievements for Forum and Game Bans. absolutely awesome!So is this a segway to the Xbox 360? Sounds like the Achievements they have too... hope not!We need eq2 gold achievements for Forum and Game Bans.
窃听器
手机监听器
监听器
手机窃听器
窃听器
手机监听器
监听器
手机窃听器
窃听器
手机监听器
监听器
手机窃听器│窃听器
手机窃听器│窃听器
手机窃听器│窃听器
手机窃听器│窃听器
手机窃听器│窃听器
手机窃听器│窃听器
手机窃听器│窃听器
手机窃听器│窃听器
手机窃听器│窃听器
手机窃听器│窃听器
手机窃听器│窃听器
手机窃听器│窃听器
Well might bring about an . wow level service leave it be. wow leveling service would never practice the . wow powerleveling arts of magic again.
help you learn methods you could already learn from .wow gold kaufen
上海翻译
太阳能路灯
英语培训
英语口语
藏獒
防腐管道
液压缸
油缸
移民
投资移民
加拿大移民
技术移民
移民加拿大
澳洲技术移民
德国移民
移民澳洲
澳洲移民
出国移民
移民出国
英国移民
澳大利亚移民
加拿大投资移民
加拿大技术移民
北京旅游
北京旅行社
条码机
条码打印机
条形码打印机
防腐设备
煤气发生炉
美国留学
法国留学
法国留学
北欧留学
瑞典留学
芬兰留学
澳洲留学
除湿机
抽湿机
工业除湿机
空气净化器
空气净化机
美术培训
美术高考
美术高考培训
画室
北京画室
谐波治理
无功补偿