edo1z blog

プログラミングなどに関するブログです

2011-09-01から1ヶ月間の記事一覧

線分と線分の交差判定

線分と線分の交差判定をしたい。線分abと線分cdの交差判定をすることにしよう。交差判定には直線の方程式を使う。直線は、y=ax+bといった形になる。この直線よりも上に線分の一方の点があり、もう一方の点がこの直線よりも下にあればそれは、この直線と線分…

点が長方形の内側にあるかチェックする

点が長方形の内側にあるか否かをチェックするには、外積を使えばよい。 ある長方形(10,10),(30,10),(30,30),(10,30)と、ある点(20,20)があるとしよう。このある点がある長方形の内側にあるのか外側にあるのかを判定したい。このような長方形であれば、外積を…

ベクトルの外積

ベクトルの外積は便利だ。ベクトルAとベクトルBの外積を求めたときに値がマイナスであれば、ベクトルBはベクトルAの右側にいるということが分かる。 試してみよう。 ベクトルA(6,6)、ベクトルB(6,0)としよう。 外積は下記の式になる。 Ax * By - Bx * Ay よ…

cosθの値をグラフにしてみる

0度〜360度のcosθの値をグラフに出してみよう。HTML canvasを使おう。 See the Pen cosθ by edo1z (@edo1z) on CodePen. 一番上が1を表している。真ん中が0で、一番下が-1である。一番左が0を表していて縦の目盛線は、45ずつに引いている つまり、0度はcos…

ベクトルの内積の研究(1)

ベクトルの内積を研究する。 まずV,Uをそれぞれ、(3,5)、(6,3)としよう。 ベクトルの内積は下記のようになるものをいうらしい。 V●U = Vx * Ux + Vy * Uy よって、内積は、 3 * 6 + 5 * 3 = 33 となる。 内積ではもう一つ成立する式があるらしい。 V●U = |V|…

Javascript Math.sin(rad) サインを求める

Math.sin(rad)でサインを求められる。引数のradはラジアン。ラジアンがよく分からない。 コンピュータゲームの物理という私のバイブルによると、ラジアンは角度を表す方法の1つのようだ。我々は360度で一周する方法をいつも使っているが、この360という中途…

Javascript Math.PI 円周率を求める関数

document.write(Math.PI); document.write(Math.PI);

Javascript Math.atan2() X軸からポイントまでの角度を取得

Math.atan2(y, x) http://www.ajaxtower.jp/js/math_class/index15.html ここの説明が分かり易そうだ。 atan2関数は座標の逆正接(アークタンジェント)を計算して返します。引数に指定した原点と座標(x, y)、そして座標からX座標へ降ろした点の3点からなる三…