円弧

概要

このデザインは、ホスト 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
デザイン: 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
デザイン: 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
デザイン: 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
デザイン: 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