「Mechanical関数-BricsCAD」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
 
(同じ利用者による、間の13版が非表示)
13行目: 13行目:
* a) Rhino-Import/Export, コンポーネントインスタンスと コンポーネント定義機能:これらは Professional ライセンスレベルが必要。
* a) Rhino-Import/Export, コンポーネントインスタンスと コンポーネント定義機能:これらは Professional ライセンスレベルが必要。
* b) メカニカルコンポーネント、3D 拘束グループ、3D 拘束、3D 拘束パラメータ関数機能: これらは "Mechanical "ライセンスレベルが必要。
* b) メカニカルコンポーネント、3D 拘束グループ、3D 拘束、3D 拘束パラメータ関数機能: これらは "Mechanical "ライセンスレベルが必要。


== ライセンスレベルの確認方法は? ==
== ライセンスレベルの確認方法は? ==
26行目: 27行目:


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


== いくつかの一般的なヒントとルール ==
== いくつかの一般的なヒントとルール ==
42行目: 44行目:




=== メカニカルコンポーネント関数 ===
== メカニカルコンポーネント関数 ==
メカニカル関数はすべて接頭辞 : "mech:" がつく。
メカニカル関数はすべて接頭辞 : "mech:" がつく。


55行目: 57行目:




=== メカニカルコンポーネント インスタンス関数===
== メカニカルコンポーネント インスタンス関数==
メカニカルコンポーネントインスタンス関数はすべて接頭辞 : "mech:instance" がつく。
メカニカルコンポーネントインスタンス関数はすべて接頭辞 : "mech:instance" がつく。
* [[mech:instance-get-allcategories]]
* [[mech:instance-get-allcategories]]
68行目: 70行目:




=== メカニカルコンポーネント定義関数===
== メカニカルコンポーネント定義関数==
メカニカルコンポーネントインスタンス関数はすべて接頭辞 : "mech:compdef" がつく。
メカニカルコンポーネントインスタンス関数はすべて接頭辞 : "mech:compdef" がつく。


<div class="mcol3">
<div class="mcol2">
* [[mech:compdef-has-definition]]
* [[mech:compdef-has-definition]]
* [[mech:compdef-get-allcategories]]
* [[mech:compdef-get-allcategories]]
111行目: 113行目:




=== 3D拘束グループ関数 ===
== 3D拘束グループ関数 ==
メカニカル関数はすべて接頭辞 : "mech:" がつく。
すべての3D拘束グループ関数は、接頭辞:"param: "を使用する(V24以前、これらの関数は接頭辞 "mech: "も使用していた。)
 
<div class="mcol2">
<div class="mcol2">
* [[mech:get-allconstraintsgroups]]
* [[param:get-allconstraintsgroups]]
* [[mech:get-constraintsgroup]]
* [[param:get-constraintsgroup]]
* [[mech:get-blockid]]
* [[param:get-blockid]]
* [[mech:get-constraints]]
* [[param:get-constraints]]
* [[mech:get-istransient]]
* [[param:get-istransient]]
* [[mech:has-sketchplane]]
* [[param:has-sketchplane]]
* [[mech:get-sketchplane]]
* [[param:get-sketchplane]]
* [[mech:get-entityguiname]]
* [[param:get-entityguiname]]
* [[mech:set-entityguiname]]
* [[param:set-entityguiname]]
* [[mech:addconstraint]]
* [[param:addconstraint]]
* [[mech:deleteconstraint]]
* [[param:deleteconstraint]]
* [[mech:evaluateconstraints]]
* [[param:evaluateconstraints]]
</div>
* [[param:remove-all-constraints]] V25で追加
* [[param:remove-entity-constraints]] V25で追加


</div>
== 3D拘束関数 ==
すべての 3D 拘束関数は、接頭辞 : "param:constraint" を使用する (V24 以前は、これらの関数は接頭辞 "mech:" も使用していた - 後方互換性のため、これらの関数は引き続き使用できる)。


