测绘工程毕业_第1页
测绘工程毕业_第2页
测绘工程毕业_第3页
测绘工程毕业_第4页
测绘工程毕业_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大学本科学生毕业设计(论文)测量平差程序设计颗摘绒要甲测量平差是最测绘类专业离的一门重要弄的专业基础氧课程,是用旱于观测数据露处理的一门疾应用数学陵。但是因乱为其计算量若比较大,这毙变使大家在扫学习和使用奸的时候感觉斤十分头疼。释虽然有很多踪简化了的平别差算法,比幕如高斯约化吗法,但是概这些算法一跑方面会影响窗计算精度,液另一方面也亏不能有效的详减少计算量梨。酿平差计算是捎利用最小二武乘原理消除陪观测值与起翠算数据之间公的矛盾,求每出各待定元该素的平差值胶并评定精度讲。而袍在经典测量悠平差中,主凶要研究四种它平差模型方暑程程(条件平差哄、间接平差嗽、附有未知弊参数的条件舱平差和附有蛾限制条件的夫间接平差)衫的列立和求逼解,其牵涉伶到大量的矩料阵运算,传怖统的人工计够算工作量很拢大优。随着计算恼机的出现,鄙矩阵运算就挠变得轻松厘,而且计算泼机的运行云速度快毯,精度高,美特别是对于主具有大量矩揉阵运算,计袭算机轻松解焰决。前提是芳要编好相应蝶的程序代码收。叫本文运用半visua疏lbas盼ic根语言匙编制了一个贩平差软件,削主要对水准塑网逆和轮附合巡导线进行了得平差的编制定和妖软件劳程序界面的魔设计凤,刘实现的功能塌主要有对水灭准网数据和霉附巡合导线数据恨的平差计算沸,当然为了奥平差后能使吸用数据,本芹软件还设计虹了数据输出究的功能,电使界面更友树好款,材方便用户使辉用。秧关键词:枣水准网现间接射平差,琴visua寻lbas问ic殃弦,浙附合利导线源条件平差煌,蜂visua表lbas庭ic狐界面设研计迁(GUI饱)绑A勉BSTRA依CT剃Them赏easur联ement鲁adju蚂stmen划tis掩apro饲fessi虚onal垮basic跃cour喜seof洽废G撞eomat拦ic础seng伏ineer胀,熄穗Itis孙used瑞to陆proce北ssth抽eobs士ervat腿iond通atao硬fApp焰lied植Mathe着matic留s,wh伟ichi未scha泳racte啊r昌ized禽byth图elar立geam跌ount伏ofca秧lcula忙tion,植妥thep须roces萝sof袋learn艘inga巷ndth怕eusi铃ngbe控come鹊very污compl姓ex.A游lthou箭ghma乏nyad竿justm俘enta党lgori拍thmm蝶ethod拢sare袍simp荡lifie卫dsuc纳has巩Gauss愤redu叔ction致meth锯od,b累uton拜the很oneh伟andt僻hese漏algor肌ithms沈affe线ctth汁eacc救uracy蔬ofc禽alcul度at限ion,摘onth虽eoth家erha符ndth票eyca捷n碌note汁ffect萍ively漫redu村ceth挑eamo禁unto巾fcal店culat娃ion.出泉Adjus指tment孙calc文ulati却onis联the郊princ称iple雪ofle罗asts备quare而sto守elimi衬nate凯thec些ontra哲dicti央onbe贪tween垫the授obser评vedv舍alues匹and挠thei笑nitia布ldat盐a,ca障lcula贝ting宁thea摊djust锡edva言lues吨ofal币lpen售ding箩eleme护ntsa夜ndas昨sessi抚ngac考curac义y.Cl谁assic征alsu肢rveyi骂ngad钞justm屡entm镇ainly帽cont麦ains伪four忘adjus梁tment钟mode榨lequ磨ation挪s(co杂nditi鄙onsa鲁djust番ment,的indi以rect贸adjus捡tment源,acc魂ompan阳iedb活ythe鼠unkn础ownp缺arame毅ters币condi雷tion播adjus该tment示and围accom拾panie馅dby蒜restr哗ictio歌nsin饲indi肆rect虫adjus痰tment遭)ofc要olumn永and瞧solvi叼ng,庆伪itin锦volve笔slar跌genu荐mber脖ofma裹trix热opera堡tions灶,the扬calc怠ulati页onwo痰rkloa金dof湾tradi垮tiona柔lman伏ualm蝴easur工ement霞data但proc能essin纷gmet五hodr拿equir森esth搅epre齿parat杂iono符fas舟pecif立ictr精eatme听ntpr植ogram蓬matr臭ixop炉erati炒ons,痒soth谢epro粒cedur殊esar眯ecom跟plica裁teda难nddi菜fficu税lt.T弃heem匙ergen别ceof应the包compu厌term废akes悄matri厉xope西ratio茅nsbe驳come宴easy,五and偿thec你omput么eris袖runn尺ingf前asta吼ndat寒high楚prec抚ision弃,to叨thel狗arge龙numbe懂rof外matri蛋xope纠ratio央ns,u么nder收thep春remis驾eof皮thec蚊ompil劲edco纲de,t出heco砖mpute余rcan秧easi弓lyso膀lvem有anyp谁roble陪ms.默丸Inth崖ispa屋per,调anad集justm严ents踏oftwa辅reis惯used邀byv碰isual絮basi少clan桶guage铸oft诵hele所velin司gnet剪work粉andc栗onnec踢ting筹trave济rsea酿djust陵ment趁ofth蛮epre雪parat四iona替ndpr知ogram失inte愚rface猎desi密gnto阵achi视evet久hema某infu治nctio涛nof肢thel少eveli仰ngne验twork赏data旗and湿wire服data鱼adjus诊tment负calc穷ulati枝on.剪耐Thes深oftwa四real童sode绣sign刮thef些uncti夹onof及the车data送outpu蛮t,it留is病frie熔ndly插油and蔑conv滴enien蜘tfor票user非sto忘opera小te.督Key霸杯words厦:俭步param割eter切adjus鞋tment烘ofl毛eveli滤ngne啄twork塔劝,艰Visua吸lbas爹ic婚,扛Visu合alba小sici掘nterf际aced浇esign锄(级GUI威)目录吹中文摘要搬恒Ⅰ芝ABSTR骡ACT名藏Ⅱ1引言1蓄业1.1耻现状分析竭赴1阔连禾1.2摔目的及意义炼践1帝1.字3研究内容效顶2僻2Vis倦ualB凝asic续编程语言概滚述脏遭3佛脏2.1V夸isual职Basi糊c简介渐忍3硬黎者2.1.援1抱瘦Visua贴lBas嘴ic的发展站胖3亡2.1.嘱2伸则VB稳的功能特点待岂3怖2史.2倡Visu熔alBa已sic简介堵咐4烧满2容.2朵.永1温颂操作界面简界介剑德4谅2柴.2悼.酬2悬游几个常用控摆件介绍紧恭7南2抬.2瞒.棕3乏筐VB编程语梅言书写和变昨量声明特皮7当2隔.2姑.音4绘柔矩阵在VB躲中的表述坡称7庄2头.宾2埋.冻5峰钩VB中矩阵笋运算缘钟8稍2卸.2帽.额6横卧程序控制语返句筋涂11顶2判.2形.裤7乔仓控件数组获扇12武3平差计良算基本理论仁萌13顺储3讯.1圆条件平差刃况13效娱惹3掩.1.肺1连条件平差视原理输考13统3妄.1.借2互蛋条件平差程速序设计流程漫图霞转15拍3.2这搂间接平差梢持16喇3.2货.楚1剩间接平差倦原理锤题16尽3.2孤.狗2倘域间接平差程盼序设计流程西图杜家18茧3.2惯柜附歉合导线平差匪计算杀征1制9垦3.窜3盒.圾1谈币附滋合导线宵平差原理冶济29锄3.2谋.探2裤君附蔽合导线鉴平差程序设琴计流程图易砍21把4平差软性件界面设计占对23贫铲4峰.1规平差软件整厉体展示物敢23骆倾靠4笨.莫1.迎1爷登录界面过倒23组4功.1.鼻2节平差软件主寒界面梁千23撕4晋.1.串3鸽水准网间接雾平差界面砌复24锅4桌.1.陪4叶附春合导线平差零界面柳杯25芬4.2平差屡软件界面设伪计朽刑25熔职诊4.2码.丽1物跑Visua农lbas世ic(GU键I档)林简介柴殊25牛4.2夺.穗2鹿界面设计摸壶26罪4.疗3崭平差软件界傲面设计渴米26沙权满4.愤3割.田1殿圈水准网间接脆平差界面设好计艘骡26忽4.轨3叛.抖2毅附曲合导线平差胁界面设计交窗28锈5区迈平差软件程受序设计题马3竟0芹扬5才.1阿水准网间接躬平差辜婶3仍0船继务5缎.1.址1毒数据输入美着3党0汗5殊.1.碎2气软件的使烘用踢团3革1跟5捏.1.旷3呀慧程序代码弄钥3至2激5剑.2幼附旧合导线平差喇迎34脊突赚5失.2桶.苍1诱数据输入价为3愉4江5触.2大.伐2丙软件的使警用瘦杆3事5醋5科.2虏.忘3酷程序代码饺仰3毒6夫6算例演勾算漏结44怎钞6滚.1鸡水准网间接轻平差折绘44尸啊载6.2撒附赤合导线条件犯平差煎疼45销7结论耻纷48灯参考文献辉圣491引言去1.1现裹状分析材Visua载lBas肉ic是一种群由微软公司识开发的包含钻协助开发环搭境的事件驱避动编程语言烤。从任何标吸准来说,V胸B都是世界溉上使用人数伸最多的语言脾——密不仅是盛赞侧VB的开发羊者还是抱怨构VB的开发验者的数量。斩它源自于B捕ASIC编趣程语言。V丧B拥有图形忧用户界面(财GUI)和怨快速应用程屑序开发(R众AD)系统培,可以轻易殃的使用DA义O、RDO落、ADO连透接数据库,看或者轻松的戴创建Act逆iveX控渐件。程序员痒可以轻松的迅使用VB提嗓供的组件快夺速建立一个势应用程序。奥饲水资准网是建立延高程控制的墨一种常规方盾法。为了提桐高水准测量书的效率,使征得水准测量材的内外业一字体化,提高艺数据处理速夸度、精度和陶可靠性,外冰业观测上需把采用更加科左学、快速的喷作业模式,植内业数据处果理上需采用项简便、可靠沾的数据处理雕软件。严随着测绘仪握器和计算机诞软件业的发穗展群,糖目前市场上舍已出现多种幼控制网平差响计算软件枕,松不过有些平鼓差软件界面饲复杂,难懂皮,需要一段甜时间的学习揭才能使用;死还有就是这转些软件,要赤么定权不合末理,要么就炕价格昂贵。雀比如常用的储平差易软件酬就是回在Wind葛ows系统苏下用VC件开发的控制搅测量数据处和理软件昼,就存在着塘权分配不合她理,以致改厨正数过大,谎平差结果偏愚离真实值的猜问题。虽然凉发现了问题裹,然而由于疗VC语言的挺局限和作为席收费软件,腿其源代码不谣公开等缘故于,致使此类脾问题久久不题能得到解决药。疫1.2目垄的及意义磁Visua以lBas桃ic速编程语言是秘一种可视化要编程语言,炭通过者近遭几年的发展工,它已成为简一种专业化究的开发语言玩和环境。戏其依托于现决代赤pc微机的高性能站,以计算机餐性能换取编味程的简便。镰它把科学计葬算、结果的涌可视化和编承程集中在一显个介可视化的环垫境中,不仅仰功能强,而睬且听便于输入数葱据润,易于掌握催和使用坛。湖测量平差是窑测绘类专业部的一门重要饼的专业基础季课程,是用尿于处理观测吨数据晕的一门应用新数学。泊平差计算是滋利用最小二句乘原理消除映观测值与起柜算数据之间馅的矛盾,求留出各待定元序素的平差值帅并评定精度挽。而茎在经典测量狱平差中,主谈要研究四种誓平差模型方蔽程(条件平软差、间接平湿差、附有未要知参数的条缎件平差和附蒜有限制条件桌的间接平差割)的列立和签求解,其牵艰涉到大量的鞠矩阵运算,验传统的人工费计算工作量苗很大,已往葬的测量数据揭处理方法需较要编制特定慈的处理矩阵拣运算的程序似,冰而且程序复惯杂迹,藏难度大。随吸着计算机的唇出现,矩阵灿运算就变得停轻松锈,而且计算笛机的运行速辩度快,精度勒高,特别是独对于具有大陈量矩阵运算器,计算机轻究松解决。毕前提是要编韵好相应的程光序代码。悄本文将分析宁经典测量平素差中的条件林平差模型和基间接平差模前型的特点,轨重点运用肌Visua肃lBas洋ic棒编程语言攻编写水准网那间接平差和看单一腐附合缩导线的平差刃程序软件继。用序Visua掉lBas最ic盲语言当编写出经典蠢平差模型程僚序,运用到抵教学过程中烤使各种模型糟的公式推导纪与实际例题乒相结合,对尼于提高教学渔质量及加强椒学生对于《锅误差理论与愤测量平差基优础》课程的龟理解具有重渴要的意义;厘对于我们即任将走上工作哭岗位的同学秃来说,它将雀为我们处理组各种实际工勿程的计算提茎供了极大的狭便利,也可雨以为今后更街多的工程应戚用编程打下便基础菌,提高工作习效率统和质量锁。段同时也使我皂们在编程方愤面有更为深兆入的理解和则掌握,对我掘们以后工作断很有帮助,妹比如可编程扩计算器等测糊量辅助工具尊,这将会提屋高我们的工睁作效率。落1.3研蠢究内容弹本设计主要贼运用费Visua托lBas跨ic灰编程语言培,编制控制睛测量中水准卫网和扇单一导线绞的平差程序吵软件倚。实现的功筑能包括:险1.水准网捐间接平差的磨平差值,在柱最小二乘法唤准则(上)要求下求纲出误差方程拒中的待定参肢数纸。置2来.单一导线庭和导线网的塞近似坐标推烤算:近似坐孝标的推算不患仅是后续工幼作的基础,吵为条件方程馅系数阵的求鹅取做准备,巾更能在此基晶础上计算坐汇标闭合差,草检验外业成理果的好坏。外3山.滩喷Visua粗lBas气ic织逐GUI界面恋设计:对于寺用户来说,瑞程序可视化日,同时又易鹿懂,便于输哲入数据。躺4.平差数盏据结果输出积:便于用户妻使用和查看却。5.将几招个平差程序筝集中在一个棍系统中,并置生成exe磁可执行程序咸,在win阿dows环泛境下通用,丹无需安装。泄因此,池本平差软件械让你的使用普绝对省心。香对每一个功枕能的实现,获其后都附有删应的算例。猪2眨狼Visua势lBas倚ic拌编程语言材概述泻2.1始Visua伐lBas设ic平简介护2.1扫.1覆东Visua他lBas副ic萌的发展逐Visua手lBas轿ic渗(简称V许B)是美国粱微软公司推谨出的win盗dows环闭境下的软件艰开发工具,垦使用VB可抽以既快又简乓单地开发w极indow恒s应用软件彩。Visu亦al是指开絮发图形用户洋界面(GU痰I沾)保的方法。脊Visua简l式的意思是存“顷视觉的廉”久或饥“意可视的习”括,从也就是直观揭的编程方法坡。在VB接中引入了控讲件的概念,板如各种各样忧的按钮、文羽本拜框、复选框典等,VB云把这些控件帽模式化,并巩且每个控件腹都由若干属陡性来控制其舰外观、工作芦方法。这样从,采用方法呀无需编写大能量代码去描孟述界面元素驳的外观和位帖置,而只要贩把预先建立序的控件加到演屏幕上,就总像使用讽“让画图却”宣之类的绘图故程序,通过些选择画图工挺具来画图一氏样,可视化棍程序设计语仿言除了提供瞎常规的编程扭功能乎外,还提供坏一套可视化担的设计工具第,便于程序蒙员建立图形工对象,巧妙全地丑把窄windo举ws编程的干复杂性豆“凉封装软”季起来。VB毁在原有BA令SIC姥语言的基础看上进一步发站展,怪包含了数百艰条语句、函鬼数及关键词亲,其中很多寿与抛Windo支wsGU慰I充有直接关系院。仪VB航与耍BASIC探之间有着千较丝万缕的联凶系,如果学纹过炉BASI榜C携语言的话,蜡看到旺VB蝴程序结构会梢感到很亲切翁。专业人员织可以用绩Visua虽lBas顶ic舰实现其他任蚊何跨Windo殖ws编程语建言嘉的功能,而基初学者只要估掌握几个关胶键词就可以考建立实用的葛应用程序。蒜随代着微型计算泽机技术的飞俯速发展,美更国微软公司胸以其具有多调任务性、图券形用户界面羡、动态数据萄交换、对象狡链接与嵌入梯等强大功能艰,而成为当疗今微型计幻算拦机操作系统式的主流产品绩。许多商用则软件公司为拨适应这一趋嚼势推出矮windo以ws殊境下的软件各开发工具,幸如乱Visua存l付C++承,Delp望hi,Po禽wer主B妻uilde页r藏等等。但对捧于初学者希业望在药windo朝ws绩环境中开发随一般的应用岭程序,斧VB无疑抢是联较理想的。羽VB介是目前众多姻windo三ws召软件开发工躁具中效率最故高的一个。撕2.1叔.烫2澡VB的功皂能特点猛1.均面向对象贷VB采用了嗓面向对象设摧计思想,它尘基本思路是福把复杂设计眠问题分解为宋个个能够完季成独立功能谱——相对

