お知らせ

--------------------------------------------------

プログラム作成/コンサルティングの申し込みはこちら

--------------------------------------------------

2013年5月15日水曜日

『AutoCAD ActiveX/VBA リファレンス』(VLISP ActiveX)


おはようございます。

今日は、前回紹介した 『AutoCAD ActiveX/VBA リファレンス』 というヘルプについてです。

線分を作成するコードは以下のように AddLine というメソッドを使用しましたよね。
(setq myLine (vlax-invoke-method mSpace 'AddLine (vlax-3D-point 100.0 100.0 0.0)  (vlax-3D-point 200.0 200.0 0.0)))
このメソッドやその引数について確認したいときに見るのが 『AutoCAD ActiveX/VBA リファレンス』 です。


『AutoCAD ActiveX/VBA リファレンス』 を見てみる前に、上記の vlax-invoke-method 関数を使わないで線分を描く方法を紹介したいと思います。
(setq myLine (vla-AddLine mSpace (vlax-3D-point 100.0 100.0 0.0)  (vlax-3D-point 200.0 200.0 0.0)))
こんな感じで vla- のあとにメソッドを追加した関数を使うこともできます。

vlax-invoke-method 関数でも vla- で始まる関数でもどちらでもいいのですが、これからは vla- で始まる関数の方を使用していこうかと思います。


では、『AutoCAD ActiveX/VBA リファレンス』 を見てみましょう。
『AutoCAD ActiveX/VBA リファレンス』 は、以下の手順で見ることができます。

  1. VLISP コマンドを実行して Visual LISP エディタを表示する。
  2. [新しいファイルを作成] ボタン をクリックして新しいファイルを開く。
  3. vla-AddLine と入力してその部分をダブルクリックして選択する。
  4. [ヘルプ] ボタン  をクリックする。
すると、『AutoCAD ActiveX/VBA リファレンス』 の AddLine メソッドに関するところが表示されます。


このとき、私は AutoCAD 2014 をインストールしているのですが、『AutoCAD ActiveX/VBA リファレンス』 の記述は文字化けしてしまってました。


なので、Autodesk Technical Q&A の QA-7843 に添付されている acadauto.zip をダウンロードして、解凍した acadauto.chm を以下のフォルダにコピーしました。(オリジナルのファイルは念のため別名でとっておきました)
C:\Program Files\Common Files\Autodesk Shared
これで文字化けせずに表示されました。

これを見れば、AddLine メソッドの引数を確認することができます。

(vla-AddLine mSpace (vlax-3D-point 100.0 100.0 0.0)  (vlax-3D-point 200.0 200.0 0.0))

上記コードの最初の引数の mSpace は、ヘルプに書かれている object に当たります。(今回の場合はモデル空間に線分を作成するので、モデル空間のオブジェクト)

このように、object.AddLine のようにメソッドの前にあるもの(この場合は object)が vla- で始まる関数の最初の引数になります。

2 番目の引数は StartPoint で線分の始点、3 番目の引数は EndPoint で線分の終点ということです。


あと、ヘルプの [目次] タブの [メソッド] のところにいろんなメソッドがあります。
これを見て、他のオブジェクトを作成するメソッドとかを見つけることができます。
例えば、AddArc メソッドは円弧を作成するメソッド、AddCircle メソッドは円を作成するメソッドといったことはなんとなく想像できますよね。


0 件のコメント:

コメントを投稿