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

提供:GizmoLabs - だいたい CAD LISP なサイト
 
(同じ利用者による、間の32版が非表示)
1行目: 1行目:
{{BCAD_LISP_BIM}}
{{BCAD_LISP_MECH}}
 
==BricsCAD の Mechanical LISP API について==
==BricsCAD の Mechanical LISP API について==
V23以降、BricsCAD LISP は Mechanical機能専用のインターフェースを提供している(「Professional」または「Mechanical」ライセンスが必要)。
V23以降、BricsCAD LISP は Mechanical機能専用のインターフェースを提供している(「Professional」または「Mechanical」ライセンスが必要)。
5行目: 6行目:




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


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


Mechanical LISP API には 2 つの部分があります。
Mechanical LISP API には 2 つの部分がある。
* a) Rhino-Import/Export, コンポーネントインスタンスと コンポーネント定義機能:これらは Professional ライセンスレベルが必要。
* a) Rhino-Import/Export, コンポーネントインスタンスと コンポーネント定義機能:これらは Professional ライセンスレベルが必要。
* b) メカニカルコンポーネント、3D 拘束グループ、3D 拘束、3D 拘束パラメータ関数機能: これらは "Mechanical "ライセンスレベルが必要。
* b) メカニカルコンポーネント、3D 拘束グループ、3D 拘束、3D 拘束パラメータ関数機能: これらは "Mechanical "ライセンスレベルが必要。




27行目: 27行目:


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


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


