(defun c:cf_dim_arclen (/) (setq cf_sel (nentsel)) (if (not cf_sel) (exit) ) (setq cf_ent_type (cdr (assoc 0 (entget (car cf_sel))))) (setq cf_point (cadr cf_sel)) (setq cf_scale 1) ;;; (if (setq cf_gen_scale (genpmscget cf_point)) ;;; (progn ;;; (setq cf_scale (car cf_gen_scale)) ;;; ) ;;; ) (setq cf_last_ele (entlast)) (vl-cmdf "._dimangular" cf_point cf_point) (setq cf_new_ele (entlast)) (if (not (equal cf_new_ele cf_last_ele)) (progn (setq cf_dim_ent (entget cf_new_ele)) (entdel cf_new_ele) (setq cf_radius (distance (cdr (assoc 15 cf_dim_ent)) (cdr (assoc 13 cf_dim_ent)) ) ) (setq cf_angle (cdr (assoc 42 cf_dim_ent))) (setq cf_bogen_lang (* cf_radius cf_angle cf_scale)) (setq cf_bogen_lang (rtos cf_bogen_lang)) (setq cf_layer (getvar "clayer")) (if (command "'_-amlayer" "_o" "DILI") (princ) ) (if (findfile "amgdt.shx") (setq cf_prefix "{\\fAMGDT|b0|i0|c0|p2;k }") (setq cf_prefix "b-länge ") ) (command "._dimangular" cf_point "_text" (strcat cf_prefix cf_bogen_lang) pause ) (setvar "clayer" cf_layer) ) ) )