このデザインはジオメトリを定義しませんが、円弧ジオメトリを持つパーツを拘束するために使用されるすべてのルールとメソッドを含んでいます。
ArcMixinModifier
Name | [タイプ] | 説明 |
---|---|---|
半径 | 数値 | 円弧の半径です。 |
Name | [タイプ] | 説明 |
---|---|---|
startAngle | 数値 | ローカル X 軸から円弧の始点までの角度です。値は -360 ~ 360 度の範囲で設定することができます。 |
endAngle | 数値 | ローカル X 軸から円弧の終点までの角度です。値は -360 ~ 360 度の範囲で設定することができ、startAngle より大きくする必要はありません。 |
center | 点 | 円弧を作成するために使用される基となる円の中心点です。 |
startVector | ベクトル | 開始および終了角度からの計測に使用される軸を指定するために使用される半径ベクトルです。既定では、これはローカル x 軸(1,0,0)です。 |
topdir | ベクトル | 円弧の平面に垂直なベクトルです。 |
diameter | 数値 | 円弧の直径です。半径の代わりに入力することができます。 |
tanArc1 | パーツ | このパラメータは、別の円弧に接するように円弧を拘束する場合に使用します。円弧を完全に拘束するには、パラメータ inside1 および onRight1 と一緒に使用します。 |
tanArc2 | パーツ | このパラメータは、別の円弧に接するように円弧を拘束する場合に使用します。円弧を完全に拘束するには、パラメータ inside2 および onRight2 と一緒に使用します。 |
tanLine1 | パーツ | このパラメータは、線分に接するように円弧を拘束する場合に使用します。円弧を完全に拘束するには、パラメータ onRight1 と一緒に使用します。 |
tanLine2 | パーツ | このパラメータは、線分に接するように円弧を拘束する場合に使用します。円弧を完全に拘束するには、パラメータ onRight2 と一緒に使用します。 |
thruPoint1 | 点 | 指定した点を通過するように円弧が拘束されます。 |
thruPoint2 | 点 | 指定した点を通過するように円弧が拘束されます。 |
thruPoint3 | 点 | 指定した点を通過するように円弧が拘束されます。 |
inside1 | ブーリアン演算 | このパラメータは、この円弧が tanArc1 のどちらの側に配置されるかを決定します。値が True の場合、この円弧を tanArc1 の中心に向かってオフセットします。False の場合、この円弧を tanArc1 の中心から離れた向きにオフセットします。 |
inside2 | ブーリアン演算 | このパラメータは、この円弧が tanArc2 のどちらの側に配置されるかを決定します。値が True の場合、この円弧を tanArc2 の中心に向かってオフセットします。False の場合、この円弧を tanArc2 の中心から離れた向きにオフセットします。 |
onRight1 | ブーリアン演算 | この円弧が tanArc1 および tanArc2 によって拘束されている場合、このパラメータはこの円弧の中心の位置を指定するために使用されます。tanArc1 および tanArc2 の中心点の間に架空の線分が作成されます。onRight1 が True の場合、この円弧の中心は線分の右側になります。反対に、onRight1 が false の場合、この円弧の中心は線分の左側になります。この円弧が tanLine1 によって拘束されている場合、円弧の中心点を拘束するためにこのパラメータが使用されます。onRight1 の値が True の場合、この円弧の中心は tanLine1 の右側に配置されます。どちらが線分の右側であるかを決定するために、線分の始点から終点までのベクトルが作成されます。点が右側にある場合、線分の始点から対象の点までのベクトルは、線分ベクトルに対して負の角度を持ちます。 |
onRight2 | ブーリアン演算 | この円弧が tanLine2 によって拘束されている場合、円弧の中心点を拘束するためにこのパラメータが使用されます。onRight2 の値が True の場合、この円弧の中心は tanLine2 の右側に配置されます。どちらが線分の右側であるかを決定するために、線分の始点から終点までのベクトルが作成されます。点が右側にある場合、線分の視点から対象の点までのベクトルは、線分ベクトルに対して負の角度を持ちます。 |
Name | [タイプ] | 説明 |
---|---|---|
円弧 | 数値 | startAngle から endAngle までの、円弧の角度の絶対値です。 |
endPoint | 点 | 円弧の endAngle の点です。 |
startPoint | 点 | 円弧の startAngle の点です。 |
midPoint | 点 | startAngle と endAngle の間の円弧上の点です。 |
protocols | 文字列 | |
法線 | ベクトル | 円弧の法線ベクトルです。これは、常にローカル フレームの z 軸です。 |
curveStartParam | 数値 | 円弧曲線の開始パラメータです。値は startAngle です。 |
curveStartParamName | name | 曲線開始パラメータの名前です。値は:startAngle です。 |
curveEndParam | 数値 | 円弧曲線の終了パラメータです。値は endAngle です。 |
curveEndParamName | name | 曲線終了パラメータの名前です。値は:endAngle です。 |
curveClosed? | ブーリアン演算 |
curveParamNearPoint( p As Point ) As Number入力点 p に最も近い曲線上の点を持つ角度を見つけます。
<diameter> 入力直径から半径を計算します。
<center> 親フレームから円弧のローカル フレームを作成し、この中心に配置します。
<startVector topdir> startVector および topdir からローカル フレームを計算します。
<tanLine1 tanLine2 onRight1 onRight2> 円弧が 2 つの線分に接している場合、円弧の位置を計算します。
<tanArc1 tanArc2 inside1 inside2 onRight1> 円弧が 2 つの円弧に接するように拘束されている場合、円弧の位置を計算します。
<center inside1 tanArc1> 円弧が円弧に接するように拘束され、指定された中心を持つ場合、円弧の半径を計算します。
<center tanLine1> 円弧が線分に接するように拘束され、指定された中心を持つ場合、円弧の半径を計算します。
<inside1 onRight1 onRight2 tanArc1 tanLine1> 円弧が線分と円弧の両方に接する場合、円弧の位置を計算します。
<thruPoint1 thruPoint2 onRight1> 円弧が 2 つの点を通過するように拘束され、その中心が 2 つの点を通過する線分の右または左にある場合、円弧の位置を計算します。
<thruPoint1 thruPoint2 thruPoint3> 円弧が 3 つの点を通過するように拘束されている場合、円弧の半径と位置を計算します。
<thruPoint1 tanLine1 onRight1> 円弧が線分に接するように拘束され、1 つの点を通過する場合、円弧の位置を計算します。
名前: | arcMixin_Ex01 | |
Design: | ArcMixin acDrawingDocument | |
[名前] | [タイプ] | 式 |
od | 数値 | 2 |
ID | 数値 | 0.8 * od |
endAngle | 数値 | 15 |
半径 | 数値 | 1.5 |
子の名前: | outer_circle | |
子のデザイン: | :Arc | |
[名前] | [タイプ] | 指定値 |
center | 点 | startPoint |
diameter | 数値 | od |
topdir | ベクトル | RotateVector(Vector(0, -1, 0), startAngle, Vector(0, 0, 1)) |
startVector | ベクトル | RotateVector(Vector(1, 0, 0), startAngle, Vector(0, 0, 1)) |
子の名前: | outer_solid | |
子のデザイン: | :RevolvedSolid | |
[名前] | [タイプ] | 指定値 |
角度 | 数値 | abs(endAngle - startAngle) |
曲線 | list | {outer_circle} |
direction | ベクトル | topdir |
原点 | 点 | center |
子の名前: | inner_circle | |
子のデザイン: | :Arc | |
[名前] | [タイプ] | 指定値 |
center | 点 | outer_circle.center |
diameter | 数値 | ID |
topdir | ベクトル | outer_circle.topdir |
startVector | ベクトル | outer_circle.startVector |
子の名前: | inner_solid | |
子のデザイン: | :RevolvedSolid | |
[名前] | [タイプ] | 指定値 |
角度 | 数値 | outer_solid.angle |
曲線 | list | {inner_circle} |
direction | ベクトル | topdir |
原点 | 点 | center |
子の名前: | result | |
子のデザイン: | :BooleanSolid | |
[名前] | [タイプ] | 指定値 |
components | list | {outer_solid, inner_solid} |
operation | name | :Difference |
名前: | arcMixin_Ex02 | |
Design: | acDrawingDocument | |
[名前] | [タイプ] | 式 |
od | 数値 | 2.0 |
ID | 数値 | 1.5 |
子の名前: | elbow_1 | |
子のデザイン: | :arcMixin_Ex01 | |
[名前] | [タイプ] | 指定値 |
ID | 数値 | ID |
od | 数値 | od |
endAngle | 数値 | 60 |
半径 | 数値 | 5 |
center | 点 | Point(0, 0, Child.radius) |
ReferenceFrame | フレーム | frameXY(Child.center, Vector(0, 0, -1), Vector(1, 0, 0)) |
子の名前: | elbow_2 | |
子のデザイン: | :arcMixin_Ex01 | |
[名前] | [タイプ] | 指定値 |
ID | 数値 | ID |
od | 数値 | od |
endAngle | 数値 | 180 |
半径 | 数値 | 2.5 |
center | 点 | elbow_1.endPoint - (elbow_1.normal * Child.radius) |
referenceFrame | フレーム |