二つの図形の重なり具合

Jythonというよりは、Javaになるんだろうけど。。。

今、数値解析のためにメッシャを作成中。
んで、図形演算など高等なことをほとんどやったことないにも関わらず、メッシャの実験版を作ってます。

メッシャなんてしょせん数値計算の前処理さ〜、なんて思ってて、半日もあればできると思ってたんだけど、意外とめんどくさい。特にめんどくさかったのが、メッシュと図形との重なり具合を調べる方法。
そのものずばり、メッシュのなかにそのオブジェクトが何%含まれてるんですか〜、みたいな情報が一発でとりたい。

てことで、絶対誰かが作ってるはずだけど、自作。

方針:

  1. 図形のオブジェクトをGeneralPathで作成(a)
  2. メッシュのオブジェクトをRectangle2Dで作成(b)
  3. (b)が(a)に完全に含まれていれば(a.contains(b)で調べる)、成分100%
  4. (b)と(a)がかすっていなければ(a.intersects(b)で調べる)、成分0%
  5. 上記に当てはまらない場合(境界上の場合)、モンテカルロをやって、成分度を調べる

ま、結局これをインプリしたんだけど、どう考えても、もっとましな方法があるだろ〜〜