-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathGeography.kc
63 lines (55 loc) · 1.41 KB
/
Geography.kc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
module KOS::Geography;
import KOS::Builtin unqualified;
import KOS::Collections unqualified;
import KOS::Math unqualified;
import KOS::Orbits unqualified;
builtin structure GeoCoordinates {
Scalar Lat get;
Scalar Lng get;
Scalar Distance get;
Scalar TerrainHeight get;
Scalar Heading get;
Scalar Bearing get;
Vector Position get;
Vector AltitudePosition(Scalar alt);
OrbitableVelocity Velocity get;
OrbitableVelocity AltitudeVelocity(Scalar alt);
}
builtin GeoCoordinates LatLng(Scalar lat, Scalar lng);
builtin structure Body : Orbitable {
String Name get;
String Description get;
Scalar Mass get;
Scalar RotationPeriod get;
Scalar Radius get;
Scalar Mu get;
Atmosphere Atm get;
Vector AngularVel get;
GeoCoordinates GeoPositionOf(Vector position);
Scalar AltitudeOf(Vector position);
Scalar SoiRadius get;
Scalar RotationAngle get;
}
builtin Body Body(String name);
builtin structure Atmosphere {
String Body get;
Boolean Exists get;
Boolean Oxygen get;
Scalar Scale get;
Scalar SeaLevelPressure get;
Scalar Height get;
}
builtin structure Waypoint : Structure {
String Name get;
Body Body get;
GeoCoordinates GeoPosition get;
Vector Position get;
Scalar Altitude get;
Scalar AGL get;
Boolean NearSurface get;
Boolean Grounded get;
Scalar Index get;
Boolean Clustered get;
}
builtin Waypoint Waypoint(String name);
builtin List<Waypoint> AllWaypoints get;