Find,Face,Fight,Fix,Fun
  • Mapinfo Mif文件格式说明

    2010-04-08

    具体有什么用呢?可以提取Mapgis的区,线的坐标信息。

    http://blog.csdn.net/gisfarmer/archive/2008/12/30/3647114.aspx

    MIF是Mapinfo用来向外交换数据的一种中间交换文件。当用户在Mapinfo中将一张Mapinfo地图表以MIF格式转出来MIF文件中后,Mapinfo会同时在用户指定的保存目录下生成两个文件(*.mif,*.mid)。其中*.mif文件保存了该Mapinfo表的表结构及表中所有空间对象的空间信息(如:每个点对象的符号样式、点位坐标;每个线对象的线样式、节点数据、节点坐标;区域对象的填充模式、每个区域包含的子区域个数及每个区域的节点数、节点数等)。而*.mid文件则按记录顺序保存了每个空间对象的所有属性信息。这两个文件都为文本性质的文件,用户可以通过相应的文件读写方法实现对文件内容的读写。

    MapInfo 数据在两个文件中——图形保存在.MIF 文件中而文本数据包含在.MID
    文件中。文本数据是分界数据,每行一个记录以及行间的回车,或者回车加换行,或者换行。MIF
    文件有两个区域—文件头区域和数据节。有关如何创建MapInfo表的信息保存在文件头中;图形对象定义保存在数据节中。
    这是一个MIF 文件头的说明,方括号内是可选信息。MIF File header 格式:
    Version n
    Charset “characterSetName”
    [ DELIMITER "" ]
    [ UNIQUE n,n.. ]
    [ INDEX n,n.. ]
    [ COORDSYS... ]
    [ TRANSFORM... ]
    COLUMNS n




    DATA
    Version
    子句说明您所使用的是VERSION 1、VERSION 2、VERSION 300还是VERSION 450
    格式。
    Charset
    子句指定在表中创建文本时使用的字符集。
    Delimiter
    在引号中指定分隔符,缺省情况下,分隔符是TAB键;如果使用缺省值,则无需DELIMITER行。
    Unique(唯一)
    指定一个号码。这个号码指示数据库的一列;
    Index(索引)
    要指出表中的列有索引,可以在Index子句中引入一个号码(或一系列用逗号分隔的号码)。每个号码代表数据库的一列;INDEX
    列表中的列将有附录为它们制作的索引。
    CoordSys(坐标系统)子句

    指定COORDSYS子句以注明数据不是以经度/纬度形式保存的。未指定COORDSYS子句时,假定数据是以经度/纬度形式保存的。所有坐标都是以相对于东北象限的值保存的。(
    其中一些参数设置比较复杂)
    Columns(列)
    指定列数。然后为每列创建一行,它包含列名、列类型,对于字符列和小数列,还包含一个指示字段宽度的数。
    有效的列类型是:
    l char(宽度)
    l integer(4 个字节)
    l smallint(2 个字节,因此只能存储从-32767 到+32767 的数)
    l decimal(宽度,小数位数)
    l float
    l date
    l logical
    MIF文件的数据节在文件头之后,且必须由DATA 以单独的一行引入:
    DATA
    MIF文件的数据节可以有任意多个图形初值,每个初值代表一个图形对象。MapInfo使MIF和MID
    文件中的条目相互匹配,MIF文件中的第一个对象与MID文件中的第一行关联,MIF文件中的第二个对象与MID 文件中的第二行关联,依此类推。如果MID
    文件中特定的一行没有对应的图形对象,那么必须在MIF 文件中的相应位置上写一个“空白”对象(NONE)以保留该位置。
    NONE
    可以指定的图形对象为:
    l 点(point)
    l 直线(line)
    l 折线(polyline)
    l 区域(region)
    l 圆弧(arc)
    l 文本(text)
    l 矩形(rectangle)
    l 圆角矩形(rounded rectangle)
    l 椭圆(ellipse)
    一个点(point)对象需要两个参数:一个X 坐标和一个Y坐标。作为一个选项,可以设定代表该点的symbol(符号)。symbol
    是用数字标明的。如果忽略了SYMBOL 子句,则使用当前symbol。
    POINT x y
    〔 SYMBOL (shape, color, size)〕

    一个直线(line)对象需要四个参数;每个端点各一个X 坐标和一个Y 坐标。作为一个选项,可以指定pen
    类型。如果没有指定pen类型,则使用当前pen 类型。
    LINE x1 y1 x2 y2
    〔 PEN (width, pattern, color)〕

    一个折线(polyline)对象由一节或多节构成。如果该折线不止一节,则应包含MULTIPLE
    关键字,并在其后写明节数。为每节设定一个numpts 参数(该参数指出该节中节点的数量),
    其后为每个节点的x/y坐标对。用可选的PEN 子句(本附录稍后说明)来指定线样式。如果包含了可选的SMOOTH 关键字,则折线被平滑。

    PLINE 〔 MULTIPLE numsections 〕
    numpts1
    x1 y1
    x2 y2
    :
    〔 numpts2
    x1 y1
    x2 y2 〕
    :
    〔 PEN (width, pattern, color)〕
    〔 SMOOTH 〕

    一个区域(region)对象由一个或多个多边形构成。用numpolygons 参数设定多边形数量(紧
    跟在REGION 关键字后面)。为每个多边形设定一个numpts参数(该参数指出该多边形中节点的数量),其后为每个节点的x/y坐标对。用可选的PEN
    和BRUSH 子句(本附录稍后说明)指定该对象的样式。用可选的CENTER子句来精确定义该对象的中心位置。中心必须位于对象内。
    REGION numpolygons
    numpts1
    x1 y1
    x2 y2
    :
    〔numpts2
    x1 y1
    x2 y2 〕
    :
    〔 PEN (width, pattern, color)〕
    〔 BRUSH (pattern, forecolor, backcolor)〕
    〔 CENTER x y 〕

    一个圆弧(arc)需要其外接矩形的对角位置以及该圆弧的起点(a)和终点(b)的角度,其中角度以度的形式表示,以时钟上三点钟处为零点反时针移动。作为一个选项,可以指定pen类型。(一段圆弧指定了一个椭圆的一段,圆弧的两角由外接矩形确定。)

    ARC x1 y1 x2 y2
    a b
    〔 PEN (width, pattern, color)〕

    一个文本(text)对象由一个文本字符串构成,不超过255个字符。要使文本字符串换行成多行,可在textstring参数内插入字符\n(例如“第一行\n
    第二行\n第三行”)。x1、y1、
    x2和y2 指定了文本在地图上的位置。间隔可以是1.0(单间距)、1.5 或2.0(双间距)。
    用Font 子句来控制字体等等。
    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 〕

    一个矩形(rectangle)需要一对对角的坐标。作为选项,可以指定pen和brush类型。
    RECT x1 y1 x2 y2
    〔 PEN (width, pattern, color)〕
    〔 BRUSH (pattern, forecolor, backcolor)〕

    一个圆角矩形(rounded rectangle)需要一对对角的坐标和圆的角度(a)。作为选项,可以指定pen 和brush
    类型。圆角的角度用坐标单位表示。
    ROUNDRECT x1 y1 x2 y2
    a
    〔 PEN (width, pattern, color)〕
    〔 BRUSH (pattern, forecolor, backcolor)〕

    一个椭圆(ellipse)对象需要其外接矩形的一对对角的坐标。作为选项,可以指定pen 和brush类型。
    ELLIPSE x1 y1 x2 y2
    〔 PEN (width, pattern, color)〕
    〔 BRUSH (pattern, forecolor, backcolor)〕

    Pen样式
    Pen 子句设定诸如直线、折线或圆弧此类的线性对象的宽度、图案和颜色。Pen 子句有如下语法:
    PEN (width, pattern, color)
    Width 是从1 到7 的一个数。1-7 是屏幕象素的宽度。11-2047是要转换为点的数值:
    penwidth = (点数 * 10) + 10
    0 只有在针对不可见的线,笔模式为1时才有效。
    color 是一个整数,表示一个24 位的RGB
    颜色值。
    Pattern是一个从1到118的整数,模式号为1时可见。模式号和画笔文件中画笔号相对应。可以用画笔编辑器来编辑画笔文件。
    有效的画笔号是从1 到画笔文件中最大的画笔号,应该不超过127。如果一个画笔样式是交叠的,就增加128
    作为其画笔号。交叠样式在 129-255范围之内。由于画笔文件可以修改,而且交叠也可以指定,所以画笔模式可以是1-255之间的数。

    Brush 样式
    Brush 设定诸如圆或区域这样的填充对象的图案、前景颜色和背景颜色。Brush 子句有如下语法:
    Brush (pattern, forecolor 〔, backcolor 〕)
    forecolor(前景颜色)和backcolor(背景颜色)参数都是整数,代表24 位RGB 颜色值。
    pattern(图案)是一个1 到71 之间的数。注意:1 号图案是“不填充”而2号图案是纯色填充。

    Symbol 样式
    Symbol 子句设定点对象的外观。Symbol 子句有三种格式,如下所述。
    Symbol子句——MapInfo 3.0语法
    Symbol 子句设定一个点对象的外观。Symbol 子句有三种格式。要设定一种使用“Old MapInfo
    Symbols”(MapInfo早期版本使用的符号)的Symbol 样式,使用如下语法:
    SYMBOL (shape, color, size)
    shape(形状)参数是一个整数值、31 或更大;31代表空白symbol(即该对象是不可见的)。标准symbol
    集合包括32 到67号symbol,但用户可以用Symbol 应用程序来自定义symbol集合。color(颜色)参数是一个整数,代表一个24 位RGB
    颜色值。size(大小)参数是一个1 到48 之间的整数,代表点的尺寸。

    Symbol子句——TrueType字体语法
    要设定一个基于TrueType 字体的字符的Symbol 样式,使用如下语法:
    SYMBOL (shape, color, size, fontname, fontstyle, rotation)
    fontname(字体名称)参数是一个文本字符串,指明一个字体的名称(例如“Wingdings”)。
    fontstyle(字体样式)参数是一个控制样式设置(例如粗体)的整数。

    Symbol子句——自定义位图文件语法
    要设定一个基于自定义位图文件的symbol 样式,使用如下语法:
    SYMBOL (filename, color, size, customstyle)
    filename(文件名)参数是一个文本字符串,它标明了CustSymb
    目录中的一个位图文件(例如“Arrow.BMP”)。 customstyle(自定义样式)参数是一个整数,控制是否使用颜色和背景属性。

    Font样式
    Font 子句设定文本对象的外观(字体、颜色等)。Font 子句有如下语法:
    FONT (“fontname”, style, size, forecolor 〔, backcolor〕 )

    双引号内的 fontname(字体名称)是被显示的字体。style(样式)是字体的文本属性。MIF文件中的size(大小)必须是0,因为一幅地图上的文本对象是附加到该地图上的(这样在放大或缩小时文本尺寸改变)。forecolor(前景颜色)是一个整数,代表一种24位RGB
    颜色。backcolor(背景颜色)是可选的;如果包含了它,则MapInfo在文本背后的区域中填充指定的颜色。

    颜色
    颜色通常是以红、绿和蓝色的相对浓度来定义的。其中每种颜色是一个0到255包括0和255之间的数;各种颜色的RGB 值由以下公式计算:
    (红色 * 65536)+(绿色 * 256)+蓝色
    这里是一些常用颜色及其数值:
    红色:16711680
    绿色:65280

    作者:大笨蛋 | 分类目录:MapGis | 标签:
  • 2010温家宝答记者问精彩言论

    2010-03-14

    [温家宝]:我知道商签协议是一个复杂的过程,但是正因为我们是兄弟,兄弟虽有小忿,不废懿亲,问题总会可以解决的。我去台湾的愿望依旧是那么强烈,因为我认为中华民族5000年的文化,具有强大的震撼力和凝聚力,不要因为50年的政治而丢掉5000年的文化。

    作者:大笨蛋 | 分类目录:LifeWeb | 标签:
  • 由Surfer的等值线Srf文件直接得到网格Grd文件

    2010-02-05

    有的时候,仅仅只有Srf工程文件,没有网格文件。

    比如网格文件丢失,比如对方仅仅给了Srf工程文件,在需要对数据进行琢磨时可以利用如下办法得到网格文件

    打开Surfer等值线,选中,运行如下Surfer脚本语言

    Sub Main
    Dim Surf As Object
    Dim plotdoc1 As Object
    Dim shapes1 As Object
    Dim mapframe1 As Object
    Dim ovrly As Object
    Dim grd As String

    Debug.Print “—– “;Time;” —–”
    Set Surf = GetObject(,”surfer.application”)
    Set plotdoc1 = Surf.ActiveDocument
    Set shapes1 = plotdoc1.Shapes
    Set mapframe1 = plotdoc1.Selection(1)
    For Each ovrly In mapframe1.Overlays
    ‘Vector map Not included. srfShapeVectorMap = 23.
    Debug.Print ovrly.Type;InStr(” 15 16 19 20 22″, ovrly.Type)
    If InStr(” 15 16 19 20 22″,ovrly.Type) <> 0 Then _
    ovrly.Grid.SaveFile(GetFilePath(ovrly.Grid.FileName,”grd”, _
    “c:\incoming\”,”Save GRD File”,3),Surfer.srfGridFmtS7)
    Next ovrly
    End

    End Sub

    即可

    作者:大笨蛋 | 分类目录:Geophysics | 标签:
  • 2009小结

    2010-01-11

    2009的牛尾巴,在此地,我没有留下一点信息。

    2010的虎头,在此地,突发感慨,回望2009。

    2009过得如此之快,快得让我来不及回味,快得让我来不及体会。

    • 年度最热门地点:广西
    • 大批的时光献给了广西。时光在流水中趟过,在小桥上滑过,在大山里走过。

    • 年度最热门交通工具:火车
    • 等火车是种心情,坐火车也是种心情。旅游是种心情,出差也是种心情。

    • 年度最佳浏览器:Firefox,UCWeb
    • 年度最佳输入法:微软拼音2010 Beta 2
    • 年度最喜悦事情:
    • 好几位朋友找到了陪伴他们一辈子的伴侣。能够分享这种喜悦,也是种喜悦。

    • 年度最遗憾事情:
    • 望来望去,望不到那一个人

    • 年度最悲伤事情:朋友
    • 在2009即将结束之际,一位朋友失去了最爱她的父亲。亲情之疼,无以复加。一切会好起来的,姑娘!

    作者:大笨蛋 | 分类目录:Life | 标签:
  • 半夜三更

    2010-01-09

    房东家某个小男孩,一岁多点,正是开始有点思维有点互动有点学习有点可爱的年段。

    小男孩,近一岁时,像泥鳅一样,在地上爬来爬去,追也追不到。偶然一天,大人们发现他的两条小腿有了一点点

    力量,便有意识地练习他的站立能力。谁也无法捕捉他第一次站立一秒钟时的心情和感受。我想他应该是渴望欣喜和雀跃的。他会意识到自己站立的某种意义,他会笑,他会胆小地躲到大人的怀里,他会聪明地一屁股坐到地上。

    后来,小男孩跟他年轻的妈妈去了广东,在他父亲打工的地方,学走路学说话。在他爸爸为了家庭辛苦劳作的时候,也许他说出口的第一个词是“爸爸”。

    等小男孩回到家,他已经会迈着步伐咕咚咕咚地走着咯吱咯吱地笑着。他走得和利索,很欢快,很随心所欲。大大的屋子没有他去不了的地方。他的妈妈已经有点吃力了。端着饭碗,拿着他需要添加的衣服在他的后面追着。在你眨眼的功夫,他可以钻到他喜欢的地方去。

    小男孩还不怎么会说话。他有时候很沉默,抗议的时候会“嗯嗯”附和几声。他有时候很吵闹,有他自己的语言,肆无忌惮。我教他喊叔叔,用普通话,用湖南话,用广西白话,他偶尔会应合一声,一点点近似的声音,足以让我快乐高兴。

    小男孩,喜欢动。抱着他,牵着他,在屋子里乱跑,他最高兴,啊啊叫着。

    小男孩,喜欢看电视。我抢着房东家的电视看的时候,他偶尔会走过来,抢过遥控,有模有样的按着。甚至,他会直接走向电视,在电视操作面板上按着。

    小男孩,喜欢音乐。有唱歌跳舞的节目,十分开心。我们如果引导他跳舞,他会很高兴地扭动着,咦咦叫着,有着歌厅里迪斯科的范儿。

    然而,就在最近,

    小男孩,习惯了半夜三更,睡醒,哭闹。

    谁也无法理解,他是饿了还是失眠还是找不到他的“布娃娃了”。

    其实所谓的布娃娃,是小男孩的一件小衣服,像绳索一样打了一个节。小男孩的妈妈说,小男孩不喜欢娃娃,却十分喜欢这件衣服。他没事的时候,总是一只手抱着这件衣服,在房间里跑来跑去。有人抢走了衣服,他便哇哇大哭。莫非,衣服上有他断奶前的味道?

    小男孩三更半夜哭的时候,他的母亲没有一点办法。每次哭的时候,我都会醒。看看表。

    小朋友,你是不是因为醒了,找不到了“布娃娃”衣服而哭呢?

    没人知道。

    反正,现在,他已经醒过,哭过一次了。

    作者:大笨蛋 | 分类目录:Life | 标签:
第 6 页,共 9 页123456789