




已阅读5页,还剩64页未读, 继续免费阅读
(水文学及水资源专业论文)堤坝计算机辅助设计系统的研究与开发.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连理: 大学硕士学位论文 摘要 常规的堤坝设计方法是在选定坝址后凭借设计人员的经验,遵循有关规范和运行要 求,并参照已建工程实例,进行坝体布置和体形设计,然后进行坝内渗流分析和坝坡 的稳定计算,以检查所选的方案是否满足设计规范的要求,如果满足,即得到一个可行 方案。为了得到一个比较经济合理的方案,一般需要经过多次修改比较。这种多方案比 较过程,要求设计人员进行繁重的计算与绘图工作,设计周期长易出错。利用计算机 代替人工完成繁琐复杂的各项设计工作势在必行。 本文研究和开发的堤坝计算机辅助设计系统是在w i n d o w s 平台上,用v c + + 6 0 可 视化编程语言和o p e n g l 进行开发的。该系统具有友好的操作界面、易于操作、方便快 捷等特点。它能实现以下几方面的操作: ( 1 ) 堤坝区域地形图的自动生成。用m f c 通过读取a u t o c a d 的数据交换文件 ( d x f ) ,可以自动生成堤坝的区域地形图。 ( 2 ) 堤坝交互式设计。通过给定堤坝的坝轴线、坝顶高程、坝顶宽度、上下 游坡度以及马道的高程和宽度等基本参数可以立即生成堤坝的轮廓以及 堤坝坡脚线。 ( 3 )剖面图自动生成。可以臼动生成用户需要的横、纵剖面图。 ( 4 ) 图形变换操作。可以对生成的图形进行平移、旋转、放缩等操作。 ( 5 ) 查询功能。可以查询上、下游指定高程与地形等高线的交点坐标。 本文开发了堤防计算机辅助设计系统,该系统是一个通用的堤坝设计系统,只要有 某个工程的基本资料就可以应用该软件进行堤坝的设计。它能把设计入员从繁重的计算 分析工作中解脱出来。使大量数值计算逻辑判断和绘图工作由计算机完成,从而极大 地提高了工作效率,缩短了设计周期,提高了设计质量,加快了工程进度,满足了工程 投标和工程设计的需要。 关键词:堤坝设计、计算机辅助设计、v o + + 、o p e n g l 、a u t o o a d 堤坝计算机辅叻殴计系统的f i | _ 究与开发 t h er e s e a r c ha n d d e v e l o p m e n t o ft h ed i k ed a m c o m p u t e r a i d e d d e s i g n a b s t r a c t t h er o u t i n ed e s i g nm e t h o do f t h ed i k ec l a mi s ,w h i c hi sb o i t o w e dt h ee x p e r i e n c eo f d e v i s e r ,f o l l o w e d t h er e l a t i v ec r i t e r i aa n d r e q u e s t s ,a n ds e tu p t i l ee n g i n e e r i n gi n s t a n c ea f t e r m a k i n g c h o i c e so f t h ed a n a ,t oc a l t yo nt h ed a mm x a n g e m e n ta n df i g u r ed e s i g n a t i o n t h e ni t s h o u l dc a i l yo nt h es e e p a g ea n a l y s i si n s i d et h ed a ma n dt h es t a b l ec a l c u l a t i o no f t h ed a m s l o p e i ta l s on e e d st oc h e c kw h e t h e rt os a t i s f yt i l en o r m r e q u e s to f d e s i g n ,t h e ng e t sa f e a s i b l es c h e m e f o r o b t a i n i n g am o r ee c o n o m i cr e a s o n a b l ep r n j e c t ,g e n e r a l l yi td e m a n d s m a n y m o d i f i c a t i o n s c o m p a r i s o n i tp r o c e s s e si nm a l a ys c h e m e s ,r e q u e s t s d e v i s e rt oc a r r y0 1 1w o r k l o a dc a l c u l a t i o n m a d p a i n t i n g w o r k ,t h ed e s i g np e r i o di sl o n ga n de a s i l ym a k e sm i s t a k e s i ti sn e c e s s a r yt om a k e u s eo f t h e c o m p u t e r t or e p l a c em a n u a lt oc o m p l e t ev a r i o u s l yc o m p l e xd e s i g n sw o r k b a s eo nw i n d o w sa n d u s i n g t h ev c 十+ 6 0a n do p e n o l t h i s p a p e r r e s e a r c h e sa n d d e v e l o p sd a mc o m p u t e r a i d e dd e s i g ns y s t e m 1 t h i ss y s t e mi r e st i l ef r i e n d l yo p e r a t i o ni n t e r f a c e , o p e r a t e se a s i l y ,c o n v e n i e n t l ya n d f a s te t e a s e 1 1 i tc a l lc a r r yo u tt h es e v e r a lf o l l o w i n g o p e r a t i o n s : ( 1 ) i t c a l lw o r ko u tt h eg e o g r a p h i cd i a g r a mo f t h ed i k ed a ma u t o m a t i c a l l y w i t ht h e m f c p a s s i n g ,i tr e a d sa u t o c a d o f d a t ae x c h a n g ed o c u m e n t ( d x f ) i tc a nc r e a t et h ed i s t r i c t g e o g r a p h i cd i a 掣a m o f d i k ed m a aa u t o m a t i c a l l y ( 2 ) h l t e r a c t i v ed e s i g no f t h e d i k ed a m w i t ht h eb a s i c p a r a m e t e r s s u c ha st h ea x e so f t h e d i k ed a m ,a l t i t u d ea n dw i d t ho f d i k e t o p ,t h es l o p eo f u p a n dd o w n o f r i v e r , a l t i t u d e a n dw i d t ho f t h er o a de t c i tc a l ld r a w u p t h eo u t l i n eo f t h ed i k ed a m sa n dt h e i n t e r s e c t i n gl i n eo f t h e d a n am a dt e r r a i ni m m e d i a t e l y ( 3 ) t h e c r o s ss e c t i o ni sa u t o m a t i c a l l yb o r n i tc a r lb e a ra u t o m a t i c a l l yw h a tc u s t o m e r n e e d h o r i z o n t a l ,l o n g i t u d i n a ls e c t i o nd i a g r a m ( 4 ) t h e s k e t c ht r a n s f o n n a t i o n o p e r a t i c , n i tc a nc a r r y 0 1 1t ot h eb o r ns k e t c hm o v e , r e v o l v e ,z o o i t li n & o u to p e r a t i o n se t c ( 5 ) q u e r y f u n c t i o n i tc a ns e a r c ht h ei n t e r s e c t i o np o i n tc o o r d i n a t e so f u p ,t h e d o w n s t r e a ms p e c i f i e sa l t i t u d ea n dt | e r r a i nc o n t o u r t h i s p a p e rd e s i g n s ad i k e c o m p u t e ra i d e ds y s t e m ,t i f f ss y s t e mi sau n i v e r s a ld i k ed a m d e s i g ns y s t e m i tc a r ld e s i g nt h e d i k ed a mw i t ht i f f ss y s t e mi f t h e r ei st h eb a s i cd a t ao l ac e r t a i n t i 人连理i 人学硕十学位论文 o f e n g i n e e r i n g i tc a l le x t r i c a t et h ed e v i s e r f r o mt h eh e a v yc a l c u l a t i o na n a l y s i sw o r k a g r e a t d e a lo f n u m b e r c a l c u i a t i o n ,l o g i c j u d g m e n t a n d p a i n t i n gw o r kc o m p l e t e db y t h ec o m p u t e r , r a i s i n gt h ew o r ke f f i c i e n c yg r e a t l y ,s h o r t e n i n gt h ed e s i g np e r i o d ,r a i s i n gt h ed e s i g nq u a l i t y , s p e e d i n g t h ep r o j e ccs c h e d u l e s a t i s f y i n gt h ee n g i n e e r i n gb i da 1 1 dt h ed e m a n dw h a t e n g i n e e r i n g d e s i g n n e e d s , k e yw o r d s :d i k ed a md e s i g n ;c o m p u t e ra i d e dd e s i g n ;v c + o p e n g l ;a u t o c a d i h 大连理工大学硕士学位论文 1 绪论 1 1 水利水电工程c a d 概述 1 1 1 水利水电工程c a d 的现状m 。4 3 我国水利水电工程c a d 技术开发与研制工作始于2 0 世纪7 0 年代中期。进入8 0 年 代,水利水电系统的各大设计研究院在美国原c a l m a 公司的d d m 软件支撑环境下,分 别在a p o l l o 工作站上开发了水利水电工:程的c a d 软件,如1 9 8 9 年中南勘测设计研究 院开发的拱坝c a d 和水能规划c a d 系统,华东勘测设计研究院开发的重力坝c a d 系 统,东北勘测设计研究院开发的地面厂房c a d 系统,上海勘测设计研究院开发的弧形 闸门c a d 系统等等。 随着个人微机的迅猛发展,客户朋艮务器构造的计算环境比小型机、中型机更灵活 方便,且个人微机基本上能实现原a p 0 1 1 0 工作站上开发软件的功能,因此批微机水 工c a d 软件陆续推出。如天津勘测设计研究院的电站厂房c a d 系统,中南勘测设计 研究院的隧洞c a d 系统等。 c a d 的开发和应用已使水电设计工作发生了根本性的变革。目前设计中8 0 9 0 的计算工作量已由计算机完成,设计图纸的绘制已基本告别了画板。虽然还不能由一个 c a d 应用系统贯穿工程设计全过程,但在工程的前期勘测、可行性研究、初步设计和 施工图设计等阶段,在重力坝、拱坝坝型及厂房布景的方案优选,在土坝断面优选,在 混凝土坝施工详图设计和水工钢筋混凝土隧洞设计以及其他若干单项设计工作方面,都 基本上实现了计算机辅助设计。在前期勘测规划阶段,c a d 软件主要用于收集工程的 地形、地质、气象、水文等资料,输入到系统的数据库中,建立数字化的地形地质模 型,提供后续设计所需信息;在可行研究阶段,c a d 软件主要用于数据库建立和应 用;在初步设计阶段,c a d 软件主要用于几何建模,设计方案的技术经济比较和形成 最优设计方案,进行数值分析和结构参数优化;在施工图设计阶段,c a d 软件主要用 于具体的结构计算分析,施工图绘制,综合协调各专业成果,完成结构分析计算、绘 图、材料统计、文件报表、概预算等系列工作。 堤坝计算机辅助设计系统的研究与开发 前期勘测规划、可行性研究阶段属于前期设计阶段,需要建立决策分析c a d 系 统。重点为从全局考虑,进行方案比较及优选和工程总体布置,而设计计算、图纸则可 粗略。决策分析c a d 系统的理论基础为线性及非线性规划理论、模糊数学、人工智能 方法、专家系统等。初步设计和施工图设计阶段属后期设计阶段,需建立数值分析计算 c a d 系统。重点为稳定计算、应力计算、配筋计算、绘制施工详图、工程量、材料明 细表、概预算等。数值分析计算c a d 系统的理论基础为结构分析计算理论、材料力 学、结构力学、水力学、有限单元法、数值分析法及计算机图形学等。 1 1 2 制约水利水电工程c a d 发展的原因 水利水电工程c a d 相比机械、电子、土建等c a d 的应用开发远远落后,究其原 因主要有以下几点: l _ 与水利水电工程的特点有关。水利水电工程投资巨大,一般都在上亿元,这 就要求在设计过程中必须谨慎;水利水电工程与水文、地质、地形、气候等 联系紧密,各个工程的具体条件差异很大;即使某一个工程,还存在诸多方 案的选择,如:坝型选择、泄洪方式选择、电站厂房选择等。这就决定了开 发一个通用的水利水电工程c a d 并非易事。 2 和其它行业不同,水利水电行业没有一个生生不息的市场需求环境。一个国 家大规模的水利水电工程建设完成之后,对水工c a d 软件的需求就会趋于 疲软。因此,在我国正值水利水电大发展而急需进行水工c a d 研究之际, 发达国家却没有同步的需求。而发达国家的研究导向也在很大程度上决定了 我国的学术界和产业界难以向这一领域4 顷斜。 3 当前,我国的水工c a d 软件基本上都是由大型设计院的工程技术人员按需 开发的。显然,对于这样的高难度课题,没有专业研究人员和专业软件开发 商的广泛参与是远远不够的,也使各相关领域大量的研究成果不能及时地应 用到水工c a d 研究当中。 1 13 水利水电工程c a d 的发展趋势 经过多年的开发研究,水利水电工程c a d 已初具规模,在水利水电工程中起到了 一定的作用。水利水电工程c a d 的发展趋势: 一2 大连理工大学硕士学位论文 1 标准化 开发水利水电工程c a d 除必须满足相应的设计规范外,应加强建立不同c a d 开 发平台的标准,c a d 工程图例、符号、标准图形库,建立统一的地形、地质c a d 及其 接口,建立统一的基本资料、工程特性数据库,减少重复性的低水平开发,加强合作, 提高水利水电工程c a d 的开发水平与各c a d 系统的综合利用率。 2 人机界面 作为一个良好的c a d 系统,良好的人机交互界面是必不可少的。 3 智能化 智能化是在传统c a d 中加入专家知识,利用水利专家的工程设计经验、知识和逻 辑思维能力进行推理、判断和决策,引导设计人员进行合理的创造性设计,智能化 c a d 是今后水利水电工程c a d 发展的一大亮点。 4 集成化 现在的c a d 系统只有计算功能和绘图功能,而个集成化的水利水电工程c a d 除具有以上功能外,还应有的大型数值分析、模拟、设计、决策能力,能生成设计计算 说明书和设计报告。 5 参数化设计 参数化设计是一种具有前景的c a d 设计方法,目前水利水电工程c a d 还没有统 一和标准的参数化设计图库。将来的参数化设计c a d 系统将会增加规则参数,把复杂 公式和方程组求解作为规则参数来使用,并且会引入人工智能,使用自然语言来描述结 构参数,用逻辑规则来判断推理结构图形的控制点坐标。 6 三维设计 目前的设计主要为二维图形( 平面图、立面图、断面图、剖视图等) 来表示,但水 利水电工程是由多个三维立体图形构成的,如果能有一个真实感很强的能动态显示的三 维立体图形来进行设计,这将是水利水电工程c a d 发展的必然趋势。 7 多媒体技术 多媒体技术可以帮助设计形成更加良好的人机界面,直接通过自然语言会话,驱动 系统运行,使用语言提示用户进行设计,并可报告系统出错信息。在水利水电工程 c a d 中使用多媒体技术不仅可以进行实时设计,而且可以参照已建工程进行参照设 计,并可结合同台技术和全新技术进行施工模拟,运行模拟,直接显示设计、分析、运 行结果,以便进行优化设计。 8 网络化 3 一 堤坝计算机辅助设计系统的研究与开发 网络化是水利水电工程c a d 的必由之路,离开网络,单机的设计将毫无意义。网 络c a d 将可以让工程师在不同的地方同时进行设计或分工合作,在不同地方完成同一 工程设计任务,这将大大加快设计的进度。 1 2 本文的研究内容 堤坝在水利水电工程中起到重要作用,它不仅可以防洪减灾,还可以改善环境,造 福人类。本文旨在开发一个通用的堤坝设计c a d 系统,并作了以下工作: 1 、堤坝坡脚线数学建模 根据水利数字化的需要,针对传统堤坝设计中用采图解法求解的缺陷,建立了求解 堤坝坡脚线的数学模型,以解析形式表达,通过v c + + 与o p e n g l 结合,实现了该算法 及图形可视化,解决了堤坝设计中的项关键技术,而且此项技术适合于解决各种工程 中的同类问题。 2 、堤坝设计c a d 系统的研究与开发 ( 1 ) 研究了数据接口系统 通过分析a u t o c a d 的数据交换文件( d a t a e x c h a n g ef i l e ,d x f ) 的结构特点,应用 v c 十十编写了v c + + 与a u t o c a d 的接口程序,实现了v c + + 与a u t o c a d 的通信。 ( 2 ) 系统界面开发系统 本系统在w i n d o w 开发平台上,应用v c + + 6 0 可视化编程语言,结合o p e n o l 开 发了堤坝设计c a d 系统,本系统具有操作简单、方便实用、作图数度块等特点。 ( 3 ) 数据文件存取系统 本文的数据文件存取分两种处理方法:一是把从a u t o c a d 的d x f 文件中读取的 数据存储在记事本上,需要使用数据时,再从记事本读取数据;二是直接存储在 d o c u m e n t 中需要时,从d o c u m e n t 中调用即可。以上两种方法都具有存取简单、灵活多 变的特点,可以依据需要选取其中一种,或者两科r 方法配合使用。 3 、系统的主要功能设计 , ( 1 ) 堤坝区域地形图的自动生成。用m f c 通过读取a u t o c a d 的数据交换文件 ( d ) ,可以自动生成堤坝的区域地形图。 ( 2 ) 堤坝交互式设计。通过给定堤坝的坝轴线、坝顶高程、坝顶宽度、上下游坡度 以及马道的高程和宽度等基本参数可以立即生成堤坝的轮廓以及堤坝与地形的交线( 即 坡脚线) 。 4 。 大连理工大学硕士学位论文 ( 3 ) 断面图自动生成。可以自动生成用户需要的横、纵断面图。 ( 4 ) 图形变换操作。可以对生成的图形进行平移、旋转、放缩等操作。 ( 5 ) 查询功能。可以查询上、下游指定高程与地形等高线的交点坐标。 一5 堤坝计算机辅助设计系统的研究与开发 2 堤坝设计c a d 系统开发环境与图形学基础 2 1 基于v v m d o w s 操作平台与程序设计原n _ t 【5 】【l 6 】 本系统在w i n d o w s 操作平台上开发,具有人机界面友好、用户界面统一的特点。其 图2 1w i n d o w s 应用程序流程 f i g u r e 2 1t h ep r o c e s s e so fw i n d o w s a p p l i e dp r o g r a m 户进行交互的事件驱动的程序设计模式。在程序提供给用户的界面中有许多可操作的可 视对象,用户从所有可能的操作中任意选择,被选择的操作会产生某些特定的事件,这 些事件发生后的结果是向程序中的某些对象发出消息,然后这些对象调用相应的消息处 一6 一 大连理工大学硕士学位论文 理函数来完成特定的操作。w i n d o w s 应用程序最大的特点就是没有固定的流程,而只是 针对某个事件的处理有特定的子流程,w i n d o w s 应用程序就是有许多这样的子流程构成 的。 综上所述,w i n d o w s 应用程序在本质上是面向对象的。程序提供给用户界面的科 室对象在程序的内部一般也是一个对象,用户对可视对象的操作通过事件驱动模式出发 相应对象的可用方法。程序的运行过程就是用户的外部操作不断产生事件,这些事件又 被相应的对象所处理的过程。一般程序流程如图2 ,l 所示。 2 2 面向对象编程技术1 7 _ f 2 4 j 面向对象是目前广泛用的一种程序设计方法,陔方法是将数据发对数据的操作放在 一起,作为一个相互依存、不可分离的整体一对象,对同类型的对象抽象出其共性形 成类。类中的大多数数据,只能用本类的方法进行处理。类通过一个简单的外部接口与 外界发生关系,对象与对象之间通过消息进行通信。这样模块间的关系更为简单,是软 件开发从过分专业化的方法、规则和技:丐中回到客观世界,回到人们通常的思维方法。 面向对象的编程方法具有以下几个:基本特征: 1 数据抽象 2 类继承 3 信息封装 4 多态性 面向对象程序的设计的优点是: ( 1 ) 开发时间短,效率高,可靠性:高,所开发的程序更强壮。由于面向对象编程 的可重用性可以在应用程序中大量采用成熟的类库,从而缩短了开发时间。 ( 2 ) 应用程序更易于维护、更新和升级。继承和封装是对应用程序的修改带来的 影响更加局部化。 2 3 编程工具v i s u a lc + 十和m f c 简介 2 3 1v is u aic + + 集成开发环境简介 一7 堤坝计算机辅助设计系统的研究与开发 v i s u a lc 抖是美国m i c r o s o f t 公司推出的4 g l 软件开发工具,它自诞生以来,一直 是w i n d o w s 环境中最主要的应用开发系统之一。v i s u a lc 抖不仅是c + + 的集成开发环 境,而且与w i n 3 2 紧密相连,所以,利用v i s u a lc + 十可以完成各种各样的应用程序的开 发,从底层软件直到上层直接面向用户的软件。而且v i s u a lc + + 强大的调试功能也为大 型复杂软件的开发提供了有效的排错手段。 进入2 0 世纪9 0 年代以来,随着多媒体技术和图形图像的不断发展,可视化技术得 到广泛的重视,越来越多的计算机专业人员和非专业人员都开始研究并应用可视化技 术。所谓可视化技术,一般是指在软件开发过程中用直观的具有一定含义的图标按钮、 图形化的对象取代原来手工的抽象的编辑、运行、浏览操作,软件开发过程表现为鼠标 点击按钮和拖放图形化的对象以及指定对象的属性、行为的过程。v i s u a lc + + 是一个很 好的可视化编程工具,使用v i s u a lc 十+ 环境来开发w i n d o w s 应用程序大大缩短了开发 时间,而且它的界面更友好便于程序员操作。在没有可视化开发工具之前,程序员要花 几个月的时间完成w i n d o w s 程序的界面开发,而现在只需较少的时间就可完成。 v i s u a lc + + 的集成开发环境d e v e l o p e r s t u d i o 提供了大量的实用工具以支持可视化编 程特性,它包括项目工作区、c l a s s w i z a r d 、a p p w 7 i z a r d 、w i z a r d b a r 、c o m p o n e n tg a l l e r y 等。 2 3 2 m f c 简介 微软基础类库( m f c ,m i c r o s o f tf o u n d a t i o nc l a s s ) 是微软为w i n d o w s 程序员提供 的一一个面向对象的w i n d o w s 编程接口,它大大简化了w i n d o w s 编程工作。使用m f c 类库的好处是:首先,m f c 提供了一个标准化的结构,因此节省了大量的时间;其 次,它提供了大量的代码,指导用户编程实现某些技术和功能。 对用户来说,用m f c 开发的应用程序具有标准的熟悉的w i n d o w s 界面,这样的应 用程序易学易用:另外,新的应用程序还能立即支持所有标准w i n d o w s 特性,而且是 用普通的、明确定义的形式。事实上,也就是在w i n d o w s 应用程序界面基础上定义了 一种新的标准m f c 标准。 m f c 的核心是以c + + 形式封装了大部分的w i n d o w sa p i 。类库表示窗口、对话 框、设备上下文、公共g d i 对象如画笔、调色板、和其他标准的w i n d o w s 部件。这些 类提供了一个面向w i n d o w s 的c 十十成员函数接口。 m f c 可分为两个主要部分:基础类:宏和全程函数。 - 8 一 大连理工大学硕士学位论文 m f c 中的类按功能可划分为以下一些类 ( 1 ) 基类 ( 2 ) 应用程序框架类 ( 3 ) 可视对象类 ( 4 ) 绘图类 ( 5 ) 简单数据类型类 ( 6 ) 通用类 ( 7 ) 文件和数据库类 ( 8 ) i n t e m e t 和网络工作类 ( 9 ) 0 l e 类 ( 1 0 ) 调试类和异常类 2 4o p e n g l 简介 2 5 】 o p e n g l 是一个三维绘图软件包。它具有优越的图形应用程序设计界面,高性能的 交互式三维图形建模能力和易于编程开:荧的特点。o p e n g l 已经成为一种三维图形开 发标准,是从事三维图形开发工作的必要工具。 o p e n g l 作为一个开发的三维图形软件包,它有利于操作系统和窗口系统。以它为 基础开发的应用程序可以一t - 分方便地在各种平台间移植。0 p e n g l 可以与v i s u a lc + + 紧 密接口,它具有7 大功能: 1 建模 o p e n g l 图形库除了提供基本的点、线、多边形的绘制函数外,还提供了复杂的三 维物体( 如球、锥、多面体、茶壶等) 以及复杂血线和曲面( 如b e z i e r 、n u r b s 等曲线 或曲面) 的绘制函数。 2 变换 o p e n g l 图形库的变换包括基本变换和投影变换。基本变换有平移、旋转、缩放、 镜像4 种变换:投影变换有平行投影( 又称正射投影) 和透视投影两种变换。其变换方 法与机器人运动学中的坐标变换方法完全一致,有利于减少算法的运行时间,提高三维 图形的显示速度。 3 颜色模式设嚣 o p e n g l 颜色模式有两种,即r g b a 。模式和颜色索引( c o l o r i n d e x ) 。 一9 堤坝计算机辅助设计系统的研究与开发 4 光照和材质设置 o p e n o l 有辐射光( e m i t t e d l i 曲t ) 、环境光( a m b i e n t l i g h t ) 、漫反射光 ( d i f f u s e l i g h t ) 和镜面光( s p e c u l a r l i g h t ) 。材质用光反射率来表示。场景( s c e n e ) 中物体虽终反映到人眼的颜色是光的红绿蓝分量与材质红绿蓝分量的反射率相乘后形成 的颜色。 5 纹理映射( t e x t u r em a p p i n g ) 利用o p e n g l 纹理映射功能可以十分逼真地表达物体表面细节。 6 位图显示和图像增强 图像功能除了基本的拷贝和像素的读写外,还提供融合( b l e n d i n g ) 、反走样 ( a n t i a l i a s i n g ) 和雾( f o g ) 的特殊图像效果处理。经过这些处理可以是被仿真的物体 更具真实感,增强图形显示的效果。 7 双缓存( d o u b l eb u f f e r i n g ) 动画 双缓存即前台缓存和后台缓存。简言之,后台缓存计算场景、生成画面;前台缓存 显示后台缓存已画好的画面。此外,利用o p e n g l _ ,还能实现深度暗示( d e p t h c u e ) 、 运动模糊( m o t i o nb l u r ) 等特殊效果,从而实现消隐算法。 本文是用v c + + 与o p e n g l 融合进行设计的。 2 5 堤坝设计c a d 的图形学基础口6 】【2 8 】 2 5 1 图形变换 2 5 1 1 二维图形的几何变换 在工程设计中,为了得到令设计者更加满意的结果,般要对所生成的图形进行平 移、旋转、放缩等操作。 1 、平移 平移是指将对象沿直线路径从一个坐标位置移到另一个坐标位嚣的重定位。即通过 给原始坐标位置( x ,y ) 加上平移距离k 和t y 来平移二维点,从而实现到新位置( x ,y7 ) 的移动( 见图2 - 2 ) 。 x = x + k , y7 = y + t y f 2 1 ) 1 0 大连理工大学硕士学位论文 一对平移距离( t 。,t y ) 称为平移向量( t r a n s l a t i o n v e c t o r ) 或移动向量( s h i f t v e c t o r ) 。 矗 c:a 7 b 7 _ - 一料b “、厂1 7 图2 - 2 平移变换 f i g u r e2 - 2 t r a n s l a t i o n t r a n s f o r m a t i o n x 平移是一种不产生变形而移动对象的刚体变换( r i g i d b o d yt r a n s f o r m a t i o n ) ,即对 象上的每点移动相同数量的坐标。它的矩阵表示如下: f 10 0 x y 1 】2 【x y 1 】 0 1 o f = x + y + o1 ( 2 2 ) i t y1 j 2 、旋转 二维旋转是将对象沿x y 平面内的圆弧路径重定位。为了实现旋转,需要指定旋转 角0 和对象旋转的旋转点( r o t a t i o n p o i n l :;或基准点,p i v o t p o i n t ) 位置( x ,y r ) 。旋转 角的正值,定义为绕基准点逆时针旋转,负值则以顺时针方向旋转对象,如图2 - 3 所 示。 若基准点在坐标原点( o ,0 ) ,r 是点到原点的距离,角中是点的原始角度位置与 x 轴的夹角,e 是旋转角。由图2 4 的几何关系可知: x7 = r c o s ( ( b + 0 ) = r c o s 中c o s o r s i n 中s i n0 y 7 2 r s i n ( 咖+ 0 ) = r c o s 巾s i n0 + r s i n 巾c o s0 ( 2 3 ) 在极坐标系中,点的原始坐标为: x 2 r c o s 中,y2r s i n 中 ( 2 4 ) 将表达式( 2 4 ) 代入( 2 3 ) 中,就得到了将点( x ,y ) 绕原点旋转e 角的方程: x = x c o se y s i n0 y 。x s i n0 + y c o s e ( 2 5 ) 堤坝计算机辅助设计系统的研究与开发 图2 - 3 绕( 畸,y r ) 旋转。角 f i g u r e 2 - 3r e v o l v e sr o u n d ( x ,y ) w i t h 0 图2 4 绕( o ,0 ) 旋转。角 h g u r e 2 - 4r e v o l v e sr o u n d ( 0 ,0 ) w i t h 0 ( 2 5 ) 刚以用以f 矩阵表不: f c o s os i n 0 0 x 。y 1 】= 卜y 1 ”s i n 0 c o s 00 j l 00 1 j = x c o s o y - s i n 0 x - s i n o + y c o s 1 ( 2 6 ) 如果基准点不在原点,则旋转变换的表达式为: x 7 = x r + ( x x r ) c o so 一( y y ,) s i ne y7 = y r + ( x x r ) s i no + ( y y ,) c o so ( 2 7 ) 类似于平移,旋转也是一种不变形地移动对象的刚体变形,对象上的所有点旋转相 同的角度。 3 、缩放 缩放( s c a l i n g ) 变换改变对象的尺寸。对于多边形缩放,则可以通过将每个顶点的 坐标值( x ,y ) 乘以缩放系数s x 和s y ,从而产生变换的坐标( x ,y ,) ; x 2x s x ,y 7 = y s y( 2 8 ) 缩放系数s ,在x 方向对对象缩放,缩放系数s 在y 方向进行缩放。( 2 8 ) e n n u i 阵表示如下: f 00 1 x y 1 】= x y 1 1 f 0 0 j = 气x 0 ,y 1 ( 2 9 ) l 001j ( 1 ) 当s x2 s ,2 1 时,为恒等比例变换,即图形不变,如图2 - 5 ( a ) 所示。 ( 2 ) 当sx 2 s , 1 时,图形沿两个坐标轴方向等比例放大。如图2 5 ( b ) 所示。 ( 3 ) 当s ,2 s , l( c ) s x = s y 1 图2 - 4 缩放变换 f i g u r e2 4s c a l i n g t r a n s f o r m a t i o n 以上缩放变换均是相对于原点进行的,如果相对于任意点( x r ,y r ) 对象进行缩 放,那么缩放后的坐标( x 7 ,y 7 ) 为: x = x s x + x ,( 1 - s x )y 2y s y + y r ( 1 - s y ) ( 2 1 0 ) 2 5 1 2 用户坐标到屏幕坐标变换 要把设计好的图纸绘制到计算机屏幕上,就必须解决用户坐标到屏幕坐标的变换问 题。图纸上采用的坐标统称为用户坐标系;而屏幕上采用的坐标系是设备坐标系。因此 用户坐标系中的图形需要经过变换才能绘制到屏幕上。变换的内容包括: ( 1 )将用户坐标系中任意范围区域转换到屏幕上某个范围区域,从而用户坐 标系此范围区域内的图形也转换到屏幕上该范围区域内。 ( 2 ) 用户坐标系此范围区域内图形上的坐标值转换到屏幕上该范围区域内后 不一定是整数,取整后才成为该范围区域内的屏幕坐标值。 ( 3 )用户坐标右手系到屏幕坐标左手系的坐标轴方向变换。 ( 4 )当屏幕坐标系水平方向与垂直方向刻度不等( 即像素间距不等) 时,为 保持原图形不走样,则还要进行比例变换。 2 5 1 3 二维图形的剪裁 1 3 ,睑垒公坠 _111llj l d珍 分一 + 。 叶lill半 。卜l。一 c ,一 b 堤坝计算机辅助殴计系统的研究与开发 要在视图区内生成窗口中的图形,就要对图形进行剪裁。剪裁可以在用户坐标系中 对窗1 3 进行,即将窗口外的图形先剪裁掉,然后再把剪裁好的图形变换成屏幕坐标中视 图区内的图形:也可以在屏幕坐标中对视图区进行剪裁。 剪裁的目的是判断图形元素是否在所考虑的区域内,如果只是部分地位于该区域 内,则需进一步求出在区域内的那一部分。因此,剪裁处理的基础有两点:第一,点在 区域内外的判断;第二,图形元素与区域边界交点的计算。 假设剪裁窗口是一矩形区域,若点p ( x ,y ) 满足下列不等式,则保留显示浚点, 否则剪裁掉不显示。 。w m - n x 兰。“ ( 2 1 1 ) y w , 。y y w m 。 其中,剪裁窗1 2 1 ( x w n ix 。,y m j n ,y m 。) 是世界坐标系的窗口边界或视口边界。 线段的剪裁过程包括几个部分:首先测试一个给定的线段,判断它是否完全落在剪 裁窗口之内。如果没有完全落在剪裁窗口之内,再判断是否完全落在剪裁窗口之外。最 后对既不能确定完全落在窗口内又不能确定完全落在窗口外的线段,要计算它与一个或 多个剪裁边界的交点。线段的位置和矩形剪裁区域之间的各种可能关系如图2 6 所示。 剪裁前 ( a ) 吼 窗口 剪裁后 ( b ) 图2 - 6 使用矩形窗口的线段剪裁 f i g u r e2 - 6 c l i p p i n gs e g m e n l w i t hr e c t a n g l ew i n d o w 曙 线段的剪裁可以通过对线段段点进行“内部一外部”测试来处理。对于两个端点都在剪 裁边界内的线段p i p 2 ,就将其存储起来以便显示。两个端点都在任何条剪裁边界外的 线段p 3 p 4 ,则判断其落在窗口外不予显示。而其他横穿一个或多个剪裁边界的线段需要 计算多个相交点。 1 4 大连理工大学硕士! 学位论文 对于端点是( x 】,y 1 ) 和( x 2 ,y 2 ) ,并且其中之一或两个端点都在剪裁矩形外的 线段,其参数表达式为: x = 西+ u ( x 2 一葺) r o m y = y l + u ( y 2 一m ) ,0 “1 在该线段与剪裁边界相交时,可以得出参数值。如果与矩形边界相交的u 值不在0 和1 之间,则该线段不会进入该边界处的窗口内。如果u 值在0 和1 之间,线段就穿过了剪 裁区域。该方法可以用于各个剪裁边界,从而确定是否显示该线段的所有部分。 2 5 2 图形交互技术 交互式用户接口是用户与应用系统的核心功能之间的界面,它负责接收用户向系统 输入的操作命令和参数,经检验无误后地处相应的应用程序模块执行之,执行的结果再 以一定的形式通知用户,良好的用户交互可以大大缩短人们与计算机之间的距离,使得 计算机易学、易理解、方便了用户,提f 蔷了工作效率,减少了错误率。 交互处理中最常见的操作是对图形、属性以及字符串等对象作添加、删除和修改, 另外还有查询和设置等。添加操作的动作包括设置定位点、选择输出( 显示) 内容、输 入有关参数等。删除操作对应的动作有:拾取删除对象、确认拾取的对象、删除对象 等。修改操作应执行的内容:拾取修改对象、输入修改参数、输出修改结果等。 2 5 3 参数化设计 参数化设计是一种灵活多变的c a d 方法,通过友好的用户界面,改变结构的参 数,完成新的设计。使用参数化设计的结构图形易于修改,便于拼装成新的工程结构图 形。参数化计算机辅助设计技术大大推进了c a d 的发展,提高了c a d 系统的开发效 率,提高了c a d 的出图效率。 参数化设计具有以下几个重要特征: 1 必须具有通用性,能适用于某种类型的不同结构: 2 用户可以根据自己的需要与习惯指定参数; 3 能根据用户指定的参数,自动计算结构的控制几何点坐标; 4 不仅能指定结构形状控制参数,而且能指定结构或部件的位置控制参数,可以 用坐标、角度、比例、长度和符号公式描述这些参数; 一1 5 堤坝计算机辅助设计系统的研究与开发 5 能对所涉及的结构或部件进行装配; 6 能使用结构形状参数、位置参数、关系描述性参数、材料参数、施工要求参数 等,并建立统一的关系数据库。 在水利水电工程中,由于地形和地质条件的多变性,通常结构的形式和形状都随地 形和地质条件而变,其外表的拓扑形状难用简单的几何参数来描述,各个设计阶段的设 计要求也不相同,从目前来看,要开发能涵盖各设计阶段的水利水电工程c a d 系统, 还是比较困难的。一般设计的c a d 系统只能针对某个具体的工程实例,如果条件发生 变化,该系统就不能使用了。但是仍然可以对水利水电工程进行分类、细化、建立参数 画图库,通过参数化设计减少系统开发的重复性。很多水利水电工程都直接建立在地基 上,开挖深度不等,如果建筑物与地基斜交,那么,建筑物斜
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辽阳安全员培训课件
- 统编人教版四年级语文下册《综合性学习:轻叩诗歌大门》教学课件
- 矿大测试技术试题题库及答案
- 辅警岗前培训课件
- 中国银行2025永州市笔试行测高频题及答案
- 交通银行2025张掖市秋招英文面试题库及高分回答
- 交通银行2025朝阳市信息科技岗笔试题及答案
- 2025年3D打印技术的工业革命影响
- 邮储银行2025结构化面试15问及话术河南地区
- 工商银行2025石家庄市秋招笔试专业知识题专练及答案
- 生物医学面试题及答案
- 银行贷款电子合同电子版(2025年版)
- 非物质文化遗产微短剧叙事策略与文化传承路径研究
- 胫腓骨骨折内固定术手术配合
- 2025版员工试用期延长协议书
- 有机磷农药中毒护理课件
- 农业补助申请书
- 《建筑施工安全文明工地标准》(DBJ13-81-2006)
- IP授权使用合作协议书范本
- 2025年汽车零部件企业公司组织架构图职能部门及工作职责
- 机械加工质量控制计划
评论
0/150
提交评论