|
本帖最后由 jekvs3326 于 2018-5-3 09:10 编辑
平时在处理CAD-CASS上的数据的时候,经常涉及到数据入库的问题。但是CAD里的相关数据,比如:实体代码,注记属性,面属性等东西是无法直接转移到ARCGIS里面来的,后来接触到了FME这个软件,发现其转换功能非常强大,解决了不少麻烦。这里分享一下小心得!
在FME中,他可以把CAD数据分解为:点、线、面、文字等好几个不同的要素类型。下面举几个例子:
1、大量地将CAD文字注记转换为shp。
通过FME读取CAD文件(读取类型为Autodesk AutoCAD DWG/DXF)。通过要素筛选器Geometryfilter,这个转换器的功能就是相当于一个过滤器,筛选出你需要的要素类型,此例子中我们勾选TEXT,然后我们会发现转换器下出现了一个TEXT,同时点击TEXT的箭头,会发现有3个选项,其中fme_text_string就是文本的内容。值得一提的是,同时FME DATA INSPECTOR可以查看要素的各种属性名称,这有助于提取自己感兴趣的信息。
然后通过输出(shp格式),新建字段,类型为点,将fme_text_string箭头拖拉到输出位置即可。
2、将CAD注记内容挂接到shp面上。
同样通过FME读取CAD文件,主要用到的用到的转换器有Geometryfliter、PointOnAreaLayer,通过筛选器选出AREA、text,将TEXT拉到PointOnAreaLayer的POINT选项上,AREA拉到对应PointOnAreaLayer的AREA上,然后通过PointOnAreaLayer上的AREA连接到输出器,你会发现,AREA下箭头同样出现了一个fme_text_string选项,这个就是注记的内容,通过拉线将fme_text_string连接到输出下拉字段上,这就完成了挂接注记到面上。
3、提取CAD要素属性并转化为shp字段内容。
首先需要明确你需要提取的信息,比如CASS的实体代码。
这就需要用到FME DATA INSPECTOR,这是一个相当于ARCGIS可以查看数据的视图软件,但是不具有编辑功能。例子中,我们通过FME DATA INSPECTOR打开CAD文件,点击其中一个实体,可以看到右边信息视图里罗列出大量的CAD要素属性信息。其中我们找到存放实体代码的属性名是autocad_extended_data_list,我们发现这个属性不止一个名称,有0,1,2甚至更多,这就需要用到AttributeExposer转换器了,同样第一步通过Geometryfilter选择你需要提取的实体,然后通过AttributeExposer,暴露属性,双击AttributeExposer转换器,在弹出对话框下面空白出输入extended_data_list,点确定。然后在转换器下方会看见autocad_extended_data_list选项,右击他,选择暴露元素,会弹出对话框,例子中CASS代码存放在autocad_extended_data_list{3}中,在空白处填写3,点击确定,会发现转换器出现了autocad_extended_data_list{3},通过拖曳此选项输出就能提取到CASS代码。
|
评分
-
查看全部评分
|