基于VB测量程序设计(7)
时间:2021-08-07 16:42 来源:毕业论文 作者:毕业论文 点击:次
3 窗体功能原理分析 3.1 日常测量计算 3.1.1 角度弧度互化 “度”和“弧度”是度量角大小的两种不同的单位,在一般测量仪器观测得到的角度值都是度分秒的形式,在数据处理时都以“度”(如94度5分18秒,输入时为:94.0518度)的形式输入,而在计算机编程中,涉及到的数学模型和函数计算等一般都是用弧度进行计算,本程序包含的三角函数的运算,规定必须以弧度的形式将角度代入计算,因此有必要设计角度弧度互化的程序。在进行角度弧度互化程序设计之前,需要将实际测量当中,角度弧度的相关原理概念,转化的公式方法弄清楚。 由概念可知,一个平角是π弧度,即180“度”=π“弧度”,1“度”=π/180“弧度”,大约为0.017453“弧度”。因此,可以得到将度转化为弧度的公式:弧度=度×π/180。同理可知,弧度转化为度的公式可以写成:度=弧度×180°/π[4]。 本程序共分为两个部分: 角度转化为弧度:日常观测值都是角度,而计算需要化为弧度。 弧度转化为角度:测量涉及角度计算都是弧度,而输出结果往往为角度。 两部分将分别用command_click事件实现计算功能。两功能均调用fix()函数,语法是fix(number),功能为删除number参数的小数部分并返回以整数表示的结果。int()和fix()函数的区别在于如果number参数为负数时,int()函数返回小于或等于number的第一个负整数,而fix()函数返回大于或等于number参数的第一个负整数[5]。例如,int()将-7.4转换为-8,而fix()函数将-7.4转换为-7。 (1) 角度转化为弧度 编程大致思路为:度分秒——>度——>弧度 主要代码如下: Private Sub Command1_Click() Dim du%, fen%, miao%, jiaodu# '定义du,fen,miao分别记录录入角度值的“度”“分”“秒” dufenmiao = Val(Text1.Text) du = Fix(dufenmiao) dufenmiao = (dufenmiao - du) * 100 fen = Fix(dufenmiao) miao = (dufenmiao - fen) * 100 jiaodu = du + fen / 60 + miao / 3600 dutohu = jiaodu * pi / 180 '角度转化为弧度公式:弧度=度×π/180 Text2.Text = Format(dutohu, "0.000000") End Sub来`自^优尔论*文-网www.youerw.com (2) 弧度转化为角度 编程大致思路为:弧度(RAD)——>度(DEG)——>度分秒 主要代码如下: hu = hu * 180 / pi '弧度转化为度的公式:度=弧度×180°/π du = Fix(hu) hu = (hu - du) * 60 fen = Fix(hu) hu = (hu - fen) * 60 miao = Fix(hu + 0.5) If miao = 60 Then fen = fen + 1 miao = 0 End If If fen = 60 Then du = du + 1 fen = 0 End If hutodu = du + fen / 100 + miao / 10000 '度分秒形式 If hutodu < 0 Then '角度调整 (责任编辑:qin) |