• ベストアンサー
  • すぐに回答を!

楕円計算で困っています

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

共感・応援の気持ちを伝えよう!

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

  • ベストアンサー
  • 回答No.1

 楕円の極座標表示を用いればよいと思います。  長軸がx軸と一致しているとしますと次のようになります。   x1=a cosθ、 y1=b sinθ  ここで、tanα=y1/x1 なので、tanθ=a/b tanα を上の2式に代入して、まずx1とy1を次のように表します。   x1=a/√{1+(tanθ)^2} =a/√{1+(a/b tanα)^2}   y1=b/√{1+(1/tanθ)^2}=b/√[1+{b/(a tanα)}^2]  次に、点(x1,y1)に於ける接線の方程式は、x1x/a^2+y1y/b^2=1 なので、接線の傾きの絶対値は (b/a)^2 x1/y1 ですから、βと次の関係があります。   tan(β/2)=(b/a)^2 x1/y1  ∴β=2 arctan{(b/a)^2/tanα}

共感・感謝の気持ちを伝えよう!

質問者からのお礼

申し訳ありません。お礼の方、遅れました 回答ありがとうございます なるほど、媒介変数表示ならば、ある程度まとまった式で出せますね とても参考になりました

その他の回答 (3)

  • 回答No.4

削除されなければ良いのですが… (x1,y1)は,   y1 = (tanα)x1   (x1)^2/a^2 + (y1)^2/b^2 = 1 の2つを連立させて解けば,   x1 = ±ab/√(b^2 + (a*tanα)^2)   y1 = ±ab*tanα/√(b^2 + (a*tanα)^2)   (複合同順) また,2接線の角度βについては,楕円方程式,   x^2/a^2 + y^2/b^2 = 1 の両辺を x について微分すると,   2x/a^2 + 2y*y'/b^2 = 0   ∴ y' = -(b/a)^2 * (x/y) この式にx = x1 , y = -y1 を代入(y = y1 でもよい)して,y1 = (tanα)x1 より,   y' = (b/a)^2 * (x1/y1) = (b/a)^2 * (1/tanα) これは,接線の傾きを表している.2つの接線はx軸で交わり,x軸はβを2等分するので,   tan(β/2) = (b/a)^2 * (1/tanα) 2倍角の公式より   tanβ = 2tan(β/2)/{1 - (tam(β/2))^2}      = 2tanα*(ab)^2/{a^4 * (tanα)^2 -b^4} 如何でしょうか.

共感・感謝の気持ちを伝えよう!

質問者からのお礼

申し訳ありません。お礼の方、遅れました 回答ありがとうございます その方法で初め計算していたのですが、キレイに出なかったの諦めていたのですが・・・出ましたか 私の計算力不足のようです とても参考になりました

  • 回答No.3

 #1です。 >楕円の極座標表示を用いればよいと思います。  ごめんなさい。媒介変数表示 の誤りでした。  この表示の考え方を図示しているサイトがありましたので、よかったら参考にして下さい。 http://homepage2.nifty.com/sintakenoko/Cabri/CTrace11.html

共感・感謝の気持ちを伝えよう!

質問者からのお礼

補足ありがとうございます

  • 回答No.2

x^2/a^2 + y^2/b^2 = 1 と y = tan(α) x の連立方程式を解く。 原点対称に2つの解が得られるはずです。きれいな式になる可能性は薄いですが。 楕円の接線は x1*x/a^2 + y1*y/b^2 = 1となるので、 傾きは - x1/y1 * b^2/a^2 となるので、 角度は対称性を考えて 2*arctan(x1/y1 * b^2/a^2) になります。 具体的な計算はそちらでお願いします。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

申し訳ありません。お礼の方、遅れました 回答ありがとうございます その方法で最初やっていたのですが、中々きれいな式にならず四苦八苦していたのです。 私の言葉足らずでした。申し訳ありませんm(_ _)m 丁寧な説明に感謝いたします

