import openpyxl
from pyautocad import Autocad,APoint
from pyhub import pyhub
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
wb=openpyxl.load_workbook("a.xlsx")
sheet=wb.get_sheet_by_name("Sheet1")
data=[]
pxy=[]
lst_lines=[]
lst_lpx=[]
acad=Autocad(create_if_not_exists=True)
acad.prompt("hello this is mt")
for t in acad.iter_objects("Text"):
if(t.TextString=="******"):
lst_lines.append(t.TextString)
lst_lpx.append(APoint(t.InsertionPoint).x)
print lst_lpx
for text in acad.iter_objects('Text'):
pxy.append((APoint(text.InsertionPoint).x,APoint(text.InsertionPoint).y))
print lst_lines
print len(lst_lines)
zb=pyhub.paixuzb_maopao(pxy)
datazb=[]
for i in range(len(pxy)):
for t in acad.iter_objects("Text"):
if(APoint(t.InsertionPoint).x==zb[i][0] and APoint(t.InsertionPoint).y==zb[i][1]):
data.append(t.TextString)
datazb.append(APoint(t.InsertionPoint).x)
data1=[]
data2=[]
data3=[]
for k in range(len(datazb)):
if(datazb[k]<lst_lpx[0]):
data1.append(data[k])
elif(datazb[k] > lst_lpx[0] and datazb[k]<lst_lpx[1]):
data2.append(data[k])
elif(datazb[k] > lst_lpx[1]):
data3.append(data[k])
print "fenhao"
# for line in acad.iter_objects("Line"):
# lst_lines.append(line)
# zb=pyhub.paixuzb_maopao(pxy)
# for i in range(len(zb)):
# for text in acad.iter_objects('Text'):
# if(APoint(text.InsertionPoint).x==zb[i][0] and APoint(text.InsertionPoint).y==zb[i][1]):
# data.append(text.TextString)
datas=[]
for d1 in range(len(data1)):
datas.append(data1[d1])
for d2 in range(len(data2)):
datas.append(data2[d2])
for d3 in range(len(data3)):
datas.append(data3[d3])
print datas
for d in range(0,len(datas)):
if(str(datas[d])[0:3]=="tex" or str(datas[d])[0:3]=="###"):
sheet["A"+str(d+1)]=datas[d]
wb.save("aabb.xlsx")
print "success"

