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之变量和参数
Oct 10 Python
用Python进行行为驱动开发的入门教程
Apr 23 Python
python获取url的返回信息方法
Dec 17 Python
说说如何遍历Python列表的方法示例
Feb 11 Python
使用Python3+PyQT5+Pyserial 实现简单的串口工具方法
Feb 13 Python
详解python-图像处理(映射变换)
Mar 22 Python
Django ORM 自定义 char 类型字段解析
Aug 09 Python
将python2.7添加进64位系统的注册表方式
Nov 20 Python
python实现删除列表中某个元素的3种方法
Jan 15 Python
PyInstaller将Python文件打包为exe后如何反编译(破解源码)以及防止反编译
Apr 15 Python
Python求解排列中的逆序数个数实例
May 03 Python
Python入门之基础语法详解
May 11 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
snoopy PHP版的网络客户端提供本地下载
2008/04/15 PHP
PHP高级OOP技术演示
2009/08/27 PHP
PHP+JQuery+Ajax实现分页方法详解
2016/08/06 PHP
浅谈laravel-admin的sortable和orderby使用问题
2019/10/03 PHP
javascript函数中的arguments参数
2010/08/01 Javascript
JavaScript子类用Object.getPrototypeOf去调用父类方法解析
2013/12/05 Javascript
JQuery中$(document)是什么意思有什么作用
2014/07/21 Javascript
用console.table()调试javascript
2014/09/04 Javascript
js对象继承之原型链继承实例
2015/01/10 Javascript
jquery实现简单的轮换出现效果实例
2015/07/23 Javascript
在jQuery中使用$而避免跟其它库产生冲突的方法
2015/08/13 Javascript
JavaScript中误用/g导致的正则test()无法正确重复执行的解决方案
2016/07/27 Javascript
Vuejs第十篇之vuejs父子组件通信
2016/09/06 Javascript
Nodejs下DNS缓存问题浅析
2016/11/16 NodeJs
深入理解nodejs中Express的中间件
2017/05/19 NodeJs
微信小程序 跳转传递数据的实例
2017/07/06 Javascript
基于webpack 实用配置方法总结
2017/09/28 Javascript
React Native react-navigation 导航使用详解
2017/12/01 Javascript
vue添加axios,并且指定baseurl的方法
2018/09/19 Javascript
解决layui追加或者动态修改的表单元素“没效果”的问题
2019/09/18 Javascript
小程序点击图片实现png转jpg
2019/10/22 Javascript
jQuery实现全选按钮
2021/01/01 jQuery
[02:18]DOTA2英雄基础教程 育母蜘蛛
2014/01/20 DOTA
python通过pil将图片转换成黑白效果的方法
2015/03/16 Python
Python底层封装实现方法详解
2020/01/22 Python
python如何求数组连续最大和的示例代码
2020/02/04 Python
今天学到的CSS最新技术(与图片背景相关)
2012/12/24 HTML / CSS
DJI大疆无人机官方商城:全球领先的无人飞行器研发和生产商
2016/12/21 全球购物
Nike西班牙官方网站:Nike.com (ES)
2017/10/30 全球购物
电脑教师的自我评价
2013/12/18 职场文书
公司部门司机岗位职责
2014/01/03 职场文书
煤矿班组长竞聘书
2014/03/31 职场文书
文明社区申报材料
2014/08/21 职场文书
社区班子对照检查材料
2014/08/27 职场文书
优秀党员学习焦裕禄精神思想汇报范文
2014/09/10 职场文书
2015年机关党建工作总结
2015/05/22 职场文书