もう見てないかもしれませんが……。
Python、ezdxf、DISELマクロを組み合わせれば実現できるだろうと思います。
複数選択された寸法に対して、一番目の「寸法値の優先」の値を
二番目以降の寸法に上書きします。
以下のサイトからサンプルコードをダウロードしてください。
https://bitbucket.org/birds_of_paradise_2015/junk_script/src/master/
適当なフォルダに展開してください。
「dxf_dimtext_copy」フォルダが今回のサンプルコード群になります。
環境を以下のように整えたとします。
DXFファイルのパス: c:\temp\dxf_temp.dxf
ブロック名: dxf_temp
起動用バッチファイルのパス: c:\bin\scripts\dxf_di~1.bat
DXFファイル削除用スクリプトのパス: c:\bin\scripts\sweeper.bat
ファイルパスは最終的にMS-DOS(8.3)形式で使用します。
LT用のDISELマクロは以下のように書けば良いのではないでしょうか。
^C^C_SELECT;$M=$(if,$(getvar,cmdactive),\)_DXFOUT;c:/temp/dxf_temp.dxf;O;P;;V;2013;16;_ERASE;P;;AI_STARTAPP;c:/bin/scripts/dxf_di~1.bat;DELAY;2000;-INSERT;c:/temp/dxf_temp.dxf;0,0;1;1;0;_EXPLODE;L;-PURGE;B;dxf_temp;N;AI_STARTAPP;c:/bin/scripts/sweeper.bat;
※Pythonスクリプトの実行終了まで待たずに次のコマンドに
進むため2秒の待ち時間を取ります。また、文字制限があるため、
DISELマクロをふたつに分ける必要があるかもしれません。
_ERASEや-INSERTの前後で分けるとか。
ここら辺は検証不足なのでもうちょっとマシな記述があるかもしれません。
連続使用はできません。必ず間が必要です。
起動用バッチファイルの内容は以下のように記述しているものとします。
@echo off
python.exe "%~dp0dxf_dimtext_copy.py" "c:\temp\dxf_temp.dxf"
DXFファイル削除用スクリプトの内容は以下のように記述しているものとします。
@echo off
del "c:\temp\dxf_temp.dxf"
実行には以下が必要になります。
Welcome to Python.org
https://www.python.org/
GitHub - mozman/ezdxf: Python interface to DXF
https://github.com/mozman/ezdxf