制作从MatLab到AutoCAD绘制直线的脚本时出现的问题



我想做一个项目,使用MatLab中计算的数据绘制电机。我知道如何在AutoCAD中绘制它,现在我想用MatLab实现它。

我开始学习如何在AutoCAD中绘制MatLab计算,但脚本中有一些错误,我不明白哪里出了问题。首先,我使用ActiveX进行连接。连接正常,我设法接通了。问题是当我试图画一条线时

feature('COM_SafeArraySingleDim', 1)
acad=actxGetRunningServer('AutoCAD.Application');
set(acad,'visible',1);
c_doc=get(acad,'ActiveDocument');
dwg=c_doc.PaperSpace;

a=[1;5];
b=[3;4];
invoke(dwg,'AddLine',a,b);

主要错误是描述:SafeArray中的元素数量不正确。我使用了2D工作空间(PaperSpace(,但如果我在a和b中添加第三个值,脚本会起作用,但不会画线。

如果你认为这不是处理这样一个项目的最佳解决方案,你能推荐我一些书、youtube视频或我可以学习的来源吗?谢谢

ActiveXAddLine方法需要启动&端点自变量是相对于世界坐标系(WCS(表示的三维点,并由3个双(安全(数组表示。

因此,您的数组需要包含三个数值,例如:

a=[1.0;5.0;0.0];
b=[3.0;4.0;0.0];
invoke(dwg,'AddLine',a,b);

你在Paperspace中创建线条有什么原因吗?

顾名思义,图纸空间通常用于标题栏和注释,视口显示在模型空间中定义的相关几何图形。

您可能还需要重新生成图形以绘制线条,这可能看起来像这样:

invoke(c_doc,'Regen',0);

相关内容

  • 没有找到相关文章

最新更新