第2の寸法設定を持つ
実施設計レベルの平面図、矩計図、展開図などは、細かな寸法を入れますが、その時文字サイズを一回り小さくしたり、描画クラスを第2寸法用に替えたりしています。これまでは、その度に文字サイズ、クラスを変更していたのですが、面倒なので、第2の寸法設定を持っておけば、楽だと思います。
動作の流れ
- 初期設定で、第二寸法用のクラスを設定、第二寸法用のクラスが存在するか?第二寸法用クラスの文字サイズ、現在の文字サイズの設定値の取得をしておく。
- 設定した第二寸法用のクラスが存在するか?を調べる。
- 第二寸法用のクラスが存在するならば、テキストサイズを変更し、縦横寸法ツールを呼出し、クラスを変更する。最後に、元の文字サイズに設定を戻す。
斜め寸法や角度寸法も第二寸法を設定したい場合は、各々 CallTool(-211)、CallTool(-212)にすれば OK です。
下記のソースをコピペしたり、フィールドフォーマットを入力したり、ツールアイコンを作るのが面倒な人は、下記のリンクからダウンロードして下さい。
- 「ha_第二寸法.vst」・・・・・・ ha_SecondDim0-10.zip (フリーウェア)
{*******************************************************************************
SecondDim 第二の寸法ツール
Copyright 2010 兵藤善紀建築設計事務所
www.hyodo-arch.com
2010.07.12 Ver 0.10 まず最初のバージョン
*******************************************************************************}
PROCEDURE SecondDim;
VAR
NameOfDimClass :String; {フィールドフォーマットの値を格納}
IsDimClass :Boolean; {第二寸法用のクラスが存在するか}
NumOfClass :Longint; {クラスの数}
DimTextSize,DefaultTextSize :Real; {第二寸法の文字サイズ、デフォルトの文字サイズ}
hh :Handle; {第二寸法のハンドル}
ii :Integer; {カウンタ}
BEGIN {****************** メインプログラム ******************}
{初期設定}
NameOfDimClass:=PNAMEOFDIMCLASS;
IsDimClass:=False;
DimTextSize:=PDIMTEXTSIZE;
DefaultTextSize:=GetDefaultTextSize;
{図面に設定されているクラス名を調べる}
NumOfClass:=ClassNum;
For ii:=1 To NumOfClass Do Begin
If NameOfDimClass=ClassList(ii) Then IsDimClass:=True;
End;
{文字サイズの変更 -> 寸法ツールの呼び出し -> クラスの変更 -> 文字サイズを元の設定に戻す}
If IsDimClass Then Begin
TextSize(DimTextSize);
CallTool(-210);
hh:=FSActLayer;
SetClass(hh,NameOfDimClass);
SetDSelect(hh);
TextSize(DefaultTextSize);
SetSelect(hh);
End;
{Message(IsDimClass);}
END;{SecondDim}
RUN ( SecondDim );