yanxiekai 发表于 2008-5-9 16:52:00

哪位高手能告诉我怎么用C#读出CAD图纸中的字符串

各位高手,我是新手上路,现在要编写代码将画有各种设备及设备编号的CAD设备流程图图纸中的设备编号读出来,不知道怎么着手,想请大家指引一下.

flyerwon 发表于 2008-5-14 08:54:00

<p>不好意思,我只是个超级菜鸟;只会这个了</p><p>你看下不知道有没有用!!!!</p><p>这个是针对CAD里扩展菜单的操作,也就是说已经打开CAD的图纸,在内容菜单中获取该图的文本信息!!!</p><p>只会这个,不好意思了!</p><p></p><p></p><p>DocumentLock doc=Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.LockDocument();//获取当前打开文档对象</p><p>Database db=HostApplicationServices.WorkDatabase//获取当前文档对象工作数据库</p><p>using(Transaction trans=db.TransactionManager.StartTransaction())//开始事务</p><p>{</p><p>BlockTable bt = (BlockTable)trans.GetObject(HostApplicationServices.WorkingDatabase.BlockTableId, OpenMode.ForRead);//块表;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; BlockTableRecord btr = (BlockTableRecord)trans.GetObject(bt, OpenMode.ForRead);//图元记录</p><p>foreach (ObjectId id in btr)// 遍历图元<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Autodesk.AutoCAD.DatabaseServices.Entity _ent = (Autodesk.AutoCAD.DatabaseServices.Entity)trans.GetObject(id, OpenMode.ForRead, false);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (_ent.GetType().ToString() == "Autodesk.AutoCAD.DatabaseServices.DBText")&nbsp;&nbsp; //单行文本;</p><p>{////这里是你要进行的操作,这些就是DBText对象}</p><p>}</p>
页: [1]
查看完整版本: 哪位高手能告诉我怎么用C#读出CAD图纸中的字符串