软件工程

本类阅读TOP10

·PHP4 + MYSQL + APACHE 在 WIN 系统下的安装、配置
·Linux 入门常用命令(1)
·Linux 入门常用命令(2)
·使用 DCPROMO/FORCEREMOVAL 命令强制将 Active Directory 域控制器降级
·DirectShow学习(八): CBaseRender类及相应Pin类的源代码分析
·基于ICE方式SIP信令穿透Symmetric NAT技术研究
·Windows 2003网络负载均衡的实现
·一网打尽Win十四种系统故障解决方法
·数百种 Windows 软件的免费替代品列表
·收藏---行百里半九十

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
二维拓扑关系分析与实践(4)

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

1.4实现分明栅格RCC8程序

1.4.1算法设计

在写程序之前我们先对RCC5RCC8关系进行一下分析,RCC8实际上是在RCC5基础上对拓扑关系进行更明确的表示,即

DR(分离)――DC(不连接),EC(外部连接)

PP(真部分)――TPP(正切真部分), NTPP(非正切真部分)

PPI(反真部分)――TPPI(反正切真部分), NTPPI(反非正切真部分)

这样选择使用类的结构的优势就体现出来了,使用继承对RCC5进行扩展。

v101.h

#include"v100.h"

class GridRcc8:public ClearGrid/*继承 RCC5 使用 2 扫描 进行细分 */

{

       private:

              void DR();

              void PP();

              void PPI();/*当出现这三种情况时,分别使用不同函数进行细分。*/

       public:

              GridRcc8(){}

              void ContinueJudge();

              ~GridRcc8(){}

};

在原有程序的基础上对出现DRPPPPI的情况进行再次的扫描以确定更具体的拓扑关系。

难点问题解决

由于RCC8程序的扩展都与相切有关系(边界问题),所以高效判断相切成为难点。当然本程序也对相邻进行了规定,认为“4方向”为相邻。

DR()函数实现中由于基本关系已经确定,所以只需要判断是否存在第一个栅格的单元相邻的四方向上有第二个栅格的单元存在,如果存在为EC。否则为DC

PP()只要相交栅格是否为边界就可以,所以判断过程中只对相交栅格判断,减少计算量。

PPI() PP()方法类似。

实现效果

RCC5程序类似,只是输出RCC88种状态之一。

操作界面为字符界面。

现在二维空间分明栅格拓扑关系分析程序基本完成。

 




相关文章

相关软件