added raden launch
This commit is contained in:
35
library/lib_geodec.ks
Normal file
35
library/lib_geodec.ks
Normal file
@@ -0,0 +1,35 @@
|
||||
// lib_geodec.ks provides two functions to convert between geographic coordinates (latitude, longitude) and cartesian coordinates (x, y, z).
|
||||
// Copyright © 2015,2019,2023 KSLib team
|
||||
// Lic. MIT
|
||||
@LAZYGLOBAL off.
|
||||
@CLOBBERBUILTINS off.
|
||||
|
||||
function geo2dec {
|
||||
parameter
|
||||
_____vlat, //geoposition:lat
|
||||
_____vlng, //geoposition:lng
|
||||
_____valt. //altitude
|
||||
local _____talt is body:radius+_____valt.
|
||||
local _____tlat is _____vlat+90.
|
||||
local _____tsin is sin(_____tlat).
|
||||
local _____vdec is list(
|
||||
_____talt*_____tsin*cos(_____vlng),
|
||||
_____talt*_____tsin*sin(_____vlng),
|
||||
_____talt*cos(_____tlat)
|
||||
).
|
||||
return _____vdec.
|
||||
}.
|
||||
|
||||
function dec2geo {
|
||||
parameter
|
||||
_____vx, //x from geo2dec array[0]
|
||||
_____vy, //y from geo2dec array[1]
|
||||
_____vz. //z from geo2dec array[2]
|
||||
local _____tsqrt is sqrt(_____vx*_____vx+_____vy*_____vy+_____vz*_____vz).
|
||||
local _____vgeo is list(
|
||||
arccos(_____vz/_____tsqrt)-90,
|
||||
arctan2(_____vy,_____vx),
|
||||
_____tsqrt-body:radius
|
||||
).
|
||||
return _____vgeo.
|
||||
}.
|
||||
Reference in New Issue
Block a user