span8
span4
FME可以自动化AutoCAD块属性的数据的提取。AutoCAD块必须包含属性(数据)信息的能力。在AutoCAD中,当与属性定义(多个)块被插入时,用户被提示在数据输入。到在AutoCAD编辑数据块,用户都带有一个块属性编辑形式(AutoCAD块属性显示在AutoCAD图像的下方)。在AutoCAD每个实体具有可以被用作唯一ID的唯一不可改变句柄。跟踪AutoCAD块句柄信息 - 与绘图名的组合 - 允许在数据库跟踪和更新绘图数据。
本文将演示如何提取AutoCAD块“标签”和“值” - 使用FME在AutoCAD的DWG - 存储为块属性。提取的属性,然后保存到Excel电子表格。这个例子感兴趣的是,这需要提取AutoCAD块属性信息的用户。使用FME,提取出的块的属性值可以在GIS中使用,和数据库系统。
开始数据块和表DWG图形:
http://download.autodesk.com/us/samplefiles/acad/blocks_and_tables_-_imperial.dwg
下面示出了被称为“窗口”的属性块的一个例子的图像在AutoCAD正在编辑。
AutoCAD块属性显示在AutoCAD
让我们来看看如何FME通过查看在FME数据检查DWG文件,与读写器参数爆炸块到选中的实体处理这些数据。
同样的DWG的信息,在AutoCAD中,显示在FME数据检查的列表:
AutoCAD块属性显示在数据查验。棘手位 - 一如既往 - 是知道到哪里找数据。在FME数据检查石头!
FME读取块属性信息和存储信息的列表。对于第一列表元素,第一AutoCAD块属性字段名称 - 或“变量” - 在FME捕获与fme_attrib_info {0} .field_name,并且第一AutoCAD块属性字段值 - 或“值” - 在FME捕获与 fme_attrib_info{0}.field_value.
上面的示例示出了第一属性{0}为“SYM”具有“3”的值。第二属性{1}遵循同样的格式。
哦...阅读从零开始列出了乐趣。
1)启动工作台,并添加一个“AutoCAD的DWG / DXF阅读器”到一个新的空白工作区
在添加读者对话,选择AutoCAD的DWG / DXF作为格式,并选择blocks_and_tables _-_ imperial.dwg作为数据集。
点击参数按钮。
我们要保持保存为单个实体块,所以取消选中爆炸块成实体,因为我们不希望在爆炸读者参数块。此外,一定要勾选“读取属性实体数据作为列表”。
选择单一的合并功能类型。注意,选择“单一的合并功能类型”使读者有弹性,使其能够处理任何DWG,与任何层的命名结构(和架构),一般使AutoCAD的DWG文件更易于使用。AutoCAD图纸有用户定义的层结构(它们可以被命名为任何东西)。如果不打破绘制成层(谁知道什么可能遇到的层),在FME处理更容易/通用。其他的事情要记住,是AutoCAD图纸都是手工人类通常用。值得注意的是,提供DWG由Autodesk的例子包含错误的层上的块(或两个)。因此,提取基于层DWG数据可能给错误的结果。
2)添加AttributeExposer
虽然“AutoCAD的DWG / DXF读本”有一个地方“的附加属性揭露”,使用属性风险器要清楚,以正暴露了什么。我们发现它更容易管理和故障排除的东西是明确的。
所有隐藏格式AutoCAD和FME属性都可以访问(无需使用导入按钮),点击有三个点(连续)按钮,然后过滤通过键入“fme_attr”,然后选择属性。
至少,暴露:
对于数据库或GIS同步/更新确保暴露柄部件,块名称和DWG文件名。
3)一个TestFilter添加到过滤器用于与属性的块
在TestFilter,规定如下:
如果TEST @Value(autocad_entity)= autocad_insert和试验@Value(autocad_attributes_follow)=真输出端口 - >带属性否则如果TEST @Value(autocad_entity)= autocad_insert和试验@Value(autocad_attributes_follow)= FALSE输出端口模块 - >块
上述TestFilter检测/指示“块带属性”通过寻找一个“autocad_entity”块插入等于“autocad_insert”。块具有的属性,有“autocad_attributes_follow”等于true。
4)添加ListConcatenator
在ListConcatenator变压器连接到“块带属性的” TestFilter的端口。重命名ListConcatenator_Tags。
FME可以理解为一个列表中的AutoCAD块属性(确保DWG读者有这一套)。块属性列表可以看作是包含所有关于该块的属性信息列表对。正如前面提到的,在这个例子中,第一个属性包含一个名为标签“SYM”。 and it has a value of 3.
通常情况下,处理列表时,使用使用逗号分隔符。然而,CAD属性数据也可以包含逗号或引号。例如,本实施例中图具有高度与1'-6" 的值的属性标记为了安全起见,使用一种特殊的分隔符 - 换行符(\ n) - 避免解析可能属性数据的危害亚搏在线 mess up comma separated or quoted values.
使用换行分隔符将可以很容易地与数据的工作,后来提交的数据。
5)添加值ListConcatenator
第二ListConcatenator变压器连接到所述第一ListConcatenator的输出端口。重命名ListConcatenator_Values。
添加一个AttributeManager
删除以下属性:
7)添加Excel writer
对于表定义,选择自动。
设置表名称块与属性。
与属性连接Excel的功能块类型到AttributeManager输出端口。
从示例图导出到Excel的属性
谢谢你给Autodesk以提供样品DWG。“阻止和表(英制)数据集”是由Autodesk公司许可根据CC BY-NC-SA V.3.0许可证,可从http://download.autodesk.com/us/samplefiles/acad/blocks_and_tables_-_imperial.dwg
谢谢你的安排,女士。
但什么是“autocad_insert”和“带有属性的块”。
我正在尝试做CAD到GIS的转换,我有一些高度作为属性的点,我想把它们放在GIS文件的属性表中,你有什么建议吗?
谢谢
©2020安全亚搏在线软件公司|法律