CAD数据相互转换注意事项(一)
原文发布时间:2014-10-22
作者:lkfree
在使用fme进行数据转换时,AUTOCAD的dwg数据和ESRI的shape、gdb、mdb是很常见的格式,本次我们针对cad在转换时的参数设置与转换中的一些常见问题做一个说明。
一、转换时相关参数说明
读参数:
Autodesk AutoCAD DWG/DXF 读模块参数
在加载dwg读模块时对其参数进行设置,这里根据对参数进行勾选的情况将决定cad数据相互转换时的准确性。以下参数解释中带有 的文字,说明了在进行cad数据的相互转换时是否勾选。
1.Group Entities By(按实体分组)
指定读取DWG文件时的整体结构模式。按dwg的层名或数据的几何类型进行分组,或通过扫描扩展实体数据来创建AutoCAD结构模式。
1.1 Layer Name(图层名称)
该结构模式下FME会将源dwg数据的图层作为FME要素类进行分层显示。
图1.1按图层分层显示,表视图不显示任何属性
在workbench中读模块未显示用户属性,需要使用转换器暴露
1.2 Geometry(几何对象)
该结构模式下FME会将AutoCAD中可能包含的所有几何类型作为FME要素类进行分层显示。该列表由读模块的功能所设置,不仅仅限于当前源数据的几何类型的种类。
图1.2按几何类型分层显示,表视图显示cad的部分格式属性
在workbench中读模块默认暴露部分格式属性
1.3 Attribute Schema(属性模式)
该结构模式同时使用源数据的图层和实体进行定义。以按层名对实体进行分组的方式,图层将作为FME要素类;然而,所有实体的层的属性将被聚合并添加到层的要素类上。
图1.3按图层和属性分层显示,表视图显示cad的用户属性(此处为扩展属性)
在workbench中读模块默认显示用户属性(此处为扩展属性)
2.Blocks(块)
2 Expand Blocks Into Entities(将块打散成实体)
如果你想将块拆分为组成该块的几何实体,则需要勾选该选框。
注意:当执行Autocad数据转的相互转换时,一般是不需要勾选该选框的。
当读模块选择该选框后,块将会被打散,会输出组成该块的所有几何要素。原来的块插入点不会输出。结果就是组成该块的全部的图形都会通过FME被转换出来,但是块的插入点将会丢失。
每个被打散的块的所有组成部分会被赋予“autocad_block_number”这个属性,同一个块的打散图形“autocad_block_number”属性是相同的,后续可以通过该属性对块进行组合。
2.1 Use Block Feature Type for Components(使用块的组成部分要素类型)
指定在打散(或暴露)插入型实体(autocad_entity=autocad_insert,这里以块为例),读模块如何设置组成块的实体的要素类型。只有当“Expand Blocks into Entities”选框被勾选时,该参数才能应用。
注意:当执行AutoCAD的相互转换时,该选框一般不勾选。
当读模块打散块时,会输出组成块定义的所有AutoCAD的实体要素。若该选框被勾选,含有相同基于图层的要素类型的块的组成要素会以打散后的图形显示在对应的图层中(例如一个块由文本和椭圆组成,被打散后,将会在对应图层显示文本和椭圆)。
当需要打散后的组成部分和使用一个基于图层的结构模式时该参数是很有用的,如果您想获取块的组成要素,并改变它们的图层信息,需要用到
“Use Block Layer Information for Components”命令。
2.2 Use Block Layer Information for Components(使用块的组成部分图层信息)
指定在打散(或暴露)插入型实体(autocad_entity=autocad_insert,这里以块为例),读模块如何设置组成块的实体的图层信息属性。只有当“Expand Blocks into Entities”选框被勾选时,该参数才能应用。
注意:当执行AutoCAD的相互转换时,该选框一般不勾选。
当读模块打散块时,会输出组成块定义的所有AutoCAD的实体要素。若该选框被勾选,含有相同图层信息块的组成要素会以打散后的图形显示在对应的图层中。
显著的图层属性有:“autocad_layer, autocad_layer_hidden, and autocad_layer_color”等含有'ByLayer'值得属性。
2.3 Store Insert Location on Components(保留块的插入位置)
如果您勾选该选框,当打散(或暴露)插入实体时,读模块会将块的插入点位置作为属性增加到组成该块的实体中。在AutoCAD的相互转换中,一般是不需要勾选该选框的。
当读模块打散块时,它会为每个组成块的AutoCAD实体输出一个要素。原来的插入点并不会输出,但通关这种方式允许保留仍插入点位置的相关信息。
结果就是每个块的组成部分的要素会拥有“autocad_block_insert[xyz]”,用于记录块的插入点位置的坐标。
3.Entity Options(实体选项)
3.1 Resolve Entity Color(打散实体颜色)
决定是否打散实体的颜色,或让其保持为“ByLayer”。当勾选时(默认是勾选了的),autocad_color属性将按数值(0到255之间的某个整数)表示实际颜色,因此来保留原始属性。
例如,如果在 “rivers” 图层上有一个实体,其颜色被设置为“ByLayer”,图层颜色设置为“blue”:
§ 若您勾选该选框, 那么“autocad_color”属性将被设置为 "blue" (其对应的整数)。
§ 若您未勾选该选框, 那么“autocad_color”属性将被设置为“ByLaye”(整数值为256),其组件都将被指定为同样的图层颜色.
注意:在执行Autocad数据的相互转换时该选框一般不勾选。
3.2 Read Visible Attributes as Text Entities(将可见的属性读取为文本实体)
指定读模块是否应将可见属性还原为单独的文本要素,还是将其还原为插入要素的属性。如果您勾选该选框,每个可见属性将被还原为一个单独的文本要素。
注意:执行AutoCAD相互转换时,此选框通常被选中。
3.3 Explode MText Entities(打散多行文本)
指定读模块是否将多行文本实体打散为单行文本实体。打散时,所产生的文本要素表现为与多行文本实体具有相同属性(例如文体与位置)的文本片段。不打散时,多行文本实体将被作为单独的文本要素被读取。
注意:在执行Autocad数据的相互转换时该选框一般不勾选。
3.4 Read Polylines as 2.5D(将线要素读取成2.5维)
决定是否要将折线的高程属性当作为Z坐标(适用于轻型折线和二维折线)。
注意:在执行Autocad数据的相互转换时,不能勾选此选框。因为将高程属性转换到Z坐标中时写入的内容在写出时将不会在重新转换为高程属性。
3.5 Preserve Complex Hatches and MPolygons(保留复杂的填充和多面体)
指定读模块是否在读取填充和M多边形时保留其复合属性。若不勾选该选框,那么每个填充实体的环形将被转换为不同的面,并聚合在一起,折线凸起处会消失。若勾选该选框,正在闭合的环比已封闭环优先聚合,那么环将作为多边形聚合在一起。属性将被添加存储在polyline bulge信息中。
注意:执行AutoCAD相互转换时,此选框通常被选中。
3.6 Read Groups(读取成组的要素)
决定是否要读取AutoCAD中成组的要素。默认情况下,FME不读取成组的要素。
4.Paper Space(布局空间)
4.1 Read Paper Space(读取布局空间)
指定FME是否读取“布局空间”中的实体要素。默认情况下,FME只读取“模型空间”的实体要素。
5.User Coordinate System(用户坐标系)
5.1 Ignore UCS(忽略用户自定义坐标系)
指定FME在读取文件时,忽略该文件中用户自定义的坐标系统。默认情况下,FME读取坐标数据时不会忽略UCS(用户自定义坐标系)。
注意:通常只在执行AutoCAD的相互转换时,此选框才会被选中.
6.Apply World File(使用世界坐标系文件)
6.1 Apply World File(使用坐标系文件)
当您拥有一个Esri World file(*.wld,Esri的坐标系文件)时,需要在FME中使用该文件定义坐标系统。
当此选框被选中时,FME将搜索数据集的文件目录,寻找一个与您的数据集同名但扩展名为.wld的文件。如果无法找到具有该名称的文件,它会在数据集目录中查找 “esri_cad.wld” 文件。如果这两个文件都不存在,那么FME将使用的文件中的信息,将数据集中的要素的坐标转换为新的地理空间坐标。
读模块参数:
此处介绍几个常用参数:
1.Preserve Insert Points:是否将块的插入点作为点要素输出,若选择“yes”,将输出块的插入点。
2.Expand Blocks into Entities:是否打散块成实体,若选yes,则块打散成组成块的点、线、面、文本要素,若选no,块将以含有属性的点的形式进行加载。
此参数与2Expand Blocks Into Entities(将块打散成实体)对应
3.Read Visble Attributes as Text Entities:是否把可见的属性作为文本实体要素显示。
此参数与3.2Read Visible Attributes as Text Entities(将可见的属性读取为文本实体)对应
4.Read Groups:读取成组要素。
此参数与3.6Read Groups(读取成组的要素)对应
5.Read Paper Space:读取布局空间。
此参数与4.1Read Paper Space(读取布局空间)对应
6.Resolve Dimensions:打散注记要素,若选择“yes”,cad中的标注类要素(如对齐标注、半径标注)将会被打散。注意:在执行Autocad数据的相互转换时,通常选择no。