翔羽 发表于 2007-10-29 21:42:00

请问:用vba怎样编程来实现cad中的镜像mirror命令?

<p>我想请问:用vba如何实现cad中的镜像命令mirror的功能?</p><p>本人打算用vba来实现mirror命令的功能,先选择对象,然后提示选择两个点作为镜像的轴线,然后提示用户输入参数y或者n是否保存原对象?我现在打算先做最简单的,镜像的轴线或者是x轴,y轴,z轴,镜像的对象暂为直线,多段线,文字,样条曲线。请问有做过类似的例子没有?另外,当镜像的轴线不是x轴,y轴,z轴的时候,镜像后对象是怎么定位的?</p><p>请高手指教!!</p><p>谢谢。</p>

翔羽 发表于 2007-10-29 22:27:00

<p>Sub mi()<br/>'创建选择集<br/>Dim ss As AcadSelectionSet<br/>On Error Resume Next<br/>ThisDrawing.SelectionSets("mccad").Delete<br/>Set ss = ThisDrawing.SelectionSets.Add("mccad")</p><p>'对象选择<br/>ThisDrawing.Utility.Prompt vbCr &amp; "请选择镜像的对象:"<br/>ss.SelectOnScreen</p><p>'选择两个镜像线的点<br/>Dim pnt1, pnt2<br/>pnt1 = ThisDrawing.Utility.GetPoint(, vbCr &amp; "指定镜像线的第一点:")<br/>pnt2 = ThisDrawing.Utility.GetPoint(pnt1, vbCr &amp; "指定镜像线的第二点:")</p><p>'进行镜像<br/>Dim ent As AcadEntity<br/>If ss.Count &gt; 0 Then<br/>For Each ent In ss<br/>ent.Mirror pnt1, pnt2<br/>Next<br/>End If</p><p>End Sub</p><p>这个是论坛上的</p><p>当要删掉或者保留镜像的源对象时用程序是怎么处理的?cad中的mirror命令是提供用户输入y或n的。</p>

翔羽 发表于 2007-10-30 21:28:00

<p>顶一下</p><p>高手帮忙啊~~</p>

crazylsp 发表于 2013-1-22 11:57:44

我也在研究这个问题。

wuyunpeng888 发表于 2013-2-2 11:17:57

对象本身对应的方法,如果是多个对象的话,一个循环就摆平了
页: [1]
查看完整版本: 请问:用vba怎样编程来实现cad中的镜像mirror命令?