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

其他相关文章

如果对本文有其他疑问,可以在本文下方留言。 如果有其他GIS、3S相关疑问也可以到 麻辣GIS问答 版块发表提问。
本站QQ群:291616564; 微信公众号:malagis,扫描 二维码 直接关注。

打赏¥1

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

发表评论