=== 3D拘束関数 ===
メカニカル3D拘束関数はすべて接頭辞 : "mech:constraint" がつく。
<div class="mcol3">
<div class="mcol3">
* [[mech:constraint-get-arguments]]
* [[param:constraint-get-arguments]]
* [[mech:constraint-get-blockid]]
* [[param:constraint-get-blockid]]
* [[mech:constraint-get-dimension]]
* [[param:constraint-get-dimension]]
* [[mech:constraint-get-directions]]
* [[param:constraint-get-directions]]
* [[mech:constraint-get-isdimensional]]
* [[param:constraint-get-isdimensional]]
* [[mech:constraint-get-isenabled]]
* [[param:constraint-get-isenabled]]
* [[mech:constraint-get-measurement]]
* [[param:constraint-get-measurement]]
* [[mech:constraint-get-name]]
* [[param:constraint-get-name]]
* [[mech:constraint-get-parameter]]
* [[param:constraint-get-parameter]]
* [[mech:constraint-get-placement]]
* [[param:constraint-get-placement]]
* [[mech:constraint-get-type]]
* [[param:constraint-get-type]]
* [[mech:constraint-set-directions]]
* [[param:constraint-set-directions]]
* [[mech:constraint-set-isenabled]]
* [[param:constraint-set-isenabled]]
* [[mech:constraint-set-measurement]]
* [[param:constraint-set-measurement]]
* [[mech:constraint-set-name]]
* [[param:constraint-set-name]]
* [[mech:constraint-set-placement]]
* [[param:constraint-set-placement]]
</div>
</div>


=== 3D拘束パラメータ関数 ===  
== 3D拘束パラメータ関数 ==
メカニカル3D拘束パラメータ関数はすべて接頭辞 : "mech:parameters" がつく。
すべての3D拘束パラメータ関数は、"param:parameters "という接頭辞を使用する(V24以前は、"mech: "という接頭辞を使用していた。)
 
<div class="mcol3">
<div class="mcol3">
* [[mech:parameters-erase]]
* [[param:parameters-erase]]
* [[mech:parameters-get-blockid]]
* [[param:parameters-get-blockid]]
* [[mech:parameters-get-byname]]
* [[param:parameters-get-byname]]
* [[mech:parameters-get-exposemode]]
* [[param:parameters-get-exposemode]]
* [[mech:parameters-get-expression]]
* [[param:parameters-get-expression]]
* [[mech:parameters-get-fromblock]]
* [[param:parameters-get-fromblock]]
* [[mech:parameters-get-geomdrivenmode]]
* [[param:parameters-get-geomdrivenmode]]
* [[mech:parameters-get-isanonymous]]
* [[param:parameters-get-isanonymous]]
* [[mech:parameters-get-name]]
* [[param:parameters-get-name]]
* [[mech:parameters-get-unitstype]]
* [[param:parameters-get-unitstype]]
* [[mech:parameters-get-value]]
* [[param:parameters-get-value]]
* [[mech:parameters-set-exposemode]]
* [[param:parameters-set-exposemode]]
* [[mech:parameters-set-expression]]
* [[param:parameters-set-expression]]
* [[mech:parameters-set-geomdrivenmode]]
* [[param:parameters-set-geomdrivenmode]]
* [[mech:parameters-set-name]]
* [[param:parameters-set-name]]
* [[mech:parameters-set-unitstype]]
* [[param:parameters-set-unitstype]]
* [[mech:parameters-set-value]]
* [[param:parameters-set-value]]
 
</div>
</div>


=== Rhinoインポート/エクスポート機能 ===
== Rhinoインポート/エクスポート機能 ==
メカニカル Rhino関数はすべて接頭辞 : "mech:rhino" がつく。
メカニカル Rhino関数はすべて接頭辞 : "mech:rhino" がつく。


188行目: 196行目:
| コンポーネントタイプ || bc3dcNone || 0 || コンポーネントタイプはビットフラグを使用して組み合わせや追加が可能。
| コンポーネントタイプ || bc3dcNone || 0 || コンポーネントタイプはビットフラグを使用して組み合わせや追加が可能。
|-
|-
| || bc3dcAssembly || 1
| || bc3dcAssembly || 1 || アセンブリ
|-
|-
| || bc3dcPart || 2
| || bc3dcPart || 2 || パーツ
|-
|-
| || bc3dcIsStandard || 4
| || bc3dcIsStandard || 4 || 標準
|-
|-
| || c3dcIsMechanicalBlockOrEntity || 8
| || c3dcIsMechanicalBlockOrEntity || 8 || メカニカルブロックかエンティティ
|-
|-
| コンポーネントファイルステータス || bc3dcNotExternal || 0 ||
| コンポーネントファイルステータス || bc3dcNotExternal || 0 || 外部参照でない
|-
|-
|  || bc3dcResolved || 1
|  || bc3dcResolved || 1 || 解決
|-
|-
|  || bc3dcFileNotFound || 2
|  || bc3dcFileNotFound || 2 || ファイルが見つからない
|-
|-
|  || bc3dcUnresolved || 3
|  || bc3dcUnresolved || 3 || 未解決
|-
|-
| コンポーネントBOMステータス || bc3dcRegular || 0 ||
| コンポーネントBOMステータス || bc3dcRegular || 0 || 標準
|-
|-
|  || bc3dcTransparent || 1
|  || bc3dcTransparent || 1 || 透過
|-
|-
|  || bc3dcTerminal || 2
|  || bc3dcTerminal || 2 || 末端
|-
|-
|  || bc3dcExcluded || 3
|  || bc3dcExcluded || 3 || 除外
|-
|-
| カスタムプロパティパラメータ || bc3dcDoNotCreate || 0 ||
| カスタムプロパティパラメータ || bc3dcDoNotCreate || 0 || 未作成
|-
|-
|  || bc3dcCreateForThisIfNotExist || 1
|  || bc3dcCreateForThisIfNotExist || 1 || これは存在しない
|-
|-
|  || bc3dcCreateForAllIfNotExist || 2
|  || bc3dcCreateForAllIfNotExist || 2 || すべて存在しない
|}
|}


