matlab的折线图导出矢到cad,matlab2015画出图形导出CAD脚本在哪

本文介绍了如何利用Matlab生成AutoCAD脚本文件,实现参数化绘图和绘制复杂函数图形。通过编写Matlab程序,可以自动生成.scr脚本,然后在AutoCAD中运行以绘制特定图形,例如y=sin(5x)/x的函数图形和拱桥立面。这种方法大大简化了在AutoCAD中创建重复或复杂图形的过程。
摘要由CSDN通过智能技术生成

使用Matlab生成脚本文件实现在autoCAD中绘制复杂图形(参数化绘图)(2007-10-24 09:01:43)转载▼标签:

学习公社

autocad

脚本文件

绘图分类: Matlab

问题的提出:使用autoCAD绘制重复的但略有差别的图形是很麻烦的事情,希望实现参数化绘图;或者使用脚本文件来播放幻灯片;绘制一个复杂的函数图形。下面将以参数化绘图和绘制复杂函数图形为例进行说明。 什么是脚本文件?    脚本是每行包含一个命令的文本文件(类似于dos的批处理文件),其扩展名为.scr。脚本文件的格式    autoCAD脚本,其实可以看作是键盘输入的记录。编写的规则为:    (1)空格即代表回车    (2)每行末尾无论有无空格都自动加一空格    (3)以";"开头注释行    (4)字母大小写不敏感运行    在autoCAD命令窗中输入"script",则会弹出对话框,选择要运行的脚本即可。一个小例子例如,下面的一段脚本;circle 6.5,5.0 0.5arc 7.5,5.0 6.5,6.0 5.5,5.0line 5.5,5.0 5.5,3.0   7.5,5.0 7.5,3.0rectang 5.0,3.0 8.0,2.5zoom e ;将会生成如下图形。

若采用高级语言(如matlab或C++等)生成上述脚本文件,则可以实现参数化的绘图,具体方法不详述。  下面是我们要解决的问题——绘制复杂的图形具体方法就是使用matlab生成所需数据,并产生脚本文件,之后在autoCAD中执行该脚本。例如,下面的matlab程序产生的脚本可以在autoCAD中绘制y=sin(5x)/x的图形。x=-pi:0.01:pi;y=sin(5*x)./x;fid=fopen('sss.scr','w');fprintf(fid,'line\n');for i=1:length(x)    fprintf(fid,'%g,%g\n',x(i),y(i));endfclose(fid);

最后是一个绘制较简单拱桥立面的例子。下面的matlab程序将生成sg.scr。%%%%%%%%%%%%%%%%%%%x=-180:5:180;R=300;r=290;y1=sqrt(R^2-x.^2);y2=sqrt(r^2-x.^2);fid=fopen('sg.scr','w');fprintf(fid,'line\n');for i=1:length(x)    fprintf(fid,'%g,%g\n',x(i),y1(i));endfprintf(fid,'\nline\n');for i=1:length(x)    fprintf(fid,'%g,%g\n',x(i),y2(i));endfprintf(fid,'\n');for i=1:length(x)-1    fprintf(fid,'line %g,%g %g,%g \n',x(i),y2(i),x(i),y1(i));    if x(i)<0         fprintf(fid,'line %g,%g %g,%g \n',x(i),y1(i),x(i+1),y2(i+1));    elseif x(i)>=0        fprintf(fid,'line %g,%g %g,%g \n',x(i),y2(i),x(i+1),y1(i+1));    endendfclose(fid);%%%%%%%%%%%%%%%%%%%%%在autoCAD中运行sg.scr,则生成拱桥的立面图如下。

当然上边的例子还比较简单,但是复杂的内容也就是在具体实现上比较复杂吧。ps:上述程序和脚本在matlab7.0及autoCAD2004下测试通过。good luck~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值