将一个多边形映射到另一个多边形

问题描述 投票:2回答:3

假设我有两个五边形,AB带有顶点

(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,...

math graphics geometry computer-vision linear-algebra
3个回答
4
投票

如果将三角形映射到三角形,则将使用barycentric coordinates


0
投票

[我认为您只是将多边形径向细分为三角形(从中心切比萨饼,延伸到顶点),然后找到原始多边形中任何点的(u, v)坐标。


0
投票

我会建议,但我无法证明,对于五边形(但可能不是六边形和更高的n个多边形),当您为每个顶点着色在五边形内部可以从该顶点看到的一组点时,那么它们的交点将始终是非空的,您可以从该交点中任意选择蜘蛛网的中心(或变形披萨,如果您愿意),然后使用三角形映射。

© www.soinside.com 2019 - 2024. All rights reserved.