python使用Win32com将excel和CAD连接起来,执行自动绘图

#前缀

我主要从事空调设备的开发和设计。在非标准产品设计过程中,经常会遇到类似结构的零件重复图形。在这个过程中,如何消耗设计师们的大量工作,提高生产率,减少设计错误,是亟待解决的问题。在这种情况下,我根据我的经验和其他博主的介绍,使用python编写了自动绘图软件。这个软件现在正在解决我们部门的图纸问题。

# 1,excel连接

excel表中的数据

目前本人只找到Win32com库,连接到excel和CAD,所以这里主要以Win32com为主。代码如下:

Import win32com.client

app=win 32 com . client . dispatch(' excel . application ')

#后台运行、不显示、不警告

A=1

A=0

()

#请注意,不能使用绝对路径。如果使用绝对路径,则在打包程序后无法打开其他计算机。

因为使用了类方法,所以这里有一个self。如果不在类内,就可以不用。

()

=a(' sheet 1 ')# 2,CAD连接

与Font color=#999AAA CAD的连接也使用Win32com,在这里直接连接CAD即可。附录代码运行之前,必须打开CAD并创建新窗口。代码如下:

wincad=win 32 com . client . dispatch(' au;)。

Doc=wincad。ActiveDocument

DOC . U(' Hello!Autocad from py win32 com.\ n ')

Msp=doc。ModelSpace# 3,从excel读取数据

与Font color=#999AAA CAD的连接也使用Win32com,在这里直接连接CAD即可。附录代码运行之前,必须打开CAD并创建新窗口。代码如下:

Excel表数据

#请查看excel表中有多少有效数据

总计1=0

While。cells(sum1 2、2)。value!=None:

#从excel读取数据,从第二行的第二列开始读取数据

Pnts1=。cells(sum1 2、2)。value

Pnts2=。cells(sum1 2、3)。value

#起点坐标

Point_x=sum1*7000

Point_x1=point_x pnts1

Pointcoordinates (point _ x、pnts1、pnts2)

Sum1=1# 4,根据CAD确定的坐标点绘制图形

# data transform,win32com的AddPolyLine函数的参数需要数据类型,而python生成的数据类型多数是变化类型,因此需要进行转换

Def vtfloat(lst):

Return win32 com.client.variant |,lst)

Def vtpnt(x、y、z=0):

坐标点“”将转换为浮点数“”

Returnwin32com.client.variant |,(x、y、z)

Def pointcoordinatesin (point _ x、lenth、width) :

Pnts=[point_x,0,0,

Point _ x、宽度/2,0、

Point _ x、宽度/2,0、

Point _ x、宽度/2,0、

Point _ xlenth,宽度/2,0,

Point _ xlenth,宽度/2,0,

Point _ xlenth,宽度/2,0,

Point_x lenth、0和0

]。

Pnts=vtfloat(pnts)

Pline_obj=m(pnts)

结果图表

#第五,结论

以上是我现在正在做的一些事情。后续更新,开发进展记录,以及分析我在这个过程中遇到的各种问题,供以后学习。各成果的分享是我不断学习和尝试后的结果,避免后人少走弯路,有不足之处就望上帝纠正和改善。(莎士比亚)。

# 6、参考文献

1、python二次开发AutoCAD简介:[;dist _ request _ id=3834095 B- 09 c 6-43 c 2-8 c 59-e 197 c 51 c 21 e 2 depth _ 1-UTM _ source=di]

1.《【EXcel怎么链接CAD】python使用Win32com将excel和CAD连接起来,执行自动绘图》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《【EXcel怎么链接CAD】python使用Win32com将excel和CAD连接起来,执行自动绘图》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/keji/2500630.html