计算特定角度的凸多边形的宽度

时间:2014-05-26 18:14:29

标签: algorithm geometry polygon convex-polygon

在给定顶点和某个角度的情况下,我可以用什么方法计算凸多边形的宽度?其目的是找到以某个速度移动的多边形的横截面宽度,以便在模拟期间计算某种空气阻力。

我想最大的问题是我现在不仅仅对几何学有一个基本的了解,所以如果我看到它,我不确定我会认出解决方案。我能找到的最接近的算法是找到多边形的最小宽度,但我真的在寻找某个速度方向的宽度。我有点难过。

1 个答案:

答案 0 :(得分:2)

只需按所需角度旋转多边形的所有顶点,找到顶点的最大和最小Y坐标的差异(例如,沿X轴的零角度宽度为Ymax-Ymin)。

Rotation_matrix就在这里。顶点的旋转坐标为:

  x'=x*Cos(Fi)-y*Sin(Fi)
  y'=x*Sin(Fi)+y*Cos(Fi)

请注意,您只需找到y'