Вставка блока с изменением ширины полилиний
(defun ru-block-lw-insert-ptask-angleask (block_name scale ang
/ edata do
ent old_attdia
)
(setq old_attdia
(getvar "attdia")
do t
) ;_ end of setq
(setvar "attdia" 1)
(while
(not (ru-error-catch
(function
(lambda ()
(princ "
Точка вставки: ")
(if (vl-cmdf "_.INSERT" block_name "_PROTATE"
0 "_PScale" scale
pause scale scale
) ;_ end of vl-cmdf
(progn
(if (null ang)
(progn
(princ "
Угол поворота<0>: ")
(setq do (vl-cmdf pause))
) ;_ end of progn
(vl-cmdf ang)
) ;_ end of if
(if do
(progn
(setq edata (entget (setq ent (entlast))))
(if
(= "INSERT" (cdr (assoc 0 edata)))
(progn
(ru-dlg-dcl-select-lw)
(ru-block-lw-change
ent
(cdr (assoc 2 edata))
(cdr (assoc 10 edata))
(cdr (assoc 50 edata))
(cdr (assoc 41 edata))
) ;_ end of ru-block-change-lw
) ;_ end of progn
(ru-msg-info
"Этот объект НЕ блок!
НЕЛЬЗЯ преобразовать!"
) ;_ end of ru-msg-info
) ;_ end of if
) ;_ end of progn
) ;_ end of if
) ;_ end of progn
) ;_ end of if
) ;_ end of lambda
) ;_ end of function
nil
) ;_ end of ru-error-catch
) ;_ end of not
) ;_ end of while
(setvar "attdia" old_attdia)
(princ)
) ;_ end of defun