bgl_820601 发表于 2007-7-5 12:21:00

如何将图中的元素按照画图的先后顺序再播放一遍

<p>问题:现在有一幅CAD图纸,我想知道作者的作图顺序,</p><p>通过设计一个程序,先清空屏幕,能够实现按照作者作图顺序,</p><p>将元素再一个接一个的重新画一遍</p>

老牛 发表于 2007-7-6 10:06:00

不可能实现的东东。道理很简单,dwg文件不会纪录作者的作图顺序的。

oyxx1023 发表于 2007-7-8 18:34:00

<p>应该可以吧.虽然ARX不懂太多,但我想可以用句柄啊.句柄是16进制的,通过比较其大小,即可知道画出的先后.</p><p>你可以试一下在CAD中画三个直线,看其句柄大小是不是连续递增的.</p>

zjqmax 发表于 2007-7-9 10:22:00

这个思路很好,如果可以,那么新手学制图就很容易了.但我估计也只有句柄这一条途径了。

老牛 发表于 2007-7-9 10:37:00

<p>上面描述的是最简单的情况。</p><p>如果用户修改了层,线性,或者新建了层和线性等操作,又如何纪录其顺序呢?</p>

bgl_820601 发表于 2007-7-11 09:20:00

<p>如果将问题简化为这样,应该怎么实现阿</p><p>已知:图形中n个实体元素的id号以及id的排列顺序,</p><p>问题:如何在执行一个命令时,实现各个实体按照顺序依次</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 加亮显示。(不考虑图层等因素的变化)</p><p>关键:1、如何建立延时程序,</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2、延时时间到时,如何触发下一个元素的加亮</p>

oyxx1023 发表于 2007-7-17 13:19:00

在LISP中用REPEAT加(COMMAND "DELAY")即可实现,在ARX中不知道.:)

gis-liang 发表于 2007-7-17 21:51:00

<p>回复六楼:你可以刷新屏幕acedCommand(RTSTR,"REGEN",0)几次,然后AcDbEntity-&gt;highlight();</p>
页: [1]
查看完整版本: 如何将图中的元素按照画图的先后顺序再播放一遍