宾利微站设计读者/作者
宾利®MicroStation的设计读/写允许FME由MicroStation和鹰交互式图形设计系统(IGDS)用于访问文件。
英图公布了这种文件格式的规范,他们称之为英图标准文件格式(ISFF)1在本章中,术语IGDS文件和设计文件可互换使用,是指ISFF格式。。本章假定您熟悉这种格式。
概观
设计文件由一个头文件,后跟一系列的元素。头部包含全局信息,包括从设计单元到用户坐标的转换方程,以及文件中元素的维度。每个元素都包含标准的显示信息,比如它的颜色、级别、类和样式,以及一些特定于它的元素类型的属性。例如,除了标准的显示属性外,文本元素还有字体、大小和文本字符串字段。
提示:该IGDS读写器模块支持二维和三维设计文件和单元库。
个别设计文件中的元素必须比字节系统强加的最大数量以下。复杂的元素由单独的元件物理上一起分组到将被操纵作为一个整体的目的解决这个问题。所述FME透明地处理这样复杂的元素作为单一FME特征。当文本元素被组合到由一个文本节点为首单一复合元件会发生这种情况,并且当线性或多边形特征具有大于101个的顶点(Microstation的V7)或5000个顶点(Microstation的V8)。细胞是用作符号的复杂元素,被FME视为原子实体。
每个IGDS文件元素可以有一个或多个属性联系与它相关联的。IGDS阅读器和写入器同时支持用户数据和数据库链接。(注意,DGN V8阅读器支持FRAMME链接的解释,但写入器不支持。)属性的使用可用于将元素与存储在关系表中的属性连接起来细木工要么FeatureMerger工作台变形金刚。还可以使用链接为可填充的IGDS区域几何图形(如形状元素)和其他特定于应用程序的数据指定填充信息。(不过请注意,igds_fill_color属性将覆盖任何固体填充颜色链接说明如果两者都存在。)
由于设计文件支持的单位三种解释中,IGDS读写器必须被告知如何解释的特征坐标单位以及它们将如何被转化为从分辨率(优慧预约)的单位。特征坐标单位可以被解释为主单位,亚基,或作为原料优慧预约,取决于IGDS_UNITS的在映射文件中的设置。这些单位都是相对于工作坐标的。见DGN V8假定主单位等于工作单位读者参数上DGN V8阅读更多细节。
相反,当写入DGN V8文件时,写入器忽略映射文件中的这些设置,并采用从选择的种子文件中读取的设置。这意味着如果你想对工作单元做一些特殊的事情,你必须在V8种子文件中完成。
IGDS阅读器和写入器对IGDS元素类型使用符号名称,而不是IGDS数值。这极大地简化了元素类型规范。
下表支持IGDS元素类型映射到其相应FME功能igds_type
所使用由IGDS读取器和写入器的属性值。随后的小节描述的每个详细这些元素类型的处理。
Note: ">注意:一些元素类型可能映射到多个igds_type值,这取决于它们的形状或简化上。例如,线可以映射到一个igds_point如果它只包含一个唯一的点。
IGDS元素类型 |
FME igds_type |
---|---|
2,信元头 |
igds_cell |
3,线 4、一行字符串 12,复杂的字符串 |
igds_point |
3,线 4、一行字符串 11,曲线 12,复杂的字符串 27日,b样条曲线 33,外形尺寸 36岁的多行 |
igds_line |
6,形状 14,形状复杂 |
igds_shape |
7,文字节点 |
igds_text_node |
11,曲线 12,复杂的字符串 |
igds_curve |
12,复杂的字符串 |
igds_complex_string |
14,形状复杂 |
igds_complex_shape |
15日,椭圆 |
igds_ellipse |
16,弧 |
igds_arc |
17,文本 37,标签属性 |
igds_text |
7,文字节点 17,文本 |
igds_multi_text |
2,信元头 |
igds_solid |
共享单元格标题 |
igds_shared_cell |
19,固体(V8只) 23,锥 |
igds_3d_solid |
100,参考附件(V8只) | igds_xref |
DgnStore头(仅适用于V8) | igds_xfmstore |
105年,网 | igds_mesh |
106,多边形集合 | igds_polygon_collection |
107,非几何收集 | igds_nongeom_collection |
设计文件可以将定制数据存储为元素和链接属性。其中一个例子是与Bentley Map应用程序相关联的基于xml的特性建模(XFM)数据。设计文件中的XFM数据表示作为Bentley Map项目一部分的XFM特性和属性信息的一个实例。Bentley Map项目定义了XFM特性的模式、这些特性的属性以及这些属性的域以及其他内容。DGN V8阅读器/写入器已经得到增强,支持读取和写入存储在设计文件中的XFM数据。需要注意的是,XFM数据的转换不会违反与Bentley Map项目的总体一致性。
XFM特点
需要注意的是XFM特性在DGN V8阅读器处理/作家代表XFM的标准化形式特征。查看Bentley Map的XFM设计格式作为可选对象表示。
阅读器概述
所述FME读取器检测源数据集(版本7或8)内部,并相应地处理它的版本。有一个在元素的读者关键字或属性名称的条件给客户,没有什么区别。
IGDS阅读器首先从被处理的设计文件中读取头信息,并提取将内部IGDS UORs坐标转换到地面单元所需的转换参数。这些单位都是相对于工作坐标的。看到ASSUME_MATCHING_UNITS对DGN V8阅读更多细节。它也确定输入文件的尺寸。
然后提取每个单独的元件,一次一个,并将其传递到FME进行处理的其余部分。复元素被提取作为单个FME特征。如果一个复杂的元素包含一个圆弧,则读取器自动地将其转换为线串从而使其能够通过FME内的所有其它读取器和写入处理。如果元件具有连接到它的任何属性的联系,这些被读出并作为被创建的属性到FME特征加入。
当IGDS阅读器遇到不知道如何处理的元素类型时,它会忽略它,然后继续读取下一个元素。
DGN版本8还读取这些特性所属的模型。所有读取的模型保留各自的工作单元和全局初始值。
数据集
读者数据集的值是IGDS文件的文件名被读取。例如:
/usr/data/dgn/92b034.dgn
作家概述
要创建一个新的设计文件,头信息从一个现有的设计文件中获得种子文件。IGDS写入器首先将种子文件的头信息复制到目标文件,然后提取将坐标从特征坐标单元转换到内部IGDS UORs所需的转换参数2由于在设计文件坐标最终为整数优慧预约存储,有可能会丢失精度或当他们输出到可能会发生溢出。必须小心,以确保在种子文件中的转换参数保存数据的精度和范围。。这个报头信息仅包括对于V7键入68 FRAMME元件,并键入100外部文件的参考元件。该IGDS笔者使用的种子文件,以确定目标文件将是二维或三维的。V8引擎的设计文件,笔者还使用种子文件设置可能有写到他们元素的车型。
因为具有足够的地面的范围和分辨率种子文件可能难以获得,所述IGDS V7作家允许种子参数在映射文件被重写。当使用具有可用范围不足的种子文件时,IGDS V7作家将报告特征是种子文件的范围之外,并建议用于全局原点和UOR /亚基/主单元比率使用价值。FME还可以自动调整设定的V7设计文件设置种子文件参数至是。请注意这个功能已经被带离了V8作家 - 它不再是必要的,因为V8拥有更大的设计平面比V7。
Note: ">注意:在FME Workbench中,当从DGN版本8转换到DGN版本7或反之亦然时,默认情况下会从FME提供的一组种子文件中选择一个v8种子文件。必须将其更改为适当的版本7或版本8种子文件,才能实现成功的转换。种子文件用于确定用户打算编写的版本。还要注意,如果用户在生成工作空间时选择了v7种子文件,那么可以使用相同的工作空间通过相应地更改种子文件来写入到v7或v8。但是,如果一个工作空间最初是为了写v8而生成的,那么它就不能用于写v7。
单元库文件可以任选地通过两个V7和V8作家可以使用。单元库包含命名可用于描述点特征符号定义。如果指定了单元库,在IGDS作家在所有后来的单元定义读取时电池的特点是输出。所述IGDS作家可以使用2-或3-维细胞库,并且将自动转换单元定义为用于输出的正确的尺寸。
该IGDS作家然后输出每个FME功能它被赋予。大多数情况下,单一的FME功能相当于一个IGDS元素。如果该元素指定了任何联系,他们也都被输出。然而,一些IGDS元素类型会导致几个元件是作为一个复杂的单元输出,与复杂的位导通。这发生在一个多行文本对象,细胞,或封闭的形状或线性特征与多于101个坐标(5000个坐标V8)被输出。该IGDS作家,隐藏所有复杂的元件输出的细节。
IGDS写入器可以配置为使用线性特性完成两件事情中的一件,这些特性恰好有两个点。默认情况下,将为这些特性创建一个type 3 line元素。然而,如果两点线输出被设定为4类要素,然后将为两点线性特性创建type 4 linestring元素。
Note: ">注意:设计文件(V7)的最大的大小为32 MB即可。比这大的文件不会MicroStation的完全读取。该IGDS作家将自动分割任何设计文件时,它被写入到片以避免超越这个最大尺寸。当发生这种情况,特点是会造成大小限制被超过写入附加的设计文件是必要的。附加的文件被命名为<基名> _#。DGN,其中#从1开始增加。
数据集
写入器数据集的值是输出IGDS文件的文件名。