
鍋CADはDelphiのスクリプトが使えます。ちょっとした変形するのに便利です。有料版高いな、需要ないからしょうがないのかも
本家のスクリプト投稿サイト:
アルファー精工株式会社・鍋CADスクリプト投稿版
ここのスクリプト読んで勉強しましょう。
スクリプトを動かすには
新規図面でも、なんでもいいのでファイルが開いていないと「Helloo World」も動かない
完全にDelphiと同じ文法ではなさそうです。
メッセージボックスを表示 (ヘルプに使い方あり)
var s:Boolean; Begin s:=Msgbox('sam'); end.
s:=Msgbox(‘ここにメッセージ入れて下さい。’);
’シングルクオーテンション ” ダブルではない
function MsgBox(Message:String):Boolean;
メッセージボックスを表示します。OKボタンが押されるとTrue(真)を返し、キャンセルボタンを押すとFalse(偽)を返します。
メッセージボックスを表示します。OKボタンが押されるとTrue(真)を返し、キャンセルボタンを押すとFalse(偽)を返します。
直線を描く
Begin Line(0,0,300,200); end;
Line(x1,y1,x2,y2);
円を描く
Begin Circle(0,0,100); end;
Circle(x,y,R半径);
半径入力BOXが表示され、半径を入れるとx座標:半径R、Y座標:半径Rを中心とした円を描きます。
// // 円作図のサンプルプログラム // Program Maru; var r : double; Begin AddImage(20, 20, '/test/maru.BMP'); AddLabel(160, 52, 80, 13, '半 径:'); AddEdit(1, 230, 50, 50, 21, ''); If ShowDlg(300, 180,'円作図ダイアログ') <> True Then Exit; // 文字を実数に変換 r := StrToFloat(GetDlgText(1)); circle(r,r,r); End.
原点(0,0)からの四角形を描く
// 四角形作図 var w, h : double; Begin AddImage(20, 20, 'test/rec.BMP'); AddLabel(130, 20, 100, 13, '四角形の幅(W)'); AddLabel(130, 50, 100, 13, '四角形の高さ(H)'); AddEdit(1, 230, 20, 50, 21, ''); AddEdit(2, 230, 50, 50, 21, ''); If ShowDlg(300, 200, '四角作図ダイアログ') <> True Then Exit; w := StrToFloat(GetDlgText(1)); // 文字を実数に変換 h := StrToFloat(GetDlgText(2)); Line(0, 0, w, 0); Line(w, 0, w, h); Line(w, h, 0, h); Line(0, h, 0, 0); End.
四角形+寸法線を描く
// 四角形作図 procedure RecDraw(wr,hr:double); Begin Line(0, 0, wr, 0); Line(w, 0, wr, hr); Line(wr, hr, 0, h); Line(0, hr, 0, 0); end; //Main var w, h : double; dh,dv: integer; Begin AddImage(20, 20, 'test/rec.BMP'); AddLabel(130, 20, 100, 13, '四角形の幅(W)'); AddLabel(130, 50, 100, 13, '四角形の高さ(H)'); AddEdit(1, 230, 20, 50, 21, ''); AddEdit(2, 230, 50, 50, 21, ''); If ShowDlg(300, 200, '四角作図ダイアログ') <> True Then Exit; w := StrToFloat(GetDlgText(1)); // 文字を実数に変換 h := StrToFloat(GetDlgText(2)); RecDraw(w,h); //四角形描く dh :=DimHorizon(0,h,w,h,w/2,h+20,FloatToStr(w)); //水平寸法 dv :=DimVertical(w,0,w,h,w+20,h/2,FloatToStr(h)); //垂直寸法 End.
小さなダイアログを表示
Begin ShowDlg(200,100,'Sam'); End.
ShowDlg(横幅,高さ,’タイトル’);
コメント