假设我有两个五边形,A
和B
带有顶点
(x 1,y 1),(x 2,y 2),...(x 5,y 5] >)表示A
和
对于B
,(x'1
,y'1),...(x'5,y'5)。我知道顶点的对应关系:
(x 1
,y 1)<==>(x'1,y'1)类似地,所有顶点。
我需要一个将A
内的所有点转换为B
的过程。
我在Transform quadrilateral into a rectangle?中发现了类似的四边形问题。
就我而言,它们不是四边形,它们是五边形。实际上,我想要一个适用于任意数量顶点(五边形,六边形等)的解决方案。
假设我有两个五边形,A和B的顶点分别为(x1,y1),(x2,y2),...(x5,y5),A和(x'1,y'1),...( B的x'5,y'5)。我知道顶点的对应关系:(x1,y1)<==>(x'1,...
如果将三角形映射到三角形,则将使用barycentric coordinates。
[我认为您只是将多边形径向细分为三角形(从中心切比萨饼,延伸到顶点),然后找到原始多边形中任何点的(u, v)
坐标。
我会建议,但我无法证明,对于五边形(但可能不是六边形和更高的n个多边形),当您为每个顶点着色在五边形内部可以从该顶点看到的一组点时,那么它们的交点将始终是非空的,您可以从该交点中任意选择蜘蛛网的中心(或变形披萨,如果您愿意),然后使用三角形映射。