2円の交点,円と直線の交点

先日公表された大学入学共通テストの問題例をやろうとしていて,表記の関数でつまずきました。

2円の交点,あるいは円と直線の交点が2つあるとき,grapes内部でどのように決定しているのでしょうか。

添付ファイルではcase関数を使って逃げましたが,~じゃない方の点とは,どうやるのが作法なのでしょう?

#餅は餅屋で,geogebraやcinderellaの方が作図は速かったです。でも慣れた道具の方が細かいことができるものですから...

[添付]: 8630 bytes

user.png Quasi time.png 2017/07/21(Fri) 23:15 No.2372
Re: 2円の交点,円と直線の交点
直線PQと中心C半径aの円との交点をS,Tとすると
S = intr(P,Q,C,a)
T = intr(Q,P,C,a) または intr(P,Q,C,-a)
で表されますが,GRAPESの仕様では,ベクトルPQとベクトルSTが平行になるように定まります。

「作法」とはほど遠いですが,工夫してみました。

[添付]: 8440 bytes

user_com.png ともだ time.png 2017/07/22(Sat) 00:03 No.2373
Re: 2円の交点,円と直線の交点
> ベクトルPQとベクトルSTが平行になるように定まります。

平行かつ同じ向きになるように定まります。
user_com.png ともだ time.png 2017/07/22(Sat) 00:13 No.2374
Re: 2円の交点,円と直線の交点
さっそくのご回答,ありがとうございます。
Grapesの交点の定め方がよく分かりました。

以前,講習会だったかで半径を負にするやり方はお聞きしてはいましたが,マニュアルにはないので,使うべきではないのかと思っていましたが,便利ですね。

それにしても巧みな解決法ですね。
QAとQBが同じ向きか,反対向きかを内積の符号で定めるなんて。
まだまだ自分の修行の足りなさを痛感させられました。

ありがとうございました。
user_com.png Quasi time.png 2017/07/22(Sat) 02:14 No.2375
Re: 2円の交点,円と直線の交点
たびたび済みません。後学のために。

2円の交点の定め方はどうなっているのでしょう。

円をはげしく動かすと,Q,R,SがPと一致してしまう場合があります。
オプションで偏角を-Pi~Piにして偏角のsignで解消できそうですから,Grapesの交点の定め方だけ,ご教示ください。
user_com.png Quasi time.png 2017/07/22(Sat) 02:47 No.2376
Re: 2円の交点,円と直線の交点
2円を中心A,半径a,中心B,半径b とします。
P = intr(A,a,B,b)
Q = intr(B,b,A,a) または intr(A,a,B,-b)
とするとき,
PはAからBを見た時の左側
QはAからBを見た時の右側
の点を表します。

サンプルファイルを作っちゃったので,添付しますが,無視してもらって結構です。


[添付]: 6894 bytes

user_com.png ともだ time.png 2017/07/23(Sun) 00:49 No.2377
Re: 2円の交点,円と直線の交点
おお、ずいぶんスッキリしちゃいましたね。
言われてみれば、対称点を求めりゃ交点のどっちかなんて考えなくてよいのですもんね。
#本当に修業が足りない...

2円の交点についてはそんなイメージを持っていたので、納得です。
ありがとうございました。
user_com.png Quasi time.png 2017/07/24(Mon) 09:38 No.2378
処理 記事No 暗証キー

- JoyfulNote -