円弧

概要

このデザインは、ホスト CAD システムの 3D ワイヤフレーム円弧を定義します。円弧の拘束は、半径(または直径)のみを提供することで満たすことができます。開始角度と終了角度は、円弧の startVector 入力を基準とします。これは既定ではローカル フレームの x 軸です。すべての角度は正の値であり、開始角度が終了角度より小さい必要はありません。円弧は常に法線を基準として反時計回りにトレースされます(右手の座標系の右手の法則)。円弧の拘束は、Trim()または TrimTan()関数を使用して円弧の開始または終了角度を計算することでも指定できます。曲線のトリミングの構文については、例 4 を参照してください。

Mixin

ArcMixin

CurveMixin

InkStrokedMixin

標準

Name [タイプ] 説明
半径 数値 円弧の半径です。
startAngle 数値 ローカル X 軸から円弧の始点までの角度です。値は -360 ~ 360 度の範囲で設定することができます。
endAngle 数値 ローカル X 軸から円弧の終点までの角度です。値は -360 ~ 360 度の範囲で設定することができ、startAngle より大きくする必要はありません。

[パラメータ]

Name [タイプ] 説明
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 [タイプ] 説明
arcLength 数値 startAngle から endAngle までの円弧の長さです。
円弧 数値 startAngle から endAngle までの円弧の角度の絶対値です。
endPoint 円弧の endAngle のです。

メソッド

curveParamNearPoint(point p) number 入力 p に最も近い曲線上のを持つ角度を見つけます。

例 1

名前: arc_Ex01
Design: acDrawingDocument
[名前] [タイプ]
arcAngleList list

Dim a As Part

Dim lst As List = {}

For Each a In Me.Children

lst = lst + {a.arc}

Next ' a Return lst

子の名前: Arc_1
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 1
子の名前: Arc_2
子のデザイン: :Arc
[名前] [タイプ] 指定値
endAngle 数値 230
startAngle 数値 90
diameter 数値 Arc_1.radius * 3
center Arc_1.center - Vector(0, Arc_1.radius + Child.radius + 2, 0)
子の名前: Arc_3
子のデザイン: :Arc
[名前] [タイプ] 指定値
endAngle 数値 20
startAngle 数値 200
diameter 数値 Arc_1.radius * 4
center Arc_2.center - Vector(0, Arc_2.radius + Child.radius + 2, 0)

例 2

名前: Arc_Ex02
Design: acDrawingDocument
子の名前: Arc_4
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 1
center point(0,-10,0)
子の名前: Arc_5
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 0.5
center point(3,-10.5,0)
子の名前: Arc_6
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 1.5
tanArc1 パーツ Arc_4
tanArc2 パーツ Arc_5
inside1 ブーリアン演算 False
inside2 ブーリアン演算 False
onRight1 ブーリアン演算 False
子の名前: Arc_7
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 2
tanArc1 パーツ Arc_4
tanArc2 パーツ Arc_5
inside1 ブーリアン演算 True
inside2 ブーリアン演算 False
onRight1 ブーリアン演算 False

例 3

名前: Arc_Ex03
Design: acDrawingDocument
子の名前: Line_1
子のデザイン: :Line
[名前] [タイプ] 指定値
thruPoint1 Point(6.74, -8.44, 0)
thruPoint2 Point(12.73, -12.15, 0)
子の名前: Line_2
子のデザイン: :Line
[名前] [タイプ] 指定値
thruPoint1 Point(12.66, -8.29, 0)
thruPoint2 Point(6.81, -12.25, 0)
子の名前: Arc_8
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 1
tanLine1 パーツ Line_1
tanLine2 パーツ Line_2
onRight1 ブーリアン演算 True
onRight2 ブーリアン演算 False
子の名前: Arc_9
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 2
tanLine1 パーツ Line_1
tanLine2 パーツ Line_2
onRight1 ブーリアン演算 False
onRight2 ブーリアン演算 True
子の名前: Arc_10
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 0.5
tanLine1 パーツ Arc_8
tanLine2 パーツ Line_1
onRight1 ブーリアン演算 True
onRight2 ブーリアン演算 True
子の名前: Arc_11
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 0.5
tanLine1 パーツ Arc_9
tanLine2 パーツ Line_1
onRight1 ブーリアン演算 False
onRight2 ブーリアン演算 True

例 4

名前: Arc_Ex04
Design: acDrawingDocument
[名前] [タイプ]
PlateThickness 数値 0.125
PinRadius 数値 0.125
BendRadius 数値 0.25
PlateWidth 数値 1.5
子の名前: BottomLine
子のデザイン: :Line
[名前] [タイプ] 指定値
thruPoint1 Me.origin
thruPoint2 Me.origin + Vector(PlateThickness, 0, 0)
子の名前: PinArc
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 PinRadius
center Point(PlateThickness, PlateWidth, 0)
startAngle 数値 280
endAngle 数値 TrimTan(Me.Child, InnerBlendArc)
子の名前: OuterArc
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 PinArc.radius + PlateThickness
center PinArc.center
startAngle 数値 280
endAngle 数値 TrimTan(Me.Child. OuterBlendArc)
子の名前: OuterBlendArc
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 BendRadius
tanArc1 パーツ OuterArc
inside1 ブーリアン演算 False
onRight1 ブーリアン演算 False
tanLine1 パーツ LeftLine
onRight2 ブーリアン演算 True
endAngle 数値 TrimTan(Me.Child, OuterArc)
子の名前: LeftLine
子のデザイン: :Line
[名前] [タイプ] 指定値
thruPoint1 BottomLine.startPoint
dirVector ベクトル Vector(0, 1, 0)
end 数値 TrimTan(Me.Child, OuterBlendArc)
子の名前: InnerBlendArc
子のデザイン: :Arc
[名前] [タイプ] 指定値
半径 数値 BendRadius
tanLArc1 パーツ PinArc
inside1 ブーリアン演算 False
onRight1 ブーリアン演算 False
tanLine1 パーツ RightLine
onRight2 ブーリアン演算 True
endAngle 数値 TrimTan(Me.Child, PinArc)
子の名前: RightLine
子のデザイン: :Line
[名前] [タイプ] 指定値
thruPoint1 OuterArc.startPoint
dirVector ベクトル Vector(0, 1, 0)
end 数値 TrimTan(Me.Child, InnerBlendArc)
子の名前: TopLine
子のデザイン: :Line
[名前] [タイプ] 指定値
thruPoint1 OuterArc.startPoint
thruPoint2 PinArc.startPoint