jingking 发表于 2009-8-13 05:27:00

SelectCrossingWindow的问题

以前没做过AutoCAD的二次开发,有两个不明白的地方向大家请教:<br/><br/>....<br/>            PromptSelectionResult presult = MdiActiveDocument.Editor.SelectCrossingWindow(p1, p2);<br/>
            if (presult .Status == PromptStatus.Error)<br/>
            {<br/>
              return;<br/>
            }<br/>...<br/><br/>1. 请问“SelectCrossingWindow”参数里两个点的顺序有没有区别?记得在CAD里拉框选择时从左上和右下是不一样的。如果想选择弧(Arc)的起点或者终点该用什么方法选择?<br/>2. 这个选择选择结果什么时候会"=PromptStatus.Error"?能不能区分“错误”和“查询为空”?<br/>谢谢!<br/><br/><br/>

雪山飞狐_lzh 发表于 2009-8-13 07:34:00

<p>1.没有,只有能构成矩形就可以,</p><p>在CAD里拉框选择时从左上和右下是不一样:</p><p>SelectWindow和SelectCrossingWindow也是不一样:)</p><p>选择圆弧,按过滤器只能选择圆心,起点角度,终点角度,你要转换一下</p><p>命令: dxf<br/>选择对象: ((-1 . &lt;图元名: 7ef98388&gt;) (0 . "ARC") (330 . &lt;图元名: 7ef96cf8&gt;) (5 . "1B1") <br/>(100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (100 . "AcDbCircle") <br/>(10 689.332 538.669 0.0) (40 . 840.092) (210 0.0 0.0 1.0) (100 . "AcDbArc") (50 <br/>. 0.356785) (51 . 1.56562))</p><p></p><p>2.没有考虑过这个问题,不过我一般这样写</p><p>if(presult .Status == PromptStatus.OK)</p><p>{</p><p></p><p>}</p>

jingking 发表于 2009-8-13 13:34:00

十分感谢!

gyl 发表于 2009-8-13 16:41:00

lzh741206发表于2009-8-13 7:34:00static/image/common/back.gif1.没有,只有能构成矩形就可以,在CAD里拉框选择时从左上和右下是不一样:SelectWindow和SelectCrossingWindow也是不一样:)选择圆弧,按过滤器只能选择圆心,起点角度,终点角度,你要转换一

<p></p>有dxf这个命令吗?我在CAD2008中试验没有这个命令。

雪山飞狐_lzh 发表于 2009-8-13 17:07:00

<p>自定义的lisp函数</p><p>(defun c:dxf() (entget(car(entsel)) '("*")))</p>

gyl 发表于 2009-8-13 17:48:00

谢谢版主!AutoCAD还真需要这么个命令,为什么不设置个正式命令呢?

雪山飞狐_lzh 发表于 2009-8-15 16:49:00

dxf一般使用者是不需要知道的
页: [1]
查看完整版本: SelectCrossingWindow的问题