261行目: 269行目:
| || bc3dcTypePath || 16 ||  パス拘束
| || bc3dcTypePath || 16 ||  パス拘束
|-
|-
| 3D拘束指示 || bc3dcDirectionAny || 0 ||
| 3D拘束指示 || bc3dcDirectionAny || 0 || 任意
|-
|-
| || bc3dcDirectionSame || 1 ||   
| || bc3dcDirectionSame || 1 ||  一部
|-
|-
| || bc3dcDirectionOpposite || 2 ||   
| || bc3dcDirectionOpposite || 2 ||  反対
|-
|-
| || bc3dcDirectionKeep || 3 ||   
| || bc3dcDirectionKeep || 3 ||  保持
|-
|-
| 3D拘束測定モード || bc3dcMeasurementModeCenter || 0 ||   
| 3D拘束測定モード || bc3dcMeasurementModeCenter || 0 ||  中心
|-
|-
| || bc3dcMeasurementModeBoundary || 1 ||   
| || bc3dcMeasurementModeBoundary || 1 ||  領域
|-
|-
| || bc3dcMeasurementModeCentralPoint || 2 ||
| || bc3dcMeasurementModeCentralPoint || 2 || 中央
|-
|-
| 3D拘束位置づけ|| bc3dcPlacementAny || 0 ||   
| 3D拘束位置づけ|| bc3dcPlacementAny || 0 ||  任意
|-
|-
| || bc3dcPlacementOutside || 1 ||   
| || bc3dcPlacementOutside || 1 ||  外側
|-
|-
| || bc3dcPlacementInside || 2 ||   
| || bc3dcPlacementInside || 2 ||  内側
|-
|-
| || bc3dcPlacementKeep || 3 ||   
| || bc3dcPlacementKeep || 3 ||  保持
|-
|-
| 3D拘束座標系オブジェクト || bc3dcCSOrigin || 0 ||
| 3D拘束座標系オブジェクト || bc3dcCSOrigin || 0 || 原点
|-
|-
| || bc3dcCSX || 1 ||
| || bc3dcCSX || 1 || X
|-
|-
| || bc3dcCSY || 2 ||
| || bc3dcCSY || 2 || Y
|-
|-
| || bc3dcCSZ || 3 ||
| || bc3dcCSZ || 3 || Z
|-
|-
| || bc3dcCSXY || 4 ||
| || bc3dcCSXY || 4 || XY
|-
|-
| || c3dcCSYZ || 5 ||   
| || c3dcCSYZ || 5 ||  YZ
|-
|-
| || bc3dcCSZX || 6 ||
| || bc3dcCSZX || 6 || ZX
|-
|-
| 3D拘束パラメータ単位種別 || bc3dcUnitNone || 0 ||   
| 3D拘束パラメータ単位種別 || bc3dcUnitNone || 0 ||  なし
|-
|-
| || bc3dcUnitLength || 1 ||
| || bc3dcUnitLength || 1 || 長さ単位
|-
|-
| || bc3dcUnitArea || 2 ||
| || bc3dcUnitArea || 2 || 領域単位
|-
|-
| || bc3dcUnitVolume || 3 ||
| || bc3dcUnitVolume || 3 || 体積単位
|-
|-
| 3D拘束パラメータ露光モード || bc3dcExposeOff || 0 ||
| 3D拘束パラメータ露光モード || bc3dcExposeOff || 0 || オフ
|-
|-
| || bc3dcExposeOn || 1 ||
| || bc3dcExposeOn || 1 || オン
|-
|-
| || bc3dcExposeUndefined || 2 ||
| || bc3dcExposeUndefined || 2 || 未定義
|-
|-
| 3D拘束パラメータ ジオメトリ ドリブンモード || bc3dcGdOff || 0 ||   
| 3D拘束パラメータ ジオメトリ ドリブンモード || bc3dcGdOff || 0 ||  オフ
|-
|-
| || bc3dcGdOn || 1 ||
| || bc3dcGdOn || 1 || オン
|-
|-
| || bc3dcGdAuto || 2 ||
| || bc3dcGdAuto || 2 || 自動
|-
|-
|}
|}

