X座標とy座標、回転変数などを含む2D三角形の構造体が与えられました。これらのx座標とy座標によって作成されたポイントから、ポイントの周りに三角形を描画し、回転変数を使用して適切に回転させることになっています。
私は、OpenGlでGL_TRIANGLESを使用して三角形を描画することに精通しています。私の問題は、どういうわけか三角形の中央を抽出し、その周りに頂点を描くことです。
編集:はい、私が探しているのは図心です。
三角形の中心にはさまざまな「タイプ」があります。詳細: 三角形の中心 。三角形の中心を見つける簡単な方法は、すべてのポイントの座標を平均することです。例えば:
GLfloat centerX = (tri[0].x + tri[1].x + tri[2].x) / 3;
GLfloat centerY = (tri[0].y + tri[1].y + tri[2].y) / 3;
中心を見つけたら、中心を中心に三角形を回転させる必要があります。これを行うには、中心が(0、0)になるように変換します。ローテーションを実行します。ここで、前に実行した翻訳を逆にします。
三角形の重心のことだと思います!?
これは1/3(A + B + C)で簡単に計算できます。ここで、A、B、Cは三角形のそれぞれの点です。ポイントがある場合は、通常どおり、ポイントに回転行列を掛けることができます。私があなたを正しくしたことを願っています。
三角形には、その中心と見なすことができるいくつかの点があります(垂心、図心など)。 三角形に関するウィキペディアの記事のこのセクション 詳細があります。写真を見るだけで、概要がわかります。
「中央」とは、一定の厚さと密度の3Dオブジェクトである場合、「重心」、つまり重心を意味しますか?
もしそうなら、2つのポイントを選び、それらの間の中間点を見つけます。次に、この中点と3番目の点を取り、それらの間の1/3の距離(中点に近い)の点を見つけます。それがあなたの重心です。私はあなたのために数学をしていません。