algorithm - How to find best fit of convex polygon into other convex polygon -
i'm looking algorithm calculate translation, rotation , scaling required position convex polygon (p1) inside convex polygon (p2). need return "best fit", meaning p1 contained within p2 , has maximum area possible.
consider following diagram: http://i.imgur.com/ckaiiv7.png
the black polygon on right (p1) needs placed optimally inside blue polygon on left (p2).
i have found lots of written papers online polygon containment algorithms algorithms determine whether or not polygons can fit inside polygon given ability translate , rotate them.
the algorithm i'm looking should produce result because includes ability scale polygon p1. understand type of algorithm produce multiple optimal answers , that's okay.
any help?
ok, if nobody has better idea, give not-so-good algorithm.
let's have p1 p vertices , p2 q vertices, , want fit p1 inside p2.
you found articles describing how determine whether p1 can fit inside p2. example this article gives algorithm in o(pq^2) time. i'm not sure if can still faster if know both p1 , p2 convex.
so, start large number a such a(p1) cannot fit inside (p2), , binary search on value of a.
this not clever, @ least gives answer. if else posts better answer, please ignore mine...
Comments
Post a Comment