2024年10月6日 (日) 02:06時点における最新版

BricsCAD の Mechanical LISP API について

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


Mechanical機能はBricsCAD Professional ("PRO") または 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」の両方が常に有効であり、サポートされている。



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

メカニカル関数はすべて接頭辞 : "mech:" がつく。


メカニカルコンポーネント インスタンス関数

メカニカルコンポーネントインスタンス関数はすべて接頭辞 : "mech:instance" がつく。


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

メカニカルコンポーネントインスタンス関数はすべて接頭辞 : "mech:compdef" がつく。


3D拘束グループ関数

すべての3D拘束グループ関数は、接頭辞:"param: "を使用する(V24以前、これらの関数は接頭辞 "mech: "も使用していた。)

3D拘束関数

すべての 3D 拘束関数は、接頭辞 : "param:constraint" を使用する (V24 以前は、これらの関数は接頭辞 "mech:" も使用していた - 後方互換性のため、これらの関数は引き続き使用できる)。

3D拘束パラメータ関数

すべての3D拘束パラメータ関数は、"param:parameters "という接頭辞を使用する(V24以前は、"mech: "という接頭辞を使用していた。)

Rhinoインポート/エクスポート機能

メカニカル Rhino関数はすべて接頭辞 : "mech:rhino" がつく。


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

これらの定数は #メカニカルコンポーネント関数のコンテキストで使用され、すべて定義済みの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 すべて存在しない


3D 拘束定数

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

定数名 概要
3D拘束タイプ bc3dcTypeUnknown 0 未知
bc3dcTypeAngle 1 角度拘束
bc3dcTypeCoincident 2 一致拘束
bc3dcTypeConcentric 3 同心円拘束
bc3dcTypeDistance 4 距離拘束
bc3dcTypeFix 5 固定拘束
bc3dcTypeMajorRadius 6 主要半径拘束
bc3dcTypeMinorRadius 7 非主要半経拘束
bc3dcTypeParallel 8 並行拘束
bc3dcTypePerpendicular 9 垂直拘束
bc3dcTypePlanarAngle 10 平面角拘束
bc3dcTypeRadius 11 半経拘束
bc3dcTypeRigidSet 12 剛体セット拘束
bc3dcTypeTangent 13 正接拘束
bc3dcTypeCircularArray 14 円形配列拘束
bc3dcTypeObjectAngle 15 図形角度拘束
bc3dcTypePath 16 パス拘束
3D拘束指示 bc3dcDirectionAny 0 任意
bc3dcDirectionSame 1 一部
bc3dcDirectionOpposite 2 反対
bc3dcDirectionKeep 3 保持
3D拘束測定モード bc3dcMeasurementModeCenter 0 中心
bc3dcMeasurementModeBoundary 1 領域
bc3dcMeasurementModeCentralPoint 2 中央
3D拘束位置づけ bc3dcPlacementAny 0 任意
bc3dcPlacementOutside 1 外側
bc3dcPlacementInside 2 内側
bc3dcPlacementKeep 3 保持
3D拘束座標系オブジェクト bc3dcCSOrigin 0 原点
bc3dcCSX 1 X
bc3dcCSY 2 Y
bc3dcCSZ 3 Z
bc3dcCSXY 4 XY
c3dcCSYZ 5 YZ
bc3dcCSZX 6 ZX
3D拘束パラメータ単位種別 bc3dcUnitNone 0 なし
bc3dcUnitLength 1 長さ単位
bc3dcUnitArea 2 領域単位
bc3dcUnitVolume 3 体積単位
3D拘束パラメータ露光モード bc3dcExposeOff 0 オフ
bc3dcExposeOn 1 オン
bc3dcExposeUndefined 2 未定義
3D拘束パラメータ ジオメトリ ドリブンモード bc3dcGdOff 0 オフ
bc3dcGdOn 1 オン
bc3dcGdAuto 2 自動



関連事項