- ベストアンサー
y軸と一次直線の交差角度を求める式
(x1,y1)、(x2,y2)の座標を通過する一次直線がy軸と交差する角度を何とか一つの式で表せないでしょうか? y軸に対して左上(x1,y1)から右下(x2,y2)に交差する角度(時計でいうと9~12時)θを求めたいです。 ご存知の方いらっしゃいましたらご教授よろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#171951
回答No.1
y軸を正の向き(左回り)に回転させてその 直線に最初に重なるまでの角度は θ=arctan{(x2-x1)/(y1-y2)} です。
その他の回答 (2)
- 178-tall
- ベストアンサー率43% (762/1732)
回答No.3
「角度 (時計でいうと 9~12 時) θ」を、水平線から (9 時から) の角だと曲解していまして…。 垂直線からの角らしいので、当方のコメントは取り消し。 ところで、辺比から角度を知るには、三角関数表などアーカイブからの逆引きですかね。 アーカイブを忌避するには無限乗積のアルゴリズムなどに頼ることになり、「今どき、アーカイブより古い」といわれそう…。
- 178-tall
- ベストアンサー率43% (762/1732)
回答No.2
どうやら、x1 < 0, 0 < x2, y1 > y2 という配置らしい。 ならば、その直線が x 軸と交差する角度 (時計でいうと 9~12 時) θを求めればよさそう。 θ= arctan[(y1-y2)/(x2-x1)] かな?
質問者
お礼
ご回答頂きありがとうございます。 私も言われてみて気づいたのですが、 正しくは垂直線からの角度です。 分かりにくい質問で申し訳ありませんでした。 x1 < 0, 0 < x2, y1 > y2で合っています。 辺比の角度を知るために三角関数表というもんを参照するんですね。 ググって調べてみます。 とても参考になる回答で助かりました。 (両方BAにしたいですが回答の早かったNo.1さんにします)
お礼
ご回答頂きありがとうございます。 多少はググっていたのですが途中で行き詰まってしまい質問させて頂きました。 arctanというもの使うんですね。 tanは知ってましたが・・・ググって勉強します。 プログラムで組む予定なのでとても助かりました。