CADの基本は線を引くこと。スクリプトの解説を進める上で、まずは線を引くコマンド”line”を取り上げる。
line x1,y1 x2,y2, ・・・ x,y
単純に線分を描く場合は始点座標x1,y1 終点座標x2,y2を入力するのみ。座標を続ければ、連続の線分を描くことができる。
ここで、AutoCADで用いられる座標には絶対座標と相対座標がある。Autodesk Knowledge Networkの説明は以下にあるが、ようは絶対座標はCAD図面上の座標で表し、相対座標は最後に指定した座標からの位置となる。
相対座標を用いるには座標前に@をつければ良い。
line 100,100 200,100 150,200 100,100 '絶対座標表現
line 100,100 @100,0 @-50,100 @-50,-100 '相対座標表現
上記、2つは同じ三角形を書く。どちらを使うかは個人の好みによるだろうが、私は絶対座標派です。
ここで、注意。Excel VBAで上記スクリプトを吐き出すと
Print #1, "line 100,100 200,100 150,200 100,100"
となりますが、これではAutoCADはlineコマンドは終了せず、次の座標入力待ちになってしまいます。コマンドウィンドウではEnterを押せば終わりますが、スクリプトでは最後に半角スペースを入れる必要があります
Print #1, "line 100,100 200,100 150,200 100,100 "
;分かりにくいので強調してかくと
Print #1, "line 100,100 200,100 150,200 100,100" & " "
となります。実際VBAで書くときは関数と組み合わせて書くので、& ” “を最後に持ってくる方が多くなるかと思います。
ちなみに”;”以下はスクリプトではコメントとして扱われます。