挑简单对象集赢合。所谓“岛对象”就是遭个可操作实耍体如窗体、竖窗体中命令巩按钮、标签傻、文本框等洋面向对象编雁程就好像搭稻积木样员可广根据和界面卸设计要求直密接在屏幕上纯“画\"出田窗口、菜单蓄、按钮等区肿别类型对象榜并为每个对丈象设置属性随。

买食2杏.事件驱动锋在Wind钥ows环境逃下是以事件燃驱动方式运荡行每个对象落的都能响应鞭多个区别事暗件,每个事剂件都能驱动慢段代码——暴事件过程该厨代码决定了般对象功能通恋常称这种机筋制为事件驱隐动事件可由剪用户操作触缩发也可以由不系统或应用筹触发例如单池击个命令按鹊依钮就触发了认按钮Cli串ck(单击桨)事件该事鹿件中代码就堂会被执行若吗用户未进行致任何操作(浩未触发事件顶)则就处于仅等待状态整狸个应用就是责由彼此独立育事件过程构匹成锅。倍3.致软件Sof录tware愧集成式开发制VB为编程利提供了个上集成开发环域境桃在这个环境龟中编程者可打设计界面、绝编写代码、驰调试直至把敌应用编译成菜可在Win六dows中搭运行可执行嫂文件并为它叔生成安装V涨B集成开发浆环境为编程来者提供了很社大方便饰。条4.防结构化设计银语言轮VB具有丰抵富数据类型练是种厘附合斩结构化设计风思想语言而像且简单易学昼此外作为种希设计语言V决B还有许多瞎独到的处崖霸5.换强大数据库厘访问功能总VB利用数天据Cont寻rol控件叠可以访问多芦种数据库V后B

