liminnet 发表于 2008-11-10 13:04:00

caoyin 发表于 2008-11-10 14:57:00

看 trans 函数帮助

liminnet 发表于 2008-11-10 16:02:00

caoyin 发表于 2008-11-10 16:19:00

<p>能告诉我为什么一定要在ucs中使用吗?</p><p>可以先</p><p>(command "_.ucs" "")</p><p>程序结束了再</p><p>(command "_.ucs" "_p")</p>

liminnet 发表于 2008-11-10 16:58:00

狂刀lxx 发表于 2008-11-11 01:43:00

<p>getboundingbox 返回的是世界坐标系。trans无用。</p><p>方法1。旋转物体到wcs,生成box再连box转回来</p><p>方法2.用矩阵转换。不过懂弄的人不多。</p>

caoyin 发表于 2008-11-11 11:39:00

本帖最后由 作者 于 2008-11-11 11:52:35 编辑 <br /><br /> <p>无痕版主,你说的矩阵旋转是直接旋转坐标吗?这个我真不会,求指教。</p><p>下面是旋转对象的</p><p>(if (= (getvar "ucsname") "")<br/>(command "_.ucs" "_na" "_s" "$tempucs$");;临时命名当前UCS<br/>)</p><p>(vla-transformby (vlax-ename-&gt;vla-object ENAME);;矩阵旋转,ENAME是图元<br/>(vla-GetUCSMatrix (vla-get-ActiveUCS (vla-get-activedocument (vlax-get-acad-object))))<br/>)</p><p>;;求值操作(如 getboundingbox),得到数据后,UNDO回去,删除命名的UCS名</p>

liminnet 发表于 2008-11-11 12:37:00

highflybir 发表于 2008-11-11 17:04:00

<p>不妨参考我的这一篇帖子,提到了如何在ucs中getboundingbox,其中用到了矩阵转换。</p><p><a href="http://www.mjtd.com/BBS/dispbbs.asp?BoardID=3&amp;replyID=89195&amp;id=66618&amp;skin=0">http://www.mjtd.com/BBS/dispbbs.asp?BoardID=3&amp;replyID=89195&amp;id=66618&amp;skin=0</a></p>

liminnet 发表于 2008-11-11 17:38:00

页: [1]
查看完整版本: 这段程序在世界坐标中可以用,怎样改才能在用户的UCS定义坐标用