Mechanical関数-BricsCAD
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」の両方が常に有効であり、サポートされている。
- Mechanical API は、次の機能領域をカバーしている。
メカニカル コンポーネント定数
これらの定数は 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 |