6.O湖提供ADO芒Contr慎ol控件不更但可以用最模少代码实现腥数据库操作都和控制也可径以取代Da闯taCon厕trol控负件和RDO写Contr珍ol控件潮译6.由支持对象链昨接和嵌入技球术携VB核心是恼对对象链接作和嵌入(O奥LE)技术见支持它是访掩问所有对象川种思路方法锐利用OLE第技术能够开歼发集声音、斯图像、动画吗、字处理、码Web等对土象于体遣茂7.网络功仙能短VB

6.贤O提供了D种ltTML拐(Dyna乏mic}t挎TML)设竹计工具利用宝这种技术可戏以动态创建诉和编辑We弯b页面使

蝇用户在VB鞠中开发多功青能网络应用齿软件快Softw金are

慨8.刺多个应用向社导述VB提供了物多种向导如懂应用向导、妻安装向导、喷数据对象向指导和数据窗新体向导通过限它们可以快奸速地创建区酒别类型、区跑别功能应用杠灯9.词支持动态交收换、动态链敲接技术.真通过动态数务据交换(D吧DE)编程饶技术VB开县发应用能和草其他Win牵dows应窃用的间建立呢数据通信通稼过动态

链牧接库技术在络VB中可方腊便地用C语捆言或肆汇编语言童编写也可W旦indow解s应用接口懒(.凑API)

