Vla-関数

提供:GizmoLabs - だいたい CAD LISP なサイト

ActiveX(COM) からのトランスポート関数

  • VLA- の関数は、すべてのActiveX メソッドに対応している(多分)。メソッドを呼び出すためにこれらの関数を使用する。関数的には約1500程度ある。
  • VLA-GET- の関数は、そのプロパティの値を取得できるように、すべてのActiveXプロパティに対応している。
  • VLA-PUT- の関数は、プロパティの値を更新できるように、更新可能なプロパティに対応している。
  • ActiveX のプロパティ、メソッド実装に引きずられるので CAD のバージョンによって増減するので注意。>> ActiveXのカテゴリ
  • ActiveXのない Mac版では当然の如く利用できないので、クロスプラットホームを考慮してコーディングする場合は、基本的に使えない。
  • 他の AutoLISP 関数よりデリケート。下手に作るとサクッとCADが落ちたり固まったりするので注意。
  • AutoCAD においては2000 から 事前に (vl-load-com) を実行しておくことで、VLA-関数を使用できるようになる。
  • IJCAD においては 2013 から (vl-load-com) を実行せずに vla-関数を利用可能だが、(vl-load-com) を実行しても影響ないので入れとくのが吉。
  • BricsCAD においては、VLA-関数はごく一部しか使えないが、V12.2以降で実装され始めた VLE-関数 でこの辺を解消しようとしている。(マルチOS 対応を考慮しつつより良いものにしようとしていると思われる。)


以下vla-関数のリスト。

VLA-

VLA-ADD

  • VLA-ADD 系関数はオブジェクトの追加。細かいプロパティの指定ができないので、作ってから調整するか事前にプロパティ整えてから作るとかする必要がある。

そのため、図形の追加は、簡単に済ますなら commandcommand-svl-cmdf、速度を求めるなら entmake を使うほうがいいかも。

VLA-GET-

  • VLA-GET- は大体プロパティ値の取得

VLA-PUT-

  • VLA-PUT- の関数は大体プロパティ値の設定

関連事項