获取无论方向如何都足够大的多边形的最小边界框

发布于 2024-12-09 19:32:41 字数 278 浏览 1 评论 0原文

我目前通过获取点的最小/最大 x 和最小/最大 y 来获取多边形的边界框,但是在旋转多边形时,边界框太小,无法适应旋转的多边形。请参阅插图进行说明:

此:

Polygon unrotated

变成此:

多边形旋转

如何获得足够大以包含任何旋转状态的边界框?

I am currently getting the bounding box for my polygon by getting the min/max x and min/max y of the points, but when rotating the polygon the bounding box is too small to fit the rotated polygon. See the illustration for clarification:

This:

Polygon unrotated

Turns into this:

Polygon rotated

How would I get the bounding box that is big enough to contain any rotated state?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

巾帼英雄 2024-12-16 19:32:41

如果我正确理解这个问题,这真的是微不足道的。

离中心最远的点始终是顶点。因此,找到距中心距离最大的顶点,并在该顶点向上、向下、向左和向右直面时,使盒子足够大以适合多边形:

  1. 找到距中心最远的顶点,并令 d表示其距中心的距离。
  2. 多边形将始终适合 2d × 2d 盒子。

If I understand the problem correctly, this is really trivial.

The point furthest away from the center will always be a vertex. So find the vertex with the maximum distance from the center, and make the box large enough to fit the polygon when that vertex is facing straight up, down, left and right:

  1. Find the vertex furthest away from the center, and let d denote its distance from the center.
  2. The polygon will always fit in the box 2d × 2d.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文