C/C++の宿題を片付けます 113代目
■ このスレッドは過去ログ倉庫に格納されています
0696デフォルトの名無しさん
2008/07/19(土) 23:31:534点ABCDが凹多角形かを調べるには、
たとえばA点がBCDの内部にあるかどうかを判定する場合
三つの内積 BA・BC、CA・CD、DA・DB の正負が一致しているかを見る。
一致していればAは内部にある。これをB,C,Dにも同様にやれば凹多角形か判定できるはず。
ヘロンの公式をコーディングする場合
sqrt((s*(s-a)*(s-b)*(s-c))をsqrt(2αβ+2βγ+2γα-α^2-β^2-γ^2)/4 (ただしα=a^2 β=b^2 γ=c^2)
とすれば αβγは普通にピタゴラスの定理で出るし
誤差とかも少ないかと
■ このスレッドは過去ログ倉庫に格納されています