ootk 2.0.1 → 4.0.0-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +14 -14
- package/CHANGELOG.md +122 -0
- package/README.md +27 -40
- package/jest.config.ts +30 -0
- package/lib/coordinate/Hill.d.ts +50 -0
- package/lib/coordinate/Hill.js +214 -0
- package/lib/coordinate/Hill.js.map +1 -0
- package/lib/coordinate/index.d.ts +1 -0
- package/lib/coordinate/index.js +2 -0
- package/lib/coordinate/index.js.map +1 -0
- package/lib/covariance/CovarianceSample.d.ts +44 -0
- package/lib/covariance/CovarianceSample.js +146 -0
- package/lib/covariance/CovarianceSample.js.map +1 -0
- package/lib/covariance/StateCovariance.d.ts +41 -0
- package/lib/covariance/StateCovariance.js +62 -0
- package/lib/covariance/StateCovariance.js.map +1 -0
- package/lib/force/AtmosphericDrag.d.ts +32 -0
- package/lib/force/AtmosphericDrag.js +66 -0
- package/lib/force/AtmosphericDrag.js.map +1 -0
- package/{dist/ootk.d.ts → lib/force/EarthGravity.d.ts} +13 -11
- package/lib/force/EarthGravity.js +115 -0
- package/lib/force/EarthGravity.js.map +1 -0
- package/lib/force/Force.d.ts +25 -0
- package/lib/force/Force.js +30 -0
- package/lib/force/Force.js.map +1 -0
- package/lib/force/ForceModel.d.ts +38 -0
- package/lib/force/ForceModel.js +71 -0
- package/lib/force/ForceModel.js.map +1 -0
- package/lib/force/Gravity.d.ts +41 -0
- package/lib/force/Gravity.js +48 -0
- package/lib/force/Gravity.js.map +1 -0
- package/lib/force/SolarRadiationPressure.d.ts +27 -0
- package/lib/force/SolarRadiationPressure.js +42 -0
- package/lib/force/SolarRadiationPressure.js.map +1 -0
- package/lib/force/ThirdBodyGravity.d.ts +27 -0
- package/lib/force/ThirdBodyGravity.js +56 -0
- package/lib/force/ThirdBodyGravity.js.map +1 -0
- package/lib/force/Thrust.d.ts +35 -0
- package/lib/force/Thrust.js +53 -0
- package/lib/force/Thrust.js.map +1 -0
- package/lib/interpolator/ChebyshevCoefficients.d.ts +54 -0
- package/lib/interpolator/ChebyshevCoefficients.js +90 -0
- package/lib/interpolator/ChebyshevCoefficients.js.map +1 -0
- package/lib/interpolator/ChebyshevInterpolator.d.ts +39 -0
- package/lib/interpolator/ChebyshevInterpolator.js +71 -0
- package/lib/interpolator/ChebyshevInterpolator.js.map +1 -0
- package/lib/interpolator/CubicSpline.d.ts +36 -0
- package/lib/interpolator/CubicSpline.js +64 -0
- package/lib/interpolator/CubicSpline.js.map +1 -0
- package/lib/interpolator/CubicSplineInterpolator.d.ts +37 -0
- package/lib/interpolator/CubicSplineInterpolator.js +78 -0
- package/lib/interpolator/CubicSplineInterpolator.js.map +1 -0
- package/lib/interpolator/FieldInterpolator.d.ts +26 -0
- package/lib/interpolator/FieldInterpolator.js +31 -0
- package/lib/interpolator/FieldInterpolator.js.map +1 -0
- package/lib/interpolator/Interpolator.d.ts +23 -0
- package/lib/interpolator/Interpolator.js +48 -0
- package/lib/interpolator/Interpolator.js.map +1 -0
- package/lib/interpolator/LagrangeInterpolator.d.ts +42 -0
- package/lib/interpolator/LagrangeInterpolator.js +156 -0
- package/lib/interpolator/LagrangeInterpolator.js.map +1 -0
- package/lib/interpolator/StateInterpolator.d.ts +29 -0
- package/lib/interpolator/StateInterpolator.js +37 -0
- package/lib/interpolator/StateInterpolator.js.map +1 -0
- package/lib/interpolator/VerletBlendInterpolator.d.ts +44 -0
- package/lib/interpolator/VerletBlendInterpolator.js +115 -0
- package/lib/interpolator/VerletBlendInterpolator.js.map +1 -0
- package/lib/maneuver/TwoBurnOrbitTransfer.d.ts +43 -0
- package/lib/maneuver/TwoBurnOrbitTransfer.js +62 -0
- package/lib/maneuver/TwoBurnOrbitTransfer.js.map +1 -0
- package/lib/maneuver/Waypoint.d.ts +66 -0
- package/lib/maneuver/Waypoint.js +152 -0
- package/lib/maneuver/Waypoint.js.map +1 -0
- package/lib/objects/DetailedSatellite.d.ts +94 -0
- package/lib/objects/DetailedSatellite.js +140 -0
- package/lib/objects/DetailedSatellite.js.map +1 -0
- package/lib/objects/DetailedSensor.d.ts +43 -0
- package/lib/objects/DetailedSensor.js +45 -0
- package/lib/objects/DetailedSensor.js.map +1 -0
- package/lib/objects/{space-object.d.ts → LandObject.d.ts} +19 -21
- package/lib/objects/LandObject.js +28 -0
- package/lib/objects/LandObject.js.map +1 -0
- package/lib/objects/Marker.d.ts +21 -0
- package/lib/objects/Marker.js +25 -0
- package/lib/objects/Marker.js.map +1 -0
- package/lib/objects/index.d.ts +5 -4
- package/lib/objects/index.js +5 -4
- package/lib/objects/index.js.map +1 -1
- package/lib/observation/Observation.d.ts +51 -0
- package/lib/observation/Observation.js +71 -0
- package/lib/observation/Observation.js.map +1 -0
- package/lib/observation/ObservationOptical.d.ts +47 -0
- package/lib/observation/ObservationOptical.js +101 -0
- package/lib/observation/ObservationOptical.js.map +1 -0
- package/lib/observation/ObservationRadar.d.ts +43 -0
- package/lib/observation/ObservationRadar.js +90 -0
- package/lib/observation/ObservationRadar.js.map +1 -0
- package/lib/observation/ObservationUtils.d.ts +21 -0
- package/lib/observation/ObservationUtils.js +33 -0
- package/lib/observation/ObservationUtils.js.map +1 -0
- package/lib/observation/PropagatorPairs.d.ts +31 -0
- package/lib/observation/PropagatorPairs.js +40 -0
- package/lib/observation/PropagatorPairs.js.map +1 -0
- package/lib/ootk.d.ts +10 -9
- package/lib/ootk.js +10 -9
- package/lib/ootk.js.map +1 -1
- package/lib/operations/BoxMuller.d.ts +41 -0
- package/lib/operations/BoxMuller.js +66 -0
- package/lib/operations/BoxMuller.js.map +1 -0
- package/lib/operations/EulerAngles.d.ts +50 -0
- package/lib/operations/EulerAngles.js +111 -0
- package/lib/operations/EulerAngles.js.map +1 -0
- package/lib/operations/Quaternion.d.ts +57 -0
- package/lib/operations/Quaternion.js +164 -0
- package/lib/operations/Quaternion.js.map +1 -0
- package/lib/operations/RandomGaussianSource.d.ts +25 -0
- package/lib/operations/RandomGaussianSource.js +43 -0
- package/lib/operations/RandomGaussianSource.js.map +1 -0
- package/lib/operations/index.d.ts +4 -0
- package/lib/operations/index.js +5 -0
- package/lib/operations/index.js.map +1 -0
- package/lib/optimize/ChebyshevCompressor.d.ts +31 -0
- package/lib/optimize/ChebyshevCompressor.js +80 -0
- package/lib/optimize/ChebyshevCompressor.js.map +1 -0
- package/lib/optimize/DownhillSimplex.d.ts +50 -0
- package/lib/optimize/DownhillSimplex.js +168 -0
- package/lib/optimize/DownhillSimplex.js.map +1 -0
- package/lib/optimize/GoldenSection.d.ts +33 -0
- package/lib/optimize/GoldenSection.js +49 -0
- package/lib/optimize/GoldenSection.js.map +1 -0
- package/lib/optimize/PolynomialRegression.d.ts +37 -0
- package/lib/optimize/PolynomialRegression.js +66 -0
- package/lib/optimize/PolynomialRegression.js.map +1 -0
- package/lib/optimize/PolynomicalRegressionResult.d.ts +28 -0
- package/lib/optimize/PolynomicalRegressionResult.js +32 -0
- package/lib/optimize/PolynomicalRegressionResult.js.map +1 -0
- package/lib/optimize/SimpleLinearRegression.d.ts +41 -0
- package/lib/optimize/SimpleLinearRegression.js +107 -0
- package/lib/optimize/SimpleLinearRegression.js.map +1 -0
- package/lib/optimize/SimplexEntry.d.ts +33 -0
- package/lib/optimize/SimplexEntry.js +39 -0
- package/lib/optimize/SimplexEntry.js.map +1 -0
- package/lib/orbit_determination/BatchLeastSquaresOD.d.ts +54 -0
- package/lib/orbit_determination/BatchLeastSquaresOD.js +118 -0
- package/lib/orbit_determination/BatchLeastSquaresOD.js.map +1 -0
- package/lib/orbit_determination/BatchLeastSquaresResult.d.ts +29 -0
- package/lib/orbit_determination/BatchLeastSquaresResult.js +31 -0
- package/lib/orbit_determination/BatchLeastSquaresResult.js.map +1 -0
- package/lib/orbit_determination/GibbsIOD.d.ts +33 -0
- package/lib/orbit_determination/GibbsIOD.js +70 -0
- package/lib/orbit_determination/GibbsIOD.js.map +1 -0
- package/lib/orbit_determination/GoodingIOD.d.ts +52 -0
- package/lib/orbit_determination/GoodingIOD.js +244 -0
- package/lib/orbit_determination/GoodingIOD.js.map +1 -0
- package/{dist/objects/space-object.d.ts → lib/orbit_determination/HerrickGibbsIOD.d.ts} +17 -22
- package/lib/orbit_determination/HerrickGibbsIOD.js +49 -0
- package/lib/orbit_determination/HerrickGibbsIOD.js.map +1 -0
- package/lib/orbit_determination/LambertIOD.d.ts +46 -0
- package/lib/orbit_determination/LambertIOD.js +199 -0
- package/lib/orbit_determination/LambertIOD.js.map +1 -0
- package/lib/orbit_determination/ModifiedGoodingIOD.d.ts +41 -0
- package/lib/orbit_determination/ModifiedGoodingIOD.js +82 -0
- package/lib/orbit_determination/ModifiedGoodingIOD.js.map +1 -0
- package/lib/propagator/DormandPrince54Propagator.d.ts +29 -0
- package/lib/propagator/DormandPrince54Propagator.js +68 -0
- package/lib/propagator/DormandPrince54Propagator.js.map +1 -0
- package/lib/propagator/KeplerPropagator.d.ts +36 -0
- package/lib/propagator/KeplerPropagator.js +81 -0
- package/lib/propagator/KeplerPropagator.js.map +1 -0
- package/lib/propagator/Propagator.d.ts +35 -0
- package/lib/propagator/Propagator.js +163 -0
- package/lib/propagator/Propagator.js.map +1 -0
- package/lib/propagator/RkCheckpoint.d.ts +23 -0
- package/lib/propagator/RkCheckpoint.js +26 -0
- package/lib/propagator/RkCheckpoint.js.map +1 -0
- package/lib/propagator/RkResult.d.ts +24 -0
- package/lib/propagator/RkResult.js +28 -0
- package/lib/propagator/RkResult.js.map +1 -0
- package/lib/propagator/RungeKutta4Propagator.d.ts +46 -0
- package/lib/propagator/RungeKutta4Propagator.js +132 -0
- package/lib/propagator/RungeKutta4Propagator.js.map +1 -0
- package/lib/propagator/RungeKutta89Propagator.d.ts +29 -0
- package/lib/propagator/RungeKutta89Propagator.js +130 -0
- package/lib/propagator/RungeKutta89Propagator.js.map +1 -0
- package/lib/propagator/RungeKuttaAdaptive.d.ts +52 -0
- package/lib/propagator/RungeKuttaAdaptive.js +152 -0
- package/lib/propagator/RungeKuttaAdaptive.js.map +1 -0
- package/lib/propagator/Sgp4Propagator.d.ts +35 -0
- package/lib/propagator/Sgp4Propagator.js +55 -0
- package/lib/propagator/Sgp4Propagator.js.map +1 -0
- package/lib/smoothing/ExponentialSmoothing.d.ts +24 -0
- package/lib/smoothing/ExponentialSmoothing.js +82 -0
- package/lib/smoothing/ExponentialSmoothing.js.map +1 -0
- package/lib/types/types.d.ts +68 -262
- package/lib/types/types.js +23 -33
- package/lib/types/types.js.map +1 -1
- package/package.json +28 -42
- package/codecov.yml +0 -21
- package/dist/objects/base-object.d.ts +0 -40
- package/dist/objects/detailed-sat.d.ts +0 -66
- package/dist/objects/index.d.ts +0 -4
- package/dist/objects/sat.d.ts +0 -92
- package/dist/objects/sensor.d.ts +0 -87
- package/dist/objects/star.d.ts +0 -46
- package/dist/ootk.js +0 -2
- package/dist/ootk.js.LICENSE.txt +0 -77
- package/dist/sgp4/Sgp4Assembly.d.ts +0 -5
- package/dist/sgp4/sgp4.d.ts +0 -82
- package/dist/tle/tle-format-data.d.ts +0 -6
- package/dist/tle/tle.d.ts +0 -374
- package/dist/transforms/transforms.d.ts +0 -55
- package/dist/types/types.d.ts +0 -280
- package/dist/utils/constants.d.ts +0 -34
- package/dist/utils/moon-math.d.ts +0 -113
- package/dist/utils/sun-math.d.ts +0 -230
- package/dist/utils/utils.d.ts +0 -39
- package/lib/objects/base-object.d.ts +0 -40
- package/lib/objects/base-object.js +0 -109
- package/lib/objects/base-object.js.map +0 -1
- package/lib/objects/detailed-sat.d.ts +0 -66
- package/lib/objects/detailed-sat.js +0 -149
- package/lib/objects/detailed-sat.js.map +0 -1
- package/lib/objects/sat.d.ts +0 -92
- package/lib/objects/sat.js +0 -188
- package/lib/objects/sat.js.map +0 -1
- package/lib/objects/sensor.d.ts +0 -87
- package/lib/objects/sensor.js +0 -255
- package/lib/objects/sensor.js.map +0 -1
- package/lib/objects/space-object.js +0 -60
- package/lib/objects/space-object.js.map +0 -1
- package/lib/objects/star.d.ts +0 -46
- package/lib/objects/star.js +0 -91
- package/lib/objects/star.js.map +0 -1
- package/lib/sgp4/Sgp4Assembly.d.ts +0 -5
- package/lib/sgp4/Sgp4Assembly.js +0 -75
- package/lib/sgp4/Sgp4Assembly.js.map +0 -1
- package/lib/sgp4/sgp4.d.ts +0 -82
- package/lib/sgp4/sgp4.js +0 -3274
- package/lib/sgp4/sgp4.js.map +0 -1
- package/lib/tle/tle-format-data.d.ts +0 -6
- package/lib/tle/tle-format-data.js +0 -10
- package/lib/tle/tle-format-data.js.map +0 -1
- package/lib/tle/tle.d.ts +0 -374
- package/lib/tle/tle.js +0 -611
- package/lib/tle/tle.js.map +0 -1
- package/lib/transforms/transforms.d.ts +0 -55
- package/lib/transforms/transforms.js +0 -209
- package/lib/transforms/transforms.js.map +0 -1
- package/lib/utils/constants.d.ts +0 -34
- package/lib/utils/constants.js +0 -35
- package/lib/utils/constants.js.map +0 -1
- package/lib/utils/moon-math.d.ts +0 -113
- package/lib/utils/moon-math.js +0 -387
- package/lib/utils/moon-math.js.map +0 -1
- package/lib/utils/sun-math.d.ts +0 -230
- package/lib/utils/sun-math.js +0 -422
- package/lib/utils/sun-math.js.map +0 -1
- package/lib/utils/utils.d.ts +0 -39
- package/lib/utils/utils.js +0 -100
- package/lib/utils/utils.js.map +0 -1
- package/sandbox.html +0 -8
- /package/{LICENSE.MD → LICENSE.md} +0 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @author @thkruz Theodore Kruczek
|
|
3
|
+
*
|
|
4
|
+
* @license AGPL-3.0-or-later
|
|
5
|
+
* @Copyright (c) 2020-2024 Theodore Kruczek
|
|
6
|
+
*
|
|
7
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
8
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
9
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
10
|
+
*
|
|
11
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
12
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
13
|
+
* See the GNU Affero General Public License for more details.
|
|
14
|
+
*
|
|
15
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
16
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
*/
|
|
18
|
+
import { Propagator } from './Propagator';
|
|
19
|
+
// / SGP4 propagator.
|
|
20
|
+
export class Sgp4Propagator extends Propagator {
|
|
21
|
+
// / Create a new [Sgp4Propagator] object from a [TLE].
|
|
22
|
+
constructor(tle) {
|
|
23
|
+
super();
|
|
24
|
+
this.tle = tle;
|
|
25
|
+
this._checkpoints = [];
|
|
26
|
+
this._cacheState = tle.state.toJ2000();
|
|
27
|
+
}
|
|
28
|
+
get state() {
|
|
29
|
+
return this._cacheState;
|
|
30
|
+
}
|
|
31
|
+
ephemerisManeuver(start, finish, maneuvers, interval = 60.0) {
|
|
32
|
+
throw new Error('Maneuvers cannot be modelled with SGP4.');
|
|
33
|
+
}
|
|
34
|
+
maneuver(maneuver, interval = 60.0) {
|
|
35
|
+
throw new Error('Maneuvers cannot be modelled with SGP4.');
|
|
36
|
+
}
|
|
37
|
+
propagate(epoch) {
|
|
38
|
+
this._cacheState = this.tle.propagate(epoch).toJ2000();
|
|
39
|
+
return this._cacheState;
|
|
40
|
+
}
|
|
41
|
+
reset() {
|
|
42
|
+
this._cacheState = this.tle.state.toJ2000();
|
|
43
|
+
}
|
|
44
|
+
checkpoint() {
|
|
45
|
+
this._checkpoints.push(this._cacheState);
|
|
46
|
+
return this._checkpoints.length - 1;
|
|
47
|
+
}
|
|
48
|
+
clearCheckpoints() {
|
|
49
|
+
this._checkpoints = [];
|
|
50
|
+
}
|
|
51
|
+
restore(index) {
|
|
52
|
+
this._cacheState = this._checkpoints[index];
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=Sgp4Propagator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sgp4Propagator.js","sourceRoot":"","sources":["../../src/propagator/Sgp4Propagator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAOH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,qBAAqB;AACrB,MAAM,OAAO,cAAe,SAAQ,UAAU;IAC5C,uDAAuD;IACvD,YAAoB,GAAQ;QAC1B,KAAK,EAAE,CAAC;QADU,QAAG,GAAH,GAAG,CAAK;QAMpB,iBAAY,GAAY,EAAE,CAAC;QAJjC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IACzC,CAAC;IAKD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,iBAAiB,CAAC,KAAe,EAAE,MAAgB,EAAE,SAAmB,EAAE,QAAQ,GAAG,IAAI;QACvF,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IAED,QAAQ,CAAC,QAAgB,EAAE,QAAQ,GAAG,IAAI;QACxC,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IAED,SAAS,CAAC,KAAe;QACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;QAEvD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,KAAK;QACH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9C,CAAC;IAED,UAAU;QACR,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEzC,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IACzB,CAAC;IAED,OAAO,CAAC,KAAa;QACnB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;CACF"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @author @thkruz Theodore Kruczek
|
|
3
|
+
*
|
|
4
|
+
* @license AGPL-3.0-or-later
|
|
5
|
+
* @Copyright (c) 2020-2024 Theodore Kruczek
|
|
6
|
+
*
|
|
7
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
8
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
9
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
10
|
+
*
|
|
11
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
12
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
13
|
+
* See the GNU Affero General Public License for more details.
|
|
14
|
+
*
|
|
15
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
16
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
*/
|
|
18
|
+
import { EpochUTC } from 'ootk-core';
|
|
19
|
+
export declare class ExponentialSmoothing {
|
|
20
|
+
private constructor();
|
|
21
|
+
static smooth(xs: number[], alpha: number): number[];
|
|
22
|
+
static smoothDouble(xs: number[], alpha: number, beta: number): number[];
|
|
23
|
+
static smoothTime(epochs: EpochUTC[], xs: number[], timeConstant: number): number[];
|
|
24
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @author @thkruz Theodore Kruczek
|
|
3
|
+
*
|
|
4
|
+
* @license AGPL-3.0-or-later
|
|
5
|
+
* @Copyright (c) 2020-2024 Theodore Kruczek
|
|
6
|
+
*
|
|
7
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
8
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
9
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
10
|
+
*
|
|
11
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
12
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
13
|
+
* See the GNU Affero General Public License for more details.
|
|
14
|
+
*
|
|
15
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
16
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
*/
|
|
18
|
+
// / Exponential data smoothing methods.
|
|
19
|
+
export class ExponentialSmoothing {
|
|
20
|
+
constructor() {
|
|
21
|
+
// disable constructor
|
|
22
|
+
}
|
|
23
|
+
/*
|
|
24
|
+
* Perform exponential smoothing on data set [xs] using the provided
|
|
25
|
+
* data smoothing factor [alpha] _(0.0 <= alpha <= 1.0)_.
|
|
26
|
+
*/
|
|
27
|
+
static smooth(xs, alpha) {
|
|
28
|
+
const ss = [];
|
|
29
|
+
for (let i = 0; i < xs.length; i++) {
|
|
30
|
+
if (i === 0) {
|
|
31
|
+
ss.push(xs[0]);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
ss.push(alpha * xs[i] + (1 - alpha) * ss[i - 1]);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return ss;
|
|
38
|
+
}
|
|
39
|
+
/*
|
|
40
|
+
* Perform exponential smoothing on data set [xs] using the provided data
|
|
41
|
+
* smoothing factor [alpha] _(0.0 <= alpha <= 1.0)_ and trend smoothing
|
|
42
|
+
* factor [beta] _(0.0 <= beta <= 1.0)_.
|
|
43
|
+
*/
|
|
44
|
+
static smoothDouble(xs, alpha, beta) {
|
|
45
|
+
const bs = [];
|
|
46
|
+
const ss = [];
|
|
47
|
+
for (let i = 0; i < xs.length; i++) {
|
|
48
|
+
if (i === 0) {
|
|
49
|
+
ss.push(xs[0]);
|
|
50
|
+
bs.push(xs[1] - xs[0]);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
ss.push(alpha * xs[i] + (1 - alpha) * (ss[i - 1] + bs[i - 1]));
|
|
54
|
+
bs.push(beta * (ss[i] - ss[i - 1]) + (1 - beta) * bs[i - 1]);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return ss;
|
|
58
|
+
}
|
|
59
|
+
/*
|
|
60
|
+
* Perform exponential smoothing on time series data set [xs] correlated
|
|
61
|
+
* with the [epochs] array using the provided [timeConstant]
|
|
62
|
+
* value _(seconds)_.
|
|
63
|
+
*
|
|
64
|
+
* Note: the [timeConstant] is the amount of time for the smoothed response
|
|
65
|
+
* of a unit step function to reach ~63.2% of the original signal.
|
|
66
|
+
*/
|
|
67
|
+
static smoothTime(epochs, xs, timeConstant) {
|
|
68
|
+
const ts = epochs.map((e) => e.posix);
|
|
69
|
+
const ss = [];
|
|
70
|
+
for (let i = 0; i < xs.length; i++) {
|
|
71
|
+
if (i === 0) {
|
|
72
|
+
ss.push(xs[0]);
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
const a = 1 - Math.exp(-(ts[i] - ts[i - 1]) / timeConstant);
|
|
76
|
+
ss.push(a * xs[i] + (1 - a) * ss[i - 1]);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return ss;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=ExponentialSmoothing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExponentialSmoothing.js","sourceRoot":"","sources":["../../src/smoothing/ExponentialSmoothing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,wCAAwC;AACxC,MAAM,OAAO,oBAAoB;IAC/B;QACE,sBAAsB;IACxB,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,EAAY,EAAE,KAAa;QACvC,MAAM,EAAE,GAAa,EAAE,CAAC;QAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACX,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aAChB;iBAAM;gBACL,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAClD;SACF;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,YAAY,CAAC,EAAY,EAAE,KAAa,EAAE,IAAY;QAC3D,MAAM,EAAE,GAAa,EAAE,CAAC;QACxB,MAAM,EAAE,GAAa,EAAE,CAAC;QAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACX,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACf,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aACxB;iBAAM;gBACL,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/D,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC9D;SACF;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,UAAU,CAAC,MAAkB,EAAE,EAAY,EAAE,YAAoB;QACtE,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,EAAE,GAAa,EAAE,CAAC;QAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACX,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aAChB;iBAAM;gBACL,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC;gBAE5D,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC1C;SACF;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}
|
package/lib/types/types.d.ts
CHANGED
|
@@ -1,280 +1,86 @@
|
|
|
1
|
-
type Distinct<T, DistinctName> = T & {
|
|
2
|
-
__TYPE__: DistinctName;
|
|
3
|
-
};
|
|
4
|
-
export type Hours = Distinct<number, 'Hours'>;
|
|
5
|
-
export type Minutes = Distinct<number, 'Minutes'>;
|
|
6
|
-
export type Seconds = Distinct<number, 'Seconds'>;
|
|
7
|
-
export type Milliseconds = Distinct<number, 'Milliseconds'>;
|
|
8
|
-
export type Degrees = Distinct<number, 'Degrees'>;
|
|
9
|
-
export type Radians = Distinct<number, 'Radians'>;
|
|
10
|
-
export type Kilometers = Distinct<number, 'Kilometers'>;
|
|
11
|
-
export type Meters = Distinct<number, 'Meters'>;
|
|
12
|
-
export type Vec3<Type> = {
|
|
13
|
-
x: Type;
|
|
14
|
-
y: Type;
|
|
15
|
-
z: Type;
|
|
16
|
-
};
|
|
17
|
-
export type EciVec3 = Vec3<Kilometers>;
|
|
18
|
-
export type EcfVec3 = {
|
|
19
|
-
x: Kilometers;
|
|
20
|
-
y: Kilometers;
|
|
21
|
-
z: Kilometers;
|
|
22
|
-
};
|
|
23
|
-
export type LlaVec3 = {
|
|
24
|
-
lat: Radians;
|
|
25
|
-
lon: Radians;
|
|
26
|
-
alt: Kilometers;
|
|
27
|
-
};
|
|
28
|
-
export type RaeVec3 = {
|
|
29
|
-
rng: Kilometers;
|
|
30
|
-
az: Radians;
|
|
31
|
-
el: Radians;
|
|
32
|
-
};
|
|
33
|
-
export type SezVec3 = {
|
|
34
|
-
s: Kilometers;
|
|
35
|
-
e: Kilometers;
|
|
36
|
-
z: Kilometers;
|
|
37
|
-
};
|
|
38
1
|
/**
|
|
39
|
-
* @
|
|
40
|
-
* It is generated by Sgp4.createSatrec.
|
|
2
|
+
* @author @thkruz Theodore Kruczek
|
|
41
3
|
*
|
|
4
|
+
* @license AGPL-3.0-or-later
|
|
5
|
+
* @Copyright (c) 2020-2024 Theodore Kruczek
|
|
6
|
+
*
|
|
7
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
8
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
9
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
10
|
+
*
|
|
11
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
12
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
13
|
+
* See the GNU Affero General Public License for more details.
|
|
14
|
+
*
|
|
15
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
16
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
42
17
|
*/
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
argpdot: number;
|
|
49
|
-
argpo: number;
|
|
50
|
-
aycof: number;
|
|
51
|
-
bstar: number;
|
|
52
|
-
cc1: number;
|
|
53
|
-
cc4: number;
|
|
54
|
-
cc5: number;
|
|
55
|
-
con41: number;
|
|
56
|
-
d2: number;
|
|
57
|
-
d3: number;
|
|
58
|
-
d4: number;
|
|
59
|
-
d5232: number;
|
|
60
|
-
d5421: number;
|
|
61
|
-
d5433: number;
|
|
62
|
-
dedt: number;
|
|
63
|
-
delmo: number;
|
|
64
|
-
del1: number;
|
|
65
|
-
ecco: number;
|
|
66
|
-
em: number;
|
|
67
|
-
epochdays: number;
|
|
68
|
-
epochyr: number;
|
|
69
|
-
error: number;
|
|
70
|
-
eta: number;
|
|
71
|
-
gsto: number;
|
|
72
|
-
im: number;
|
|
73
|
-
inclo: number;
|
|
74
|
-
init: string;
|
|
75
|
-
isimp: number;
|
|
76
|
-
jdsatepoch: number;
|
|
77
|
-
mdot: number;
|
|
78
|
-
method: string;
|
|
79
|
-
mo: number;
|
|
80
|
-
mm: number;
|
|
81
|
-
nddot: number;
|
|
82
|
-
ndot: number;
|
|
83
|
-
no: number;
|
|
84
|
-
nodecf: number;
|
|
85
|
-
nodedot: number;
|
|
86
|
-
nodeo: number;
|
|
87
|
-
om: number;
|
|
88
|
-
Om: number;
|
|
89
|
-
omgcof: number;
|
|
90
|
-
operationmode: string;
|
|
91
|
-
satnum: string;
|
|
92
|
-
sinmao: number;
|
|
93
|
-
t: number;
|
|
94
|
-
t2cof: number;
|
|
95
|
-
t3cof: number;
|
|
96
|
-
t4cof: number;
|
|
97
|
-
t5cof: number;
|
|
98
|
-
x1mth2: number;
|
|
99
|
-
x7thm1: number;
|
|
100
|
-
xlcof: number;
|
|
101
|
-
xmcof: number;
|
|
102
|
-
xfact: number;
|
|
103
|
-
xlamo: number;
|
|
104
|
-
xli: number;
|
|
105
|
-
xgh4: number;
|
|
106
|
-
xgh3: number;
|
|
107
|
-
xh2: number;
|
|
108
|
-
xi2: number;
|
|
109
|
-
xi3: number;
|
|
110
|
-
xl2: number;
|
|
111
|
-
xl3: number;
|
|
112
|
-
xl4: number;
|
|
113
|
-
zmol: number;
|
|
114
|
-
zmos: number;
|
|
115
|
-
dmdt: number;
|
|
116
|
-
dnodt: number;
|
|
117
|
-
domdt: number;
|
|
118
|
-
e3: number;
|
|
119
|
-
ee2: number;
|
|
120
|
-
peo: number;
|
|
121
|
-
pgho: number;
|
|
122
|
-
pho: number;
|
|
123
|
-
PInco: number;
|
|
124
|
-
plo: number;
|
|
125
|
-
se2: number;
|
|
126
|
-
se3: number;
|
|
127
|
-
sgh2: number;
|
|
128
|
-
sgh3: number;
|
|
129
|
-
sgh4: number;
|
|
130
|
-
sh2: number;
|
|
131
|
-
sh3: number;
|
|
132
|
-
si2: number;
|
|
133
|
-
si3: number;
|
|
134
|
-
sl2: number;
|
|
135
|
-
sl3: number;
|
|
136
|
-
sl4: number;
|
|
137
|
-
xgh2: number;
|
|
138
|
-
xh3: number;
|
|
139
|
-
tumin: number;
|
|
140
|
-
radiusearthkm: number;
|
|
141
|
-
irez: number;
|
|
142
|
-
d3210: number;
|
|
143
|
-
d3222: number;
|
|
144
|
-
d4410: number;
|
|
145
|
-
d4422: number;
|
|
146
|
-
d5220: number;
|
|
147
|
-
del2: number;
|
|
148
|
-
del3: number;
|
|
149
|
-
didt: number;
|
|
150
|
-
atime: number;
|
|
151
|
-
j2: number;
|
|
152
|
-
j3: number;
|
|
153
|
-
j4: number;
|
|
154
|
-
mus: number;
|
|
155
|
-
xke: number;
|
|
156
|
-
j3oj2: number;
|
|
157
|
-
xni: number;
|
|
158
|
-
d2201: number;
|
|
159
|
-
d2211: number;
|
|
160
|
-
nm: number;
|
|
18
|
+
import { Degrees, Milliseconds } from 'ootk-core';
|
|
19
|
+
export declare enum ZoomValue {
|
|
20
|
+
LEO = 0.45,
|
|
21
|
+
GEO = 0.82,
|
|
22
|
+
MAX = 1
|
|
161
23
|
}
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
velocity: {
|
|
170
|
-
x: number;
|
|
171
|
-
y: number;
|
|
172
|
-
z: number;
|
|
173
|
-
} | boolean;
|
|
174
|
-
};
|
|
175
|
-
/** @typedef Vec3Flat is a flat three dimensional array used in vector math.*/
|
|
176
|
-
export type Vec3Flat = [number, number, number];
|
|
177
|
-
/** @typedef TleLine1 is the first line of a two line element set */
|
|
178
|
-
export type TleLine1 = string;
|
|
179
|
-
/** @typedef TleLine2 is the second line of a two line element set */
|
|
180
|
-
export type TleLine2 = string;
|
|
181
|
-
export type Line1Data = {
|
|
182
|
-
lineNumber1: number;
|
|
183
|
-
satNum: number;
|
|
184
|
-
satNumRaw: string;
|
|
185
|
-
classification: string;
|
|
186
|
-
intlDes: string;
|
|
187
|
-
intlDesYear: number;
|
|
188
|
-
intlDesLaunchNum: number;
|
|
189
|
-
intlDesLaunchPiece: string;
|
|
190
|
-
epochYear: number;
|
|
191
|
-
epochYearFull: number;
|
|
192
|
-
epochDay: number;
|
|
193
|
-
meanMoDev1: number;
|
|
194
|
-
meanMoDev2: number;
|
|
195
|
-
bstar: number;
|
|
196
|
-
ephemerisType: number;
|
|
197
|
-
elsetNum: number;
|
|
198
|
-
checksum1: number;
|
|
199
|
-
};
|
|
200
|
-
export type Line2Data = {
|
|
201
|
-
lineNumber2: number;
|
|
202
|
-
satNum: number;
|
|
203
|
-
satNumRaw: string;
|
|
204
|
-
inclination: number;
|
|
205
|
-
raan: number;
|
|
206
|
-
eccentricity: number;
|
|
207
|
-
argOfPerigee: number;
|
|
208
|
-
meanAnomaly: number;
|
|
209
|
-
meanMotion: number;
|
|
210
|
-
revNum: number;
|
|
211
|
-
checksum2: number;
|
|
212
|
-
};
|
|
213
|
-
export declare enum SpaceObjectType {
|
|
214
|
-
UNKNOWN = 0,
|
|
215
|
-
PAYLOAD = 1,
|
|
216
|
-
ROCKET_BODY = 2,
|
|
217
|
-
DEBRIS = 3,
|
|
218
|
-
SPECIAL = 4,
|
|
219
|
-
RADAR_MEASUREMENT = 5,
|
|
220
|
-
RADAR_TRACK = 6,
|
|
221
|
-
RADAR_OBJECT = 7,
|
|
222
|
-
BALLISTIC_MISSILE = 8,
|
|
223
|
-
STAR = 9,
|
|
224
|
-
INTERGOVERNMENTAL_ORGANIZATION = 10,
|
|
225
|
-
SUBORBITAL_PAYLOAD_OPERATOR = 11,
|
|
226
|
-
PAYLOAD_OWNER = 12,
|
|
227
|
-
METEOROLOGICAL_ROCKET_LAUNCH_AGENCY_OR_MANUFACTURER = 13,
|
|
228
|
-
PAYLOAD_MANUFACTURER = 14,
|
|
229
|
-
LAUNCH_AGENCY = 15,
|
|
230
|
-
LAUNCH_SITE = 16,
|
|
231
|
-
LAUNCH_POSITION = 17,
|
|
232
|
-
LAUNCH_FACILITY = 18,
|
|
233
|
-
CONTROL_FACILITY = 19,
|
|
234
|
-
GROUND_SENSOR_STATION = 20,
|
|
235
|
-
OPTICAL = 21,
|
|
236
|
-
MECHANICAL = 22,
|
|
237
|
-
PHASED_ARRAY_RADAR = 23,
|
|
238
|
-
OBSERVER = 24,
|
|
239
|
-
BISTATIC_RADIO_TELESCOPE = 25,
|
|
240
|
-
COUNTRY = 26,
|
|
241
|
-
LAUNCH_VEHICLE_MANUFACTURER = 27,
|
|
242
|
-
ENGINE_MANUFACTURER = 28
|
|
243
|
-
}
|
|
244
|
-
export type GreenwichMeanSiderealTime = number;
|
|
245
|
-
export type LaunchDetails = {
|
|
24
|
+
export interface DetailedSatelliteParams {
|
|
25
|
+
id: number;
|
|
26
|
+
active?: boolean;
|
|
27
|
+
configuration?: string;
|
|
28
|
+
country?: string;
|
|
29
|
+
dryMass?: string;
|
|
30
|
+
equipment?: string;
|
|
246
31
|
launchDate?: string;
|
|
247
32
|
launchMass?: string;
|
|
248
33
|
launchSite?: string;
|
|
249
34
|
launchVehicle?: string;
|
|
250
|
-
};
|
|
251
|
-
export type SpaceCraftDetails = {
|
|
252
35
|
lifetime?: string | number;
|
|
253
36
|
maneuver?: string;
|
|
254
37
|
manufacturer?: string;
|
|
38
|
+
mission?: string;
|
|
255
39
|
motor?: string;
|
|
256
|
-
|
|
40
|
+
owner?: string;
|
|
41
|
+
bus?: string;
|
|
257
42
|
payload?: string;
|
|
43
|
+
power?: string;
|
|
258
44
|
purpose?: string;
|
|
45
|
+
length?: string;
|
|
46
|
+
diameter?: string;
|
|
259
47
|
shape?: string;
|
|
260
48
|
span?: string;
|
|
261
|
-
bus?: string;
|
|
262
|
-
configuration?: string;
|
|
263
|
-
equipment?: string;
|
|
264
|
-
dryMass?: string;
|
|
265
|
-
};
|
|
266
|
-
export type OperationsDetails = {
|
|
267
49
|
user?: string;
|
|
268
|
-
|
|
269
|
-
|
|
50
|
+
vmag?: number;
|
|
51
|
+
rcs?: number;
|
|
52
|
+
source?: string;
|
|
53
|
+
altId?: string;
|
|
54
|
+
altName?: string;
|
|
55
|
+
}
|
|
56
|
+
export interface DetailedSensorParams {
|
|
57
|
+
/** The country that owns the sensor */
|
|
270
58
|
country?: string;
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
59
|
+
/** 3 Letter Designation */
|
|
60
|
+
shortName?: string;
|
|
61
|
+
/** For radars, this is the width of the beam */
|
|
62
|
+
beamwidth?: Degrees;
|
|
63
|
+
changeObjectInterval?: Milliseconds;
|
|
64
|
+
linkAehf?: boolean;
|
|
65
|
+
linkGalileo?: boolean;
|
|
66
|
+
linkIridium?: boolean;
|
|
67
|
+
linkStarlink?: boolean;
|
|
68
|
+
linkWgs?: boolean;
|
|
69
|
+
static?: boolean;
|
|
70
|
+
sensorId?: number;
|
|
71
|
+
url?: string;
|
|
72
|
+
/** Does this sensor use a volumetric search pattern? */
|
|
73
|
+
volume?: boolean;
|
|
74
|
+
/** How far away should we zoom when selecting this sensor? */
|
|
75
|
+
zoom: ZoomValue;
|
|
76
|
+
/** For radar sensors, what frequency does this sensor operate in? */
|
|
77
|
+
band?: string;
|
|
78
|
+
/** This is the name of the object in the array */
|
|
79
|
+
objName?: string;
|
|
80
|
+
/** This is the name of the object in the UI */
|
|
81
|
+
uiName?: string;
|
|
82
|
+
/** This is the specific system (ex. AN/FPS-132) */
|
|
83
|
+
system?: string;
|
|
84
|
+
/** This is who operates the sensor */
|
|
85
|
+
operator?: string;
|
|
86
|
+
}
|
package/lib/types/types.js
CHANGED
|
@@ -1,34 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
SpaceObjectType[SpaceObjectType["GROUND_SENSOR_STATION"] = 20] = "GROUND_SENSOR_STATION";
|
|
25
|
-
SpaceObjectType[SpaceObjectType["OPTICAL"] = 21] = "OPTICAL";
|
|
26
|
-
SpaceObjectType[SpaceObjectType["MECHANICAL"] = 22] = "MECHANICAL";
|
|
27
|
-
SpaceObjectType[SpaceObjectType["PHASED_ARRAY_RADAR"] = 23] = "PHASED_ARRAY_RADAR";
|
|
28
|
-
SpaceObjectType[SpaceObjectType["OBSERVER"] = 24] = "OBSERVER";
|
|
29
|
-
SpaceObjectType[SpaceObjectType["BISTATIC_RADIO_TELESCOPE"] = 25] = "BISTATIC_RADIO_TELESCOPE";
|
|
30
|
-
SpaceObjectType[SpaceObjectType["COUNTRY"] = 26] = "COUNTRY";
|
|
31
|
-
SpaceObjectType[SpaceObjectType["LAUNCH_VEHICLE_MANUFACTURER"] = 27] = "LAUNCH_VEHICLE_MANUFACTURER";
|
|
32
|
-
SpaceObjectType[SpaceObjectType["ENGINE_MANUFACTURER"] = 28] = "ENGINE_MANUFACTURER";
|
|
33
|
-
})(SpaceObjectType || (SpaceObjectType = {}));
|
|
1
|
+
/**
|
|
2
|
+
* @author @thkruz Theodore Kruczek
|
|
3
|
+
*
|
|
4
|
+
* @license AGPL-3.0-or-later
|
|
5
|
+
* @Copyright (c) 2020-2024 Theodore Kruczek
|
|
6
|
+
*
|
|
7
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
8
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
9
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
10
|
+
*
|
|
11
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
12
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
13
|
+
* See the GNU Affero General Public License for more details.
|
|
14
|
+
*
|
|
15
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
16
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
*/
|
|
18
|
+
export var ZoomValue;
|
|
19
|
+
(function (ZoomValue) {
|
|
20
|
+
ZoomValue[ZoomValue["LEO"] = 0.45] = "LEO";
|
|
21
|
+
ZoomValue[ZoomValue["GEO"] = 0.82] = "GEO";
|
|
22
|
+
ZoomValue[ZoomValue["MAX"] = 1] = "MAX";
|
|
23
|
+
})(ZoomValue || (ZoomValue = {}));
|
|
34
24
|
//# sourceMappingURL=types.js.map
|
package/lib/types/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,0CAAU,CAAA;IACV,0CAAU,CAAA;IACV,uCAAO,CAAA;AACT,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB"}
|