移动直到它击中一组点

时间:2015-07-06 19:03:06

标签: c# geometry

我有一个假想的线段(我有段的开头和结尾)和一个List的{​​{1}} s。我希望将这条线移近点集合,直到它击中其中一个点。这张图片应该让事情更清晰:

enter image description here

在此图像中,我想将绿线移动到红点,直到它击中它们并获得蓝线。

所以我有PointPoint startGreen, endGreen;。我怎样才能获得List<Point> redPoints

1 个答案:

答案 0 :(得分:2)

请按照以下步骤操作:

  1. 计算每个点与绿线之间的距离
  2. 找到最小距离
  3. 将绿线移动到距离最小的点
  4. - 或 -

    1. 找到一个coordiante变换,它将绿线旋转到(例如)y轴。
    2. 转换所有积分
    3. 找到具有最大x分量的点
    4. 将绿线移至此位置。
    5. 执行逆trsnafomation