理系学生日記

おまえはいつまで学生気分なのか

忍者TOOLS

重なり合う円の占める面積をもとめてくれ

ちと研究でこんな課題にぶちあたったわけです。

半径の等しい円がすげーいっぱいランダムに分布してて、与えられるのはそれぞれの円の中心座標とその半径(これは共通)。
円は重なり合うことがあるし(むしろ重ならないことのほうがすくない)、重なり合わない円もある(ベン図のもっと複雑なパターンを想像してもらえると、たぶんそんな感じ)。で、円で囲まれてる領域の面積を求める一般式ってないかなー、あるといいなー。

以下、思考過程。

ていうか数式として一般化するの無理じゃね?

2つの円だったら解が余裕である模様。この殺伐としたインターネットの世界の中、教えてgooにすっきりした回答が。これつかうと2つの円の場合は求められる。
http://oshiete1.goo.ne.jp/qa2953244.html


でもでも、最悪10も20もオーバーラップする領域がでるので、式として求めるのは無理なんじゃないかなーと思ったりしました。

プログラムで適当に近似したほうが楽じゃね?

円が分布する領域を1000x1000なり10000x10000のセルに分割して、少なくとも1つの円がオーバーラップするセルにフラグを立てる。全部の円に対してフラグを立て終わったら、フラグが立ってるセルの数を数える、という諦めムードのアプローチ。ちなみにコーディングすらしてない。


説明するときは、"積分範囲をフラグによって割り出し,その積分範囲上をf(x,y)=1について積分しました!"とか言うと、ちょっとそれっぽく、えらそうに聞こえる。"分割をより細かくすると、正確な値になるはずです!"とか付け加えると、説得力がちょっとあがる。"フラグが立った!クララが立った!"とか言うと、友達が少しすくなくなる。

期待していること

この問題を見て、誰かが面積を求める解を数式として一般化してくれること。100円でどうだ。