概要
このデザインには、いくつかの方法で新しい座標系の方向を設定および配置を行うルールのコレクションが含まれています。新しい座標系は、親の座標系を基準にして配置および方向を設定することもできます。これは、新しい座標系の計算に入力ベクトルと点を使用するか、または別のパーツから座標系をコピーして行われます。
[パラメータ]
| Name |
[タイプ] |
説明 |
| localFrame |
フレーム |
これは FrameMixin でミックスするパーツの座標系です。これはこのデザインのグループ ルールで計算されるか、1 つも使われていない場合は、referenceFrame 値に設定されます。 |
| referenceFrame |
フレーム |
これは、他のパラメータが新しいフレームを決定するのに使用されていない場合に、localFrame として使用するフレーム オブジェクトです。既定では、referenceFrame の値は、この子の親の localFrame 値です。これを既定値として使用することで、方向を明示的に指定されていない新しい子は、親から継承された方向を使用します。 |
| 原点 |
点 |
新しい localFrame 値の原点です。 |
| xDirection |
ベクトル |
新しい localFrame の X 方向のベクトルです。既定では、これはこのパーツの referenceFrame の 1,0,0 ベクトルです。 |
| yDirection |
ベクトル |
新しい localFrame の Y 方向のベクトルです。既定では、これはこのパーツの referenceFrame の 0,1,0 ベクトルです。 |
グループ ルール
<origin> 原点に基づいて localFrame を配置します。
<xDirection> xDirection ベクトルに基づいて localFrame を方向付けします。
<yDirection> yDirection ベクトルに基づいて localFrame を方向付けします。
<xDirection yDirection> xDirection および yDirection ベクトルに基づいて localFrame を方向付けします。
<ReferenceFrame> referenceFrame と一致するように localFrame の位置と方向を合わせます。
カスタム デザインの追加の位置および方向ルールを追加するには、%%position および %%orientation の標準パラメータがあることに注意してください。これらは独立に機能するので、座標系の原点(位置)は、座標系の位置合わせ(方向)とは独立して定義することができます。
例 1
| 名前: |
frameMixin_Ex01
|
| デザイン: |
acDrawingDocument
|
|
[名前]
|
[タイプ]
|
式
|
| scale |
数 |
1 |
| shaftLength |
数 |
scale * 3/7 |
| 子の名前: |
shaft
|
| 子のデザイン: |
:Cylinder
|
子の一覧かどうか |
|
[名前]
|
[タイプ]
|
指定値
|
| Quantity |
integer |
3 |
| axis |
ベクトル |
nth(Child.index, {unitX, unitY, unitZ}) |
| height |
数 |
shaftLength |
| 半径 |
数 |
Child.height / 17 |
| bottomPoint |
点 |
原点 |
| color |
文字列 |
nth(Child.index, {" blue ", " green ", " red "}) |
| 子の名前: |
arrow
|
| 子のデザイン: |
:Cone
|
子の一覧かどうか |
|
[名前]
|
[タイプ]
|
指定値
|
| Quantity |
integer |
3 |
| height |
数 |
scale - shaftLength |
| 半径 |
数 |
Child.height / 5 |
| color |
文字列 |
ref(nth(Child.index, shaft), " color: ") |
| 原点 |
点 |
ref(nth(Child.index, shaft), " topPoint: ") |
| ReferenceFrame |
フレーム |
ref(nth(Child.index, shaft), " localFrame: ") |
例 2
| 名前: |
frameMixin_Ex02
|
| デザイン: |
acDrawingDocument
|
| 子の名前: |
originAxes
|
| 子のデザイン: |
:frameMixin_Ex01
|
| 子の名前: |
anObject
|
| 子のデザイン: |
:Text
|
|
[名前]
|
[タイプ]
|
指定値
|
| テキスト |
文字列 |
"Obj" |
| charHeight |
数 |
1.0 |
| 子の名前: |
newLocalFrame
|
| 子のデザイン: |
:frameMixin_Ex01
|
|
[名前]
|
[タイプ]
|
指定値
|
| scale |
数 |
0.5 |
| ReferenceFrame |
フレーム |
anObject.localFrame |
例 3
| 名前: |
frameMixin_Ex03
|
| デザイン: |
acDrawingDocument
|
| 子の名前: |
originAxes
|
| 子のデザイン: |
:frameMixin_Ex01
|
| 子の名前: |
anObject
|
| 子のデザイン: |
:Text
|
|
[名前]
|
[タイプ]
|
指定値
|
| テキスト |
文字列 |
"Obj" |
| charHeight |
数 |
1.0 |
| 原点 |
点 |
Point(0, 0, 2) |
| 子の名前: |
newLocalFrame
|
| 子のデザイン: |
:frameMixin_Ex01
|
|
[名前]
|
[タイプ]
|
指定値
|
| scale |
数 |
0.5 |
| referenceFrame |
フレーム |
anObject.localFrame |
例 4
| 名前: |
frameMixin_Ex04
|
| デザイン: |
acDrawingDocument
|
| 子の名前: |
originAxes
|
| 子のデザイン: |
:frameMixin_Ex01
|
| 子の名前: |
anObject
|
| 子のデザイン: |
:Text
|
|
[名前]
|
[タイプ]
|
指定値
|
| テキスト |
文字列 |
"Obj" |
| charHeight |
数 |
1.0 |
| yDirection |
ベクトル |
unitZ |
| 子の名前: |
newLocalFrame
|
| 子のデザイン: |
:frameMixin_Ex01
|
|
[名前]
|
[タイプ]
|
指定値
|
| scale |
数 |
0.5 |
| referenceFrame |
フレーム |
anObject.localFrame |
例 5
| 名前: |
frameMixin_Ex05
|
| デザイン: |
acDrawingDocument
|
| 子の名前: |
originAxes
|
| 子のデザイン: |
:frameMixin_Ex01
|
| 子の名前: |
anObject
|
| 子のデザイン: |
:Text
|
|
[名前]
|
[タイプ]
|
指定値
|
| テキスト |
文字列 |
"Obj" |
| charHeight |
数 |
1.0 |
| 原点 |
点 |
Point(0, 0, 2) |
| xDirection |
ベクトル |
-unitY |
| yDirection |
ベクトル |
unitZ |
| 子の名前: |
newLocalFrame
|
| 子のデザイン: |
:frameMixin_Ex01
|
|
[名前]
|
[タイプ]
|
指定値
|
| scale |
数 |
0.5 |
| referenceFrame |
フレーム |
anObject.localFrame |