pioptl 发表于 2022-7-5 18:10:29

Lisp适用于Vs.2015,但不适用于

我有一个广泛使用的lisp例程,不知道是谁写的,也不知道它来自哪里,但已经使用了10-15年。不是真正的lisp savy,所以我想问是否有人知道为什么这在2015年可以很好地工作,但在20016年不行。当我在2016年使用它时,无论我选择什么类型的对象,每次都会返回“无效对象”。这个lisp只是将snapang设置为选定对象的角度。
任何帮助都将不胜感激,
谢谢
 
 
;;   SNAPANG COMMAND
;;   ALIOUS SHORTCUT
; I have no idea who wrote this.
(defun C:SX (/ r e p1 p2)
(graphscr)
(initget "Entity")
(setq r
(getangle "\nSnap rotation angle/<Entity>: "))
(cond
    ((numberp r)
           (setvar "snapang" r))
    ((and (or (not r) (eq r "Entity"))
            (setq e (entsel))
            (setq p1 (osnap (cadr e) "qui,end"))
            (setq p2 (osnap (cadr e) "qui,mid")))
       (setvar "snapang" (angle p1 p2)))
    (t (princ "\nInvalid selection.")))
(princ)
)

GP_ 发表于 2022-7-5 18:33:09

尝试使用not“qui,end”/“qui,mid”
而是“结束”/“中间”

pioptl 发表于 2022-7-5 18:46:12

谢谢GP,工作完美!

Lee Mac 发表于 2022-7-5 19:06:35

在同一主题上,您可能会发现我的光标旋转程序很有用。

tombu 发表于 2022-7-5 19:20:14

 
虽然“qui,end,mid”在2015年仍然得到认可,“qui”部分已经过时多年。“qui,end,mid”&“end,mid”在2015年做了同样的事情,2016年他们终于不再将“qui”视为osnap。可能是因为在添加几何中心osnap时,OSMODE已被重做。
 
很好,我会将其添加到“捕捉角度”下拉列表中。
页: [1]
查看完整版本: Lisp适用于Vs.2015,但不适用于