;;快捷键 hs 填充动态比例缩放
;;填充动态比例(only patternscale)
;;code by edata @mjtd
(defun c:hs(/ C_SCALE DS ENT GR MPT OBJ P1 P3 SCREEN_H SCREEN_PT SS TEXT_DS X Y loop scale_p)
(vl-load-com)
(vla-StartUndoMark (vla-get-activedocument(vlax-get-acad-object)))
;;Get viewpt Sub function from bbs.mjtd.com
(defun viewpt(/ a b c d x)
(setq b (getvar "viewsize") c (car (getvar "screensize")) d (cadr (getvar "screensize"))
a (* b (/ c d)) x (setq x (getvar "viewctr")) x (trans x 1 2) c (list (- (car x) (/ a 2.0)) (- (cadr x) (/ b 2.0)) 0.0)
d (list (+ (car x) (/ a 2.0)) (+ (cadr x) (/ b 2.0)) 0.0) c (trans c 2 1) d (trans d 2 1)
)
(list c d)
)
;;End Sub function