Python使用pyautocad+openpyxl处理cad文件示例


Posted in Python onJuly 11, 2019

本文实例讲述了Python使用pyautocad+openpyxl处理cad文件。分享给大家供大家参考,具体如下:

示例1:

from pyautocad import Autocad
import openpyxl
wb=openpyxl.load_workbook('./cads.xlsx')
sheet=wb.get_sheet_by_name('Sheet1')
data=[]
pset=[]
acad=Autocad(create_if_not_exists=True)
acad.prompt('hello this is python in')
for text in acad.iter_objects('Text'):
 data.append(text.TextString)
from pyautocad import APoint
for text in acad.iter_objects('Text'):
 pset.append(APoint(text.InsertionPoint))
print len(data)
for d in range(1,len(data)):
 sheet['A'+str(d)].value=data[d]
 sheet['B'+str(d)].value=str(pset[d].x)
 sheet['C'+str(d)].value=str(pset[d].y)
wb.save('aabb1.xlsx')
print 'success aabb1.xlsx'

其实pyautocad中有关于table的api

示例2:

from pyautocad import Autocad
import openpyxl
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
wb=openpyxl.load_workbook('./aabb.xlsx')
sheet=wb.get_sheet_by_name('Sheet1')
data=[]
acad=Autocad(create_if_not_exists=True)
acad.prompt('hello this is python in')
for text in acad.iter_objects('Text'):
 data.append(text.TextString)
print len(data)
for d in range(1,len(data)):
 if(str(data[d])[0:4]=="BM30" or str(data[d])[0:4]=="BM65"):
  sheet['A'+str(d)].value=data[d]
wb.save('ky1.xlsx')
print 'success ky1.xlsx'

截取了BM30和BM65的数据

示例3:

import openpyxl
from pyautocad import Autocad,APoint
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
wb=openpyxl.load_workbook("a.xlsx")
sheet=wb.get_sheet_by_name("Sheet1")
data=[]
px=[]
py=[]
acad=Autocad(create_if_not_exists=True)
acad.prompt("hello this is mt")
for text in acad.iter_objects('Text'):
  data.append(text.TextString)
  #print text.TextString
  px.append(APoint(text.InsertionPoint).x)
  py.append(APoint(text.InsertionPoint).y)
  #print text.InsertionPoint
print len(data)
print "eof"
for d in range(1,len(data)):
  if(str(data[d])[0:4]=="Vigi" or str(data[d])[0:4]=="iC65" or str(data[d])[0:3]=="CVS" or str(data[d])[0:3]=="PRD" or str(data[d])[0:4]=="DDZY"):
    sheet['A'+str(d)]=data[d]
    sheet['B'+str(d)]=px[d]
    sheet["C"+str(d)]=py[d]
   #  print data[d]
wb.save("kv.xlsx")
print "success"
#or str(data[d])[0:3]=="CVS" or str(data[d])[0:3]=="PRD" or str(data[d])[0:4]=="DDZY"

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python爬虫常用的模块分析
Aug 29 Python
Python中operator模块的操作符使用示例总结
Jun 28 Python
python获取多线程及子线程的返回值
Nov 15 Python
python模仿网页版微信发送消息功能
Feb 24 Python
解决python写入mysql中datetime类型遇到的问题
Jun 21 Python
django用户登录和注销的实现方法
Jul 16 Python
python 寻找离散序列极值点的方法
Jul 10 Python
解决Django中checkbox复选框的传值问题
Mar 31 Python
使用Django清空数据库并重新生成
Apr 03 Python
Matplotlib配色之Colormap详解
Jan 05 Python
python中子类与父类的关系基础知识点
Feb 02 Python
用python基于appium模块开发一个自动收取能量的小助手
Sep 25 Python
python实现微信自动回复机器人功能
Jul 11 #Python
Python基于Opencv来快速实现人脸识别过程详解(完整版)
Jul 11 #Python
python 利用浏览器 Cookie 模拟登录的用户访问知乎的方法
Jul 11 #Python
PowerBI和Python关于数据分析的对比
Jul 11 #Python
pow在python中的含义及用法
Jul 11 #Python
Python简单处理坐标排序问题示例
Jul 11 #Python
如何使用Python自动控制windows桌面
Jul 11 #Python
You might like
调整优化您的LAMP应用程序的5种简单方法
2011/06/26 PHP
php 操作符与控制结构
2012/03/07 PHP
使用PHP处理数据库数据如何将数据返回客户端并显示当前状态
2016/02/16 PHP
详解cookie验证的php应用的一种SSO解决办法
2017/10/20 PHP
Mootools 1.2 手风琴(Accordion)教程
2009/09/15 Javascript
基于Jquery的仿Windows Aero弹出窗(漂亮的关闭按钮)
2010/09/28 Javascript
JS动态加载当前时间的方法
2015/02/09 Javascript
javascript中的previousSibling和nextSibling的正确用法
2015/09/16 Javascript
基于javascript简单实现对身份证校验
2021/01/25 Javascript
js获取隐藏元素宽高的实现方法
2016/05/19 Javascript
jQuery中借助deferred来请求及判断AJAX加载的实例讲解
2016/05/24 Javascript
基于angularJS的表单验证指令介绍
2016/10/21 Javascript
在js中实现邮箱格式的验证方法(推荐)
2016/10/24 Javascript
用jQuery的AJax实现异步访问、异步加载
2016/11/02 Javascript
微信小程序教程之本地图片上传(leancloud)实例详解
2016/11/16 Javascript
解决vue中虚拟dom,无法实时更新的问题
2018/09/15 Javascript
vue中使用[provide/inject]实现页面reload的方法
2019/09/30 Javascript
基于NodeJS开发钉钉回调接口实现AES-CBC加解密
2020/08/20 NodeJs
JavaScript实现页面高亮操作提示和蒙板
2021/01/04 Javascript
[17:13]DOTA2 HEROS教学视频教你分分钟做大人-斯拉克
2014/06/13 DOTA
[01:54]TI珍贵瞬间系列(三):翻盘
2020/08/28 DOTA
python根据出生年份简单计算生肖的方法
2015/03/27 Python
python去除拼音声调字母,替换为字母的方法
2018/11/28 Python
Python中正反斜杠(‘/’和‘\’)的意义与用法
2019/08/12 Python
python实现通过队列完成进程间的多任务功能示例
2019/10/28 Python
python实现飞行棋游戏
2020/02/05 Python
基于CentOS搭建Python Django环境过程解析
2020/08/24 Python
Pytho爬虫中Requests设置请求头Headers的方法
2020/09/22 Python
学习十八大坚定理想信念心得体会
2014/03/11 职场文书
会计电算化专业自荐信
2014/03/15 职场文书
公证委托书模板
2014/04/03 职场文书
公司募捐倡议书
2014/05/14 职场文书
2015年妇联工作总结范文
2015/04/22 职场文书
2015年档案管理员工作总结
2015/05/13 职场文书
2015年高中语文教学总结
2015/08/18 职场文书
八年级作文之感恩
2019/11/22 职场文书