;行間隔を変更

;(R)=ARES
;2024/02/18



;**************** 
(defun C:ChangeRowsRate ( / Obj Ent )
;****************
    (if (Getenv "行間隔")
        (setq 行間隔 (getstring (strcat "\n行間隔尺度<" (Getenv "行間隔") ">:")))
        (setq 行間隔 (getstring (strcat "\n行間隔尺度< >:"))))
    (if (= "" 行間隔)
        (setq 行間隔 (Getenv "行間隔")));Enter/空打--->従前値採用
    (Setenv "行間隔" 行間隔);
    ;+++++
    (if (> (strlen 行間隔) 0);
        (progn
            (princ "\n***  座標文字列を選択  ***：")
            (setq Obj (ssget '((0 . "MTEXT"))))
            (if (not(= Obj nil));;MTEXTが選択されていたら・・・
                (progn
                    (setq cnt 0)
                    (setq num (sslength Obj))
                    (alert  (strcat "\n選択数："  (rtos num) "\n")) 
                    (while (< cnt num)
                        (setq Ent (ssname Obj cnt))
                        (setq TextObj  (entget Ent))
                        (setq TextObj   ;書き直したDXF図形情報のリストをEntに入れ直し
                            (subst;入れ替える
                                (cons 44 (atof 行間隔)); 新しい値
                                (assoc 44 TextObj  ); 古い値
                                TextObj );Entに入っているDXF図形情報のリストを
                        );setq
                        (entmod TextObj  );DXF図形情報を図形に反映
                        (setq cnt (1+ cnt))
                    ); while
                );progn        
            );if
        );progn
        ;Else MTEXTが選択されなかったら・・・
        (alert "選択エラー：座標文字列（MTEXT）が選択されていません") 
    );if
    (princ)
);--------------------------------




