トピック
MIKI ifconfig

3点を通る円を描く

MK_SOLVECIRCLE KEY=NDSPB3V3 solve_circle x0,y0,x1,y1,x2,y2 out ox,oy,r 説明 3点を通る円の方程式を求める。 引数 (x0,y0), (x1,y1), (x2,y2): 3点の座標 戻り ox, oy: 中心座標 r: 半径 注意 3点が直線上にあるなど、3点を通る円が存在しない場合は、r=0 または r=inf を返す (inf=pow(2,1024)) 例 solve_circle 0,0,99,99,0,99 out x,y,r gcircle x,y,r
15そうだね
プレイ済み
返信[1]
親投稿
MIKI ifconfig
ぐぐったけど公式自体は見つからず、具体的な数値解を求める問題ばかりだった。数IIの問題らしい。 解き方は次の 3 元連立方程式を解くだけなんだけど、 (x0-ox)^2+(y0-oy)^2=r^2 (x1-ox)^2+(y1-oy)^2=r^2 (x2-ox)^2+(y2-oy)^2=r^2 手作業だと大変、でも Maxima というフリーソフト使えば一発で解いてくれる。いい時代になったものだ。 まあ綺麗な形にするために手作業は必要になったけどね。
2そうだね
プレイ済み
返信[2]
親投稿
MIKI ifconfig
式はこんな感じ。0除算を避ける為にごちゃごちゃしてますが、 ox=num_ox/denom ox=num_oy/denom r=sqr((x0-ox)^2+(y1-oy)^2) です。 0除算でエラー出さずに inf なり nan なり返してくれれば、余計な if 文はばっさり不要になるのに。 あ!! option defint 環境下でも動くよう、変数には全部 # つけとくべきだったな・・・失敗した。
1そうだね
プレイ済み
返信[3]
親投稿
say sayer.exe
内接円の解説もお願いします
1そうだね
プレイ済み
返信[4]
親投稿
MIKI ifconfig
解説って???? wikipedia に詳しいですよ!
1そうだね
プレイ済み