![]() |
【转帖】求选定空间中的实体记录?
求选定空间中的实体记录?
求选定空间中的实体记录? 我想制作一个这样的程序,提示用户选择多个实体(用鼠标选择一个范围),并用遍历器遍历实体?不知道具体代码如何写? 我获得过这样一段代码,是求整个模型空间的实体,现在如何将它改成求用户选定空间?请高手指点。 // 获得当前数据库的块表 acdbblocktable *pblktbl; acdbhostapplicationservices()->workingdatabase() ->getblocktable(pblktbl, acdb::kforread); // 获得模型空间的块表记录 acdbblocktablerecord *pblktblrcd; pblktbl->getat(acdb_model_space, pblktblrcd,acdb::kforread); pblktbl->close(); // 创建块表记录遍历器 acdbblocktablerecorditerator *pitr; // 块表记录遍历器 pblktblrcd->newiterator(pitr); acdbentity *pent; // 遍历的临时实体指针 acutprintf(l"\n遍历的临时实体指针已建立!"); for (pitr->start(); !pitr->done(); pitr->step()) { // 利用遍历器获得每一个实体 pitr->getentity(pent, acdb::kforwrite);//以读的方式得到该实体 // 是否在“测试”图层上 if (pent->layerid() == layerid) { indentifyents(pent); //对实体进行判断 } // 注意需要关闭实体 pent->close(); } delete pitr; // 遍历器使用完毕之后一定要删除! acutprintf(l"\n遍历的临时实体指针已删除!"); pblktblrcd->close(); 谁来帮帮我啊?摆脱了 终于做出来了! 做出来就发出来共同学习一下呀。。真是的。。你让用户提供几个点,构造选择集,然后遍历选择集,不就可以达到你的效果了吗 。。 |
所有的时间均为北京时间。 现在的时间是 12:07 AM. |