Python AutoCAD 图层
目 录
- Blog Links
- 一、连接及库导入
- 二、新建图层
- 三、颜色设置
- 四、线型设置
- 五、线宽设置
- 六、批量创建
- 七、图层读取
- 八、尾声
Blog Links
DalNur | 博客总目录
Python 二次开发 AutoCAD 简介
Python 二次开发 AutoCAD 设置
Python 二次开发 AutoCAD 图层
Python 二次开发 AutoCAD 绘图
Python 二次开发 AutoCAD 修改
Python 二次开发 AutoCAD 块组
Python 二次开发 AutoCAD 注释
Python 二次开发 AutoCAD 文件
Python 二次开发 AutoCAD 选择集
一、连接及库导入
#!/usr/bin/env python
# -*- coding: utf-8 -*-'''
=============================
Author = Hulunbuir & DalaiNur
Email: liyang@alu.hit.edu.cn
Last Update: 2019.07.28 14:00
=============================
'''from pyautocad import Autocadacad = Autocad(create_if_not_exists = True)
acad.prompt("Hello! AutoCAD from pyautocad.")
print(acad.doc.Name)
二、新建图层
LayerObj = acad.ActiveDocument.Layers.Add("HIT_Layer")# 添加新图层,图层名称为"HIT_Layer"。
acad.ActiveDocument.ActiveLayer = LayerObj# 将"HIT_Layer"图层设置为当前图层。
三、颜色设置
ClrNum = 1
LayerObj.color = ClrNum# ClrNum为颜色索引号,其取值范围为[0,256];# 标准颜色的颜色索引号指定如下::1 红、2 黄、3 绿、4 青、5 蓝、6 洋红、7 白/黑;# 0 ByBlock、256 ByLayer;# 其他颜色索引号见 https://wenku.baidu.com/view/9d458b70195f312b3069a505.html。
四、线型设置
acad.ActiveDocument.Linetypes.Load("ACAD_ISO08W100","acadiso.lin")# 加载线型,"ACAD_ISO05W100"为线型名称,详细信息见CAD帮助文档;# "acadiso.lin"为用于公制单位的线型定义文件,详细信息见CAD帮助文档;# 为图层指定线型前,需先加载相关线型;# 注意:不能重复加载,否则报错——'记录名重复';# 可利用try...except...finally...机制,处理此类报错。LayerObj.Linetype = "ACAD_ISO08W100"# 设置图层线型;# 指定线型前,若不想以Load方式加载线型,也可在CAD程序中点击线型>其他>加载,加载全部所用线型;# 若既没采用Load方式也没有在CAD程序中手动加载线型,则程序会报错——'未找到主键'。
五、线宽设置
LayerObj.Lineweight = 13# 13表示线宽为0.01mm的13倍,即0.13mm;# 线宽值∈{0,5,9,13,15,18,20,25,30,35,40,50,53,60,70,80,90,100,106,120,140,158,200,211};# 线宽值在上述集合中选取,含义为0.01mm的整数倍;其他数值非系统默认;# 可以修改现有线宽,但不能添加或删除线宽,修改在CAD程序中进行。
六、批量创建
clrnums = [1, 2, 3] # 图层颜色列表
layernames = ["HIT_图层_1", "HIT_图层_2", "HIT_图层_3"] # 图层名称列表try:len(clrnums) == len(layernames)
except:print("图层颜色号个数与图层个数不匹配")layerobjs = [acad.ActiveDocument.Layers.Add(i) for i in layernames] # 批量创建图层for j in range(len(layerobjs)):layerobjs[j].color = clrnums[j]# 批量指定图层颜色
七、图层读取
layersnums = acad.ActiveDocument.Layers.count # 当前文件模型空间中所包含的图层总数
layernames = [acad.ActiveDocument.Layers.Item(i).Name for i in range(layernums)]# 当前文件模型空间中所包含的所有图层名称
index = layernames.index("HIT_图层_3") # 获取指定图层索引号
acad.ActiveDocument.ActiveLayer = acad.ActiveDocument.Layers.Item(index)# 将指定图层设定当前
八、尾声
以上,便是关于 AutoCAD 图层 的一些基本代码,因篇幅有限,某些非关键功能未做详细介绍,如有疑问,欢迎邮件来询。
本文部分功能的实现离不开广大博友的大力帮助,有些功能看似简单,但第一次实现出来却是相当不容易的。
鉴于,相关示例代码相对较少,特写本文,一方面是为自己的阶段性学习做一个总结,另一方面更是为有需要的人提供多一点参考。
如果您已实现一些本文未提及的功能,还请在评论区附上代码,以便为后续学习者提供更多的帮助。
胸藏文墨怀若谷,腹有诗书气自华,希望各位都能在知识的 pāo 子里快乐徜徉。
因本人野生学习 Python,水平确实有限,文中难免有所疏漏,还请各位大神不吝批评指正。
最后,祝各位攻城狮们,珍爱生命,保护发际线!
本文最早发表于 2018-12-13 18:20:21,作为博客 Python 二次开发 AutoCAD 简介 的一部分。
为了清晰直观,于 2019-07-20 14:16:23 单独创建本文。
本文部分内容,源于网络!
欢迎大家点赞、评论及转载,转载请注明出处!
为我打call,不如为我打款!
打赏可备注邮箱,本人将赠送本系列博客的全部 Python 源代码。
Python AutoCAD 图层相关推荐
- autocad python二次开发_基于Python AutoCAD ActiveX 二次开发,pyautocad应用技术
AutoCAD应用程序开发系列 基于Python AutoCAD ActiveX 二次开发技术 主要库:pyautocad==0.2.0 内容#:基于Python AutoCAD ActiveX 二次 ...
- Python AutoCAD 注释
目 录 Blog Links 一.前言 二.单行文本 2.1. 创建新文本 2.2. 对齐方式 2.3. 文本缩放 三.多行文本 四.文本样式 4.1. 创建文字样式 4.2. 将特定文字样式设为当前 ...
- Python AutoCAD 块组
目 录 Blog Links 一.连接及库导入 二.块 2.1. 创建新块 2.2. 添加图元到块 2.3. 插入块 2.3.1. 从当前文件中插入块 2.3.2. 外部文件作为块插入 2.4. 添加 ...
- 基于Python AutoCAD ActiveX 二次开发,pyautocad应用技术
AutoCAD应用程序开发系列 基于Python AutoCAD ActiveX 二次开发技术 主要库:pyautocad==0.2.0 内容#:基于Python AutoCAD ActiveX 二次 ...
- Python AutoCAD 设置
目 录 Blog Links 一.前言 二.颜色设置 2.1 设置模型空间背景色 2.1 设置十字光标颜色 三.显示设置 3.1 显示线宽 3.2 显示自动捕捉靶框 3.3 显示自动捕捉标记 3.4 ...
- python autocad显示_Python AutoCAD 系统设置的实现方法
1. 连接及库导入 #!/usr/bin/env python # -*- coding: utf-8 -*- ''' ============================= Author:Dal ...
- python autocad库_Python AutoCAD 系统设置的实现方法
1. 连接及库导入 #!/usr/bin/env python # -*- coding: utf-8 -*- ''' ============================= Author:Dal ...
- python控制autocad_Python AutoCAD系统设置如何实现 Python AutoCAD系统设置实现代码
本篇文章小编给大家分享一下Python AutoCAD系统设置实现方法,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 1. 连接及库导入 #!/usr ...
- python autocad显示_python 使用pyautocad操作AutoCAD
一.python 连接AutoCAD的两种基本方法 1.使用pyautocad from pyautocad import Autocadpyacad = Autocad(create_if_not_ ...
- python autocad显示_通过Python打开Autocad的新实例
有人有在Autocad中使用Python的经验吗?我只是在尝试,作为一个测试,看看我是否可以通过Python打开一个新的Autocad实例,尽管PyAutocad工作得很好(如果您有其他建议,请随时提 ...
最新文章
- 面对千亿客服市场:曾经人工当道,如今AI为王
- a类不确定度计算器_统统帮您搞定:LIMS系统,换版、内审、期间核查、不确定度、数据分析…………...
- java红黑树_JAVA学习-红黑树详解
- [转]parseUrl函数
- JavaScript命名规范与变量声明的注意事项
- 微信朋友圈:应对春节千亿访问量背后的故事
- 关于信用管理--信用更新
- 算法竞赛入门与进阶 (四)二分
- Centos 能ping通域名和公网ip但是网站不能够打开,服务器拒绝了请求。打开80端口解决。...
- mysql 空位补0_MySQL-13(表的创建、数值类型整型、float/decimal、ZEROFILL、BIT(M))
- android 图片素描算法
- 两个栈实现队列,两个队列实现栈
- css-盒子模型详解以及远视图的制作
- SpringBoot配置文件application.yml属性解读及使用学习记录
- HBuilderX 连接网易mumu手机模拟器进行App开发
- 仿ios网易支付登录特效
- 锐捷笔试题java_2018秋招锐捷笔试试题
- POJ 2924 Gauß in Elementary School(简单题)
- 多页面分页打印功能实现
- access2003数据库连接
热门文章
- android h5 保存通讯录,h5+调用系统通讯录
- axure rp10安装教程,axurerp10安装步骤
- pom.xml 注释
- BUG记录 —— JSON转对象部分字段丢失
- 计算机软件水平考试中级题目,计算机软考中级考试试题及答案
- UG NX二次开发(C++)-环境设置-内部模式(插件)制作设置
- 车牌定位html5,车牌识别(一)——车牌定位(附详细代码及注释)
- 远卓:数字化转型的精益化思考
- Adblock Plus官网最新下载 中文,绿色版Adblock Plus下载谷歌插件,edge,电脑版exe,火狐版,搜狗浏览器,ie浏览器
- 历史chrome(离线)版本下载