我只是用这个捷径来缩放3分,但没有动态,从来没有理由使用动态。用快速的3点旋转配对
- ;;; quick scale with reference
- (defun c:SOO ( / ss1 bp1)
- ;;; your error start
- (if (and (setq ss1 (ssget ":L" )) ;select on unlocked layer
- (setq bp1 (getpoint "\nSpecify base point for scale by reference:"))
-
- ) ;and
- (progn
- (command "scale" ss1 "" bp1 "reference" bp1)
- (SAA_CMDACTIVE nil)
- ) ;progn
- ) ;if
- ;;; your error end
- )
-
- ;;; quick rotate with reference
- (defun c:ROO ( / ss1 bp1)
- ;;; your error start
- (if (and (setq ss1 (ssget ":L" )) ;select on unlocked layer
- (setq bp1 (getpoint "\nSpecify base point for rotating by reference:"))
-
- ) ;and
- (progn
- (command "rotate" ss1 "" bp1 "reference" bp1)
- (SAA_CMDACTIVE nil)
- ) ;progn
- ) ;if
- ;;; your error end
- )
-
-
- ;==========================================================
- ; Continue pausing until exited command mode
- ; nil = pause
- ; otherwise pass string to use
- ; credit unknown - possibly Roy Harkow
- ; usage example: (command "line" (SAA_CMDACTIVE nil))
- ;==========================================================
- (defun SAA_CMDACTIVE ( passcmd / )
- (if (null passcmd) (setq passcmd pause))
- (while (not (= 0 (getvar "cmdactive")))
- (command passcmd)
- ) ;end while
- )
-
|