• ベストアンサー

三角関数についてですが

わかる方いたらお教え願います。 VB6でプログラムしてるのですが、テキストファイルから中心点と座標を取得し、 その角度を求めたいのですが、全くもってわかりません。 サイン、コサイン、タンジェント??を使うのでしょうか?VB6で使えるのでしょうか? 例えば、中心点がX20.0Y50.0で、ある座標がX200.0Y300.0の場合、 X180.0Y250.0の直角三角形となって、中心点への角度を求めたいのです。 説明が下手ですが、お分かりになられた方、教えて下さい。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

どことどこの角度を知りたいのでしょう? 中心(20,50) と 点(180,250)からなる線分の角度ですか それならば Atn関数で求められますよ Atnは 垂直/水平の比を与えてやればラジアンで返してきます dim ans as double ans = Atn( (250-50) / (180-20) ) 度に直すなら 度= 180/π * ラジアンで変換できます 45度がπ/4ですので Atn(1)*4 がπになります ans2 = Atn( ( 250 - 50 ) / ( 180 - 20 ) ) * 180 / ( ATn(1) * 4 ) といった具合です 求める部分が違うなら補足説明をしてください 中心とある座標と直角三角形の関係がいまいち分かりません

satoshi777
質問者

お礼

おはようございます。 あらためて見ると、非常にわかりにくい文でした。 申し訳ありませんでした。 聞きたいことは、ズバリredfox63さんの答えの部分でした。 数学が苦手なもので、伝えることもままならぬ状況でしたが、 解決できました。ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

回答No.1

Option Explicit 'http://u-sfield.hp.infoseek.co.jp/vb/tips/pi.html Public Function Pi() As Double Pi = 4 * Atn(1) 'π=アークタンジェント(1)×4 で算出できます。 End Function Public Function hoge(ox As Double, oy As Double, x As Double, y As Double) As Double hoge = Atn((y - oy) / (x - ox)) End Function Public Function main() MsgBox ( _ CStr(hoge(20, 50, 200, 300)) & "[rad]" & vbNewLine & _ CStr(hoge(20, 50, 200, 300) * 180 / Pi()) & "[°]" _ ) End Function

satoshi777
質問者

お礼

おはようございます。 参考とさせていただきます。ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 二次関数の頂点の求め方と三角比について

    頂点の求め方を教えてください あと y=-(x+3)^2 は なぜ頂点が(-3、0)なんですか 三角比について一から教えてください(サイン、コサイン、タンジェントの意味等)

  • 三角数

    数学が苦手な大学生です。 気になることがあったので質問させていただきます。 高校で習う三角数でタンジェント・サイン・コサイン以外の3つが出てこないのはなぜでしょうか? 三角数は直角三角形の一つの角度が決まると、辺の比が決まると習った気がしますが、サインの逆ではなくサインが使われているのがよくわかりません。 詳しい方ご教授お願いします。

  • エクセルで回転する座標の出し方

    エクセルで回転する座標の出し方 (例) 座標X100、Y100の点から好きな角度を回したときのX、Yの座標の求め方 回転中心はX0、Y0 回転方向は反時計回り 例で言えば X141.421、Y0  が0度       X0、Y141.421  が90度       X-141.421、Y0 が180度       X0、Y-141.421 が270度 エクセルでの問題点は 1.角度計算がラジアンになる デグリも関数はあるけど書式がわからない  無理やり(PI()/180)などを使ってるがアークタンジェントでは書式がわからない 2.正と負の計算式・答えが負になるときの処理ができない  回転角度が270度とか 今電卓で打っているのは 100/100=ATAN ----------------------最初の角度 100*100+100*100の答えのルート--------回転中心からの直線距離 最初の角度+動かしたい角度------------求めたい座標の角度 SIN求めたい座標の角度*直線距離-------Y座標 答え COS求めたい座標の角度*直線距離-------X座標 答え 最初のX、Y座標と 動かしたい角度を入れると答えが出るような 物が作りたいです よろしくお願いします エクセル2000 WINXP

  • 三角関数について

    座標P1 (X1, Y1)を、座標P3 (X3, Y3)を中心にθ度回転させると、座標P2 (X2, Y2)となりました。 このときの座標P3 (X3, Y3)はどのように表せますか? よろしくご教授のほどお願いいたします

  • 三角関数の問題です

    座標P1 (X1, Y1)を、座標P3 (X3, Y3)を中心にθ度回転させると、座標P2 (X2, Y2)となりました。 このときの座標P3 (X3, Y3)はどのように表せますか? よろしくご教授のほどお願いいたします

  • 楕円計算で困っています

    長径2a、短径2bの楕円があり、長軸と短軸の交点座標(いわゆる中心点)を(0,0)とする この中心点からx軸からの角度αで直線を引き、楕円との交点座標を(x1,y1)とし、 また、この座標がx軸に対して対称な座標を(x1,-y1)とする この2点に対して楕円の接線を引いて、2つの線の角度をβとする この条件で(x1,y1)座標と角度βを、a,b,角度αを用いて表現する方法はないでしょうか? 色々考えてみたのですがどうも上手くいきません。 どうかよろしくお願いします。

  • 計算方法を教えてください

    サイン・コサイン・タンジェントを使っての計算方法を教えてください。 底辺が2.3mで75度と15度の角度を持つ直角三角形の辺の長さを求めるのにはどうしたらいいのか教えてください。

  • 2つの座標と角度から交点座標の求め方

    (X1, Y1)と(X2, Y2)の2点の座標と角度θがあります。 この情報から交点座標(XX, YY)を求めたいと思っています。 どのような計算式になるのでしょうか? VB6にて作成しております。 よろしくお願いします。

  • 三角形の角度の求め方。

    直角三角形の三辺の長さがわかっているときの直角以外の角度の求め方を教えてください。 アークコサインとかタンジェントとかだった気はするのですが、思い出せなくて。。。 お願いします。

  • 三角関数について教えて下さい

    数学に詳しい方、ご教授下さい! 平面座標において、横軸Xと縦軸Yがあるとします。 横軸Xと縦軸Yが垂直に交わる交点を点Oとします。 そして、X=10、Y=10に位置する点P1があるとします。 この点P1を、点Oを中心に反時計周りに1度回転した点をP2とした場合、 点P2のX、Yの値を求めるには どのように計算すればよいでしょうか? 三角関数?を使うんだと思うのですが、 もうずいぶん昔に習ったことなのでさっぱりです…(汗)。