《量化投资:以MATLAB为工具》

MATLAB技术论坛

 找回密码
 注册账号
查看: 34775|回复: 108
收起左侧

[源码] 编了一个将matlab图形导入到AutoCAD中的小程序,你以后可能用到。

    [复制链接]
发表于 2011-3-3 19:05:56 | 显示全部楼层 |阅读模式
本帖最后由 newman007 于 2011-3-7 09:48 编辑

   
     1     程序名称fig2cad.p。
     2     作用:将MATLAB绘出的图像(FIG格式)导入AutoCAD(DXF格式)中,便于数据共享。
     3     使用方法:将程序拷到支持路径下,在命令窗口输入fig2cad,
                              在弹出的窗口中选中你所需要的fig图形文件就可以了。
     4     环境说明:本人是在MATLAB7下编写的,高版本下没试验过,应该没问题吧。
     5     其他说明:DXF是R12格式,仅转换简单的线条、文字等内容,其他都未编写;
                             MATLAB中文字大小和线条粗细和CAD中定义不一致,转换后需要手动修改。
     6     效果图如下:
           
           各位研友可以将导入后的图形上传,并指出存在的问题,以便以后完善程序
            
     

补充内容 (2011-6-27 19:38):
不少网友问什么是支持路径,先不解释,可把程序拷贝到c:\matlab\work文件夹下;个别网友使用本程序出现错误,应该把产生错误的FIG文件上传给我看看才方便发现问题,希望下载的网友顶下本帖,你的回复是我前进的最大

补充内容 (2014-4-14 22:01):
已修改了程序,避免c盘文件保护问题,在win8+autocad2013+matlab2010平台下验证通过!

补充内容 (2014-4-14 22:07):
新程序在第70楼下载!
fig2cad.JPG

fig2cad.rar

23.25 KB, 下载次数: 1031, 下载积分: 贝壳 -1

评分

参与人数 4威望 +8 贝壳 +12 贡献 +11 收起 理由
cool_feier + 1 + 3 很不错,谢谢楼主,只是很想知道为什么转化.
Ericwjc + 1 感谢分享
pzfs1016 + 6 + 6 + 6 相当不错!
xiezhh + 1 + 5 + 2

查看全部评分

 楼主| 发表于 2016-4-10 09:22:43 | 显示全部楼层
cherishlongmao 发表于 2016-3-15 17:06
请问matlab 2015b版本是不是不行?导进CAD后什么都没有啊!帮忙看一下。

和版本没关系,我试了一下,是无法读取你图形中的Patch,,本程序仅能读取简单文字和线条,没有能帮到你,见谅!
回复 支持 反对

使用道具 举报

发表于 2016-3-15 17:06:07 | 显示全部楼层
请问matlab 2015b版本是不是不行?导进CAD后什么都没有啊!帮忙看一下。

untitled.fig

729.75 KB, 下载次数: 8, 下载积分: 贝壳 -1

回复 支持 反对

使用道具 举报

发表于 2015-9-6 10:56:08 | 显示全部楼层
谢谢分享,机械设计可以用到。
回复 支持 反对

使用道具 举报

发表于 2011-3-3 19:39:27 | 显示全部楼层
7.1版本验证成功!楼主能否透露下算法的大致思路?
fig.jpg
cad.jpg
发表于 2011-3-3 21:02:41 | 显示全部楼层
我看不错噢,楼主果然是高人呀,谢谢!
我一天不来MATLAB技术论坛就不爽~~~~
 楼主| 发表于 2011-3-4 08:39:11 | 显示全部楼层
回复 pzfs1016 的帖子

思路比较简单:首先打开需要转换的FIG图形,然后用findobj找到里面的线、片、文字、面等对象,分别获取各个对象的坐标,颜色等信息,然后按照DXF格式写入即可。

评分

参与人数 1威望 +2 贝壳 +6 贡献 +6 收起 理由
pzfs1016 + 2 + 6 + 6 谢谢~

查看全部评分

发表于 2011-4-18 21:36:33 | 显示全部楼层
发表于 2011-4-19 18:04:23 | 显示全部楼层
正在寻找中,非常谢谢!楼主好人!
发表于 2011-4-19 18:41:45 | 显示全部楼层
我转了个250m的文件,中间报错了.
Warning: Divide by zero.
> In D:\Program Files\MATLAB\R2006b\toolbox\matlab\fig2cad\fig2cad.p>fig2cad at 133
??? Attempted to access cmap(NaN,:); index must be a positive integer or logical.

Error in ==> D:\Program Files\MATLAB\R2006b\toolbox\matlab\fig2cad\fig2cad.p>fig2cad at 135
发表于 2011-4-19 21:32:07 | 显示全部楼层
高手真多 这个要学习,相结合了么
发表于 2011-4-21 15:37:05 | 显示全部楼层
正在找这方面的东西,现在就是想把MATLAB生的图形转到CAD里去,太感谢了
 楼主| 发表于 2011-4-26 19:17:06 | 显示全部楼层
回复 xsh2009 的帖子

你的文件太大了,250M, 我的程序只适合转化小图形,超过20M,就要花比较长的时间,我的思路是先打开FIG图形,读完数据后再关闭它,事实上转化过程很快,打开图形的过程却相当慢,希望坛子中的高手自己重写一个,不需要打开FIG文件就能转化,要是用VC编写就更好了,本人不大懂C语言,所以只写了个M文件
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

QQ|网站地图|MATLAB技术论坛|Simulink仿真论坛 ( 蜀ICP备19014457号-2 

GMT+8, 2022-12-3 07:43 , Processed in 0.068148 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表