仙10傻.肉联机帮助功疾能爬在VB中利及用帮助菜单你和F1功能炒键用户可随馋时方便地得倦到所需要帮驱助信息VB天帮助窗口中编显示了有关胞举例代码通傲过复制、粘分贴操作可获材取大量举例蕉代码为用户偶学习和使用虾提供方便岗2史.2膏Visua孔lBas脊ic童程序设计劫简述猾2地.2.1度操作界面简锡介剩在默认情况国下,您visua连lbas吼ic富的操作界面舱包含了谣6更个述主要的窗口辽:墓主窗体,窗淘体窗口,工联具箱窗口,卧属性窗口,滚工程管理窗议口和代码窗晌口。下面喉简要令介绍莲VB祝中这几个窗笨口外:描善1.饼主窗体:轻图2.1享VB主窗体休图躬2.隆窗体窗口削:时它是用来对枪应用程序进唇行界面设计连的窗口,用痰户通过与窗喉体上的控件显交互即可得屯到相应的结呼果,体现了牙VB的可视谎化编程思想鼓。值得注意途的是:每一湖个窗体窗口凉必须有一个巡唯一的名字阅。在设计状彻态下,为方未便用户对控章件的定位,固窗体由网络欣点组成,可城以通过捐“灶工具解”见|也“渐选项循”妇命令,在腾“凤通用筹”界标签的粱“宵显示网格晃”馆中改变仇“骑宽度劲”惨或痛“臂高度嗽”犁的值来改变甘网格的间距烟图2.2板VB窗体窗脆口图舒3.比工具箱窗口荐卡工具箱中包夺含有许多图闷标,它是各姑种控件的制猾作工具,利挪用这些工具史,用户可以霞在窗体上设畜计各种控件构。标准工具攻箱内只包含铸了19个控喝件(指针不许是控件,其贺作用仅用于鸡窗体和控件准的移动或调政整它们的大衡小),用户傻可根据需要夸添加其它控汁件到工具箱壁中。具体方反法是选择霸“求工程客”银|咸“兆部件达”收命令打开体“阅部件伶”胡对话框,在影控件标签页残中选择需要篮的部件,然木后单击撤“侄确定胀”房按钮,此时症工驼具箱中将显逐示新添加的番控件图标按喊钮。殿熄跨树骨骄图2.扰3VB工具虑箱窗口图励4.闷属性窗口冒用于设置对美象的属性值跑,所有窗体燃或控件的属荣性都可以通谢过属性窗口世进行修改。煌如对象名称烤、颜色、字羡体等。属性济窗口包括以乏下几个部分办:诚(1通).津对象列表框不:单击下拉隙按钮可打开绪当前窗体对捏象列表,可泻选择要设定印属性的对象胸。专(2).渗属性显示排呼列方式誉:有息“激按字母序下”弟和倡“驶按分类序壮”题两个标签。获(3).胸属性列表框念:列出当前袭对象在设计秀模式下可用核的属性及当港前值,左栏吹显示属性名朋称,右栏显剩示相应的属忍性值,并可券由用户设置旗该属性值。探恭隐密口辰高监图2.4V沉B属性窗口闹图寒(4).棵属性说明况:显示当前贡属性的含义浩。韵5.昂工程管理窗尝口馆工程管理窗笋口保存了这映个工程(或纽应用程序)巨所有的文件坚,如工程文希件(.vb愧p)、窗体榜文件(.f棵rm)、标乡准模块文件氧(.bas地)和类模块餐文件(.c寺ls)等。梦工程管理窗贼口上方有3彩个按钮,分自别是:搜(1).疼查看代码仓:切换到代汇码窗口,显拢示和编辑代雅码。摔(2).壳查看对象镇:切换到窗询体窗口,显缩示和编辑对略象。冻(3).希切换文件夹对:切换本窗辅口内文件夹通显示方式。揪紫图2.5坑VB工程管沃理窗口图赞6.距代码窗口盖代码窗口是扭专门用来进纱行程序设计膝的窗口,显州示和编辑程治序代码。每奉个窗体都有辈各自的代码鸦窗口。模打开代码窗两口的方法:递(1)眯在工程管理尤窗口选择一泽个窗体或标蝇准模块,并颜选择绢“允查看代码壶”顽按钮。南(2软)在窗体固窗口双击控敌件或窗体本果身。临映值胸图2.6输VB代码窗喊口图求(3浇)选择享“辨视图朵”厌|“碰代码窗口事”由命令。诱2黄.2.2聚几个常用攀控件介绍唯1.走标签La涂bel歇功能蔬:贤用于显示文粪本翠(愧输出负)惰信息从,不能作为持输入信息的拌界面。可以才设置标签的男背景颜色,摆本软件界面讽设计时就用廊到透明属性嚷。最2.袄访文本框T丽extBo咳x灶跟功能:是一畅个文本编辑婚区域,可以作输入,编辑僵和显示正文电内容。衣这是使用最锯频繁的一个浪控件。可以览通过改变属贷性来改变文女本大小,颜熊色等。姐3.尸叶命令按钮麦Comma科ndBut后ton筋功能:接受躺用户输入的唐命令。炉当用户鼠标栗点击此按钮架,便可以执锁行命令,实茎现所编功能叹。演2荒.2.3亭VB编程膨语言书写爷住和变量声明怒VB语言与谈其他语言书洞写有不同,惕所以有必要愤了解VB的员书写方式威1.列威VB柳代码不区分款字母的大小坊写炕。业系统关键字所自动转换每棵个单词的首畏字母大写;哄用户自定义并行以第一次耻为准抚。逮酬馒2.浅衡语句书写自顿由壶。每坊一行可书写睡几个语句,奇之间用冒号诱分隔;一行栋最多烫255榴个字符;漫一条语句可谨分若干行书呈写,用冶续行符赏(储空格贩+酸下划线弓)打连接叠。蜜3.识房注释利于程熄序的维护和俗调试席。用浮单撇号轻“裕‘”以及佩“编辑”工奶具栏的“界设置注释块攀”惨,则敢VB塔中注释语句州会自动变为贯绿色次,不参与运血行。解4.跪VB中变量搞声明与其他俯编程语言的船变量声明也碰有不同,下津面简单的介栽绍下:追(咳1室)辞医声明形式:咸撇看叛不Dim饿变量名鲜盖As缘自定义类型而名掩刘资例偏豆DimS黄tuden叶tAs称Stu辛dType黑崇(驴2爹)帖厚引用:屠鹊罪形式:变量璃名.艳元素名插鱼例际表示S载tuden煎t黑变量中的姓范名,第丧4腿门课程的成盐绩,则表示殊如下:将Stude烫nt污.欺Name口,赴Stude玉nt占.悟Mark(茧4)喘(3)罗赋值:吴岛胁极碎如:S先tuden狼t.Nam瓶e=“矛王刚甘”孝妹Stude志nt.Ma煮rk(4)长=98眯其中常用的丸有声明形式撇和赋值,而硬赋值是使用构最频繁的刚,本次编程丧中也大量使简用赋值变量梁声明妈2菠.2.而4柔矩阵岔的员在VB中的昼表示区我们知道平凑差计算中,六矩阵计算是普必须的,像运系数矩阵,待法方程矩阵奥等都要用到扬矩阵。所以条用VB编制杨平差程序的齿要点和难点临就是进行矩获阵运算的编绘制。尿在了解矩阵代的运算法则形后,便可用肯VB语言编旱程了。陵而用什么来扑表示矩阵呢犬?那就是数腹组,下面重哲点介绍福下凯数组,这对拢程序的开发尾至关重要!攻1.诞数组不是一卧种数据类型好,而是一组农相同类型的棕变量的集合蚀。汇在程序中使蛛用数组的最输大好处是用附一个数组名池代表逻辑上蹄相关的一批灵数据,用下木标表示该数奖组中的各个境元素,和循线环语句结合飘使用,使得激程序书写简独洁。鞋使用数组时庆需注意:瓣数组窜必须先声明随后使用。密数组分两类铸:一类是菠静态(础定长胁)旬数组,第二宋累时盘动态卷(宏可变长叠)秋数组。犹像a(7,防7)这便是留静态数组,垫a(n,t跪)矮就是动态数饰组,其中的讨字母代表未馋知数。它2.静态数允组,也就是喝定长的数组耗。如我们想按将矩阵绒跨授毫隆英碍1湾2剂萍虚包备本水3祝4益这个缺两帽行租两壳列的矩阵用所VB来表示废,可以表示耽为瓜D埋ima(阅1to纺2,1t帮o2)郊asdo近uble甘砖‘透变量声明紧a(1,1吃)=1:订海a(1,泽2躬)=1:姻裕a(秩2宝,1)=1气:谅测a(2,捡2爱)=玻1私这样数组也互变在VB中香形成了,当慌然也可以联详合for后循环使用,零则语句份变造得更为简洁笑。本程序中肝用到此联合劣,来求解矩掏阵运算。观3.动态数云组为是指在声明黎数组时未给魔出数组的大锈小枣(够省略括号中父的下标艇)打,当要使用佛它时,随时巾用街ReDim陕语句重新指斜出数组大小尼。居如red放im昏腰a(1t委o沫n,1晓ton)康这样便定扭义了一个动曲态的n维数顽组,注意声跑明必须是r纠edim,亡不然程序会短出错。伐这里还需指训明的是杀Dim粥、朋Priva疑te歼、胆Publi蹲c财变量声明语兴句是说明性付语句,可出纷现在过程内惩或通用声明漂段;甚ReDim劳语句是执行合语句,只能茄出现在过程穴内。眼在过程中可吐多次使用R蛇eDim淹来改变数组夫的大小和维冈数。护但华使用ReD特im就语句会使原志来数组中的严值丢失,可祝以在才ReDim酸语句后加其Prese润rve疑参数来保留梢数组中的数蓬据。使用泪Prese兄rve羽时壶只能改变最窃后一维的大帖小,前面几种维大小不能哭改变。咸还有寨ReDim宵中的下标可观以是常量,可也可以是有科了确定值的匹变量,这在归编程中要注毒意!另外腊静态数组在惹程序编译时号就暂分配存储单粉元,套而阵动态数组在道运行时馆才茶分配存储单铸元径2君.2.若5湿磨VB中裕矩阵撞的厅运算填为了解决中挎矩阵运算问效题,编好相丝应的矩阵运府算代码是必守须的,经过怎一个月的时休间终于将矩继阵运算的代鞠码编成功,晃特别是矩阵换求逆的运算色。烤不过编制的牢矩阵求逆代蝇码前提是满闪秩的,对于湖秩亏矩阵,慰就不适用了什,由于时间查原因,就没菜继续深入的冬研究其代码狐。当然了,寿我们平时见辅到的平差一迷般都是满秩类的,所以此改代码的适用彼性还是挺强尺的。下面就零具体介绍下遗,各矩阵运卧算的代码和柏思想。服1.矩阵加渗减法稿(1)吓这个代码比蒙较容易编写炎,只要加矩漆阵中对应的朽数相加减便熔可以得到结贪果。拜林所以此允处不给出代符码亿2喘.矩阵乘法愉(1)悔这个代码惨编程的要点失是跟据矩阵附乘法的运算枪法则,即矩贝阵的没一行光的数分别与辅另外矩阵的左每一列对应妥的数相乘并扭全部进行相血加。知道一剩个原则,编失程就容易了侨,多次使用苍for循环于实现!酒(2)累代码:腰Publi夜cSub衣jzcf著(ByRe课fa()厕AsD锹ouble辞,ByR秘efb(巨)As厨Doubl傻e,By藏Refc嘴()As意Doub校le)桐m=U仍Bound虎(a,1皂)妹n=U酬Bound对(b,2向)寒ni=阀UBoun物d(a,掌2)券Fori艘=1愚Tom岁Forj辜=1段Ton周Fork针i=1宁Ton刷i昨c(i,畅j)=吊c(i,贪j)+缺a(i,而ki)*无b(ki如,j)NextNextNext碧EndS乒ub垄钟3.矩阵转阳置误(1)车这个代码编览程的也比较骨简单,即将场矩阵的行转晶化成列就行努了。疫(2)论代码:歇Publi准cSub快jzzz屠(ByRe恼fa()鼠AsD嫂ouble阀,ByR酿efb(粒)As讲Doubl身e)架m=U甚Bound马(a,1网)拔n=U节Bound袋(a,2馆)难Fori疑=图1To夫n聋Forj用=1界Tom灭b(i,震j)=案a(j,流i)NextNext收EndS晚ub凳4婚.矩阵捧求逆叙(1)伯这个代码编盼程很复杂,桑此代码运用膀的是高斯约抄化法进行矩帽阵求逆计算跨,编程的思杜想是先进行吸增广矩阵,姐然后用高斯政约化法,将未第一列中不伸是零的数找煤出,进行约顺化,即暖将每行数字贵除以开头数纺字,使每行旋开头不是零疑的数化为1难,之后减去散第一行,这丢样这行的第租一列的开头绘就为零了。倘用这种方法闸就可以将矩锄阵变为上三逗角矩阵,最胖后就得到徐矩阵求逆耍结果。碌。返(2)据代码:减Publi磨cSub蜡jzqn寨(ByRe酬fqa(圣)As纸Doubl膛e,By抄Refn猜a()A绘sDou乎ble)绵Dima坝()蒸n=U闭Bound拘(qa,劳1)孙ReDim云a(n,赌2*推n)虑For馒i=畅1To鸣n掩F旗orj脑=1T炕on抢是a(i,助j)=伞qa(i奖,j)早N模extj豪Nex忘ti换Fori鞋=1撤Ton哥For劣j=n帐+1却To2钟*n番放快Ifj贤-i=袭nTh荒en使好慈a(i,呈j)=辞1嫁物判Else锐沾体a(i,膊j)=炭0奉冠淋EndI缸f庸膜滤Next齐j蛇挥Next鼓i厦For汇i=1页Ton忽If真a(i,馒i)=樱0The勺n劳F固orq斩=iT矛on耗I籍fa(q援,i)笨<>0拍Then储芳For料W=耐iTo什2*n肢叠z谣j=a涂(i,W挑)晴匹a叹(i,W竖)=a兔(q,W各)昂俩a妥(q,W打)=z兴j顷院Nex踢tW树忧Exi碰tFor急E再ndIf紧N志extq悦I现fq>品nTh喂enMs周gBox梦"此矩阵不败可逆":溜Exit沾Sub似End存If佣For料K=干2*n泊Toi语Step仅-1泉a(i盾,K)烛=a(i在,K)春/a(i抬,i)央Nex驰tK炼For咏j=灵i+1摧Ton硬If教a(j,若i)<>阀0Th戴en跃镰ForK唐=2狗*nT穴oiS卸tep-趁1旁a碑(j,K漏)=a川(j,K摘)/a讽(j,i罗)-a缺(i,K悼)喘N阴extK们E旧ndIf滩Next增j优Next育i逼Fori刑=n侵To1界Step牺-1敢If典a(i,湾i)=牺0The娱n挺F职orq雾=i-宣1To狱1St唐ep-1亡I轨fa(q新,i)滤<>0弦Then签重For忠W=滩iTo肌2*n割殊z岗j=a偏(i,W惠)看仰a棒(i,W趣)=a付(q,W楼)明寇a辣(q,W僵)=z栗j灵别Nex姨tW其闪Exi具tFor浆E加ndIf月N袍extq伶End川If溪For徐K=尖2*n哲Toi项Step曲-1散a(i榜,K)斑=a(i框,K)微/a(i躲,i)较Nex隶tK靠For熄j=渡i-1醋To1送Step失-1允If浙a(j,债i)<>润0Th肢en柄xxx椒=a(迈j,i)痛For搬K=雅2*n僚To1倚Step铁-1想a父(j,K双)=a德(j,K轰)/x哥xx-雨a(i,蛛K)裂N斯extK豪E帝nd杯If盯Next盆j捷Next索i月Fori辽=1尊Ton释For看j=1暗Ton驶na纠(i,j哪)=a号(i,j蜘+n)德Next辛j场Next愤i顾EndS裳ub龄2峰.2.漂6淘程序控制语暑句错1.阁MsgBo蔽x歇语句近VB朗中疯提示性纲语句,格式醉为:锄MsgBo球x"句语句精"丰抄(言‘形需要键入的恢提示语现’装)例如:晋MsgBo积x"账号缩不对,请重品试"晃运行结果:违则出现一个醋对话框,提剩示用户。段2.铜print杰语句边V拼B中最基本粗的输出语句历,伯可以将打印折的内容放到窜form言窗口中,也客可以放在以铁图片控件为壤容器的控件氧中,还可以齿将数据进行存输出,比如医输出到tx靠t文本中,北具体的,后烛面展示。峡3.资if语句兔If<画表达式卵>The劫n盟本谱<局语句块鲜1>耗雹漆讨Else赴灰墓<佳语句块偶2>蚊EndI弱f庙I汇f语句可红以偏循环嵌套,计以实现比较阀复杂的逻辑盛结果。棒4.拐循环语句贴(绵1)for坏语句格式:泉F考or恼注循环变量=港初值忍to振终值章[Step侨岔步长芹]桶沾循贼环体;next江注意:循环倘参数扮中,i堂用于控制循棉环次数,升step是赴步长丈使用前应计唉算好众,结尾必须愈有next修不然程序会冻出错!窄(沈2)倦do...群while馋语句格式:爆Do{革While板|Unti危l}<茧条件码>页顽执语句块孕姥[券Exit任Do讽语句块寒]练煤蛮Loop喇蚕注意:挡do...悟while反循环是用于蛋控制循环次钻数未知秤。采5.纠循环控制乒语句痰在循环执行仓到一定程度慢的时候,不杨希望它继续舌执行,则要伍使用循环控柿制语句,包呜括cont厦inue和管break品。霸(昏1)con盾tinue朗出现时,不局执行con徒tinue疏后的内容,晕直接跳过本雹次循环,执牛行下一次循分环。万(愧2)锯B痰reak出饺现时,不执沾行brea格k后的内容斗,直接跳出难循环,执行讲循环后的语山句。沫2摘.2.涂7并控件数组就控件数组是穿由一组具有妥共同名称和忠相同类型的甜控件组成,政数组中的掘每一个控件坝共享同样的搏事件,仆它可以忆运用控件数向组可以再程凶序运行时创偷建一个控件婆的多个实例捆,并能很好沫的控件在程都序运行时到桌底显示多少酸个对象,利骂用for-镰next循秧环结构,就香可以简单地近为控件数组储的各个元素程设置相同的挺属性傻,同时它也载可以珠节省代码,浓增加可读性编,减少了内舅存的开销。绝控件数组可黎以分为静态夜数组及动态谱数组两种璃。尼3海休平差计算基奴本理论僻3桶.1条件炭平差狗3态.1.1倚灭条件平差原常理攀设有r个平旬差值的线性军条件方程:富裕批释(浓3-1-柜1锋)物式中,向为条件方程本的系数,把为条件方程殿常数项,系穴数和常数项和随不同平差谎问题取不同弱的值,它们符与观测值无养关。用咱代入上式,授可得:子椅跳愿(厚3-1-熊2骑)窄式中,烧为条件方程唱的闭合差,诱或称不符值薯,即:犹擦其垫番欣(皱3-1-械3仍)令:肌,哄,远则(扎3-1-超2样)式为:借睡赖材铸五者寺(崇3-1-额4直)列同样,(零3-1-馋1艰)式也可以趣写为:敬史脸竟允胸(斗3-1-暗5裁)式中产粒肉(路3-1-援3没)式的矩阵乐形式为:否席披配渡士(堆3-1-都6肆)析由(炊3-1-伏5源)式可知,俭的应有值为约零,所以闭叙合差等于观提测值减去其歪应有值。呈按求条件极致值的拉格朗因日乘数法,享设其乘数为甜,称为联系崇数向量,组盲成函数略将屡对荷求一阶导数事,并令其为颂零,得:他移项,两边骡转置,得:局再用碎左乘上式两尖段,得改正摇数令V耐的计算公式瓣为:蜂=坊潜党忽(衫3-1-误7羊)窗上式称为改应正数方程。才将n个改正补数方程(血3-1-抄7冈)和r个条洲件方程(己3-1-仅4)联立求沫解,就可以粘求得一组唯狮一的解:n能个改正数和度r个联系数炮。为此,将雅(婆3-1-困4)式和(麦3-1-婶7)式合称四为条件平差陕的基础方程栋。显然,有挂基础方程解向出的一组V侄,不仅能消橡除闭合差,菊也必能满足开的要求。己解算基础方腊程时,是先望将(予3-1-惭7丰)式代入(爱3-1-既4)式,得令:,则有爱称为联系数遗法方程,它端是条件平差乎的法方程,让简称法方程订。因为法方参程系数阵是症满秩方阵,厅由此可得联普系数偿K蹦的唯一解于从法方程中伍解出榜K伟后,将小K践值代入改正暗数方程(夹3-1-崖7穷),再求平申差值禁即可。江3查.1.着2栏跪条件平差程故序设计流程劣图输入观测数据输入观测数据输入必要信息:输入必要信息:总观测值数量,必要观测值数量软件自动识别用户是否正确输入数据,以及有无数据输入的不完整。接着识别各段高差的前后视点是否为已知点并组建系数矩阵A和W软件自动识别用户是否正确输入数据,以及有无数据输入的不完整。接着识别各段高差的前后视点是否为已知点并组建系数矩阵A和W判断判断否否所有观测高差是否已处理完,数据是否正确所有观测高差是否已处理完,数据是否正确是是定权定权计算法方程矩阵,求解未知参数,精度评定。结束结束饶3毅.2间接平亿差银3描.2.1踩间接平差叛原理纳间接平差就枝是在最小二背乘准则要求至下求出误差课方程中的待购定参数冷,在数学中察是求多元函驾数的极值问稻题。间接平秩差的函数模趁型为:墓平差时,一堡般对参数慢都要取近似污值造,令绘代入上式,轧并令情其中,席为观测值的牧近似值,所毙以院是观测值与羊其近似值之矮差,由此可羡得误差方程转设有n个观宽测值的方程暂为:令,柜则得误差方怒程为:令:训孟车脖今米浆蛾赠沿纽星疏参扫岁甘于庙荐浴桐可得平差值普方程的矩阵瑞形式:哲,洒妙予(凯3-2-1以)包按最小二乘厌原理,上式搜的谜必须满足帅的要求,因汗为t个参数库为独立量,霸故可按数学誓上求函数自敞由极值的方千法,得:那移项,转置掉后得:菠狭假梁殖漂削吐(督3-2-2沿)施以上所得(征3-2-1纽)和(嗽3-2-宵2)式中的岂待求量是扬n段个疤V轻和以t妻个谊,而方程个袖数也是掩n+扩t养个,有唯一较解,称此两交式为间接平漏差的基础方它程。椒解此基础方奖程,一般是执将(解3-2-1蔑)式代入(银3-2-建2)式,以浸便先消去银V到,得:脑姥夏务办锄鸟(修3-2-3填)令:,残上式可简写仗成猴朽厨欧烦叔察而(柜3-2-4艰)程式中系数阵负为满秩,即闻,劫有唯一解,逮上式称为间肌接平差的法西方程。解之沿得:或:著将求出的详代入误差方懂程(弄3-2-1绞),即可求先得改正数穿V雁,从而平差戒结果为:,迫3磁.户2沈.掩2物节间接平差程匀序设计流程打图输入观测数据输入观测数据输入必要信息:输入必要信息:总观测值数量,必要观测值数量软件自动识别用户是否正确输入数据,以及有无数据输入的不完整。接着识别各段高差的前后视点是否为已知点并组建系数矩阵A和W软件自动识别用户是否正确输入数据,以及有无数据输入的不完整。接着识别各段高差的前后视点是否为已知点并组建系数矩阵A和W判断否判断否所有观测高差是否已处理完,数据是否正确所有观测高差是否已处理完,数据是否正确是是定权定权计算法方程矩阵,求解未知参数,精度评定。结束结束祝3余.3帖附合虽导线平差计施算蝶图3.1股附合导线柜图恐3湿.3.1丹单一魄附合钓导线平差原挑理阁如图一所示做,在这个导信线中有四个其已知点、眠n-1返个未知点、劲n+1驻个水平角观胆测值和较n唉条边长观测旅值,总观测有值数为穗2n+1何。从图中可般以分析,要消确定一个未哑知点的坐标杜,必须测一疾条导线边和秒一个水平角恩,即需要两维个观测值;峰要确定全部搭n-1麦个未知点,呈则需观测蜜n-1挪个导线边和营n-1于个水平角,登即必要观测滋值数孕t=2裕n-2脚;则多余观栋测个数丑r=(盗2n+1这)–t镇=3膊。也就是说薄,在单一附僚合导线中,搁只有三个条系件方程。下蜡面讨论其条迟件方程式及居改正数条件清方程式的写房法。理设旦AB反边方位角已头知值为珍TAB=钻T0赠,桨CD弓边方位角已汗知值为浅TCD里、计算值为讽Tn+1澡,摆B皆点坐标的已曾知值为浅(低,氏)拖或者玻(x1,刮y1)血,杀C狭点坐标的已笼知值为孔(骂,启)盘、计算值为热(xn+1鞠,yn+址1)筑。葬三个条件中苹,有一个方膀位角附合条慈件、两个坐吨标附合条件弦。霞方位角附合壤条件:从起轨始方位角推艰算至终边的珍方位角平差存值应等于其房已知值,即貌:肌粒井道冤听谅(蜘3-3-1枪)折寺纵横坐标附刊合条件:从石起始点推算必至终点所得史到的坐标平隔差值应与终疗点的已知坐浑标值相等,即:艳稳黄俗昨败喉数(随3-3-2怀)经贸肝蛋烤习乏赠(锈3-3-3孔)炊(1)嫂泥方位角附合暑条件式屡则疑(勾3饱-3-1领)须式可写为整理得:学代还缓纳例(以3-3-4纱)其中企(2)挪纵坐标附合融条件式箭终点返C添坐标平差值结表示为骄惰拉防作拜(导3-3-5腐)静而第嗓i拦边的坐标增脆量为魔利叶婶挥田病(诉3-3-6香)式中:诊其中矿,柔Ti落是第阶i袜边的近似坐经标方位角洁捏城恶祥更(彻3-3-7末)省则疤(馆3-3-6悲)滩式可表示为劈上式按泰勒缴级数展开,淹取至一次项俭,得停图枝幼(柴3-3-8取)炮其中侮,僻,为由观测久值计算出的容近似坐标增蛙量。礼将悉(文3坡-3-8技)仙式代入帜(便3宣-3-5)澡式,并按资合并同类项虽,牢得促将棉上式代入(绕3犬-3-2浸)式,整理交得报上式即为纵稿坐标条件方巷程式,也可芬写为统一形捷式萌:干厉胃盐与奏(冠3戚-3-9箭)工隐酱所寸膀恒(们3纸-3-10乘)芹(3)饰横坐标附合冠条件式煮同理,可未写出横坐标污条件式理匹末絮锐(耐3却-3-11闪)奋捞讨消换逮巡流奥(喊3耽-3-12屠)夕为使计算方态便,保证精粱度,在实际案运算中,蚂S贸、康x湖、房y挪常以m战为单位,雁w驳、复、携以夫cm熔为单位,棒则(沸3弃-3-9误)和(3朱-3-11身)写为粘遵呀险励(绘3巡-3-13齿)保额季叶(滑3偶-3-1倾4扣)赚综上所述,住单一附合导晋线的平差计毙算的基本程孔序是:刊1)王计算各边近醉似方位角服Ti耗和各点的近泳似坐标增量陆值覆Δxi或、灿Δyi谢;盛2)樱参照(令3堪-3-4化)写出方位赠角条件式,释参照(3阔-3-9颈)、(3廉-3-10秧)、(3他-3-11某)、(3羽-3-12蔑)或者(3费-3-13惜)、(3沉-3-14盾)写出纵横坚坐标条件方送程式;呀3)坑按照条件平弊差计算的一盆般程序,计摊算最或是值吸。桌3合.3.2齿单一炎附合游导线程序设员计流程图图在下一页输入观测数据输入观测数据软件自动识别提示:已知点坐标,已知边方位角,观测转角与边长的数量是否输完输对,软件会指导用户输完数据,数据完整后进行下不计算。软件自动识别提示:已知点坐标,已知边方位角,观测转角与边长的数量是否输完输对,软件会指导用户输完数据,数据完整后进行下不计算。判断判断计算各导线边方位角、系数矩阵A、以及计算各导线边方位角、系数矩阵A、以及Δβ、Δx、Δy否否所有导线边是否已处理完所有导线边是否已处理完定权定权计算法方程矩阵,求解未知参数,精度评定。结束结束描4碑割平差软件纯界面浪设计爬4捧.1胜平差软件整惜体展示曾筛登陆界面鹊躬施贯咽仿莲图4.1平兔差软件登录苏界面图田为了方便用凉户使用和保剃存用户隐私冻,特做了平五差软件的登茅陆窗口。只拍有账号密码龟正确才能进核入,子使用软件。咏而注册和找议回密码用到壁数据库的知疫识,需用V汇B和数据库诉(可以是S指QL数据库断,也可以是反acces钓s数据库)袍联合开发。阻当然了,由逆于时间关系牧,注册和找耀回密码功能受还没开发,质以待时间充罗裕时再进行古开发。锣图4.2平闹差软件登录提界面图穷首平差软件主纲界脱面代博广门红坑纽图4.3输平差软件主枯要界面馒图否左边按钮为迷平差功能,栗有水准网间稍接平差,附博和导线平差夸,水准网的亡间接平差,仿闭合导线平膝差。最后一煤个为误差椭坊圆,用来检毁测各导线的慌误差精度偷。中间的是明坐标系统,仅用来显示所仇观测导线网践,看输入的犹导线网与实钱测的导线网价是否一样,幸可以及时纠顺错。当然还旁可以昨显示导线网丛中的误差椭棚圆。爸最水准网间接仓平差旗图4.4水泰准网间接平驱差主要界面兵图外上图为水准腾网间接平差挡主界面,只腥要爹鼠标植点击主界面售中的水准网郑间接平差苍按钮肃就能进入该虾界面。该界痒面中右边为觉输入愈观测数据。稀此水准网间召接平差能实失现的功能是劈进行水准网为间接平差计诸算(改正数抱跟平差值计烛算),此外占还设计了几贿个实用功能乏,如对平差圣后的结果进澡行输出枝(输出的格昨式为txt回文本格式)冬,对数据进催行清空,方呜便第二次输猜入。还设有牛返回主界面扣的功能,进您行其他功能平的转化。当肠然了还开发项了如查看系后数矩阵帮,法方程等牲功能姐4.辅1.4绕附合仁导线平差树图4.5附捉合导线平差失界面图亭和水准网间宇接平差一样吃,附纲合导线网钱设计的功能霞有改正数平尿差值的计算贫,还有其他皇一些实用的辽功能。由于遍此次的时间蓝比较短,只嘱开了这两个伯平差程序,师其他的以待闹后面开发。秘4龙.2蜻桑平差软件界泡面设计仍VB中的界瑞面设计是实蔬现可视化,恶面向对象的游重要途径,谨我们说的招VB剂界面设计其均实就是怀Visua肢lBas绞ic编程语疫言哄中的(GU净I卸)齿。软件设计宣,除了能实三现所编功能突外,界面的肾设计也尤为汉重要。好的灶界面设计能眉使用户易懂灯,并能高效伙的输入数据伟,提高工作钩效率如。强保Visu似alBa惊sic(G牢UI)简介振Visua贩lBas禽ic研(GUI)印是用户与计躲算机程序之鸽间的交互方乖式,是用户渐与计算机进泛行信息交流须的方式币。渴通常,多是悲根据悦目的允结构和用户双界面功能的驼有效性来选晕择计算机或恩程序。图形坡用户界面或吼GUI是包价含图形对象喉,如:窗口店、图标、菜棉单和文本的洲用户界面。边以某种方式微选择或激爪活这些对象暂,通常引起悔动作或发生嘱变化。最常打见的激活方霞法是用鼠标随或其它点击比设备去控制府屏幕上的鼠蛮标指针的运快动。按下鼠陷标按钮,标最志着对象的头选择或其它海动作。妈躬4.2.插2酷界面设计林打开VB编饲程软件,然基后点击工具本箱中控件皆,然后在主摸体窗口进行适合理的布置盲,这布置其带实跟银“脂画图准”炒差不多,但蠢要以画得合以理实用为准宏。无图4.6界则面熟设计演示燕图之如上图是设愿计本软件时众进行tex婆tbox的越设计,作用唤是接收用户变输入的信息钥,还有其他甘比如lab沾el标签控焦件,com秀mand按奖钮控件岗,此处不一躲一斗举例其,可以参照纪VB编程设竹计书悟。本软件设幻计时,采用版四个主窗体纲集成辨,使得各功盈能在一个软直件中同时存原在,方便用毒户使用。而捏各平差软件拆中的输入数城据的tex报tbox采血用的是控件娘数组,这样今可以方便电佳脑对观测数荡据的处理。波4.3界面励设计控件和拘代码掌为了后面阅响读水准网间盲接平差和营附合趣导线平差程稍序代码的方纽便免,乡以及往更深入的了仙解界面设计嘉,下面介绍疯主要介绍水滥准网和稼附合蜂导线网平差兔的控件和代宇码止沾水准网间接缝平差界面设优计1.控件月此程序使用区到的控件有脸,labe态l标签控件耀,text虏box文本管框控件,色以及com漫mand命卫令按钮控件淋,其中文本该框使用到控着件数组分别固为text昏1(0t剩o16)毯,text素2(0t繁o16仅)史具体的控件针分布见下图御图4.7水辉准网间接平申差控件分布赤图触其中浊清空控件和宴返回主菜单辫按钮控件属冷于界面设计立控件,主要醉是为了用户摧使用方便,遭不参与平差最计算列。还有自动竹识别和提示大数据有无输取完功能,自下面就给出坟这两个控件型和识别提示揪功能方的代码谜2膊.控件扒代码政(1)娇清空控件代壳码碎Priva纪teSu万bCom球mand6绝_Clic华k()渔Fori导=0箭To16授Text1胀(i)=升"":按Text2里(i)斤=""城:Text亿3(i)所="":喂Text4禁(i)=着"":们Text5哲(i)=夹"":飘Text6升(i)=逮""Next腹Fori悉=0兴To5越Text7工(i)=敬"":锦Text8说(i)=词""Next态Text9麦=""笼:Tex影t10=魄"":裹Text1屿1="拉"见End旱Sub踪(2)返回闻主界面代码神Priva遍teSu瞒bCom扒mand4拨_Clic喘k()古Form2牲.Show柳鼓省‘搅form1问为登陆界面焦,form摩2为主界面杜,from担3为水准网式间接平差界于面游Form3悉.Hide六荒雹‘铜form4怜为拘附合捉导线平差界忠面寿form4满.Hide概EndS工ub码(脾3剂)肢自动识别和脚提示代码瓜Priva挥teSu锯bCom董mand1析_Clic悬k()妄IfTe渔xt11召=""闯Then伙Msg颜Box"惭请输入总点舅个数":贤Exit旷Sub虾End念If昏IfT兄ext9果=""聚Then德Msg木Box"该请输入已知闲点个数":饮Exit香Sub标EndI霉f孕IfTe车xt10石=""朋Then炮Msg拖Box"照请输入已测著水准路线条获数":E痒xitS棕ub啄EndI敢f栋IfTe夕xt1(0响)="蚂"The龄n点Msg哈Box"叠请输入起点雨点号":雪Exit贝Sub现EndI体f扔IfTe犬xt2(0鸭)="追"The裤n抵Msg朵Box"暑请输入终点怀点号":伐Exit抢Sub僻EndI煮f烈IfTe哭xt3(0梢)="桂"The杏n蜓Msg喷Box"臭请输入水准排路线长度"拨:Exi猾tSub栽EndI泡f辱IfTe蚂xt4(0召)="帐"The貌n付Msg旧Box"腥请输入观测临高差":搞Exit绘Sub岗EndI隙f鸡IfTe北xt7(0诚)="柴"The纷n益Msg幼Box"喉请输入已知香点号":来Exit优Sub愈EndI附f饿E疑ndsu旅b倘蛙附合晚导线平差界抗面设计1.控件障控件的具体怀分布图如下俭:晋图4.8青附合平差控壮件分布蔑2.控件代绳码蚀清空与返回卧主界面的代祸码大同小异贼,此处不给很出。给出软雨件自动识别科提示代码:凉IfTe钢xt2袄(5)=佛""T馆hen殃MsgBo页x"请输共入边长":轧Exit企Sub雪EndI名f佳IfTe谊xt5(0游)="稳"The榨n勒MsgBo井x"请输宿入观测角"芳:Exi怀tSub骑EndI盯f退IfOp既tion1仆=Fa秧lseA树ndOp魔tion2势=Fa底lseT脚hen伍MsgBo孝x"请选娘择观测方向乖":Ex防itSu过b屈EndI荐f剧IfTe悟xt16(糟0)=属""An错dTex毕t20(0累)="援"The仿n化MsgBo秒x"请输索入AB的方迷位角":表Exit百Sub棵EndI元f则IfTe舰xt16(孟3)=音""An袍dTex占t21(0属)="呆"The续n协MsgBo肉x"请输颤入CD的方鸦位角":脚Exit厦Sub其EndI董f无IfTe鸽xt16(蚂1)=硬""An卧dTex茅t17(1孩)="强"And倍Text浇21(0)歌=""鹊Then相MsgBo腹x"请输奋入B点的x乓,y坐标"座:Exi稼tSub罢EndI聚f灯IfTe燃xt16(桑2)=安""An位dTex尺t17(2猜)="将"And闷Text呜21(0)俩=""轰Then仰MsgBo怎x"请输扩入C点的x桨,y坐标"估:Exi渗tSub菊EndI蔑f化IfTe蛾xt22盗=""独Then托MsgBo振x"请输回入测角中误字差":E蚊xitS雪ub梢EndI汁f呢IfTe激xt23负=""折Then可MsgBo重x"请输矛入测边中误宁差":E困xitS被ub民EndI岁f岛5恼平差软件程保序设计鼓5瓦.1工水准网间接匙平差造5丛.坑1宫.1象数据输入淋1.侍请按旦软件界面提爆示年输入侨总点个数,谷已知点号,洋已测水准路吸线条数,已骨知点号,已坡知点高程,伤起窃点点号,终趁点点号,核水准路线长垮度阶观测高差跌。(引特别说明吴:栋观测点号的删编写系,哲按照先未知遵点后已知点汽的顺序来编捐写去。如果还是菠不懂,你可障以点击恰特别聚说明按钮,档里面有详细远说明与例子倾)。壶图5.1水军准网间接平读差数据输入查图扎2.当然了浴为了保证用元户输入数据添的完整性写剥,还编写了敌软件自动识换别与提示功猜能,引导用姑户将数据输聋完,效果捎见坏下图浓(例如在没电输起点号时质,软件提示哥)蛋文样隶扇瑞复图薄5百.阴2数据输入蜓提示乓图蠢5炮.1.2塞软件的使用阳1.述在完整的输警完数据后,嘱点击改正数湖计算,茎或倍平差值计算疤按钮原(若点击改怖正数计算则施只能看到平赔差后的改正止值,点击平热差值计算则奸可以显示改阀正数与平差级值)。设置晒这两个是为帅了方便用户述查看改正数辛(可以判断坟结果的可靠普性)和得到姜最终结果。唉由于数据比时较多,为了辉能方便用户触查找数据,妻编程的时候孟进行了人颠性化泻处理:特别睁用两种不同浪颜色来表示靠改正数和平诞差值。巴其中爱改正数的计配算精度可以苗在主界面中克调,范围0待.0001双到特1mm抗。碑效果见下图挨:露图5.3水船准网间接平科差功能演示早图湖2.得到数绒据结果后,催如果想重新滥输入新数据臭进行平差,受则可以点击坟清空,则数济据软件内的届数据会自动糠清空,无需财手动清空。腹若想利用里壳面的数据,窗可以点击朝输出数据按检钮,数据会你自动保存在杯D盘中,以寿txt文本脊方式保存,怠效果见下图节:泻图5.4水柳准网间接平免差数据输出馋图怎5洪.1.3瓶程序代码殊1.这是软帝件设计的核筛心部分,界丝面设计只是查外表,而能染否实现编程裕功能还得看叶程序代码。猪考虑到词代码比较多惧,留所以矩阵转馋置,矩阵求宫逆,矩阵乘票法这三种和调用代码就络不在此写出膝,具体的见而本书眠具节谦。界面设计列的代码见无馅2.代码医(含有解说挎)游稳(1)渗水准网间接图平差代码凶Priva另teSu傍bCom沉mand1自_Clic债k()悄Dimn赶#,t1沉#,t2兔#,v#漠,i#永n=V顽al(Te征xt10)宫炼号箩劝昂'赚n为总点个亡数援t=V健al(Te异xt11)李-Va慈l(Tex伐t9)庭呜透'远t为待定点例(未知点)布个数栏v=V鼠al(Te吨xt9)茶充堆技裹码'宾v为已知知舞点个数们ReDim逃b(1典Ton,和1To腔t)A观sDou舌ble饶握'豆定义了系虑数矩阵b,蜓并对其声明刻ReDim终A1(1肉,1T狐ov)砖AsDo析uble狗杆径'喷定义了已知省点编号矩阵氧,并对其声模明渠ReDim弓DH(1女Ton泊,2)境AsDo污uble榆孕阵'鹊定义了起终拢点编号矩阵回DH,并对桂其声明喂ReDim催H1(1粗Ton顶,1)姑AsDo盐uble视性别'侍定义了各段屯观测高差矩清阵,并对其瓶声明旬ReDim膛l(1筹Ton,下1)A馒sDou凭ble帽垫泻'嚼定义了系数陡矩阵l,并摆对其进行声抗明望ReDim轨P(1们To附n,1烧Ton)校AsD高ouble辜荡妈寸'定义了权谨矩阵l,并部对其进行声县明捏ReDim魔H2(1蔑Tov衰,1)川AsDo廉uble夜劈热'阔定义了已知迁水准点高程童,并对其声义明屈Fori袍=1欺Tov众且法团望犁'刮对窗口中数扰据的接收衰A1(1,似i)=让Text泛7(i-吉1)Next障Fori呀=1驰Ton欺DH(祝i,1)雁=Te啄xt1(i肠-1)驱Nex争t恋For到i=葬1To瓣n捞DH(锡i,2)欢=Te生xt2(i邻-1)龄Nex返t教Fori伏=1墙Ton馅H1(i,份1)=励Text栽4(i-办1)Next榆Fori怀=1距Tov川H2(i,胁1)=帽Text体8(i-克1)Next贞Fori惩=1改To7泥惰统滴释届赖'进行系数脸矩阵的计算泄For歌j=板1To剂2补t1琴=DH漠(i,1恢)夹t2坛=DH坊(i,2生)习鸦For反k1=贫1To陡v且罩If道t1=们A1(1,诱k1)压Then吓已t星1=0乐渗l(蛋i,1)岛=H1拐(i,1轰)+H豪2(k1,拴1)雄享E斑ndIf茂垃Nex锯t哀厨For局k2=胜1To科v储印If廉t2=型A1(1,睛k2)脚Then猪谋t库2=0焰药饱l(i,昏1)=挡H1(i,每1)-亭H2(k纵2,1)播趁E撞ndIf南昏Nex荡t夸I绢ft1烟<>0候Then抵致b(i,攻t1)=锄-1宏E耽ndIf上条Ift2怀<>0嘱Then瓣皇b(i,吼t2)=手1棕习EndI寸f容I跨ft1裹<>0种Andt轰2<>列0The男n板l玉(i,1寒)=H活1(i,骄1)堡E房ndIf衬Nex里tNext津Fori是=1推Ton熟For漂j=螺1To有n甚I动fi=饥jTh咳en佳革P(i,橡j)=役Text3检(i-掌1)介绵瘦P(i,卧j)=暗1/P剖(i,j苦)怨例冤'定权醋意E茧ndIf宇塘Next湿Nex晴t税饰榆创纲践简牵阀'进集行计算仆ReDim失b1(1馅Tot挑,1T梁on)膛AsDo秩uble像妥'概调用矩阵转雷置降代码奸jzzz阳b(),桌b1()姓ReDim挥N1(1楚Tot露,1T伯on)位AsDo吃uble速饺'调解用矩阵乘法声代码枣jzc玉fb1(龄),P(峡),N1缴()讯ReDim蹈N2(1弃Tot绞,1T联ot)满AsDo击uble聚玉'调听用矩阵乘法残代码算jzc散fN1(淘),b(玉),N2渠()士ReDim雷u(1后Tot,垦1To园1)A饮sDou浸ble宜捐'控调用矩阵乘妥法代码跪jzc品fN1(胳),l(树),u(惩)妨ReDim樱N3(1矛Tot拌,1T存ot)闲AsDo洗uble悲倦'胁调用矩阵求金逆代码熄jzqn奖N2()丢,N3(任)饺ReDim丈x(1讲Tot,掠1To料1)A诊sDou践ble笨鬼'展调用矩阵乘台法代码影jzcf煎N3()孙,u()梁,x()险ReDim藏X1(1饰Ton擦,1T扫o1)陷AsDo帖uble材逃'酒调用矩阵乘半法代码懂jzcf眼b(),层x(),邮X1()莲ReDi捷mV1(慕1To蝶n,1吗To1)签AsD敲ouble烟享'央得到改正数线For匙i=1康Ton任V1(i参,1)熔=X1(染i,1)叉-l(厨i,1)住V1(i先,1)嗽=V1(涂i,1)浴*10嫂00Next外For扛i=愿1To坊n辩妻欠围猪讯'进行改正接数,平差值覆输出收Te营xt5(i劈-1)爱.Fore消Color腔=&H商FF吐锅凡'赋予改正佛数字体颜色砖Te酱xt5(i冤-1)段=Fo盼rmat(艰V1(i,武1),塘"0.00邪00")集笑'对平差结巷果精度设定侄灯Ne缎xt肥Fori炮=1珍Ton邻Te普xt6(i榨-1)常.Fore贤Color视=RG屑B(0,玻0,25源0)碎'远赋予平差值盘颜色奇Te纠xt6(i顿-1)蚊=Fo兼rmat(拜V1(i,障1)/圾1000麦,"0.材0000"胸)+V疗al(Te鹿xt4(i卸-1)译)'究对平差结果送精度设定孩Ne社xt执EndS朋ub峡(2)平差邮结果输出代来码棕Priva盲teSu熊bCom亡mand3冒_Clic若k()诊Open锅"d:\水群准网间接平加差结果.t餐xt"F顿orOu依tput慰As#1买'鸭打开和新建郊了一个tx朱t文本文件湿Dima接b1As返Stri佣ng,a伍b2As筑Stri父ng,a沙b3As团Stri赵ng,a贩b4As沾Stri川ng,a改b5As占Stri湾ng,a吼b6As的Stri忌ng眠'平差数据产输出亦ab1=护"起始点震号":a问b2=兼"终点点号巴":ab猴3="荷水准路线长料度(km)闯":ab佳4="帝观测高差"均:ab5狸="改拾正数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论