関連するQ&A

  • 角度から楕円の座標を計算したい

    原点を中心として、長径20・短径10の楕円について ある角度の時のx座標y座標の値を得る式を考えているのですが、どうしても思いつきません。 x^2/a^2+y^2/b^2=1が楕円の方程式で間違いないと思います。 現在、 x^2/20^2+y^2/10^2=1 の式で表す楕円のxとyについて、角度θから計算したいのです。 元々数学が得意でないため高校時代の教科書を探して勉強し直してみたのですが、どうしても思いつきません。 θを与えると座標が出てくる式を教えてください。

  • 楕円の円周上の座標を求める計算式を教えて下さい。

    原点(0,0),長軸a,短軸bとする楕円上で、原点から角度シータの位置にある楕円の円周上の座標(x,y)を求める計算式を教えて下さい。 単純に、acosθ,bsinθで求めると、なんだか座標値がおかしくなるのですが。

  • 回転した楕円を任意の直線に投影した長さの求め方

    回転した楕円を任意の直線に投影した長さの求め方 長軸を2a、短軸を2bとした場合の楕円x^2/a^2+y^2/b^2=1(楕円上の点は(a*cosθ、b*sinθ))を、長軸とx軸との角度φとして回転させ、原点を通る任意の直線(例えばx軸との角度ψが10度の直線)に投影した長さ(例えば、x軸(ψ=0)なら楕円が収まる長方形の横の長さ)の求め方が分かりません。 今のところの考えでは、 (1).回転後の楕円を求める。 ⇒x^2+y^2=a^2*(cosφ)^2+b^2*(sinφ)^2 (楕円上の点は(a*cosθ*cosφ-b*sinθ*sinφ、a*sinθ*cosφ+b*cosθ*sinφ)) (2).投影する直線の式を求める。 ⇒? (3).(2)の直線と(2)の直線の垂線で楕円と1点で接する直線の交点の座標を求める。 (4).(3)の点と原点との距離を算出し、投影した長さを求める。 というように考えていますが、(2)のところで行き詰ってしまっています。 長くなりましたが、 ・そもそも、この考えかたは合っているのでしょうか。 ・あっている場合、(2)以降を教えていただけると助かります。 ・他に計算が楽になる求め方は無いでしょうか。 よろしくお願いします。

  • 楕円の絵画プログラムについて

    中心(Xg、Yg)がわかっていて楕円を通る2点(x1,y1),(x2,y2)がわかっているとします。長軸の長さはaとし、短軸はわかりません。 この条件で楕円を描くプログラムを作りたいのですがどうすればよいのでしょうか。 イメージ的には長方形の4角を通る楕円を描きたいです。

  • 2元2次連立方程式の解き方

    とある2元2次方程式を解くプログラムを作成したいと 思っています。 楕円の長径 (a) 楕円の短径 (b) 楕円の軌道上の座標1 (x1, y1) 楕円の軌道上の座標2 (x2, y2) 楕円の長径の軸の角度は 0° という情報が分かっている場合に (x1 - cx)^2 / a^2 + (y1 - cy)^2 / b^2 = 1 (x2 - cx)^2 / a^2 + (y2 - cy)^2 / b^2 = 1 という楕円の方程式を使い、 楕円の中心点(cx,cy)を求めたいのですが、 数学に疎く、中々解くことができません。 例えば 片方の "cx = ~" という式は解の公式を使用して 何とか形にはなるのですが、それをもう一方の連立式に代入 して、もう片方の "cy = ~" を求める式を作れません。 どういったものとなるのでしょうか。 どなたか、ご教授の程よろしくお願いいたします。

  • 描画プログラムで、2楕円に接する円を描く

    VBで円を描くプログラムを作っています。 2つの楕円に接し、片方の楕円円周上にある 1点を通過する円を描きたいです。 正確には、もう一方(通過点のない側)の円周上にある 2接円が通過する点を求めたいです。 楕円はxy座標に対して平行ではなく、さまざまに傾いています。 楕円A(接円の通過点がある) 楕円中心(Ax,Ay) 楕円長径Aa 楕円短径Ab 楕円長径ベクトルAaD(x,y) 楕円短径ベクトルAbD(x,y) 焦点As1(x,y)、As2(x,y) 通過点T1(x,y) 通過点を通る楕円Aの接線T1L 通過点を通る楕円AのベクトルT1LD(x,y) も出ています。 楕円B(接円の通過点がない) 楕円中心(Bx,By) 楕円長径Ba 楕円短径Bb 楕円長径ベクトルBaD(x,y) 楕円短径ベクトルBbD(x,y) 焦点Bs1(x,y)、Bs2(x,y) 楕円はいずれも、中心から長径方向のベクトルに進んだ点を始点に描画されています。 ちなみにこの2楕円+片方の楕円円周上通過点の2接円を考える前に 真円AB2つと、片方の円周上通過点Tの2接円も考えました。 円AおよびB 中心(x,y) 半径Ar、Br 円A上の通過点T(x,y) 通過点を通る円Aの接線T1L 通過点を通る円AのベクトルT1LD(x,y) 円A、Bはどちらも、中心からX軸方法に半径分の距離をとった座標 を始点に描画されています。 この場合は、 (1)真円A上にある通過点から円接線を引く。 (2)接線T1Lから、真円A中心方向に法線T1Nを引く。長さは円Bの半径 (3)2の法線の終点座標T1Ned(x,y)と円Bの中心をつなぐ線T1NBを取る (4)T1NedのX軸正方向水平線から、T1NとT1NBの角度を調べる (5)円B上に始点からT1NB-T1Nの角度をとった円周上点T2を取る。ここが2接円の通過点。 という感じでできました。(5)の計算が、手元に資料がないので曖昧なんですが。 真円2接の応用で楕円2接もトライしたのですがどうもできません。 よろしくお願いします!

  • 楕円の共通部分の面積

    短径1、長径3、中心(0.0)の楕円と、原点中心にこれを90°回転させた楕円の共通部分の面積を求めたいです。 短径1、長径3、中心(0.0)の楕円を(1):x^2+(y^2)/3=1 90°回転させた図形を(2):(x^2)/3+y^2=1 とした時、(1)と(2)の第一象限での交点が(√3)/2であることを利用して、 4{integrate (1-(x^2)/3)^(1/2) dx from 0 to (√3)/2 } + 4{integrate (3-3(x^2))^(1/2) dx from (3^(1/2))/2 to 1} で求められる、という考えでいいでしょうか。 (この計算結果は1/3(2√3π)となりました。)

  • 楕円の式について

    重心が原点でなく(a,b)で長軸とx軸、短軸とy軸が平行でない場合の楕円の式はどのようになりますか?

  • 楕円の変形

    先の QNo.752549 「回転操作と伸縮操作2」 で少し触れられていますが、この関係に類する件です。  長径a、短径b、傾きθ(度:長径の軸線)を持った楕円があります。  この楕円を、楕円中心を基点に、X方向でx倍、Y方向でy倍したときの長径、短径、傾きの値を導く  計算式はどのようになるのでしょうか?。

  • 楕円に接する直線

     中心座標(0,0)を中心とする長軸の長さa、短軸の長さbの楕円に、傾き角α°の直線が接する点の座標を求めたいのですが、どうすればよいのでしょうか?  当方、数学的知識に乏しいため、詳しい方ぜひともご教授願います。