boost::polygon を使用して、穴のあるポリゴンを拡大/縮小したい。少し明確にするために、私は単一のデータ構造を持っています
boost::polygon::polygon_with_holes_data<int> inPoly
ここで、inPoly には、長方形の輪郭と、この長方形内の穴を形成する三角形を記述するデータが含まれています (下の図では、左側の黒い図面です)。
今、私はしたいです
a)長方形が大きくなり、穴が小さくなるように全体を拡張します(下の画像の赤い多角形になります)または
b) 長方形が小さくなり、穴が大きくなるように縮小します (下の緑色の画像になります)。
角は必ずしもまっすぐである必要はありません。また、丸みを帯びていたり、何らかの形で「粗い」ものにすることもできます。
私の質問:これは、boost::polygon を使用してどのように行うことができますか?
ありがとう!