![]() |
超菜鸟求助
超菜鸟求助
www.dimcax.com 超菜鸟求助 (defun c:bz() (setvar "dimadec" 2) (setq p1 (getpoint " 输入第一点:")) (setq p2 (getpoint " 输入第二点:")) (setq p3 (getpoint " 输入第三点:")) (command "line" p1 p2 "") (setq ent1 (entlast)) (command "line" p2 p3 "") (setq ent2 (entlast)) (setq ang (/ (+ (angle p2 p1) (angle p2 p3)) 2)) (setq p4 (polar p2 ang 5)) (command "osmode" 0) (command "dimangular" (list ent1 p2) (list ent2 p2) p4) (princ) ) 小弟非常菜,刚刚学习lisp语言,以上是论坛中某大哥的原创,学习过程中,不理解以下几点,麻烦高手赐教: 1、entlast这个函数在程序里怎么运行的?ent1取得这个16进制的数是什么作用? 2、(setq ang (/ (+ (angle p2 p1) (angle p2 p3)) 2)) 是什么意思啊,什么角度? 3、angel p2 p1 和 angel p1 p2 有什么不同? 4、(command "dimangular" (list ent1 p2) (list ent2 p2) p4)在程序中是怎么运行的阿?list ent1 p2 怎么理解阿? 多谢啦! d 1.entlast获取最后一个生成而未被删除的图元。具体看帮助 2.求两直线的中线角度,不过有时候会出错。角度单位为弧度。 3.相差了 pi (180°) 4.图原名和点,结构和entsel获取的结果相同。有时候cad命令需要的不仅仅是图原名,还需要点来说明在图元上的位置,如fillet命令... d ent1 是一个图元名称,是一个16进制的数,怎么能用来作为函数的参数呢?怎么能用来做一个点呢? d 都这么多高手浏览了,就赐教一个呗! d 二楼已经讲得很清楚了。如果楼主连二楼的第4条都不理解,那真是“超级菜鸟”了。 踅摸 d p |
| 所有的时间均为北京时间。 现在的时间是 10:07 AM. |