* Mechanical API は、次の機能領域をカバーしている。
* Mechanical API は、次の機能領域をカバーしている。
** [[コンポーネント定数-bricscad|コンポーネント定数]]
** [[#メカニカル コンポーネント定数|コンポーネント定数]]
** [[3D 拘束定数-bricscad|3D 拘束定数]]
** [[#3D 拘束定数|3D 拘束定数]]
** [[メカニカルコンポーネント関数-bricscad|メカニカルコンポーネント関数]]
** [[#メカニカルコンポーネント関数|メカニカルコンポーネント関数]]
** [[3D拘束グループ関数-bricscad|3D拘束グループ関数]]
** [[#3D拘束グループ関数|3D拘束グループ関数]]
** [[3D拘束関数-bricscad|3D拘束関数]]
** [[#3D拘束関数|3D拘束関数]]
** [[3D拘束パラメータ関数-bricscad|3D拘束パラメータ関数]]
** [[#3D拘束パラメータ関数|3D拘束パラメータ関数]]
** [[Rhinoインポート/エクスポート-bricscad|Rhinoインポート/エクスポート機能]]
** [[#Rhinoインポート/エクスポート機能|Rhinoインポート/エクスポート機能]]
 
 
== メカニカルコンポーネント関数 ==
メカニカル関数はすべて接頭辞 : "mech:" がつく。
 
* [[mech:get-componentparameternames]]
* [[mech:get-componentparameterexpr]]
* [[mech:get-componentparametervalue]]
* [[mech:get-componentparameterisstring]]
* [[mech:get-componentparameterstringvalue]]
* [[mech:get-effectiveblockrefname]]
* [[mech:get-effectiveblocktablerecord]]
* [[mech:set-componentparameterexpr]]
 
 
== メカニカルコンポーネント インスタンス関数==
メカニカルコンポーネントインスタンス関数はすべて接頭辞 : "mech:instance" がつく。
* [[mech:instance-get-allcategories]]
* [[mech:instance-get-definitionid]]
* [[mech:instance-get-entityid]]
* [[mech:instance-get-isfrozen]]
* [[mech:instance-get-isvisible]]
* [[mech:instance-get-name]]
* [[mech:instance-get-hasoverrides]]
* [[mech:instance-set-category]]
* [[mech:instance-set-name]]
 
 
== メカニカルコンポーネント定義関数==
メカニカルコンポーネントインスタンス関数はすべて接頭辞 : "mech:compdef" がつく。
 
<div class="mcol2">
* [[mech:compdef-has-definition]]
* [[mech:compdef-get-allcategories]]
* [[mech:compdef-get-allcustompropertiesvalues]]
* [[mech:compdef-get-block]]
* [[mech:compdef-get-bomstatus]]
* [[mech:compdef-get-componenttype]]
* [[mech:compdef-get-custompropertyvalue]]
* [[mech:compdef-get-description]]
* [[mech:compdef-get-filepath]]
* [[mech:compdef-get-filestatus]]
* [[mech:compdef-get-instances]]
* [[mech:compdef-get-isarray]]
* [[mech:compdef-get-isarraysource]]
* [[mech:compdef-get-isexternal]]
* [[mech:compdef-get-isoriginal]]
* [[mech:compdef-get-isroot]]
* [[mech:compdef-get-issectionable]]
* [[mech:compdef-get-isstandard]]
* [[mech:compdef-get-isupdated]]
* [[mech:compdef-get-name]]
* [[mech:compdef-get-originalblock]]
* [[mech:compdef-get-physicalmaterial]]
* [[mech:compdef-get-standard]]
* [[mech:compdef-get-standardpartcategory]]
* [[mech:compdef-get-standardpartdescription]]
* [[mech:compdef-get-standardparttype]]
* [[mech:compdef-assign-propertyset]]
* [[mech:compdef-create]]
* [[mech:compdef-set-asstandard]]
* [[mech:compdef-set-bomstatus]]
* [[mech:compdef-set-custompropertyvalue]]
* [[mech:compdef-set-description]]
* [[mech:compdef-set-name]]
* [[mech:compdef-set-physicalmaterial]]
* [[mech:compdef-set-sectionable]]
* [[mech:compdef-unmech]]
</div>
 
 
== 3D拘束グループ関数 ==
すべての3D拘束グループ関数は、接頭辞:"param: "を使用する(V24以前、これらの関数は接頭辞 "mech: "も使用していた。)
 
<div class="mcol2">
* [[param:get-allconstraintsgroups]]
* [[param:get-constraintsgroup]]
* [[param:get-blockid]]
* [[param:get-constraints]]
* [[param:get-istransient]]
* [[param:has-sketchplane]]
* [[param:get-sketchplane]]
* [[param:get-entityguiname]]
* [[param:set-entityguiname]]
* [[param:addconstraint]]
* [[param:deleteconstraint]]
* [[param:evaluateconstraints]]
* [[param:remove-all-constraints]] V25で追加
* [[param:remove-entity-constraints]] V25で追加
 
</div>
 
== 3D拘束関数 ==
すべての 3D 拘束関数は、接頭辞 : "param:constraint" を使用する (V24 以前は、これらの関数は接頭辞 "mech:" も使用していた - 後方互換性のため、これらの関数は引き続き使用できる)。
 
<div class="mcol3">
* [[param:constraint-get-arguments]]
* [[param:constraint-get-blockid]]
* [[param:constraint-get-dimension]]
* [[param:constraint-get-directions]]
* [[param:constraint-get-isdimensional]]
* [[param:constraint-get-isenabled]]
* [[param:constraint-get-measurement]]
* [[param:constraint-get-name]]
* [[param:constraint-get-parameter]]
* [[param:constraint-get-placement]]
* [[param:constraint-get-type]]
* [[param:constraint-set-directions]]
* [[param:constraint-set-isenabled]]
* [[param:constraint-set-measurement]]
* [[param:constraint-set-name]]
* [[param:constraint-set-placement]]
</div>
 
== 3D拘束パラメータ関数 ==
すべての3D拘束パラメータ関数は、"param:parameters "という接頭辞を使用する(V24以前は、"mech: "という接頭辞を使用していた。)
 
<div class="mcol3">
* [[param:parameters-erase]]
* [[param:parameters-get-blockid]]
* [[param:parameters-get-byname]]
* [[param:parameters-get-exposemode]]
* [[param:parameters-get-expression]]
* [[param:parameters-get-fromblock]]
* [[param:parameters-get-geomdrivenmode]]
* [[param:parameters-get-isanonymous]]
* [[param:parameters-get-name]]
* [[param:parameters-get-unitstype]]
* [[param:parameters-get-value]]
* [[param:parameters-set-exposemode]]
* [[param:parameters-set-expression]]
* [[param:parameters-set-geomdrivenmode]]
* [[param:parameters-set-name]]
* [[param:parameters-set-unitstype]]
* [[param:parameters-set-value]]
 
</div>
 
== Rhinoインポート/エクスポート機能 ==
メカニカル Rhino関数はすべて接頭辞 : "mech:rhino" がつく。
 
* [[mech:rhino-exportfile]]
* [[mech:rhino-importfile]]




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


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


{| class="wikitable"  
{| class="wikitable"  
52行目: 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 || すべて存在しない
|}
|}
==3D 拘束定数==
これらの定数は、[[#3D拘束関数|3D拘束関数]]のコンテキストで使用され、すべて定義済みのLispシンボルとして利用可能。
{| class="wikitable"
! !! 定数名 !! 値 !! 概要
|-
| 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 || 自動
|-
|}
-----
''関連事項''
* [[シートメタル関数-BricsCAD]]
[[Category:BricsCADのLISP]]

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 自動



関連事項