已知A B C D四个点的坐标,储存在数组 M: array [0..3] of TPoint;
在另一个坐标系下,相同形状的ABCD四点坐标储存在 N: array [0..3] of TPoint;
现在需要对 数组N 下的坐标排序,使其对应四个点在 M 中顺序,(根据相对位置)
即 A-A',B-B',C-C',D-D'。

解决方案 »

  1.   

    本帖最后由 bdmh 于 2010-11-24 15:49:11 编辑
      

  2.   

    使用标准的排序算法即可
    关键是比较函数需要改为:对 (M[i].x-N[i].x)^2+(M[i].y-N[i].y)^2 进行比较
      

  3.   

    ABCD是一个不规则的四边形。这个排序只能针对他们的相对距离作为条件来判断,自动计算匹配
      

  4.   

    需要先找到一个点作为基准,比如把x最小(如果x相同,取y小的)的点作为基准
      

  5.   

    排序算法?这个是现成的。。quicksort
    还是2组 4个点 的对应规则?