python - 使用 Python 自动化 AutoCAD

标签 python automation activex autocad autodesk

我对 Python 和 AutoCAD 很陌生,所以请耐心等待。我正在尝试使用 Python 在 AutoCAD 中自动化设计周期。到目前为止,我能够通过 Python 在 AutoCAD 中添加点和线,但我希望能够将线型更改为虚线。我知道这可以通过一些简单的命令在 AutoCAD 的命令栏中完成,但我不知道如何通过 Python 来完成。

import array
from _ast import If
import comtypes.client
import pyautocad

#Get running instance of the AutoCAD application
acad = comtypes.client.GetActiveObject("AutoCAD.Application")

# Document object
doc = acad.ActiveDocument

#Get the ModelSpace object
ms = doc.ModelSpace

#In ModelSpace
#Set up A4 Space
pt1 = array.array('d', [0.0, 0.0, 0])
pt2 = array.array('d', [210.0, 0.0, 0])
pt3 = array.array('d', [210.0, 297.0, 0])
pt4 = array.array('d', [0.0, 297.0, 0])
line1 = ms.AddLine(pt1, pt2)
line2 = ms.AddLine(pt2, pt3)
line3 = ms.AddLine(pt3, pt4)
line4 = ms.AddLine(pt4, pt1)

#Add central fold
pt5 = array.array('d', [105.0, 0.0, 0])
pt6 = array.array('d', [105.0, 297.0, 0])

line5 = ms.AddLine(pt5, pt6)

print("Done.")

这会生成一个带有实心分隔线的 A4 大小的矩形,但我想要一条虚线。知道在哪里可以找到有关在 AutoCAD 中使用 Python 的一些信息吗?任何帮助是极大的赞赏!

最佳答案

尝试这样做以更改 line5 的线型:

line5.linetype = 'dot'

请确保在线型管理器列表中添加(加载)使用的线型(在这种情况下为 DOT)。

您可以通过以下方式更改线型比例:

line5.linetypescale = '0.01'

关于python - 使用 Python 自动化 AutoCAD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42513680/

相关文章:

python - 为什么这个 opencl 代码是不确定的?

java - 添加一段代码到快捷方式

vba - 赢得秒更新后,MS-access 不会捕获 TreeView 事件

javascript - 自动化网络事件,包括表单提交、javascript 和 SSL

javascript - 如何在 Javascript 中连接 C# ActiveX 事件处理程序

excel - 使用activex控件从左到右滚动excel窗口

python - 在 django 模板中输出排序的 python 字典

python - Python 2.6 中的无类型问题

python - 如何使用 numpy 以行和列形式将数据保存在 .csv 文件中

c# - 在 C# 中使用参数打包 IDispatch 调用(使用 DISPPARAMS)