Вы находитесь на странице: 1из 5

Define xz()=

Prgm
:Disp "Programa que calcula X,Z conocidas las coordenadas Geodesicas, Geocentricas y
Parametricas"
:Local dat
:Disp "Seleccione datum:"
:Disp "1. WGS84"
:Disp "2. Internacional"
:
Request "Datum:",dat
:
If dat=1 Then
:
6378137a
:
6356752.3141b
:((a^(2)-b^(2))/(a^(2)))e
:
Local
:
Request "Ingrese : ",
:((a)/((1-e*(sin())^(2))))n
:
n*cos()x
:
n*(1-e)*sin()z
:
Disp "COORDENADAS GEODESICAS"
:
Disp "X es igual a: ",x
:
Disp "Z es igual a: ",z
:
Disp "COORDENADAS GEOCENTRICAS"
-e)*tan())w
:(x^(2)+z^(2))r
:
r*cos(w)xgeo
:
r*sin(w)zgeo
:
Disp " igual a: ",wDMS
:
Disp "X igual a: ",xgeo
:
Disp "Z igual a: ",zgeo
:
Disp "COORDENADAS PARAMETRICAS"
-e)*tan())
:
a*cos()xpar
:
b*sin()zpar
:
Disp " igual a: ",DMS
:
Disp "X igual a: ",xpar
:
Disp "Z igual a: ",zpar
:
EndIf
:EndPrgm

Define xyz_conh()=
Prgm
:Disp "Vamos a hallar XYZ conocidos ,,h"
:
Local opcdat
:
Disp "1. WGS84"
:
Disp "2. Internacional"
:
Request "Datum:",opcdat
:
If opcdat=1 Then
:
6378137a
:
6356752.3141b
:((a-b)/(a))f
:((a^(2)-b^(2))/(a^(2)))e
:
Local
:
Local
:
Local h
:
Request "Ingrese :",
:
Request "Ingrese :",
:
Request "Ingrese h:",h
:((a)/((1-e*(sin())^(2))))n
:(n+h)*cos()*cos()x
:(n+h)*cos()*sin()y
:(n*(1-e)+h)*sin()z
:
Disp "X igual a:"
:
Disp x
:
Disp "Y igual a:"
:
Disp y
:
Disp "Z igual a:"
:
Disp z
:
EndIf
:
If opcdat=2 Then
:
6378388a2
:
6356911.9462b2
:((a2-b2)/(a2))f2
:((a2^(2)-b2^(2))/(a2^(2)))e2
:
Local 2
:
Local 2
:
Local h2
:
Request "Ingrese :",2
:
Request "Ingrese :",2
:
Request "Ingrese h:",h2
:((a2)/((1-e*(sin(2))^(2))))n2
:(n2+h2)*cos(2)*cos(2)x2
:(n2+h2)*cos(2)*sin(2)y2
:(n2*(1-e2)+h2)*sin(2)z2

:
:
:
:
:
:
:
EndIf
:EndPrgm

Disp "X igual a:"


Disp x2
Disp "Y igual a:"
Disp y2
Disp "Z igual a:"
Disp z2

Define xyz()=Prgm
:Disp "Programa que calcula las
coordenadas X,Y,Z conocidas las
coordenadas Geodesicas, Geocentricas y
Parametricas"
:Local dat
:Disp "Elija un datum:"
:Disp "1. WGS84"
:Disp "2. Internacional"
:
Request "Datum:",dat
:
If dat=1 Then
:
6378137a
:
6356752.3141b
:((a^(2)-b^(2))/(a^(2)))e
:
Local
:
Local
:
Request "Ingrese ",
:
Request "Ingrese ",
:((a)/((1-e*(sin())^(2))))n
:
n*cos()*cos()x
:
n*cos()*sin()y
:
n*(1-e)*sin()z
:
Disp "COORDENADAS
GEODESICAS"
:
Disp "X igual a: ",x
:
Disp "Y igual a: ",y
:
Disp "Z igual a: ",z
:
Disp "COORDENADAS
GEOCENTRICAS"
-e)*tan())w
:(x^(2)+y^(2)+z^(2))r
:
r*cos(w)*cos()xgeo
:
r*cos(w)*sin()ygeo
:
r*sin(w)zgeo
:
Disp " igual a: ",wDMS
:
Disp "X igual a: ",xgeo
:
Disp "Y igual a: ",ygeo
:
Disp "Z igual a: ",zgeo
:
Disp "COORDENADAS
PARAMETRICAS"
-e)*tan())
:
a*cos()*cos()xpar
:
a*cos()*sin()ypar
:
b*sin()zpar
:
Disp " igual a: ",DMS

