タグ

2021年12月3日のブックマーク (4件)

  • 質問回答: 2019/04/25 ベクトルの外積って何ですか?

    日のお題 空間の2つのベクトル \[\boldsymbol{a} = \left[\,a_1,\ a_2,\ a_3\,\right]\ ,\ \boldsymbol{b} = \left[\,b_1,\ b_2,\ b_3\,\right]\] について,\(\boldsymbol{a}\cdot\boldsymbol{b}\) と \(\boldsymbol{a}\times\boldsymbol{b}\) を求めよ。 2つの演算の違いが分かりません。計算の仕方と併せて教えてください。 はい!! 承知しました。\(\boldsymbol{a}\cdot\boldsymbol{b}\) は 内積,\(\boldsymbol{a}\times\boldsymbol{b}\) は 外積 と呼ばれる積です。 内積は スカラー積 とも呼ばれ,演算の結果は スカラー になります。高等学校の 数学

  • ひし形と点の当たり判定を行う - PG日誌

    今回は、ひし形(というか任意の4点からなる四角形)と、ある点の衝突判定を行いたいと思います。 判定処理の概要ですが、以下図の通り任意の4点 A ~ D をそれぞれを線で結び四角形とし、そこに点 P を与え、それぞれ四角形の内(=衝突している)外(=衝突していない)という判定を行います。 この場合 P1 は「中」、P2 は「外」の判定になります。 但し、下図のように四角形の内角のいずれかが180°を超えている場合この処理は適用できません。 考え方 考え方は、四角形の4辺それぞれの辺ごとと、判定対象の点の位置関係を外積を用いて計算し、全ての辺の右側に点があれば「内側」、1つでも左側にあれば「外側」という判断を行います。 ある1辺の計算式を見ていきます。条件は以下の通りです。簡単のため、Y方向が同じ縦の辺を考えます。 点A(12, 10) 点B(12, 30) 辺AB→ P1(7, 23) P2

    ひし形と点の当たり判定を行う - PG日誌
  • 点と三角形の当たり判定

    今回は点と三角形の当たり判定の計算方法についてです。 基的な考え方は、下図の様に点Pから三角形の各頂点ABCに向かうベクトル間のなす角を調べることで行います。 (ただし、) 上図の∠AB、∠BC、∠CAは三角形の内部に点Pがある限り180°以上になることは有り得ません。 もし180°以上の角が存在していたら、点Pは三角形の外側にあると判定することが出来ます。 上で示した例は、頂点ABCが反時計回りに配置されているパターンです。 しかし、実際には時計回りになる場合も有り得ます。 この場合、点Pが三角形の内部にある場合は∠AB、∠BC、∠CAがすべて180°より大きくなります。 点Pが三角形の外側にある場合は180°以下の角が存在することになります。 ポイントは、180°以下になる角が存在してもすべての角が180°以下にはならないところです。 頂点が反時計回りの場合も180°以上の角が存在し

    点と三角形の当たり判定
  • 点と三角形の当たり判定( 内外判定 )

    同一平面上にある三角形と点について、 三角形の内側に点があるかどうかは、外積を使って調べることができます。 三角形の内側に点があるとき、外積によるベクトルは3つとも同じ方を向きます 三角形の外側に点があるとき、外積ベクトルの向きは揃いません この性質を利用して、3つの外積ベクトルの向きを比較すると、三角形の内外判定ができます。 点と三角形の当たり判定を行うプログラムです。2D用3D用ありますが考え方は同じです。 点と三角形の内外判定 2Dの場合 3Dの場合はこちら... 3つの外積ベクトルを求め、Z成分を比較してベクトル方向が同じか判定します。 #include <math.h> struct Vector2D{ double x; double y; }; //頂点の定義(ベクトルと同じ) #define Vertex2D Vector2D //ベクトル引き算(a-b) Vector2D

    点と三角形の当たり判定( 内外判定 )