メインメニューを開く

差分

サイラス・ベック・アルゴリズム

628 バイト追加, 2022年10月26日 (水) 06:53
編集の要約なし
サイラス・ベック・アルゴリズム(英語:Cyrus '''サイラス・ベック・アルゴリズム'''([[英語]]:Cyrus Beck algorithm)とは、コンピューターグラフィックスにおけるラインクリッピングのアルゴリズムである。algorithm)とは、[[コンピューターグラフィックス]]におけるラインクリッピングの[[アルゴリズム]](直線が多角形の内側にあるかを判断するアルゴリズム)である。== 概要 ==1978年に米国空軍研究所のMike CyrusとJay Beckが発表した[[アルゴリズム]]である。 Generalized two- and three-dimensional clipping (Computers & Graphics, 1978: 23–28.) https://www.sciencedirect.com/science/article/pii/0097849378900213
コーエン・サザーランド・アルゴリズムより効率的になるよう設計されている。
またコーエン・サザーランド・アルゴリズムは長方形のみなのに対して、サイラス・ベック・アルゴリズムは多角形にも適用できる。
 
米空軍が考案しただけあって[[ベクターグラフィックス]]で表現された[[シューティングゲーム]]の[[実装]]が捗る。
== 詳細 ==
:<math> 0 \leq t \leq 1 </math>.
クリッピング領域との交点を見つけるために、領域の辺の法線(多角形を構成する直線の法線)と直線の内積を計算する。クリッピング領域との交点を見つけるために、領域の辺の[[法線]](多角形を構成する直線の法線)と直線の[[内積]]を計算する。'''p'''<sub>''E''</sub> は多角形の頂点。 は多角形の[[頂点]]。 '''n'''は法線。は[[法線]]。
:<math>\mathbf n \cdot (\mathbf p(t) - \mathbf p_E)</math>
* [[Cohen–Sutherland algorithm]]
* [[Liang–Barsky algorithm]]
* [[Cyrus Beck algorithm]]
* [[Nicholl–Lee–Nicholl algorithm]]
* [[Fast clipping]]
[[category: 2DCG]]
[[category: 3DCG]]
[[category: コンピューター・グラフィックス]]