その他
Game Development Diary
Undead Syndrome 開発メモ
日々コレどうしよう2016年以降版
ブラウザゲーム
発火少年の地面焦がし
MAGICAL METEOR SHOWER
メタセコイア備忘録
東日本大震災(Aftermath of the 2011 Tohoku earthquake and tsunami)
ムカゴソフトウェア開発
e-mail:cqp00202@nifty.ne.jp
//■ラジアンを返す static float getRadian( Vector3 posbase, Vector3 pos1, Vector3 pos2 ) { Vector3 calA = pos1 - posbase; Vector3 calB = pos2 - posbase; float lba = calA.Length(); float lca = calB.Length(); float radian = (float)Math.Acos(Vector3.Dot(calA, calB) / (lba * lca)); return radian; }
Vector3 posbase = new Vector3( 0f , 10f , 0f); Vector3 pos1 = new Vector3( 10f , 0f , 0f); Vector3 pos2 = new Vector3( 10f , 10f , 0f); //■ラジアンを返す float ans = getRadian(posbase , pos1 , pos2); //■ラジアン→角度へ ans *= 180f / 3.141593f ; //■スプライトフォントで描画 spriteBatch.DrawString(font , ans.ToString() , new Vector2(20f, 20f) , new Color(Color.White.ToVector4()));
実行結果
アークコサインの詳細については……逆三角関数