Mechanical関数-BricsCAD

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

BricsCAD の Mechanical LISP API について

V23以降、BricsCAD LISP は Mechanical機能専用のインターフェースを提供している(「Professional」または「Mechanical」ライセンスが必要)。 この新しい API は、名前、引数、動作、結果において通常のAutoLISPの論理に従った、シンプルで柔軟な設計になっている。


Mechanical機能はBricsCAD Professional ("PRO") resp. Mechanicalライセンスレベルを必要とするため、下位レベルのライセンスを使用する場合(またはRunAsLevel=0で無効にする場合)、APIモジュールはアクティブではなく、すべてのMechanical LISP API機能は使用できない。

Mechanical の開発が継続されると、BRX および LISP API も拡張され、より多くの機能が提供されるとともに、サードパーティの開発者からのアイデアやフィードバックが取り入れられるようになる。

Mechanical LISP API には 2 つの部分があります。

  • a) Rhino-Import/Export, コンポーネントインスタンスと コンポーネント定義機能:これらは Professional ライセンスレベルが必要。
  • b) メカニカルコンポーネント、3D 拘束グループ、3D 拘束、3D 拘束パラメータ関数機能: これらは "Mechanical "ライセンスレベルが必要。


ライセンスレベルの確認方法は?

  • (bcad$LicenseLevels) と (vle-licenselevel) という2つのLisp関数があり、どちらも同じ実装を使用している。
  • Mechanicalが使用可能な場合、返されるリストには "Professional "または "Mechanical "という文字列が含まれる。
  • 「RunAsLevel」設定も結果リストで尊重される。


Mechanical LISP APIを有効にするには?

Mechanical 機能の LISP 関数セットは BRX コア システムを使用して実装されているため、.NET Framework を使用して Mechanical LISP インタフェース関数を明示的にロード/起動する必要がある (AutoCAD AutoLISP で必須の (vl-load-com) と似た方法)。

(vl-load-mech)

コンテキスト条件 (Professional と Mechanical ライセンス) が満たされている場合、拡張機能がロードされ、1 (Pro 機能が使用可能) または 2 (Mechanical 機能が使用可能) が返されるか、Pro または Mechanical ライセンスが使用できない場合は NIL (後者の場合、特定の LISP 機能が使用できない) が返される。

いくつかの一般的なヒントとルール

「エンティティ名」の使用 : 関数で「エンティティ名」が必要な場合、すべてのケースで「classic ename」と「vla object」の両方が常に有効であり、サポートされている。



メカニカル コンポーネント定数

これらの定数は Components関数のコンテキストで使用され、すべて定義済みのLispシンボルとして利用可能。

定数名 概要
コンポーネントタイプ bc3dcNone 0 コンポーネントタイプはビットフラグを使用して組み合わせや追加が可能。
bc3dcAssembly 1
bc3dcPart 2
bc3dcIsStandard 4
c3dcIsMechanicalBlockOrEntity 8
コンポーネントファイルステータス bc3dcNotExternal 0
bc3dcResolved 1
bc3dcFileNotFound 2
bc3dcUnresolved 3
コンポーネントBOMステータス bc3dcRegular 0
bc3dcTransparent 1
bc3dcTerminal 2
bc3dcExcluded 3
カスタムプロパティパラメータ bc3dcDoNotCreate 0
bc3dcCreateForThisIfNotExist 1
bc3dcCreateForAllIfNotExist 2