プロが教えるわが家の防犯対策術!

角度を計算するために、下記を使用しますと+90とー90の範囲となります。
angle=atan(X(2,1:$)./X(1,1:$))*180/(%pi);
注)X(2,1:$)でy座標を、X(1,1:$)を実数で指定しています。

4現象で+180とー180の範囲とする為の書き方をお教え頂けないでしょうか?
例えば、下記の方法とやって見ましたが旨く行きません。
angle=atan(X(2,1:$)*(-1)^0.5./X(1,1:$))*180/(%pi);

以上、宜しくお願いします。

A 回答 (2件)

atan(θ) だと2象限、atan(y, x) だと4象限です。


https://help.scilab.org/docs/5.3.2/ja_JP/atan.html

従って
angle =180 / (%pi) * atan( sin( X(2,1:$)./X(1,1:$) ), cos( X(2,1:$)./X(1,1:$) ) )
    • good
    • 1

たんに


angle =180 / (%pi) * atan(X(2,1:$), X(1,1:$))
でいいような気もするんだけど, 寝惚けてるだけかなぁ>#1.
    • good
    • 0
この回答へのお礼

4現象(±180度)の場合は、こんな感じでした。
val=X(2,1:$)*%i+X(1,1:$);
angle=atan(imag(val), real(val))*180/(%pi);

お礼日時:2018/11/14 07:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!