数学において、曲線の方向とは、曲線上を移動する際に可能な 2 つの方向のうちの 1 つを選択することです。たとえば、直交座標の場合、x軸は伝統的に右向き、y軸は上向きになります。
平面単純閉曲線(つまり、始点が終点でもあり、他に自己交差を持たない平面上の曲線)の場合、曲線上を移動するときに常に曲線の内側が左側(したがって、曲線の外側が右側)にある場合、曲線は正の向き、つまり反時計回りの向きであると言われます。そうでない場合、つまり左と右が入れ替わる場合、曲線は 負の向き、つまり時計回りの向きです。この定義は、すべての単純閉曲線には明確に定義された内部があり、これはジョルダン曲線定理から導かれるという事実に依存しています。
道路の右側を運転する国の環状道路の内側のループは、負方向 (時計回り) の曲線の例です。三角法では、単位円は伝統的に反時計回りに向いています。
曲線の向きの概念は、多様体の向きの概念の単なる特殊なケースです(つまり、曲線の向きの他に、面、超曲面などの向きについても言及できます)。
曲線の向きは、実変数による曲線の点のパラメータ化と関連している。曲線のパラメータを他の曲線のパラメータに関連付ける連続的に 増加する 単調関数がある場合、曲線は同等のパラメータ化を持つ可能性がある。パラメータを関連付ける連続的に減少する関数がある場合、パラメータ表現は反対になり、曲線の向きは逆になる。[1] [2]
単純な多角形の方向

2 次元では、単純な多角形を形成する3 つ以上の接続された頂点 (点) の順序付けられたセット (点接続図など) が与えられた場合、結果として得られる多角形の方向は、多角形の凸包の任意の頂点における角度 (図の角度 ABC など) の符号に直接関係します。計算では、1 組のベクトルによって形成される小さい方の角度の符号は、通常、ベクトルの外積の符号によって決まります。外積は、方向行列の行列式の符号として計算できます。2 つのベクトルが共通の端点を持つ 2 つの線分 (この例では角度 ABC の辺 BA と BC) によって定義される特定のケースでは、方向行列は次のように定義できます。
その行列式の式は、例えば補因子展開法を用いて得ることができる。
行列式が負の場合、多角形は時計回りになります。行列式が正の場合、多角形は反時計回りになります。点 A、B、C が同一直線上にない場合、行列式はゼロ以外になります。上記の例では、点が A、B、C などの順序になっているため、行列式は負になり、多角形は時計回りになります。
実用的な考慮事項
実際のアプリケーションでは、通常、次の点が考慮されます。
適切な頂点を見つけるために、多角形の凸包を作成する必要はありません。一般的な選択は、最小の X 座標を持つ多角形の頂点です。そのような頂点が複数ある場合は、最小の Y 座標を持つ頂点が選択されます。これは、多角形の凸包の頂点であることが保証されます。または、最大の X 座標を持つ頂点の中で最小の Y 座標を持つ頂点、または最大の Y 座標を持つ頂点の中で最小の X 座標を持つ頂点 (または、8 つの「最小、最大」の X/Y の組み合わせのいずれか) でもかまいません。凸包の頂点が選択されると、その頂点には局所的な凹面が存在しないため、前の頂点と次の頂点を使用して式を適用できます。
凸多角形の方向を求める場合は、もちろん任意の頂点を選択できます。
数値的な理由から、行列式には次の同等の式が一般的に使用されます。
後者の式では、乗算が 4 回少なくなります。コンピュータ グラフィックスやCADなどのほとんどの実用的なアプリケーションに含まれるコンピュータ計算でさらに重要なのは、乗数の絶対値が通常は小さくなる ( たとえば、A、B、C が同じ象限内にある場合) ため、数値誤差が小さくなり、極端な場合には算術オーバーフローが回避されることです。
点の列が単純な多角形を定義することが事前にわからない場合は、次の点に留意する必要があります。
自己交差ポリゴン(複合ポリゴン) (または任意の自己交差曲線)の場合、「内部」という自然な概念は存在しないため、方向は定義されません。同時に、幾何学とコンピュータ グラフィックスでは、閉じた非単純な曲線の「内部」の概念に代わる概念がいくつかあります。たとえば、「塗りつぶし」や「巻き数」を参照してください。
自己交差の「軽度」なケース、つまり、3 つの連続する点が同じ直線上にあり、角度が 0 度になるような退化した頂点がある場合、「内部」という概念は意味をなしますが、テストする角度の選択には特別な注意が必要です。 与えられた例では、点 A が線分 BC 上にあるとします。 この状況では、角度 ABC とその行列式は 0 になるため、役に立ちません。 解決策は、非ゼロの行列式が見つかるまで、多角形 (BCD、DEF、...) に沿って連続する角をテストすることです (すべての点が同じ直線上にある場合を除く)。 (点 C、D、E は同じ直線上にあり、行列式が 0 の 180 度の角度を形成していることに注意してください。)
局所的な凹み
頂点の順序付けられた集合から形成される多角形の方向が分かれば、多角形の局所領域の凹みは第2の方向行列を使って決定できる。この行列は、凹みを調べる対象となる3つの連続する頂点から構成される。例えば、上図の多角形で、点の列FGHが凹面か凸面か共線的(平坦)かを知りたい場合は、行列を構築する。
この行列の行列式が 0 の場合、シーケンスは共線的であり、凹でも凸でもありません。行列式の符号がポリゴン全体の方向行列の符号と同じである場合、シーケンスは凸です。符号が異なる場合、シーケンスは凹です。この例では、ポリゴンは負の方向ですが、点 FGH の行列式は正であるため、シーケンス FGH は凹です。
次の表は、点のシーケンスが凸型、凹型、または平面型であるかどうかを判断するための規則を示しています。
参照
参考文献
- ^ アブラハム・ゲッツ (1970)微分幾何学入門、28 ページ、アディソン・ウェズリー
- ^ チュアン・チー・シウン(1981) 『微分幾何学入門』 84 ページ、ジョン・ワイリー・アンド・サンズ
外部リンク
- http://www.math.hmc.edu/faculty/gu/curves_and_surfaces/curves/_topology.html 2004-12-23 にWayback Machineにアーカイブされました (2023.07.27 にページが見つかりません)
- MathWorldでの曲線の方向
