VC++开发GIS系统(278)判断点点之间的拓扑关系

本文介绍GIS系统中,点与点之间拓扑关系的判断方法。

关于点点之间的拓扑

点与点之间的拓扑关系可以简单分为2类:

  1. 重合
  2. 相离

点点之间的拓扑算法思路

只需要简单的判断两个点之间坐标的距离,当小于一定的距离时可以认为是重合,反之相离。

算法实现

在 _malaBase.h 中声明如下的函数:

bool isPointEqPoint(malaPoint point1, malaPoint point2);//判断两点之前的拓扑关系

@ point1 点1
@ point2 点2

并在 _malaBase.cpp中实现上述函数,代码如下:

/*
* 判断两点之间的拓扑关系
*/
bool malaLogic::isPointEqPoint(malaPoint point1, malaPoint point2)
{
  double dis = distancePointToPoint(point1, point2);
  if (dis <= 4)
    return true;
  else
    return false;
}

详细代码可以参考:GitHub

VC++开发GIS系统(277)新建拓扑分析模块malaAnalysis VC++开发GIS系统(279)判断点与线之间的拓扑关系

作者:,GIS爱好者。
分享本文,请您带上本文链接
分享到:

发表评论