嘿
我是新来的,希望有人能帮助我
我写了这个LISP,并从其他LISP中复制了一些东西
我需要的是,在RECT的底部,它将自动写入RECT的维度。
它下面应该写着U.K.=。。。
代码如下:
- (defun c:rmid (/ pt1)
-
- (setq
- w (getdist "\nWidth: ")
- l (getdist "\nLength: ")
- pt1 (getpoint "\nSpecify mid point: ")
- )
- (setq
- p2 (list (+ (car pt1) (* 0.5 w))(+ (cadr pt1) (* 0.5 l)))
- p3 (list (- (car pt1) (* 0.5 w))(- (cadr pt1) (* 0.5 l)))
- )
- (setvar "osmode" 0)
- (setvar "cmdecho" 0)
- (command "rectang" p2 p3
- )
- (setq OldCmdEcho (getvar "cmdecho")) ;save cmdecho state
- (setvar "cmdecho" 0) ;this hide command
- (setq Htxt (getdist "\nText height: ")
- angTxt 0
- DeltaYtxt (* 2.0 Htxt)
- )
- (while (/= (setq txt (getstring "\nText: " T)) "") ;T=True is for input text with space, if omit T then Text cannot space
- (command "_text" "_Justify" "_TL" p3 Htxt angtxt txt)
- ;New position for next txt
- (setq p3 (mapcar '- p3 (list 0 DeltaYtxt 0)))
- )
- (setvar "osmode" 703);your favourite osnap
- (setvar "cmdecho" oldCmdEcho) ;restore original state for cmdecho
- (princ)
- )
|