CAD数据相互转换注意事项(二)

原文发布时间:2014-11-12

作者:lkfree

相关链接:CAD数据相互转换注意事项(一)

在上一节我们介绍了CAD数据相互转换时读模块的相关参数,这一节继续介绍转换时的一些注意事项。

1.ucs相关

在进行cad数据相互转换时,有时转换出来的数据xy坐标会发生偏移,这与cad的用户坐标系有关。

首先先普及一下caducs相关知识:

用户坐标系(UCS):

AutoCAD的坐标系有世界坐标系(WCS)和用户坐标系(UCS)两种。AutoCAD默认的坐标系是世界坐标系,而某些情况下AutoCAD允许建立自己的坐标系(即用户坐标系)。用户坐标系的原点可以放在任意位置上,坐标系也可以倾斜任意角度。由于绝大多数二维绘图命令只在XY或与XY平行的面内有效,在绘制三维图形时,经常要建立和改变用户坐标系来绘制不同基本面上的平面图形。


                                            图1.1dwg图,默认为WCS世界标系

    原图的一个文字的坐标为CAD数据相互转换注意事项(二) - FME - FME—专业化的空间数据服务实践者

    

     1.2dwg图,自定义用户坐标系

   通过caducs命令,我们定义了一个用户坐标系,原此时文字的坐标变为:

   CAD数据相互转换注意事项(二) - FME - FME—专业化的空间数据服务实践者 

    

                                                 1.3转换后dwg图,带有用户坐标系

    转换后图形发生了偏移,文字坐标也发生了变化,CAD数据相互转换注意事项(二) - FME - FME—专业化的空间数据服务实践者

    可以发现由于dwg采用了用户坐标系,转换时我们需要在fme中设置一些参数,来保证转换后的dwg坐标的一致性。

     在转换添加dwg读模块时有一个参数“ignore ucs”忽略用户坐标系

        

        或添加后在这里设置此外UCS也会定义在dwg写模块的模板文件中,例如我们已带UCSdwg文件为写模块模板文件,那么输出的dwg文件会带有用户坐标系。


1.4不设置模板文件,不忽略UCS

    在上图情况下,输出的文件为WCS世界坐标系,但文字坐标与原图带UCS时一致:

    CAD数据相互转换注意事项(二) - FME - FME—专业化的空间数据服务实践者,那么图形偏移较大。

        

 1.5不设置模板文件,忽略UCS

    在上图情况下,输出的文件为WCS世界坐标系,文字坐标与原图带WCS时一致:

     CAD数据相互转换注意事项(二) - FME - FME—专业化的空间数据服务实践者
    
                                                      1.6 设置模板文件,不忽略 UCS

    在上图情况下,输出的文件为UCS用户坐标系,文字坐标与原图区别很大:CAD数据相互转换注意事项(二) - FME - FME—专业化的空间数据服务实践者会导致图形偏移较大。
    
1.7设置模板文件,忽略UCS

    在上图情况下,输出的文件为UCS用户坐标系,文字坐标与原图带UCS时一致:

     CAD数据相互转换注意事项(二) - FME - FME—专业化的空间数据服务实践者

    由这4中情况我们可以确定,在cad数据相互转换时为了保证在WCS情况下坐标一致,必须勾选“ignore ucs”或设置“ignore ucs”参数为yes。若使用带有UCSdwg数据为模板文件,那么输出的数据也会带有UCS


2.fme不支持cad中代理类型autocad_proxy_entity

     有时候我们转换 CAD 图,可能会发生要素丢失,例如 :

    

                                                                   图2.1cad

    

                                                                图2.2转换后cad

    实际上是一个叫autocad_proxy_entity的图元搞的鬼,在图形空白处点右键,选择“快速选择”,在快速选择对话框中选择如下图中的选项。

    

    

    

    

    

    autocad_proxy_entity图元:这种代理图元是由二次开发的cad软件或插件生成的一种图元,在AUTOCAD中可以正常显示、打印,但在fme部分代理图元中无法识别,如下图:

    

    我们可以看到,fme中无法识别图形,只能识别其属性。









猜你喜欢

转载自blog.csdn.net/fmechina/article/details/80749516