![]() |
使用readdwgfile更新实体出错请才鸟help
使用readdwgfile更新实体出错请才鸟help
www.dimcax.com 使用readdwgfile更新实体出错请才鸟help _ public sub file() ' dim objwriter as new io.streamwriter("c:\ggygg.txt", true, system.text.encoding.default) dim curdb as database = hostapplicationservices.workingdatabase dim db as database = new database(true, false) db.readdwgfile("c:\ggy.dwg", io.fileshare.readwrite, true, "") ' hostapplicationservices.workingdatabase = db dim tr as transaction = curdb.transactionmanager.starttransaction dim ed as editor = autodesk.autocad.applicationservices.application.documentmanager.mdiactivedocument.editor dim filist(1) as typedvalue filist(0) = new typedvalue(0, "mtext") ' filist(1) = new typedvalue(8, "0") dim filter as selectionfilter = new selectionfilter(filist) dim res as promptselectionresult = ed.selectall(filter) if res.status = promptstatus.ok then dim ss as selectionset = res.value dim ids as objectid() = ss.getobjectids() dim id as objectid ' dim vid as objectid dim polyindex as integer = 0 for each id in ids dim entity as mtext = tr.getobject(id, openmode.forwrite, true) ' ed.writemessage(entity.tostring) 'dim entity as polyline = trans.getobject(id, openmode.forwrite, true) 'dim str as string = "" dim aa as string = entity.tostring ''''''''''''''''''''''''''''''''''''''''''''''''polyline 'for i as integer = 0 to entity.numberofvertices - 1 ' dim pt as point2d = entity.getpoint2dat(i) ' str = str + pt.x.tostring + "," + pt.y.tostring 'next '''''''''''''''''''''''''''''''''2dpolyline 'for each vid in entity ' dim v2d as vertex2d = trans.getobject(vid, openmode.forread) ' dim xx as string = v2d.position.x.tostring ' dim yy as string = v2d.position.y.tostring ' str = str + xx + "," + yy ' ' ed.writemessage(id.tostring + "坐标开始" + xx + yy + "坐标结束") 'next polyindex += 1 'objwriter.writeline("开始," + polyindex.tostring + "," + str() + "结束") next ' db.save() tr.commit() tr.dispose() ' db.saveas("c:\ggygh", dwgversion.ac1008) db.dispose() hostapplicationservices.workingdatabase = curdb ' objwriter.close() end if msgbox("ok!") |
| 所有的时间均为北京时间。 现在的时间是 03:55 PM. |