:
Disp "X igual a: ",xpar
:
Disp "Y igual a: ",ypar
:
Disp "Z igual a: ",zpar
:
EndIf
:
If dat=2 Then
:
6378388a2
:
6356911.9462b2
:((a2^(2)-b2^(2))/(a2^(2)))e2
:
Local 2
:
Local 2
:
Request "Ingrese ",2
:
Request "Ingrese ",2
:((a2)/((1-e2*(sin(2))^(2))))n2
:
n2*cos(2)*cos(2)x2
:
n2*cos(2)*sin(2)y2
:
n2*(1-e2)*sin(2)z2
:
Disp "COORDENADAS
GEODESICAS"
:
Disp "X igual a: ",x2
:
Disp "Y igual a: ",y2
:
Disp "Z igual a: ",z2
:
Disp "COORDENADAS
GEOCENTRICAS"
-e2)*tan(2))w2
:(x2^(2)+y2^(2)+z2^(2))r2
:
r2*cos(w2)*cos(2)xgeo2
:
r2*cos(w2)*sin(2)ygeo2
:
r2*sin(w2)zgeo2
:
Disp " igual a: ",w2DMS
:
Disp "X igual a: ",xgeo2
:
Disp "Y igual a: ",ygeo2
:
Disp "Z igual a: ",zgeo2
:
Disp "COORDENADAS
PARAMETRICAS"
-e2)*tan(2))2
:
a2*cos(2)*cos(2)xpar2
:
a2*cos(2)*sin(2)ypar2
:
b2*sin(2)zpar2
:
Disp " igual a: ",2DMS
:
Disp "X igual a: ",xpar2
:
Disp "Y igual a: ",ypar2
:
Disp "Z igual a: ",zpar2
:
EndIf
:EndPrgm

Define xyz_inv_exac()=

If x>0 and y<0 Then

Prgm
:Disp "Vamos a hallar ,,h conocidos
X,Y,Z"
: Local opcdat
: Disp "1. WGS84"
: Disp "2. Internacional"
: Request "Datum:",opcdat
: If opcdat=1 Then
:
6378137a
:
6356752.3141b
:((a-b)/(a))f
:((a^(2)-b^(2))/(a^(2)))e
:((a^(2)-b^(2))/(b^(2)))epri
:
Local x
:
Local y
:
Local z
:
Request "Ingrese X:",x
:
Request "Ingrese Y:",y
:
Request "Ingrese Z:",z
:
If x<0 and y<0 Then
:
:
If 90180 Then
:
cor
:
Else
:
180-cor
:
EndIf
:
EndIf
:
If x>0 and y>0 Then

:
:
:
:
:
:

If 090 Then
cor
Else
cor
EndIf
EndIf

:
:
:
:
:
:
:

If 090 Then
cor
Else
180-cor
EndIf
EndIf
If x<0 and y>0 Then

:
:
:
:
:
:

If 90180 Then
cor
Else
180+cor
EndIf
EndIf

:
)-e*a*(cos())^(3))))
:((a)/((1-e*(sin())^(2))))n
:(((x^(2)+y^(2)))/(cos()))-nh
: If >0 Then
:
Disp " igual a: ",DMS,"N"
:
Else
:
Disp " igual a: ",()DMS,"S"
: EndIf
: If x>0 and y>0 or x<0 and y>0 Then
:
Disp " igual a: ",corDMS,"E"
:
Else
:
Disp " igual a: ",corDMS,"W"
: EndIf
: Disp "h igual a: ",h,"mts."
: EndIf
: If opcdat=2 Then
:
6378388a2
:
6356911.9462b2
:((a2-b2)/(a2))f2
:((a2^(2)-b2^(2))/(a2^(2)))e2
:((a2^(2)-b2^(2))/(b2^(2)))epri2
:
Local x2
:
Local y2
:
Local z2
:
Request "Ingrese X:",x2
:
Request "Ingrese Y:",y2
:
Request "Ingrese Z:",z2
:
If x2<0 and y2<0 Then
:
:
:
:
:

If 902180 Then
2cor2
Else
180-2cor2
EndIf

:
:
:
:
:
:
:
:
:
:

EndIf
If x2>0 and y2>0 Then

:
:
:
:
:
:
:

If 902180 Then
2cor2
Else
180+2cor2
EndIf
EndIf
If x2>0 and y2<0 Then

:
:
:
:
:
:
:

If 0290 Then
2cor2
Else
2cor2
EndIf
EndIf

If 0290 Then
2cor2
Else
180-2cor2
EndIf
EndIf
If x2<0 and y2>0 Then

:
+y2^(2))-e2*a2*(cos(2))^(3))))2
:((a2)/((1-e2*(sin(2))^(2))))n2
:(((x2^(2)+y2^(2)))/(cos(2)))-n2h2
:
If 2>0 Then
:
Disp " igual a: ",2
DMS,"N"
:
Else
:
Disp " igual a: ",(2)
DMS,"S"
:
EndIf
:
If x2>0 and y2>0 or x2<0 and
y2>0 Then
:
Disp " igual a: ",cor2
DMS,"E"
:
Else
:
Disp " igual a: ",cor2

DMS,"W"
:
EndIf
:
Disp "h igual a: ",h2,"mts."
:
EndIf
:EndPrgm

Вам также может понравиться