摘要: 本文分析了当前岩土工程勘察领域软件开发存在的问题,提出了采用VC++面向对象技术构建岩土工程勘察系统的总体思路,并最终实现了一个实用的岩土工程勘察软件系统。
关键词: 岩土工程勘察 软件 VC++ 面向对象
1 前言
当前岩土工程勘察领域的软件 开发根据采用的开发语言种类大致可以分为三类。 ① 采用VB 开发; ② 采用数据库管理软件 开发; ③ 采用VC 开发。开发出来的软件 各有特点,但是在制图方面却多采用AutoCAD 图形功能,不论是利用脚本文件SCR 生成图形,还是在AutoCAD 基础上二次开发,或者是利用Automation 技术,都是将AutoCAD 制图功能融进应用程序。由于岩土工程数据管理和制图功能的实现之间存在开发上的界面,因此给系统运行增加了额外负担,增加了软件 的应用难度。
另一方面,在软件 正版化的今天,国产CAD 软件 的需求在不断增加,很多岩土工程勘察软件 在正版化进程中存在一定危机。
为了解决以上问题,本文探讨了采用VC++ 开发语言,采用面向对象的技术,分别实现图形类库、岩土工程数据类库,将岩土数据管理和图形操作紧密结合,更为重要的是开发出的软件 具有自主知识版权。
2 总体设计
分析岩土工程勘察软件 的社会需求,软件 功能可以分为两个部分:一是岩土工程勘察数据的管理,包括数据输入、编辑、导出、数据分析计算等;二是绘图功能,包括绘制平面图、剖面图、柱状图等。
根据以上分析,采用面向对象的技术,分别建立岩土工程数据类(Geo 类)和绘图类(CMap 类)。
Geo 类功能:工程概况数据、场地地层数据、原位测试数据(静力动探数据、动力触探数据、波速试验数据、标准贯入数据等)、勘探点数据、土工试验数据、取土数据等。分别建立类,各类间层次关系如下:
CProject 岩土工程类
CDksj 勘探点类
CTysj 取土类
CDtsj N63.5 数据类
CBgsj 标准贯入数据类
……
CDcsj 场地地层类
图 1 工厂概况数据输入
图 2 勘探点数据输入
图 3 土工试验数据输入
CFcDtsj 分层统计数据类
CFcBgsj 分层统计数据类
CFcN10sj 分层统计数据类
CFcN120sj 分层统计数据类
CTongji 数理统计类
CMap 类功能:绘制各种图形元素,包括点、直线、多段线、椭圆、园、圆弧、矩形、多边形等。实现图元的编辑、修改、信息查询等功能。
CGraph 图形类
CDraw 图形元素的基类
CPint 点类
CLine 直线类
CCircle 园类
CArc 圆弧类
CRectang 矩形类
……
图1 工厂概况数据输入
图2 勘探点数据输入
图3 土工试验数据输入