激光雷达测量实习报告(实习操作截图+心得体会+实习总结) 下载本文

图29

图30

21

四、编程

(一)空间坐标转换,如下图31~33所示:

图31

坐标转换

图32

22

Private Sub cmdCalc3D_Click() m3 = cdcs Ex = xxz Ey = yxz Ez = zxz dX3 = xpy dY3 = ypy dZ3 = zpy txtK3.Text = Str(m3) txtEx.Text = Str(Ex) Ex = DoToHu(Ex) txtEy.Text = Str(Ey) Ey = DoToHu(Ey) txtEz.Text = Str(Ez) Ez = DoToHu(Ez) txtdX3.Text = Str(dX3) txtdY3.Text = Str(dY3) txtDz3.Text = Str(dZ3) X3 = Val(txtX3.Text) Y3 = Val(txtY3.Text) Z3 = Val(txtZ3.Text)

Xx3 = (m3 + 1) * (X3 * Cos(Ey) * Cos(Ez) + Y3 * Cos(Ey) * Sin(Ez) - Z3 * Sin(Ey)) + dX3

Yy3 = (m3 + 1) * (X3 * (-Cos(Ex) * Sin(Ez) + Sin(Ex) * Sin(Ey) * Cos(Ez)) + Y3 * (Cos(Ex) * Cos(Ez) + Sin(Ex) * Sin(Ey) * Sin(Ez)) + Z3 * (Sin(Ex) * Cos(Ey))) + dY3

Zz3 = (m3 + 1) * (X3 * (Sin(Ex) * Sin(Ez) + Cos(Ex) * Sin(Ey) * Cos(Ez)) + Y3 * (-Sin(Ex) * Cos(Ez) + Cos(Ex) * Sin(Ey) * Sin(Ez)) + Z3 * (Cos(Ex) * Cos(Ey))) + dZ3

txtXx3.Text = Format(Xx3, \ txtYy3.Text = Format(Yy3, \ txtZz3.Text = Format(Zz3, \ End Sub

Private Sub cmdClear3D_Click() txtX3.Text = \ txtY3.Text = \ txtZ3.Text = \ txtXx3.Text = \ txtYy3.Text = \

23

txtZz3.Text = \ End Sub

Private Sub cmdconCalc3D_Click() m3 = cdcs Ex = xxz Ey = yxz Ez = zxz dX3 = xpy dY3 = ypy dZ3 = zpy txtK3.Text = Str(m3) txtEx.Text = Str(Ex) Ex = DoToHu(Ex) txtEy.Text = Str(Ey) Ey = DoToHu(Ey) txtEz.Text = Str(Ez) Ez = DoToHu(Ez) txtdX3.Text = Str(dX3) txtdY3.Text = Str(dY3) txtDz3.Text = Str(dZ3) Xx3 = Val(txtXx3.Text) Yy3 = Val(txtYy3.Text) Zz3 = Val(txtZz3.Text)

X3 = ((Xx3 - dX3) * Cos(Ey) * Cos(Ez) + (Yy3 - dY3) * (-Cos(Ex) * Sin(Ez) + Sin(Ex) * Sin(Ey) * Cos(Ez)) + (Zz3 - dZ3) * (Sin(Ex) * Sin(Ez) + Cos(Ex) * Sin(Ey) * Cos(Ez))) / (m3 + 1)

Y3 = ((Xx3 - dX3) * Cos(Ey) * Sin(Ez) + (Yy3 - dY3) * (Sin(Ex) * Sin(Ey) * Sin(Ez) + Cos(Ex) * Cos(Ez)) + (Zz3 - dZ3) * (-Sin(Ex) * Cos(Ez) + Cos(Ex) * Sin(Ey) * Sin(Ez))) / (m3 + 1)

Z3 = ((Xx3 - dX3) * (-Sin(Ey)) + (Yy3 - dY3) * Sin(Ex) * Cos(Ey) + (Zz3 - dZ3) * (Cos(Ex) * Cos(Ey))) / (m3 + 1)

txtX3.Text = Format(X3, \ txtY3.Text = Format(Y3, \ txtZ3.Text = Format(Z3, \ End Sub

Private Sub cmdExit_Click() End End Sub

24