
No.3ベストアンサー
- 回答日時:
#2です。
プログラムを数式に直したら簡単ということはありません。
プログラムは「極座標表示と直交座標表示を意識することなく計算できること」、「内積が関数計算できること」、「計算機には簡単な計算でも式に書き下すと複雑な式になる場合がある」、「式の変数への置き換えで元の変数と最終の式の関係が見えなくなること」
などが原因で
質問者さんがプログラムから数式への書き下しが困難となっていると思います。
質問者さんが理解できないプログラムを持ってきても意味はありません(役立ちません)。
A#2で補足のプログラムは
>//vec3 Te = normalize(vec3(100,100,100));
は3次元ベクトルみたいです。また
>rad[i] = asin(hhh[i]);
は内積のcosθのθの余角(π/2 -θ)を求めているようだし、正しく動作することをチェックされたプログラムですか?
プログラムから忠実に数式を起こすことは少し無理なような気がします。やり方だけヒントにして自分で数式を作られるなら良いですが。。。
プログラムをヒントにした方法の手順は以下のように掛けます。ただこの手順は計算機向きです。
1)4つの点ベクトルr1,r2,r3,r4は2)の中心点に対する偏角の昇順に予め並んでいる(並べてある)と仮定する。
2)加重中心点ベクトルp=(r1+r2+r3+r4)の計算
3)中心点に4つの点を平行移動する。移動後の点ベクトル{si|si=ri-p,i=1,2,3,4}とおく。
4)各点ベクトル{si}を絶対値1に正規化する。
正規化されたベクトルは{ti| ti=si/|si|,i=1,2,3,4}で求める。
5)求める偏角は{θji|θji=arccos[内積(ti,tj)],(i,j)=(1,2),(2,3),(3,4),(4,1)}で求める。
結果は通常ラジアン単位で出てきます。
角度を度(°)に変換する場合は換算係数(180/π)を掛けます。
参考にされても良いですし、最初から直交座標系だけで考えられても良いですね。
直交座標系で計算する場合は#1さんの方法でほぼいいと思いますが、最後にarctanを計算するとき、計算機ではarctanは主値(atctanの主値の範囲は-π/2~π/2)で計算値が出てきますので、実際の角度が主値の範囲の外にある場合は角度の補正が必要になりますのでご注意ください。
有り難うございます。
このプログラムは 3次元になっているのも、
他のものを見ながら色々いじっていたので
(参考が3次元のものだったり2次元の物だったり色々でしたので(^^;)
>正しく動作することをチェックされたプログラムですか?
元々 プログラムが作りたくて数式を調べていて、
いじる前は動作するのは確認しましたが、
式の内容は前にも書きましたが、
色々な所からこれがいるあれがいるとと言う事で、
自分でつなぎ合わせましたので(^^;
それで結局基本の式がわからないと.....
と言う事でここで聞いたのです。
それと独自の関数(私のではないですが(^^;)も使っていますので。
基本的に元の数学がわからないので、
プログラムの方でも聞けないので..orz
こちらでお聞きしました。
>直交座標系だけで考えられても良いですね。
とりあえず一番単純なのをやって勉強してみます。
有り難うございますm(_)m
No.2
- 回答日時:
一般化した質問ではやたら変数が増え、結果としての式が長くなるだけで、ひたすら式を書き下していくだけの問題じゃないでしょうか?
>色々やってみたのですが
>学がないものでなんとも..orz
>私みたいなのでもわかる数式があれば教えて
このような質問をされた以上経過式や結果の式を示してください。そして学が無いと逃げて、結果や分かる式を求められるのは、本来はあなたが単純な式をひたすら変形して導出すべきところを回答者に代わりにやってもらうといった手抜きで、学の問題ではないと思います。
そうでないなら、質問をもっと単純化して点A(x1,y1),B(x2,y2),M(xo,yo)に対して角BMAの偏角θ21を求める質問にされるとか、あくまでこの質問にこだわなら、どれか1つだけの角に限定しかつその結果と導出過程を示して、これで良いですか、とかこの部分を教えてください、といった質問に変えていただいたほうが良いですね。
4つの角の似たような式を全部書くだけでも回答を非常に長くしてしまいます。
あなたの質問に対して、解答にいたる過程が何も書かれないとマナー違反になりますよ。
質問を分からないところだけを取り出して単純化し、あなたの分かる範囲の解答を示すようにして分からない部分、結果があっているかどうかといた質問の仕方をされた方がいいかと思います。
この回答への補足
あっ 単純計算して動かしてもあからさまに 違うよな(--;
と思える数字しか出てこなかったので、
色々いじってて止まっているのでこれ自身は動きません(^^;
有り難うございます。
>本来はあなたが単純な式をひたすら変形して導出すべきところを
それすらわからない状態でしてすいませんm(__)m
距離などの式のように
一発で出せるような式があるのかと思いまして。
式を出せなかったのは、
プログラムになっているので下記に張ります。
ただここは数学ですのでどうかと思ったので。
直そうと思っても
数式→プログラムは本見ながら出来るのですが、
プログラム→数式は.....
これもHPからの寄せ集めでいらない部分などあるお思いますが。
私自身確実に内容を把握してないので(^^;
vec3 Test1;
vec3 Test2;
Test1 = (PointVec[0] + PointVec[1] + PointVec[2] + PointVec[3]) / 4;
for(int i = 0; i < 4;i++){
Test[i] = normalize(PointVec[i]);}
//vec3 Te = normalize(vec3(100,100,100));
float hhh[4];
for(int i = 0; i < 4;i++){
hhh[i] = inner_product(Te,Test[i]);
double rad[4];
double n[4];
for(int i = 0; i < 4;i++){
rad[i] = asin(hhh[i]);
n[i] = ((rad[i]*180.0) / 3.1415926538);
}
No.1
- 回答日時:
>2次元状に四点がありその中心を求め
「中心」ってなんですかというのが問題なんですが
>各座標を平均して中心をだし、
ということだと
( (x1+x2+x3+x4)/4, (y1+y2+y3+y4)/4 )
のことでしょうか.
これなら重心ですよね
それなら,この点が原点になるように
4点を平行移動したあとの
各点の座標を
(X1,Y1) (X2,Y2) (X3,Y3) (X4,Y4)
として,Y1/X1 Y2/X2 Y3/X3 Y4/X4
を求めてください.
それらの値が,x軸の正の方向との
原点と各頂点までの線分がなす角のtanです.
ここまでわかると
「重心から各頂点に引いた線分のなす角のtan」は
tanの加法定理からだせます.
tanまで出せればarctanで角度そのものは出せます
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 第4問 座標平面上に3点 A(1, 1),B(1, 5), C(7, 3) を頂点とするABCがある 2 2022/10/01 14:53
- 中学校 中1数学 比例のグラフの座標の読み取り 4 2023/03/28 12:26
- 数学 ベクトル方程式(ヘッセの標準形)についての質問 2 2022/04/23 18:00
- 数学 球面と接する直線の軌跡が表す領域 4 2023/07/30 12:37
- 数学 この問題が分かりません! 右図の直線①②の式は、y=-x+4①、 y=3/4x+1② である。2つの 3 2022/05/04 22:29
- 数学 写真(URL)の問題の(1)についてですが、 円c1は 2点を通ると書いてあることから、 2点の座標 5 2023/02/14 19:44
- 数学 2次関数y=ax^2のグラフは点A(4,2)を通っている。y軸上に点BをAB=OB(Oは原点)となる 1 2022/04/08 00:05
- 物理学 原点中心とする半径10cmの演習上、質点が1分間に600回の割合で反時計回りに運動している。 (1) 4 2023/05/29 12:46
- 数学 数Bです。 定点O、Aと動点Pがある。ベクトルOA=ベクトルa、ベクトルop=ベクトルPとするとき、 3 2022/07/04 23:12
- 数学 放物線y=a(x-a)(x-b)について、頂点の座標を求めなさい。ただし、a≠0とし、a,bは実数の 6 2023/03/21 00:26
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
行列とベクトルの表記の仕方に...
-
微積分の記号δ、d、Δ、∂の違い
-
一次独立だけど、基底にならな...
-
「ノルム、絶対値、長さ」の違...
-
平面の交線の方程式
-
n次元ベクトルの外積の定義
-
零ベクトル
-
「任意」ってどういう意味?
-
数学 線形代数 ベクトル 正誤を...
-
Aはn次正方行列とする。零行列...
-
ベクトルの一次独立が一通りに...
-
正規直交基底であることの確認
-
近似曲線の数式の値を指定した...
-
平面上の異なる2点O、Aに対して...
-
高校教科書のベクトル表記について
-
行列式が1とはどういう意味です...
-
線形代数 基底・ベクトル空間
-
ベクトルを対角行列にするよう...
-
一次従属の問題
-
高校数学です a→=(1,√3) b→...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「ノルム、絶対値、長さ」の違...
-
微積分の記号δ、d、Δ、∂の違い
-
「任意」ってどういう意味?
-
n次元ベクトルの外積の定義
-
行列とベクトルの表記の仕方に...
-
座標系の奥(手前)方向の書き方
-
平面の交線の方程式
-
高校数学の範囲外の知識は大学...
-
線積分、面積分とは何?
-
ベクトルについて
-
一次独立だけど、基底にならな...
-
複素数の絶対値の性質について
-
球面と直線の交点
-
2つに直交する単位ベクトル
-
一本のベクトルに直交するベク...
-
ベクトルの大きさの書き方が||x↑||
-
行列式が1とはどういう意味です...
-
なぜ2乗するのか
-
det(A)≠0 の必要十分条件を教え...
-
縦ベクトルと横ベクトルの違い...
おすすめ情報