利用Python自动化操作AutoCAD的实现


Posted in Python onApril 01, 2020

1 Python自动绘图

在这里我主要运用了pyautocad库进行AutoCAD的自动化操作,pyautocad是一款功能非常强大的AutoCAD操作处理库,可以实现Python自动绘图、CAD图像对象读取、对象属性修改等操作。

from pyautocad import Autocad,APoint

# 连接及库导入
acad = Autocad(create_if_not_exists = True)
acad.prompt("Hello! Autocad from Python.")
print(acad.doc.Name)

# 定义点
p1=APoint(0,0)
p2=APoint(50,25)
for i in range(0,5):
  text=acad.model.AddText('Hi %s' %i,p1,2.5)  # 将i值插入到%s占位符的字符串中(字符串内容,坐标位置,字号大小)
  acad.model.AddLine(p1,p2)  # 绘制线段(起始点,终止点)
  acad.model.AddCircle(p1,10)  # 绘制圆(圆心,半径)
  p1.y+=10  # p1点纵坐标加10

利用Python自动化操作AutoCAD的实现

图1.Python自动绘图结果.png

如果此时你的计算机上未打开AutoCAD软件,在运行该代码时会自动打开AutoCAD并开始绘图;如果已经打开了AutoCAD软件,则在运行该代码时会默认在已打开的图上进行绘图。

2 读取CAD图像对象

from pyautocad import Autocad,APoint

# 连接及库导入
acad = Autocad(create_if_not_exists = True)
acad.prompt("Hello! Autocad from Python.")
print(acad.doc.Name)

# 遍历CAD图像的所有文本对象,打印其文本内容及坐标位置
dp=APoint(10,0)
for text in acad.iter_objects('Text'):
  print('text: %s at: %s' %(text.TextString,text.InsertionPoint))

# 打印对象的类型名称
for obj in acad.iter_objects(['Circle','Line','Text']):
  print(obj.ObjectName)

3 修改对象属性

from pyautocad import Autocad,APoint

# 连接及库导入
acad = Autocad(create_if_not_exists = True)
acad.prompt("Hello! Autocad from Python.")
print(acad.doc.Name)

# 遍历CAD图像对象,修改对象属性
for text in acad.iter_objects('Text'):
  print('text: %s at: %s' %(text.TextString,text.InsertionPoint))
  # 将文本中的“Hi”字符替换为“OK”
  if 'Hi' in text.TextString:
    print('text: %s at: %s' %(text.TextString,text.InsertionPoint))
    # 修改?ο?傩
    text1 = str(text.TextString)
    text1 = text1.replace('Hi','OK')
    text.TextString = text1

将CAD图中,所有文本中的“Hi”字符串替换为“OK”,修改结果如图2所示。

利用Python自动化操作AutoCAD的实现

图2.修改对象属性后

到此这篇关于利用Python自动化操作AutoCAD的实现的文章就介绍到这了,更多相关Python自动化操作AutoCAD内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python中子类继承父类的__init__方法实例
Dec 15 Python
python实现的AES双向对称加密解密与用法分析
May 02 Python
Python中read()、readline()和readlines()三者间的区别和用法
Jul 30 Python
Python实现的桶排序算法示例
Nov 29 Python
Python cookbook(数据结构与算法)通过公共键对字典列表排序算法示例
Mar 15 Python
python正则爬取某段子网站前20页段子(request库)过程解析
Aug 10 Python
基于Python实现扑克牌面试题
Dec 11 Python
解决pip install psycopg2出错问题
Jul 09 Python
python实现逻辑回归的示例
Oct 09 Python
详解基于python的图像Gabor变换及特征提取
Oct 26 Python
Python tkinter之Bind(绑定事件)的使用示例
Feb 05 Python
python基于opencv批量生成验证码的示例
Apr 28 Python
python使用信号量动态更新配置文件的操作
Apr 01 #Python
python和pywin32实现窗口查找、遍历和点击的示例代码
Apr 01 #Python
python自动脚本的pyautogui入门学习
Apr 01 #Python
Python自动重新加载模块详解(autoreload module)
Apr 01 #Python
python中的socket实现ftp客户端和服务器收发文件及md5加密文件
Apr 01 #Python
基于python实现FTP文件上传与下载操作(ftp&sftp协议)
Apr 01 #Python
django model的update时auto_now不被更新的原因及解决方式
Apr 01 #Python
You might like
多文件上载系统完整版
2006/10/09 PHP
php批量缩放图片的代码[ini参数控制]
2011/02/11 PHP
php单例模式实现(对象只被创建一次)
2012/12/05 PHP
php实现网站留言板功能
2015/11/04 PHP
PHP的Yii框架入门使用教程
2016/02/15 PHP
使用ThinkPHP的自动完成实现无限级分类实例详解
2016/09/02 PHP
PHP截取发动短信内容的方法
2017/07/04 PHP
php+Ajax无刷新验证用户名操作实例详解
2019/03/04 PHP
在第一个input框内输入内容.textarea自动得到第一个文件框的值的javascript代码
2007/04/20 Javascript
一个js实现的所谓的滑动门
2007/05/23 Javascript
jQuery获取文本节点之 text()/val()/html() 方法区别
2011/03/01 Javascript
jquery入门—数据删除与隔行变色以及图片预览
2013/01/07 Javascript
让你一句话理解闭包(简单易懂)
2016/06/03 Javascript
基于jQuery实现数字滚动效果
2017/01/16 Javascript
轻量级JS Cookie插件js-cookie的使用方法
2018/03/22 Javascript
JavaScript设计模式之缓存代理模式原理与简单用法示例
2018/08/07 Javascript
使用 Vue 实现一个虚拟列表的方法
2019/08/20 Javascript
微信小程序实现录制、试听、上传音频功能(带波形图)
2020/02/27 Javascript
python3编写C/S网络程序实例教程
2014/08/25 Python
python中使用zip函数出现错误的原因
2018/09/28 Python
Django如何实现网站注册用户邮箱验证功能
2019/08/14 Python
python框架flask表单实现详解
2019/11/04 Python
python标准库sys和OS的函数使用方法与实例详解
2020/02/12 Python
CSS3为背景图设置遮罩并解决遮罩样式继承问题
2020/06/22 HTML / CSS
HTML5 canvas画矩形时出现边框样式不一致的解决方法
2013/10/14 HTML / CSS
Pure Collection美国官网:来自英国羊绒专家的奢华羊绒
2017/11/19 全球购物
Shopty西班牙:缝纫机在线销售
2018/01/26 全球购物
eDreams德国:南欧领先的在线旅游公司
2020/12/07 全球购物
店长职务说明书
2014/02/04 职场文书
档案信息化建设方案
2014/05/16 职场文书
五一劳动节活动总结
2015/02/09 职场文书
2015年设计师个人工作总结
2015/04/25 职场文书
人工作失职检讨书
2015/05/05 职场文书
商务宴会祝酒词
2015/08/11 职场文书
七年级数学教学反思
2016/02/17 职场文书
2016年教代会开幕词
2016/03/04 职场文书