@neilberkman/sidereon 0.11.0 → 0.12.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/package.json +1 -1
- package/pkg/sidereon.d.ts +1975 -1258
- package/pkg/sidereon.js +1456 -41
- package/pkg/sidereon_bg.wasm +0 -0
- package/pkg/sidereon_bg.wasm.d.ts +1351 -1259
- package/pkg-node/sidereon.d.ts +626 -1
- package/pkg-node/sidereon.js +1484 -43
- package/pkg-node/sidereon_bg.wasm +0 -0
- package/pkg-node/sidereon_bg.wasm.d.ts +1351 -1259
- package/types/sidereon-extra.d.ts +85 -9
package/pkg/sidereon.js
CHANGED
|
@@ -3791,6 +3791,12 @@ export class DragForce {
|
|
|
3791
3791
|
}
|
|
3792
3792
|
if (Symbol.dispose) DragForce.prototype[Symbol.dispose] = DragForce.prototype.free;
|
|
3793
3793
|
|
|
3794
|
+
/**
|
|
3795
|
+
* A DTED terrain tile cache rooted at a directory of DTED Level 2 files.
|
|
3796
|
+
*
|
|
3797
|
+
* Heights are ORTHOMETRIC terrain elevations in meters. Point order is always
|
|
3798
|
+
* longitude first, then latitude, both in degrees.
|
|
3799
|
+
*/
|
|
3794
3800
|
export class DtedTerrain {
|
|
3795
3801
|
__destroy_into_raw() {
|
|
3796
3802
|
const ptr = this.__wbg_ptr;
|
|
@@ -3803,6 +3809,30 @@ export class DtedTerrain {
|
|
|
3803
3809
|
wasm.__wbg_dtedterrain_free(ptr, 0);
|
|
3804
3810
|
}
|
|
3805
3811
|
/**
|
|
3812
|
+
* Batch terrain heights in ORTHOMETRIC meters for longitude-first points.
|
|
3813
|
+
*
|
|
3814
|
+
* `points` is an array of `[longitudeDeg, latitudeDeg]` pairs or
|
|
3815
|
+
* `{ longitudeDeg, latitudeDeg }` objects. `options.interpolation` is
|
|
3816
|
+
* `"bilinear"`, `"nearest"`, or `"nearestPosting"`. The return value is
|
|
3817
|
+
* index-aligned to `points`; each entry is `{ ok: true, heightM }` or
|
|
3818
|
+
* `{ ok: false, error }`. Missing tiles evaluate to `0.0`.
|
|
3819
|
+
* @param {any} points
|
|
3820
|
+
* @param {any} options
|
|
3821
|
+
* @returns {any}
|
|
3822
|
+
*/
|
|
3823
|
+
heightBatch(points, options) {
|
|
3824
|
+
const ret = wasm.dtedterrain_heightBatch(this.__wbg_ptr, points, options);
|
|
3825
|
+
if (ret[2]) {
|
|
3826
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
3827
|
+
}
|
|
3828
|
+
return takeFromExternrefTable0(ret[0]);
|
|
3829
|
+
}
|
|
3830
|
+
/**
|
|
3831
|
+
* Terrain height in ORTHOMETRIC meters at `(longitudeDeg, latitudeDeg)`.
|
|
3832
|
+
*
|
|
3833
|
+
* Longitude and latitude are degrees. The lookup uses bilinear
|
|
3834
|
+
* interpolation. Missing tiles evaluate to `0.0`, matching the core DTED
|
|
3835
|
+
* fallback.
|
|
3806
3836
|
* @param {number} longitude_deg
|
|
3807
3837
|
* @param {number} latitude_deg
|
|
3808
3838
|
* @returns {number}
|
|
@@ -3815,6 +3845,11 @@ export class DtedTerrain {
|
|
|
3815
3845
|
return ret[0];
|
|
3816
3846
|
}
|
|
3817
3847
|
/**
|
|
3848
|
+
* Terrain height in ORTHOMETRIC meters at `(longitudeDeg, latitudeDeg)`.
|
|
3849
|
+
*
|
|
3850
|
+
* Longitude and latitude are degrees. `options.interpolation` is
|
|
3851
|
+
* `"bilinear"`, `"nearest"`, or `"nearestPosting"`. Missing tiles evaluate
|
|
3852
|
+
* to `0.0`, matching the core DTED fallback.
|
|
3818
3853
|
* @param {number} longitude_deg
|
|
3819
3854
|
* @param {number} latitude_deg
|
|
3820
3855
|
* @param {any} options
|
|
@@ -3828,6 +3863,10 @@ export class DtedTerrain {
|
|
|
3828
3863
|
return ret[0];
|
|
3829
3864
|
}
|
|
3830
3865
|
/**
|
|
3866
|
+
* Create a DTED terrain reader rooted at `root`.
|
|
3867
|
+
*
|
|
3868
|
+
* The root may contain tile files directly or the nested block layout the
|
|
3869
|
+
* core reader recognizes. Height results are ORTHOMETRIC meters.
|
|
3831
3870
|
* @param {string} root
|
|
3832
3871
|
*/
|
|
3833
3872
|
constructor(root) {
|
|
@@ -3841,6 +3880,99 @@ export class DtedTerrain {
|
|
|
3841
3880
|
}
|
|
3842
3881
|
if (Symbol.dispose) DtedTerrain.prototype[Symbol.dispose] = DtedTerrain.prototype.free;
|
|
3843
3882
|
|
|
3883
|
+
/**
|
|
3884
|
+
* Loaded EGM96 15-arcminute geoid grid for explicit terrain datum conversion.
|
|
3885
|
+
*/
|
|
3886
|
+
export class Egm96FifteenMinuteGeoid {
|
|
3887
|
+
static __wrap(ptr) {
|
|
3888
|
+
const obj = Object.create(Egm96FifteenMinuteGeoid.prototype);
|
|
3889
|
+
obj.__wbg_ptr = ptr;
|
|
3890
|
+
Egm96FifteenMinuteGeoidFinalization.register(obj, obj.__wbg_ptr, obj);
|
|
3891
|
+
return obj;
|
|
3892
|
+
}
|
|
3893
|
+
__destroy_into_raw() {
|
|
3894
|
+
const ptr = this.__wbg_ptr;
|
|
3895
|
+
this.__wbg_ptr = 0;
|
|
3896
|
+
Egm96FifteenMinuteGeoidFinalization.unregister(this);
|
|
3897
|
+
return ptr;
|
|
3898
|
+
}
|
|
3899
|
+
free() {
|
|
3900
|
+
const ptr = this.__destroy_into_raw();
|
|
3901
|
+
wasm.__wbg_egm96fifteenminutegeoid_free(ptr, 0);
|
|
3902
|
+
}
|
|
3903
|
+
/**
|
|
3904
|
+
* Load `WW15MGH.DAC` bytes as an EGM96 15-arcminute geoid grid.
|
|
3905
|
+
* @param {Uint8Array} bytes
|
|
3906
|
+
* @returns {Egm96FifteenMinuteGeoid}
|
|
3907
|
+
*/
|
|
3908
|
+
static fromWw15mghDacBytes(bytes) {
|
|
3909
|
+
const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
|
|
3910
|
+
const len0 = WASM_VECTOR_LEN;
|
|
3911
|
+
const ret = wasm.egm96fifteenminutegeoid_fromWw15mghDacBytes(ptr0, len0);
|
|
3912
|
+
if (ret[2]) {
|
|
3913
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
3914
|
+
}
|
|
3915
|
+
return Egm96FifteenMinuteGeoid.__wrap(ret[0]);
|
|
3916
|
+
}
|
|
3917
|
+
/**
|
|
3918
|
+
* Read and load `WW15MGH.DAC` from disk. A missing file throws a typed
|
|
3919
|
+
* `MissingEgm96Dac` error with `path` and `remediation` fields.
|
|
3920
|
+
* @param {string} path
|
|
3921
|
+
* @returns {Egm96FifteenMinuteGeoid}
|
|
3922
|
+
*/
|
|
3923
|
+
static fromWw15mghDacPath(path) {
|
|
3924
|
+
const ptr0 = passStringToWasm0(path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
3925
|
+
const len0 = WASM_VECTOR_LEN;
|
|
3926
|
+
const ret = wasm.egm96fifteenminutegeoid_fromWw15mghDacPath(ptr0, len0);
|
|
3927
|
+
if (ret[2]) {
|
|
3928
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
3929
|
+
}
|
|
3930
|
+
return Egm96FifteenMinuteGeoid.__wrap(ret[0]);
|
|
3931
|
+
}
|
|
3932
|
+
}
|
|
3933
|
+
if (Symbol.dispose) Egm96FifteenMinuteGeoid.prototype[Symbol.dispose] = Egm96FifteenMinuteGeoid.prototype.free;
|
|
3934
|
+
|
|
3935
|
+
/**
|
|
3936
|
+
* Ellipsoidal height `h` in metres above the WGS84 reference ellipsoid.
|
|
3937
|
+
*/
|
|
3938
|
+
export class EllipsoidalHeightM {
|
|
3939
|
+
static __wrap(ptr) {
|
|
3940
|
+
const obj = Object.create(EllipsoidalHeightM.prototype);
|
|
3941
|
+
obj.__wbg_ptr = ptr;
|
|
3942
|
+
EllipsoidalHeightMFinalization.register(obj, obj.__wbg_ptr, obj);
|
|
3943
|
+
return obj;
|
|
3944
|
+
}
|
|
3945
|
+
__destroy_into_raw() {
|
|
3946
|
+
const ptr = this.__wbg_ptr;
|
|
3947
|
+
this.__wbg_ptr = 0;
|
|
3948
|
+
EllipsoidalHeightMFinalization.unregister(this);
|
|
3949
|
+
return ptr;
|
|
3950
|
+
}
|
|
3951
|
+
free() {
|
|
3952
|
+
const ptr = this.__destroy_into_raw();
|
|
3953
|
+
wasm.__wbg_ellipsoidalheightm_free(ptr, 0);
|
|
3954
|
+
}
|
|
3955
|
+
/**
|
|
3956
|
+
* Build an ellipsoidal height `h` in metres.
|
|
3957
|
+
* @param {number} value_m
|
|
3958
|
+
*/
|
|
3959
|
+
constructor(value_m) {
|
|
3960
|
+
const ret = wasm.ellipsoidalheightm_new(value_m);
|
|
3961
|
+
this.__wbg_ptr = ret;
|
|
3962
|
+
EllipsoidalHeightMFinalization.register(this, this.__wbg_ptr, this);
|
|
3963
|
+
return this;
|
|
3964
|
+
}
|
|
3965
|
+
/**
|
|
3966
|
+
* Ellipsoidal height `h`, metres above the WGS84 reference ellipsoid.
|
|
3967
|
+
* @returns {number}
|
|
3968
|
+
*/
|
|
3969
|
+
get valueM() {
|
|
3970
|
+
const ret = wasm.ellipsoidalheightm_valueM(this.__wbg_ptr);
|
|
3971
|
+
return ret;
|
|
3972
|
+
}
|
|
3973
|
+
}
|
|
3974
|
+
if (Symbol.dispose) EllipsoidalHeightM.prototype[Symbol.dispose] = EllipsoidalHeightM.prototype.free;
|
|
3975
|
+
|
|
3844
3976
|
/**
|
|
3845
3977
|
* Orthonormal encounter frame built from two relative states.
|
|
3846
3978
|
*/
|
|
@@ -5456,6 +5588,24 @@ export class Ionex {
|
|
|
5456
5588
|
const ret = wasm.ionex_baseRadiusKm(this.__wbg_ptr);
|
|
5457
5589
|
return ret;
|
|
5458
5590
|
}
|
|
5591
|
+
/**
|
|
5592
|
+
* Signed latitude grid step, degrees. Standard IONEX grids are
|
|
5593
|
+
* north-to-south, so this value is usually negative.
|
|
5594
|
+
* @returns {number}
|
|
5595
|
+
*/
|
|
5596
|
+
get dlatDeg() {
|
|
5597
|
+
const ret = wasm.ionex_dlatDeg(this.__wbg_ptr);
|
|
5598
|
+
return ret;
|
|
5599
|
+
}
|
|
5600
|
+
/**
|
|
5601
|
+
* Signed longitude grid step, degrees. Standard IONEX grids are
|
|
5602
|
+
* west-to-east, so this value is usually positive.
|
|
5603
|
+
* @returns {number}
|
|
5604
|
+
*/
|
|
5605
|
+
get dlonDeg() {
|
|
5606
|
+
const ret = wasm.ionex_dlonDeg(this.__wbg_ptr);
|
|
5607
|
+
return ret;
|
|
5608
|
+
}
|
|
5459
5609
|
/**
|
|
5460
5610
|
* The IONEX `EXPONENT` header field; the TEC scale is `10^exponent`.
|
|
5461
5611
|
* @returns {number}
|
|
@@ -5529,6 +5679,36 @@ export class Ionex {
|
|
|
5529
5679
|
}
|
|
5530
5680
|
return ret[0];
|
|
5531
5681
|
}
|
|
5682
|
+
/**
|
|
5683
|
+
* Extract the full IONEX vertical-TEC grids as plain sample data.
|
|
5684
|
+
*
|
|
5685
|
+
* Epochs are integer seconds since J2000. Latitude and longitude nodes and
|
|
5686
|
+
* grid steps are degrees. TEC and RMS maps are TECU and indexed
|
|
5687
|
+
* `[map][iLat][iLon]`. The shell height and base radius are kilometers.
|
|
5688
|
+
* @returns {any}
|
|
5689
|
+
*/
|
|
5690
|
+
tecGridSamples() {
|
|
5691
|
+
const ret = wasm.ionex_tecGridSamples(this.__wbg_ptr);
|
|
5692
|
+
if (ret[2]) {
|
|
5693
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
5694
|
+
}
|
|
5695
|
+
return takeFromExternrefTable0(ret[0]);
|
|
5696
|
+
}
|
|
5697
|
+
/**
|
|
5698
|
+
* Extract one IONEX vertical-TEC sample per grid node.
|
|
5699
|
+
*
|
|
5700
|
+
* Each sample is `{ epochJ2000S, latDeg, lonDeg, vtecTecu, rmsTecu }`.
|
|
5701
|
+
* Epochs are integer seconds since J2000, coordinates are degrees, and TEC
|
|
5702
|
+
* and RMS values are TECU.
|
|
5703
|
+
* @returns {any}
|
|
5704
|
+
*/
|
|
5705
|
+
tecSamples() {
|
|
5706
|
+
const ret = wasm.ionex_tecSamples(this.__wbg_ptr);
|
|
5707
|
+
if (ret[2]) {
|
|
5708
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
5709
|
+
}
|
|
5710
|
+
return takeFromExternrefTable0(ret[0]);
|
|
5711
|
+
}
|
|
5532
5712
|
/**
|
|
5533
5713
|
* Serialize to standard IONEX text. Deterministic: the same product always
|
|
5534
5714
|
* produces byte-identical text, and re-parsing the output yields an equal
|
|
@@ -6830,6 +7010,255 @@ export class MappingFactors {
|
|
|
6830
7010
|
}
|
|
6831
7011
|
if (Symbol.dispose) MappingFactors.prototype[Symbol.dispose] = MappingFactors.prototype.free;
|
|
6832
7012
|
|
|
7013
|
+
/**
|
|
7014
|
+
* In-memory reader for memory-mappable terrain store bytes.
|
|
7015
|
+
*
|
|
7016
|
+
* Query results are orthometric terrain heights `H` in metres. Use the
|
|
7017
|
+
* ellipsoidal methods only when a geoid model is deliberately selected.
|
|
7018
|
+
*/
|
|
7019
|
+
export class MmapTerrain {
|
|
7020
|
+
static __wrap(ptr) {
|
|
7021
|
+
const obj = Object.create(MmapTerrain.prototype);
|
|
7022
|
+
obj.__wbg_ptr = ptr;
|
|
7023
|
+
MmapTerrainFinalization.register(obj, obj.__wbg_ptr, obj);
|
|
7024
|
+
return obj;
|
|
7025
|
+
}
|
|
7026
|
+
__destroy_into_raw() {
|
|
7027
|
+
const ptr = this.__wbg_ptr;
|
|
7028
|
+
this.__wbg_ptr = 0;
|
|
7029
|
+
MmapTerrainFinalization.unregister(this);
|
|
7030
|
+
return ptr;
|
|
7031
|
+
}
|
|
7032
|
+
free() {
|
|
7033
|
+
const ptr = this.__destroy_into_raw();
|
|
7034
|
+
wasm.__wbg_mmapterrain_free(ptr, 0);
|
|
7035
|
+
}
|
|
7036
|
+
/**
|
|
7037
|
+
* FNV-1a checksum of the full terrain store byte span.
|
|
7038
|
+
* @returns {bigint}
|
|
7039
|
+
*/
|
|
7040
|
+
checksum64() {
|
|
7041
|
+
const ret = wasm.mmapterrain_checksum64(this.__wbg_ptr);
|
|
7042
|
+
return BigInt.asUintN(64, ret);
|
|
7043
|
+
}
|
|
7044
|
+
/**
|
|
7045
|
+
* Ellipsoidal height `h = H + N` in metres at `(longitudeDeg, latitudeDeg)`
|
|
7046
|
+
* using the embedded EGM96 1-degree geoid grid.
|
|
7047
|
+
* @param {number} longitude_deg
|
|
7048
|
+
* @param {number} latitude_deg
|
|
7049
|
+
* @returns {EllipsoidalHeightM}
|
|
7050
|
+
*/
|
|
7051
|
+
ellipsoidalHeightM(longitude_deg, latitude_deg) {
|
|
7052
|
+
const ret = wasm.mmapterrain_ellipsoidalHeightM(this.__wbg_ptr, longitude_deg, latitude_deg);
|
|
7053
|
+
if (ret[2]) {
|
|
7054
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7055
|
+
}
|
|
7056
|
+
return EllipsoidalHeightM.__wrap(ret[0]);
|
|
7057
|
+
}
|
|
7058
|
+
/**
|
|
7059
|
+
* Ellipsoidal height `h = H + N` in metres using an explicit geoid model.
|
|
7060
|
+
*
|
|
7061
|
+
* The terrain lookup input order is `(longitudeDeg, latitudeDeg)`. Choosing
|
|
7062
|
+
* the EGM96 15-arcminute model requires a loaded `WW15MGH.DAC` grid and
|
|
7063
|
+
* does not fall back to the embedded 1-degree grid.
|
|
7064
|
+
* @param {number} longitude_deg
|
|
7065
|
+
* @param {number} latitude_deg
|
|
7066
|
+
* @param {any} options
|
|
7067
|
+
* @param {TerrainGeoidModel} geoid
|
|
7068
|
+
* @returns {EllipsoidalHeightM}
|
|
7069
|
+
*/
|
|
7070
|
+
ellipsoidalHeightMWithModel(longitude_deg, latitude_deg, options, geoid) {
|
|
7071
|
+
_assertClass(geoid, TerrainGeoidModel);
|
|
7072
|
+
const ret = wasm.mmapterrain_ellipsoidalHeightMWithModel(this.__wbg_ptr, longitude_deg, latitude_deg, options, geoid.__wbg_ptr);
|
|
7073
|
+
if (ret[2]) {
|
|
7074
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7075
|
+
}
|
|
7076
|
+
return EllipsoidalHeightM.__wrap(ret[0]);
|
|
7077
|
+
}
|
|
7078
|
+
/**
|
|
7079
|
+
* Ellipsoidal height `h = H + N` in metres using embedded EGM96 1-degree
|
|
7080
|
+
* geoid conversion and explicit terrain lookup options.
|
|
7081
|
+
* @param {number} longitude_deg
|
|
7082
|
+
* @param {number} latitude_deg
|
|
7083
|
+
* @param {any} options
|
|
7084
|
+
* @returns {EllipsoidalHeightM}
|
|
7085
|
+
*/
|
|
7086
|
+
ellipsoidalHeightMWithOptions(longitude_deg, latitude_deg, options) {
|
|
7087
|
+
const ret = wasm.mmapterrain_ellipsoidalHeightMWithOptions(this.__wbg_ptr, longitude_deg, latitude_deg, options);
|
|
7088
|
+
if (ret[2]) {
|
|
7089
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7090
|
+
}
|
|
7091
|
+
return EllipsoidalHeightM.__wrap(ret[0]);
|
|
7092
|
+
}
|
|
7093
|
+
/**
|
|
7094
|
+
* Parse terrain store bytes from a `Uint8Array`.
|
|
7095
|
+
* @param {Uint8Array} bytes
|
|
7096
|
+
* @returns {MmapTerrain}
|
|
7097
|
+
*/
|
|
7098
|
+
static fromBytes(bytes) {
|
|
7099
|
+
const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
|
|
7100
|
+
const len0 = WASM_VECTOR_LEN;
|
|
7101
|
+
const ret = wasm.mmapterrain_fromBytes(ptr0, len0);
|
|
7102
|
+
if (ret[2]) {
|
|
7103
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7104
|
+
}
|
|
7105
|
+
return MmapTerrain.__wrap(ret[0]);
|
|
7106
|
+
}
|
|
7107
|
+
/**
|
|
7108
|
+
* Read a terrain store file from host I/O and parse it into memory.
|
|
7109
|
+
*
|
|
7110
|
+
* Browser runtimes should use [`MmapTerrain.fromBytes`] with fetched bytes.
|
|
7111
|
+
* @param {string} path
|
|
7112
|
+
* @returns {MmapTerrain}
|
|
7113
|
+
*/
|
|
7114
|
+
static fromPath(path) {
|
|
7115
|
+
const ptr0 = passStringToWasm0(path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
7116
|
+
const len0 = WASM_VECTOR_LEN;
|
|
7117
|
+
const ret = wasm.mmapterrain_fromPath(ptr0, len0);
|
|
7118
|
+
if (ret[2]) {
|
|
7119
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7120
|
+
}
|
|
7121
|
+
return MmapTerrain.__wrap(ret[0]);
|
|
7122
|
+
}
|
|
7123
|
+
/**
|
|
7124
|
+
* Parse terrain store bytes from an owned `Uint8Array` copy.
|
|
7125
|
+
* @param {Uint8Array} bytes
|
|
7126
|
+
* @returns {MmapTerrain}
|
|
7127
|
+
*/
|
|
7128
|
+
static fromVec(bytes) {
|
|
7129
|
+
const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
|
|
7130
|
+
const len0 = WASM_VECTOR_LEN;
|
|
7131
|
+
const ret = wasm.mmapterrain_fromVec(ptr0, len0);
|
|
7132
|
+
if (ret[2]) {
|
|
7133
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7134
|
+
}
|
|
7135
|
+
return MmapTerrain.__wrap(ret[0]);
|
|
7136
|
+
}
|
|
7137
|
+
/**
|
|
7138
|
+
* Batch ORTHOMETRIC terrain heights for longitude-first points.
|
|
7139
|
+
*
|
|
7140
|
+
* `points` is an array of `[longitudeDeg, latitudeDeg]` pairs or
|
|
7141
|
+
* `{ longitudeDeg, latitudeDeg }` objects. Each entry is
|
|
7142
|
+
* `{ ok: true, heightM }` or `{ ok: false, error }`.
|
|
7143
|
+
* @param {any} points
|
|
7144
|
+
* @param {any} options
|
|
7145
|
+
* @returns {any}
|
|
7146
|
+
*/
|
|
7147
|
+
heightBatch(points, options) {
|
|
7148
|
+
const ret = wasm.mmapterrain_heightBatch(this.__wbg_ptr, points, options);
|
|
7149
|
+
if (ret[2]) {
|
|
7150
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7151
|
+
}
|
|
7152
|
+
return takeFromExternrefTable0(ret[0]);
|
|
7153
|
+
}
|
|
7154
|
+
/**
|
|
7155
|
+
* Terrain height in ORTHOMETRIC metres at `(longitudeDeg, latitudeDeg)`.
|
|
7156
|
+
*
|
|
7157
|
+
* Longitude and latitude are degrees. The lookup uses bilinear
|
|
7158
|
+
* interpolation. Missing tiles evaluate to `0.0`.
|
|
7159
|
+
* @param {number} longitude_deg
|
|
7160
|
+
* @param {number} latitude_deg
|
|
7161
|
+
* @returns {number}
|
|
7162
|
+
*/
|
|
7163
|
+
heightM(longitude_deg, latitude_deg) {
|
|
7164
|
+
const ret = wasm.mmapterrain_heightM(this.__wbg_ptr, longitude_deg, latitude_deg);
|
|
7165
|
+
if (ret[2]) {
|
|
7166
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7167
|
+
}
|
|
7168
|
+
return ret[0];
|
|
7169
|
+
}
|
|
7170
|
+
/**
|
|
7171
|
+
* Terrain height in ORTHOMETRIC metres at `(longitudeDeg, latitudeDeg)`.
|
|
7172
|
+
*
|
|
7173
|
+
* `options.interpolation` is `"bilinear"`, `"nearest"`, or
|
|
7174
|
+
* `"nearestPosting"`.
|
|
7175
|
+
* @param {number} longitude_deg
|
|
7176
|
+
* @param {number} latitude_deg
|
|
7177
|
+
* @param {any} options
|
|
7178
|
+
* @returns {number}
|
|
7179
|
+
*/
|
|
7180
|
+
heightMWithOptions(longitude_deg, latitude_deg, options) {
|
|
7181
|
+
const ret = wasm.mmapterrain_heightMWithOptions(this.__wbg_ptr, longitude_deg, latitude_deg, options);
|
|
7182
|
+
if (ret[2]) {
|
|
7183
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7184
|
+
}
|
|
7185
|
+
return ret[0];
|
|
7186
|
+
}
|
|
7187
|
+
/**
|
|
7188
|
+
* Batch typed ORTHOMETRIC terrain heights for longitude-first points.
|
|
7189
|
+
*
|
|
7190
|
+
* Each entry is `{ ok: true, orthometricHeightM: { valueM } }` or
|
|
7191
|
+
* `{ ok: false, error }`.
|
|
7192
|
+
* @param {any} points
|
|
7193
|
+
* @param {any} options
|
|
7194
|
+
* @returns {any}
|
|
7195
|
+
*/
|
|
7196
|
+
orthometricHeightBatch(points, options) {
|
|
7197
|
+
const ret = wasm.mmapterrain_orthometricHeightBatch(this.__wbg_ptr, points, options);
|
|
7198
|
+
if (ret[2]) {
|
|
7199
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7200
|
+
}
|
|
7201
|
+
return takeFromExternrefTable0(ret[0]);
|
|
7202
|
+
}
|
|
7203
|
+
/**
|
|
7204
|
+
* Typed ORTHOMETRIC terrain height `H` at `(longitudeDeg, latitudeDeg)`.
|
|
7205
|
+
* @param {number} longitude_deg
|
|
7206
|
+
* @param {number} latitude_deg
|
|
7207
|
+
* @returns {OrthometricHeightM}
|
|
7208
|
+
*/
|
|
7209
|
+
orthometricHeightM(longitude_deg, latitude_deg) {
|
|
7210
|
+
const ret = wasm.mmapterrain_orthometricHeightM(this.__wbg_ptr, longitude_deg, latitude_deg);
|
|
7211
|
+
if (ret[2]) {
|
|
7212
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7213
|
+
}
|
|
7214
|
+
return OrthometricHeightM.__wrap(ret[0]);
|
|
7215
|
+
}
|
|
7216
|
+
/**
|
|
7217
|
+
* Typed ORTHOMETRIC terrain height `H` at `(longitudeDeg, latitudeDeg)`
|
|
7218
|
+
* with explicit lookup options.
|
|
7219
|
+
* @param {number} longitude_deg
|
|
7220
|
+
* @param {number} latitude_deg
|
|
7221
|
+
* @param {any} options
|
|
7222
|
+
* @returns {OrthometricHeightM}
|
|
7223
|
+
*/
|
|
7224
|
+
orthometricHeightMWithOptions(longitude_deg, latitude_deg, options) {
|
|
7225
|
+
const ret = wasm.mmapterrain_orthometricHeightMWithOptions(this.__wbg_ptr, longitude_deg, latitude_deg, options);
|
|
7226
|
+
if (ret[2]) {
|
|
7227
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
7228
|
+
}
|
|
7229
|
+
return OrthometricHeightM.__wrap(ret[0]);
|
|
7230
|
+
}
|
|
7231
|
+
/**
|
|
7232
|
+
* Parsed tile index records in store order.
|
|
7233
|
+
* @returns {TerrainStoreTileIndex[]}
|
|
7234
|
+
*/
|
|
7235
|
+
tileIndex() {
|
|
7236
|
+
const ret = wasm.mmapterrain_tileIndex(this.__wbg_ptr);
|
|
7237
|
+
var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
|
|
7238
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
|
|
7239
|
+
return v1;
|
|
7240
|
+
}
|
|
7241
|
+
/**
|
|
7242
|
+
* Canonical store bytes for this parsed terrain store.
|
|
7243
|
+
* @returns {Uint8Array}
|
|
7244
|
+
*/
|
|
7245
|
+
toBytes() {
|
|
7246
|
+
const ret = wasm.mmapterrain_toBytes(this.__wbg_ptr);
|
|
7247
|
+
var v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
|
|
7248
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
|
|
7249
|
+
return v1;
|
|
7250
|
+
}
|
|
7251
|
+
/**
|
|
7252
|
+
* File-level vertical datum for the store's orthometric posting payloads.
|
|
7253
|
+
* @returns {VerticalDatum}
|
|
7254
|
+
*/
|
|
7255
|
+
get verticalDatum() {
|
|
7256
|
+
const ret = wasm.mmapterrain_verticalDatum(this.__wbg_ptr);
|
|
7257
|
+
return ret;
|
|
7258
|
+
}
|
|
7259
|
+
}
|
|
7260
|
+
if (Symbol.dispose) MmapTerrain.prototype[Symbol.dispose] = MmapTerrain.prototype.free;
|
|
7261
|
+
|
|
6833
7262
|
/**
|
|
6834
7263
|
* One refined Moon elevation threshold crossing (moonrise / moonset).
|
|
6835
7264
|
*/
|
|
@@ -7763,10 +8192,228 @@ export const ObservationKind = Object.freeze({
|
|
|
7763
8192
|
*/
|
|
7764
8193
|
SignalStrength: 3, "3": "SignalStrength",
|
|
7765
8194
|
/**
|
|
7766
|
-
* Unknown leading RINEX code letter.
|
|
8195
|
+
* Unknown leading RINEX code letter.
|
|
8196
|
+
*/
|
|
8197
|
+
Unknown: 4, "4": "Unknown",
|
|
8198
|
+
});
|
|
8199
|
+
|
|
8200
|
+
/**
|
|
8201
|
+
* Aggregate observation QC report.
|
|
8202
|
+
*/
|
|
8203
|
+
export class ObservationQcReport {
|
|
8204
|
+
static __wrap(ptr) {
|
|
8205
|
+
const obj = Object.create(ObservationQcReport.prototype);
|
|
8206
|
+
obj.__wbg_ptr = ptr;
|
|
8207
|
+
ObservationQcReportFinalization.register(obj, obj.__wbg_ptr, obj);
|
|
8208
|
+
return obj;
|
|
8209
|
+
}
|
|
8210
|
+
__destroy_into_raw() {
|
|
8211
|
+
const ptr = this.__wbg_ptr;
|
|
8212
|
+
this.__wbg_ptr = 0;
|
|
8213
|
+
ObservationQcReportFinalization.unregister(this);
|
|
8214
|
+
return ptr;
|
|
8215
|
+
}
|
|
8216
|
+
free() {
|
|
8217
|
+
const ptr = this.__destroy_into_raw();
|
|
8218
|
+
wasm.__wbg_observationqcreport_free(ptr, 0);
|
|
8219
|
+
}
|
|
8220
|
+
/**
|
|
8221
|
+
* @returns {any}
|
|
8222
|
+
*/
|
|
8223
|
+
get clockJumps() {
|
|
8224
|
+
const ret = wasm.observationqcreport_clockJumps(this.__wbg_ptr);
|
|
8225
|
+
if (ret[2]) {
|
|
8226
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
8227
|
+
}
|
|
8228
|
+
return takeFromExternrefTable0(ret[0]);
|
|
8229
|
+
}
|
|
8230
|
+
/**
|
|
8231
|
+
* @returns {any}
|
|
8232
|
+
*/
|
|
8233
|
+
get cycleSlips() {
|
|
8234
|
+
const ret = wasm.observationqcreport_cycleSlips(this.__wbg_ptr);
|
|
8235
|
+
if (ret[2]) {
|
|
8236
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
8237
|
+
}
|
|
8238
|
+
return takeFromExternrefTable0(ret[0]);
|
|
8239
|
+
}
|
|
8240
|
+
/**
|
|
8241
|
+
* @returns {any}
|
|
8242
|
+
*/
|
|
8243
|
+
get dataGaps() {
|
|
8244
|
+
const ret = wasm.observationqcreport_dataGaps(this.__wbg_ptr);
|
|
8245
|
+
if (ret[2]) {
|
|
8246
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
8247
|
+
}
|
|
8248
|
+
return takeFromExternrefTable0(ret[0]);
|
|
8249
|
+
}
|
|
8250
|
+
/**
|
|
8251
|
+
* @returns {number}
|
|
8252
|
+
*/
|
|
8253
|
+
get eventRecords() {
|
|
8254
|
+
const ret = wasm.observationqcreport_eventRecords(this.__wbg_ptr);
|
|
8255
|
+
return ret >>> 0;
|
|
8256
|
+
}
|
|
8257
|
+
/**
|
|
8258
|
+
* @returns {number | undefined}
|
|
8259
|
+
*/
|
|
8260
|
+
get intervalS() {
|
|
8261
|
+
const ret = wasm.observationqcreport_intervalS(this.__wbg_ptr);
|
|
8262
|
+
return ret[0] === 0 ? undefined : ret[1];
|
|
8263
|
+
}
|
|
8264
|
+
/**
|
|
8265
|
+
* @returns {string}
|
|
8266
|
+
*/
|
|
8267
|
+
get intervalSource() {
|
|
8268
|
+
let deferred1_0;
|
|
8269
|
+
let deferred1_1;
|
|
8270
|
+
try {
|
|
8271
|
+
const ret = wasm.observationqcreport_intervalSource(this.__wbg_ptr);
|
|
8272
|
+
deferred1_0 = ret[0];
|
|
8273
|
+
deferred1_1 = ret[1];
|
|
8274
|
+
return getStringFromWasm0(ret[0], ret[1]);
|
|
8275
|
+
} finally {
|
|
8276
|
+
wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
|
|
8277
|
+
}
|
|
8278
|
+
}
|
|
8279
|
+
/**
|
|
8280
|
+
* @returns {number}
|
|
8281
|
+
*/
|
|
8282
|
+
get missingEpochs() {
|
|
8283
|
+
const ret = wasm.observationqcreport_missingEpochs(this.__wbg_ptr);
|
|
8284
|
+
return ret >>> 0;
|
|
8285
|
+
}
|
|
8286
|
+
/**
|
|
8287
|
+
* @returns {any}
|
|
8288
|
+
*/
|
|
8289
|
+
get multipath() {
|
|
8290
|
+
const ret = wasm.observationqcreport_multipath(this.__wbg_ptr);
|
|
8291
|
+
if (ret[2]) {
|
|
8292
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
8293
|
+
}
|
|
8294
|
+
return takeFromExternrefTable0(ret[0]);
|
|
8295
|
+
}
|
|
8296
|
+
/**
|
|
8297
|
+
* @returns {any}
|
|
8298
|
+
*/
|
|
8299
|
+
get notes() {
|
|
8300
|
+
const ret = wasm.observationqcreport_notes(this.__wbg_ptr);
|
|
8301
|
+
if (ret[2]) {
|
|
8302
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
8303
|
+
}
|
|
8304
|
+
return takeFromExternrefTable0(ret[0]);
|
|
8305
|
+
}
|
|
8306
|
+
/**
|
|
8307
|
+
* @returns {number}
|
|
8308
|
+
*/
|
|
8309
|
+
get observationEpochs() {
|
|
8310
|
+
const ret = wasm.observationqcreport_observationEpochs(this.__wbg_ptr);
|
|
8311
|
+
return ret >>> 0;
|
|
8312
|
+
}
|
|
8313
|
+
/**
|
|
8314
|
+
* @returns {number}
|
|
8315
|
+
*/
|
|
8316
|
+
get powerFailureEpochs() {
|
|
8317
|
+
const ret = wasm.observationqcreport_powerFailureEpochs(this.__wbg_ptr);
|
|
8318
|
+
return ret >>> 0;
|
|
8319
|
+
}
|
|
8320
|
+
/**
|
|
8321
|
+
* @returns {string}
|
|
8322
|
+
*/
|
|
8323
|
+
renderHtml() {
|
|
8324
|
+
let deferred1_0;
|
|
8325
|
+
let deferred1_1;
|
|
8326
|
+
try {
|
|
8327
|
+
const ret = wasm.observationqcreport_renderHtml(this.__wbg_ptr);
|
|
8328
|
+
deferred1_0 = ret[0];
|
|
8329
|
+
deferred1_1 = ret[1];
|
|
8330
|
+
return getStringFromWasm0(ret[0], ret[1]);
|
|
8331
|
+
} finally {
|
|
8332
|
+
wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
|
|
8333
|
+
}
|
|
8334
|
+
}
|
|
8335
|
+
/**
|
|
8336
|
+
* @returns {string}
|
|
8337
|
+
*/
|
|
8338
|
+
renderText() {
|
|
8339
|
+
let deferred1_0;
|
|
8340
|
+
let deferred1_1;
|
|
8341
|
+
try {
|
|
8342
|
+
const ret = wasm.observationqcreport_renderText(this.__wbg_ptr);
|
|
8343
|
+
deferred1_0 = ret[0];
|
|
8344
|
+
deferred1_1 = ret[1];
|
|
8345
|
+
return getStringFromWasm0(ret[0], ret[1]);
|
|
8346
|
+
} finally {
|
|
8347
|
+
wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
|
|
8348
|
+
}
|
|
8349
|
+
}
|
|
8350
|
+
/**
|
|
8351
|
+
* @returns {any}
|
|
8352
|
+
*/
|
|
8353
|
+
get satelliteSignals() {
|
|
8354
|
+
const ret = wasm.observationqcreport_satelliteSignals(this.__wbg_ptr);
|
|
8355
|
+
if (ret[2]) {
|
|
8356
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
8357
|
+
}
|
|
8358
|
+
return takeFromExternrefTable0(ret[0]);
|
|
8359
|
+
}
|
|
8360
|
+
/**
|
|
8361
|
+
* @returns {any}
|
|
8362
|
+
*/
|
|
8363
|
+
get satellites() {
|
|
8364
|
+
const ret = wasm.observationqcreport_satellites(this.__wbg_ptr);
|
|
8365
|
+
if (ret[2]) {
|
|
8366
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
8367
|
+
}
|
|
8368
|
+
return takeFromExternrefTable0(ret[0]);
|
|
8369
|
+
}
|
|
8370
|
+
/**
|
|
8371
|
+
* @returns {number}
|
|
8372
|
+
*/
|
|
8373
|
+
get skippedRecords() {
|
|
8374
|
+
const ret = wasm.observationqcreport_skippedRecords(this.__wbg_ptr);
|
|
8375
|
+
return ret >>> 0;
|
|
8376
|
+
}
|
|
8377
|
+
/**
|
|
8378
|
+
* @returns {any}
|
|
8379
|
+
*/
|
|
8380
|
+
get systemSignals() {
|
|
8381
|
+
const ret = wasm.observationqcreport_systemSignals(this.__wbg_ptr);
|
|
8382
|
+
if (ret[2]) {
|
|
8383
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
8384
|
+
}
|
|
8385
|
+
return takeFromExternrefTable0(ret[0]);
|
|
8386
|
+
}
|
|
8387
|
+
/**
|
|
8388
|
+
* @returns {string}
|
|
8389
|
+
*/
|
|
8390
|
+
toJson() {
|
|
8391
|
+
let deferred2_0;
|
|
8392
|
+
let deferred2_1;
|
|
8393
|
+
try {
|
|
8394
|
+
const ret = wasm.observationqcreport_toJson(this.__wbg_ptr);
|
|
8395
|
+
var ptr1 = ret[0];
|
|
8396
|
+
var len1 = ret[1];
|
|
8397
|
+
if (ret[3]) {
|
|
8398
|
+
ptr1 = 0; len1 = 0;
|
|
8399
|
+
throw takeFromExternrefTable0(ret[2]);
|
|
8400
|
+
}
|
|
8401
|
+
deferred2_0 = ptr1;
|
|
8402
|
+
deferred2_1 = len1;
|
|
8403
|
+
return getStringFromWasm0(ptr1, len1);
|
|
8404
|
+
} finally {
|
|
8405
|
+
wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
|
|
8406
|
+
}
|
|
8407
|
+
}
|
|
8408
|
+
/**
|
|
8409
|
+
* @returns {number}
|
|
7767
8410
|
*/
|
|
7768
|
-
|
|
7769
|
-
|
|
8411
|
+
get totalEpochRecords() {
|
|
8412
|
+
const ret = wasm.observationqcreport_totalEpochRecords(this.__wbg_ptr);
|
|
8413
|
+
return ret >>> 0;
|
|
8414
|
+
}
|
|
8415
|
+
}
|
|
8416
|
+
if (Symbol.dispose) ObservationQcReport.prototype[Symbol.dispose] = ObservationQcReport.prototype.free;
|
|
7770
8417
|
|
|
7771
8418
|
/**
|
|
7772
8419
|
* Flattened raw observation rows from one RINEX OBS epoch. Numeric arrays are
|
|
@@ -9720,6 +10367,80 @@ export class OpmState {
|
|
|
9720
10367
|
}
|
|
9721
10368
|
if (Symbol.dispose) OpmState.prototype[Symbol.dispose] = OpmState.prototype.free;
|
|
9722
10369
|
|
|
10370
|
+
/**
|
|
10371
|
+
* Orthometric terrain height `H` in metres above the EGM96 mean sea level
|
|
10372
|
+
* geoid.
|
|
10373
|
+
*/
|
|
10374
|
+
export class OrthometricHeightM {
|
|
10375
|
+
static __wrap(ptr) {
|
|
10376
|
+
const obj = Object.create(OrthometricHeightM.prototype);
|
|
10377
|
+
obj.__wbg_ptr = ptr;
|
|
10378
|
+
OrthometricHeightMFinalization.register(obj, obj.__wbg_ptr, obj);
|
|
10379
|
+
return obj;
|
|
10380
|
+
}
|
|
10381
|
+
__destroy_into_raw() {
|
|
10382
|
+
const ptr = this.__wbg_ptr;
|
|
10383
|
+
this.__wbg_ptr = 0;
|
|
10384
|
+
OrthometricHeightMFinalization.unregister(this);
|
|
10385
|
+
return ptr;
|
|
10386
|
+
}
|
|
10387
|
+
free() {
|
|
10388
|
+
const ptr = this.__destroy_into_raw();
|
|
10389
|
+
wasm.__wbg_orthometricheightm_free(ptr, 0);
|
|
10390
|
+
}
|
|
10391
|
+
/**
|
|
10392
|
+
* Build an orthometric height `H` in metres.
|
|
10393
|
+
* @param {number} value_m
|
|
10394
|
+
*/
|
|
10395
|
+
constructor(value_m) {
|
|
10396
|
+
const ret = wasm.orthometricheightm_new(value_m);
|
|
10397
|
+
this.__wbg_ptr = ret;
|
|
10398
|
+
OrthometricHeightMFinalization.register(this, this.__wbg_ptr, this);
|
|
10399
|
+
return this;
|
|
10400
|
+
}
|
|
10401
|
+
/**
|
|
10402
|
+
* Convert to ellipsoidal height `h = H + N` using degree inputs in geoid
|
|
10403
|
+
* order `(latitudeDeg, longitudeDeg)` and an explicit geoid model.
|
|
10404
|
+
* @param {number} latitude_deg
|
|
10405
|
+
* @param {number} longitude_deg
|
|
10406
|
+
* @param {TerrainGeoidModel} geoid
|
|
10407
|
+
* @returns {EllipsoidalHeightM}
|
|
10408
|
+
*/
|
|
10409
|
+
toEllipsoidalHeightDeg(latitude_deg, longitude_deg, geoid) {
|
|
10410
|
+
_assertClass(geoid, TerrainGeoidModel);
|
|
10411
|
+
const ret = wasm.orthometricheightm_toEllipsoidalHeightDeg(this.__wbg_ptr, latitude_deg, longitude_deg, geoid.__wbg_ptr);
|
|
10412
|
+
if (ret[2]) {
|
|
10413
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
10414
|
+
}
|
|
10415
|
+
return EllipsoidalHeightM.__wrap(ret[0]);
|
|
10416
|
+
}
|
|
10417
|
+
/**
|
|
10418
|
+
* Convert to ellipsoidal height `h = H + N` using radian inputs in geoid
|
|
10419
|
+
* order `(latitudeRad, longitudeRad)` and an explicit geoid model.
|
|
10420
|
+
* @param {number} latitude_rad
|
|
10421
|
+
* @param {number} longitude_rad
|
|
10422
|
+
* @param {TerrainGeoidModel} geoid
|
|
10423
|
+
* @returns {EllipsoidalHeightM}
|
|
10424
|
+
*/
|
|
10425
|
+
toEllipsoidalHeightRad(latitude_rad, longitude_rad, geoid) {
|
|
10426
|
+
_assertClass(geoid, TerrainGeoidModel);
|
|
10427
|
+
const ret = wasm.orthometricheightm_toEllipsoidalHeightRad(this.__wbg_ptr, latitude_rad, longitude_rad, geoid.__wbg_ptr);
|
|
10428
|
+
if (ret[2]) {
|
|
10429
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
10430
|
+
}
|
|
10431
|
+
return EllipsoidalHeightM.__wrap(ret[0]);
|
|
10432
|
+
}
|
|
10433
|
+
/**
|
|
10434
|
+
* Orthometric height `H`, metres above the EGM96 mean sea level geoid.
|
|
10435
|
+
* @returns {number}
|
|
10436
|
+
*/
|
|
10437
|
+
get valueM() {
|
|
10438
|
+
const ret = wasm.orthometricheightm_valueM(this.__wbg_ptr);
|
|
10439
|
+
return ret;
|
|
10440
|
+
}
|
|
10441
|
+
}
|
|
10442
|
+
if (Symbol.dispose) OrthometricHeightM.prototype[Symbol.dispose] = OrthometricHeightM.prototype.free;
|
|
10443
|
+
|
|
9723
10444
|
/**
|
|
9724
10445
|
* The result of [`parseTleFile`]: the satellites that parsed, plus a count of
|
|
9725
10446
|
* complete records that were skipped because SGP4 initialization failed.
|
|
@@ -11696,6 +12417,12 @@ export class SatelliteVector {
|
|
|
11696
12417
|
}
|
|
11697
12418
|
if (Symbol.dispose) SatelliteVector.prototype[Symbol.dispose] = SatelliteVector.prototype.free;
|
|
11698
12419
|
|
|
12420
|
+
/**
|
|
12421
|
+
* Mutable SBAS correction store.
|
|
12422
|
+
*
|
|
12423
|
+
* Ingest raw SBAS messages with a source GEO and GNSS time, then query decoded
|
|
12424
|
+
* fast, long-term, ionospheric, and GEO navigation correction records.
|
|
12425
|
+
*/
|
|
11699
12426
|
export class SbasCorrectionStore {
|
|
11700
12427
|
__destroy_into_raw() {
|
|
11701
12428
|
const ptr = this.__wbg_ptr;
|
|
@@ -11708,6 +12435,49 @@ export class SbasCorrectionStore {
|
|
|
11708
12435
|
wasm.__wbg_sbascorrectionstore_free(ptr, 0);
|
|
11709
12436
|
}
|
|
11710
12437
|
/**
|
|
12438
|
+
* Fast pseudorange correction for `(geo, sat)`, or `null`.
|
|
12439
|
+
*
|
|
12440
|
+
* `prcM` is meters, `rrcMS` is meters per second, and `tOfJ2000S` is
|
|
12441
|
+
* seconds since J2000.
|
|
12442
|
+
* @param {string} geo
|
|
12443
|
+
* @param {string} sat
|
|
12444
|
+
* @returns {any}
|
|
12445
|
+
*/
|
|
12446
|
+
fastCorrection(geo, sat) {
|
|
12447
|
+
const ptr0 = passStringToWasm0(geo, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
12448
|
+
const len0 = WASM_VECTOR_LEN;
|
|
12449
|
+
const ptr1 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
12450
|
+
const len1 = WASM_VECTOR_LEN;
|
|
12451
|
+
const ret = wasm.sbascorrectionstore_fastCorrection(this.__wbg_ptr, ptr0, len0, ptr1, len1);
|
|
12452
|
+
if (ret[2]) {
|
|
12453
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
12454
|
+
}
|
|
12455
|
+
return takeFromExternrefTable0(ret[0]);
|
|
12456
|
+
}
|
|
12457
|
+
/**
|
|
12458
|
+
* SBAS GEO navigation state for `geo`, or `null`.
|
|
12459
|
+
*
|
|
12460
|
+
* Positions are ECEF meters, velocities are ECEF meters per second,
|
|
12461
|
+
* accelerations are ECEF meters per second squared, clock fields are
|
|
12462
|
+
* seconds and seconds per second, and `t0J2000S` is seconds since J2000.
|
|
12463
|
+
* @param {string} geo
|
|
12464
|
+
* @returns {any}
|
|
12465
|
+
*/
|
|
12466
|
+
geoNavState(geo) {
|
|
12467
|
+
const ptr0 = passStringToWasm0(geo, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
12468
|
+
const len0 = WASM_VECTOR_LEN;
|
|
12469
|
+
const ret = wasm.sbascorrectionstore_geoNavState(this.__wbg_ptr, ptr0, len0);
|
|
12470
|
+
if (ret[2]) {
|
|
12471
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
12472
|
+
}
|
|
12473
|
+
return takeFromExternrefTable0(ret[0]);
|
|
12474
|
+
}
|
|
12475
|
+
/**
|
|
12476
|
+
* Ingest one decoded SBAS message into the correction store.
|
|
12477
|
+
*
|
|
12478
|
+
* `geo` is the SBAS source satellite token such as `"S29"`. `week` and
|
|
12479
|
+
* `towS` are in the selected GNSS time scale. `form` is `"framed250"` or
|
|
12480
|
+
* `"body226"`.
|
|
11711
12481
|
* @param {Uint8Array} bytes
|
|
11712
12482
|
* @param {string | null | undefined} form
|
|
11713
12483
|
* @param {string} geo
|
|
@@ -11730,6 +12500,27 @@ export class SbasCorrectionStore {
|
|
|
11730
12500
|
}
|
|
11731
12501
|
}
|
|
11732
12502
|
/**
|
|
12503
|
+
* SBAS ionospheric grid for `geo`, or `null`.
|
|
12504
|
+
*
|
|
12505
|
+
* Grid point latitudes and longitudes are degrees, vertical delays are
|
|
12506
|
+
* meters, and GIVE variances are square meters when present.
|
|
12507
|
+
* @param {string} geo
|
|
12508
|
+
* @returns {any}
|
|
12509
|
+
*/
|
|
12510
|
+
ionoGrid(geo) {
|
|
12511
|
+
const ptr0 = passStringToWasm0(geo, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
12512
|
+
const len0 = WASM_VECTOR_LEN;
|
|
12513
|
+
const ret = wasm.sbascorrectionstore_ionoGrid(this.__wbg_ptr, ptr0, len0);
|
|
12514
|
+
if (ret[2]) {
|
|
12515
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
12516
|
+
}
|
|
12517
|
+
return takeFromExternrefTable0(ret[0]);
|
|
12518
|
+
}
|
|
12519
|
+
/**
|
|
12520
|
+
* SBAS ionospheric slant delay in meters, or `null`.
|
|
12521
|
+
*
|
|
12522
|
+
* Receiver latitude, longitude, elevation, and azimuth are radians.
|
|
12523
|
+
* `frequencyHz` is the carrier frequency for the reported group delay.
|
|
11733
12524
|
* @param {string} geo
|
|
11734
12525
|
* @param {number} receiver_lat_rad
|
|
11735
12526
|
* @param {number} receiver_lon_rad
|
|
@@ -11748,6 +12539,30 @@ export class SbasCorrectionStore {
|
|
|
11748
12539
|
}
|
|
11749
12540
|
return ret[0] === 0 ? undefined : ret[1];
|
|
11750
12541
|
}
|
|
12542
|
+
/**
|
|
12543
|
+
* Long-term orbit and clock correction for `(geo, sat)`, or `null`.
|
|
12544
|
+
*
|
|
12545
|
+
* Position deltas are ECEF meters, rates are ECEF meters per second, clock
|
|
12546
|
+
* deltas are seconds and seconds per second, and `t0J2000S` is seconds
|
|
12547
|
+
* since J2000.
|
|
12548
|
+
* @param {string} geo
|
|
12549
|
+
* @param {string} sat
|
|
12550
|
+
* @returns {any}
|
|
12551
|
+
*/
|
|
12552
|
+
longTermCorrection(geo, sat) {
|
|
12553
|
+
const ptr0 = passStringToWasm0(geo, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
12554
|
+
const len0 = WASM_VECTOR_LEN;
|
|
12555
|
+
const ptr1 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
12556
|
+
const len1 = WASM_VECTOR_LEN;
|
|
12557
|
+
const ret = wasm.sbascorrectionstore_longTermCorrection(this.__wbg_ptr, ptr0, len0, ptr1, len1);
|
|
12558
|
+
if (ret[2]) {
|
|
12559
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
12560
|
+
}
|
|
12561
|
+
return takeFromExternrefTable0(ret[0]);
|
|
12562
|
+
}
|
|
12563
|
+
/**
|
|
12564
|
+
* Create an empty SBAS correction store.
|
|
12565
|
+
*/
|
|
11751
12566
|
constructor() {
|
|
11752
12567
|
const ret = wasm.sbascorrectionstore_new();
|
|
11753
12568
|
this.__wbg_ptr = ret;
|
|
@@ -11755,6 +12570,10 @@ export class SbasCorrectionStore {
|
|
|
11755
12570
|
return this;
|
|
11756
12571
|
}
|
|
11757
12572
|
/**
|
|
12573
|
+
* Ready SBAS GEO source satellites at `tJ2000S`.
|
|
12574
|
+
*
|
|
12575
|
+
* The time is seconds since J2000. Returned tokens are strings such as
|
|
12576
|
+
* `"S29"`, sorted by most recent update first.
|
|
11758
12577
|
* @param {number} t_j2000_s
|
|
11759
12578
|
* @returns {string[]}
|
|
11760
12579
|
*/
|
|
@@ -11764,6 +12583,24 @@ export class SbasCorrectionStore {
|
|
|
11764
12583
|
wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
|
|
11765
12584
|
return v1;
|
|
11766
12585
|
}
|
|
12586
|
+
/**
|
|
12587
|
+
* Allow or disallow partial SBAS corrections when building corrected
|
|
12588
|
+
* ephemeris states.
|
|
12589
|
+
* @param {boolean} yes
|
|
12590
|
+
*/
|
|
12591
|
+
setAllowPartial(yes) {
|
|
12592
|
+
wasm.sbascorrectionstore_setAllowPartial(this.__wbg_ptr, yes);
|
|
12593
|
+
}
|
|
12594
|
+
/**
|
|
12595
|
+
* Set the maximum staleness for fresh SBAS corrections, in seconds.
|
|
12596
|
+
* @param {number} seconds
|
|
12597
|
+
*/
|
|
12598
|
+
setStalenessSeconds(seconds) {
|
|
12599
|
+
const ret = wasm.sbascorrectionstore_setStalenessSeconds(this.__wbg_ptr, seconds);
|
|
12600
|
+
if (ret[1]) {
|
|
12601
|
+
throw takeFromExternrefTable0(ret[0]);
|
|
12602
|
+
}
|
|
12603
|
+
}
|
|
11767
12604
|
}
|
|
11768
12605
|
if (Symbol.dispose) SbasCorrectionStore.prototype[Symbol.dispose] = SbasCorrectionStore.prototype.free;
|
|
11769
12606
|
|
|
@@ -13628,69 +14465,302 @@ export const SsrSource = Object.freeze({
|
|
|
13628
14465
|
* The frame (geocentric ECI of date vs Earth-fixed ITRS/ECEF) is fixed by which
|
|
13629
14466
|
* function produced this object: [`sunMoonEci`] or [`sunMoonEcef`].
|
|
13630
14467
|
*/
|
|
13631
|
-
export class SunMoon {
|
|
14468
|
+
export class SunMoon {
|
|
14469
|
+
static __wrap(ptr) {
|
|
14470
|
+
const obj = Object.create(SunMoon.prototype);
|
|
14471
|
+
obj.__wbg_ptr = ptr;
|
|
14472
|
+
SunMoonFinalization.register(obj, obj.__wbg_ptr, obj);
|
|
14473
|
+
return obj;
|
|
14474
|
+
}
|
|
14475
|
+
__destroy_into_raw() {
|
|
14476
|
+
const ptr = this.__wbg_ptr;
|
|
14477
|
+
this.__wbg_ptr = 0;
|
|
14478
|
+
SunMoonFinalization.unregister(this);
|
|
14479
|
+
return ptr;
|
|
14480
|
+
}
|
|
14481
|
+
free() {
|
|
14482
|
+
const ptr = this.__destroy_into_raw();
|
|
14483
|
+
wasm.__wbg_sunmoon_free(ptr, 0);
|
|
14484
|
+
}
|
|
14485
|
+
/**
|
|
14486
|
+
* Number of epochs in the batch.
|
|
14487
|
+
* @returns {number}
|
|
14488
|
+
*/
|
|
14489
|
+
get epochCount() {
|
|
14490
|
+
const ret = wasm.sunmoon_epochCount(this.__wbg_ptr);
|
|
14491
|
+
return ret >>> 0;
|
|
14492
|
+
}
|
|
14493
|
+
/**
|
|
14494
|
+
* The frame these positions are in: `"eci"` or `"ecef"`.
|
|
14495
|
+
* @returns {string}
|
|
14496
|
+
*/
|
|
14497
|
+
get frame() {
|
|
14498
|
+
let deferred1_0;
|
|
14499
|
+
let deferred1_1;
|
|
14500
|
+
try {
|
|
14501
|
+
const ret = wasm.sunmoon_frame(this.__wbg_ptr);
|
|
14502
|
+
deferred1_0 = ret[0];
|
|
14503
|
+
deferred1_1 = ret[1];
|
|
14504
|
+
return getStringFromWasm0(ret[0], ret[1]);
|
|
14505
|
+
} finally {
|
|
14506
|
+
wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
|
|
14507
|
+
}
|
|
14508
|
+
}
|
|
14509
|
+
/**
|
|
14510
|
+
* Moon positions, metres, flat row-major `(n, 3)`.
|
|
14511
|
+
* @returns {Float64Array}
|
|
14512
|
+
*/
|
|
14513
|
+
get moon() {
|
|
14514
|
+
const ret = wasm.sunmoon_moon(this.__wbg_ptr);
|
|
14515
|
+
var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
|
|
14516
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
|
|
14517
|
+
return v1;
|
|
14518
|
+
}
|
|
14519
|
+
/**
|
|
14520
|
+
* Sun positions, metres, flat row-major `(n, 3)`.
|
|
14521
|
+
* @returns {Float64Array}
|
|
14522
|
+
*/
|
|
14523
|
+
get sun() {
|
|
14524
|
+
const ret = wasm.sunmoon_sun(this.__wbg_ptr);
|
|
14525
|
+
var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
|
|
14526
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
|
|
14527
|
+
return v1;
|
|
14528
|
+
}
|
|
14529
|
+
}
|
|
14530
|
+
if (Symbol.dispose) SunMoon.prototype[Symbol.dispose] = SunMoon.prototype.free;
|
|
14531
|
+
|
|
14532
|
+
/**
|
|
14533
|
+
* Terrain datum conversion and optional geoid-grid loading error variants.
|
|
14534
|
+
* @enum {0 | 1 | 2 | 3}
|
|
14535
|
+
*/
|
|
14536
|
+
export const TerrainDatumError = Object.freeze({
|
|
14537
|
+
/**
|
|
14538
|
+
* Terrain lookup failed before datum conversion.
|
|
14539
|
+
*/
|
|
14540
|
+
Terrain: 0, "0": "Terrain",
|
|
14541
|
+
/**
|
|
14542
|
+
* A geoid grid could not be parsed.
|
|
14543
|
+
*/
|
|
14544
|
+
Geoid: 1, "1": "Geoid",
|
|
14545
|
+
/**
|
|
14546
|
+
* Reading a geoid grid failed for a reason other than absence.
|
|
14547
|
+
*/
|
|
14548
|
+
Io: 2, "2": "Io",
|
|
14549
|
+
/**
|
|
14550
|
+
* The EGM96 15-arcminute `WW15MGH.DAC` grid was requested but is absent.
|
|
14551
|
+
*/
|
|
14552
|
+
MissingEgm96Dac: 3, "3": "MissingEgm96Dac",
|
|
14553
|
+
});
|
|
14554
|
+
|
|
14555
|
+
/**
|
|
14556
|
+
* Geoid model used to convert terrain orthometric height `H` to ellipsoidal
|
|
14557
|
+
* height `h`.
|
|
14558
|
+
*/
|
|
14559
|
+
export class TerrainGeoidModel {
|
|
14560
|
+
static __wrap(ptr) {
|
|
14561
|
+
const obj = Object.create(TerrainGeoidModel.prototype);
|
|
14562
|
+
obj.__wbg_ptr = ptr;
|
|
14563
|
+
TerrainGeoidModelFinalization.register(obj, obj.__wbg_ptr, obj);
|
|
14564
|
+
return obj;
|
|
14565
|
+
}
|
|
14566
|
+
__destroy_into_raw() {
|
|
14567
|
+
const ptr = this.__wbg_ptr;
|
|
14568
|
+
this.__wbg_ptr = 0;
|
|
14569
|
+
TerrainGeoidModelFinalization.unregister(this);
|
|
14570
|
+
return ptr;
|
|
14571
|
+
}
|
|
14572
|
+
free() {
|
|
14573
|
+
const ptr = this.__destroy_into_raw();
|
|
14574
|
+
wasm.__wbg_terraingeoidmodel_free(ptr, 0);
|
|
14575
|
+
}
|
|
14576
|
+
/**
|
|
14577
|
+
* Use a caller-supplied EGM96 15-arcminute geoid grid for `h = H + N`.
|
|
14578
|
+
* @param {Egm96FifteenMinuteGeoid} geoid
|
|
14579
|
+
* @returns {TerrainGeoidModel}
|
|
14580
|
+
*/
|
|
14581
|
+
static egm96FifteenMinute(geoid) {
|
|
14582
|
+
_assertClass(geoid, Egm96FifteenMinuteGeoid);
|
|
14583
|
+
const ret = wasm.terraingeoidmodel_egm96FifteenMinute(geoid.__wbg_ptr);
|
|
14584
|
+
return TerrainGeoidModel.__wrap(ret);
|
|
14585
|
+
}
|
|
14586
|
+
/**
|
|
14587
|
+
* Use the embedded EGM96 1-degree geoid grid for `h = H + N`.
|
|
14588
|
+
* @returns {TerrainGeoidModel}
|
|
14589
|
+
*/
|
|
14590
|
+
static egm96OneDegree() {
|
|
14591
|
+
const ret = wasm.terraingeoidmodel_egm96OneDegree();
|
|
14592
|
+
return TerrainGeoidModel.__wrap(ret);
|
|
14593
|
+
}
|
|
14594
|
+
/**
|
|
14595
|
+
* Model discriminator: `"egm96OneDegree"` or `"egm96FifteenMinute"`.
|
|
14596
|
+
* @returns {string}
|
|
14597
|
+
*/
|
|
14598
|
+
get kind() {
|
|
14599
|
+
let deferred1_0;
|
|
14600
|
+
let deferred1_1;
|
|
14601
|
+
try {
|
|
14602
|
+
const ret = wasm.terraingeoidmodel_kind(this.__wbg_ptr);
|
|
14603
|
+
deferred1_0 = ret[0];
|
|
14604
|
+
deferred1_1 = ret[1];
|
|
14605
|
+
return getStringFromWasm0(ret[0], ret[1]);
|
|
14606
|
+
} finally {
|
|
14607
|
+
wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
|
|
14608
|
+
}
|
|
14609
|
+
}
|
|
14610
|
+
}
|
|
14611
|
+
if (Symbol.dispose) TerrainGeoidModel.prototype[Symbol.dispose] = TerrainGeoidModel.prototype.free;
|
|
14612
|
+
|
|
14613
|
+
/**
|
|
14614
|
+
* Terrain store conversion, serialization, and parsing error variants.
|
|
14615
|
+
* @enum {0 | 1 | 2 | 3 | 4 | 5}
|
|
14616
|
+
*/
|
|
14617
|
+
export const TerrainStoreError = Object.freeze({
|
|
14618
|
+
/**
|
|
14619
|
+
* File or directory I/O failed.
|
|
14620
|
+
*/
|
|
14621
|
+
Io: 0, "0": "Io",
|
|
14622
|
+
/**
|
|
14623
|
+
* DTED or terrain store bytes could not be parsed.
|
|
14624
|
+
*/
|
|
14625
|
+
Parse: 1, "1": "Parse",
|
|
14626
|
+
/**
|
|
14627
|
+
* The terrain store version is not supported.
|
|
14628
|
+
*/
|
|
14629
|
+
UnsupportedVersion: 2, "2": "UnsupportedVersion",
|
|
14630
|
+
/**
|
|
14631
|
+
* The terrain store datum tag is not supported.
|
|
14632
|
+
*/
|
|
14633
|
+
UnsupportedDatum: 3, "3": "UnsupportedDatum",
|
|
14634
|
+
/**
|
|
14635
|
+
* Two input DTED files resolved to the same integer tile id.
|
|
14636
|
+
*/
|
|
14637
|
+
DuplicateTile: 4, "4": "DuplicateTile",
|
|
14638
|
+
/**
|
|
14639
|
+
* A tile payload checksum did not match its index record.
|
|
14640
|
+
*/
|
|
14641
|
+
Checksum: 5, "5": "Checksum",
|
|
14642
|
+
});
|
|
14643
|
+
|
|
14644
|
+
/**
|
|
14645
|
+
* Metadata for one tile index record in a memory-mappable terrain store.
|
|
14646
|
+
*/
|
|
14647
|
+
export class TerrainStoreTileIndex {
|
|
13632
14648
|
static __wrap(ptr) {
|
|
13633
|
-
const obj = Object.create(
|
|
14649
|
+
const obj = Object.create(TerrainStoreTileIndex.prototype);
|
|
13634
14650
|
obj.__wbg_ptr = ptr;
|
|
13635
|
-
|
|
14651
|
+
TerrainStoreTileIndexFinalization.register(obj, obj.__wbg_ptr, obj);
|
|
13636
14652
|
return obj;
|
|
13637
14653
|
}
|
|
13638
14654
|
__destroy_into_raw() {
|
|
13639
14655
|
const ptr = this.__wbg_ptr;
|
|
13640
14656
|
this.__wbg_ptr = 0;
|
|
13641
|
-
|
|
14657
|
+
TerrainStoreTileIndexFinalization.unregister(this);
|
|
13642
14658
|
return ptr;
|
|
13643
14659
|
}
|
|
13644
14660
|
free() {
|
|
13645
14661
|
const ptr = this.__destroy_into_raw();
|
|
13646
|
-
wasm.
|
|
14662
|
+
wasm.__wbg_terrainstoretileindex_free(ptr, 0);
|
|
13647
14663
|
}
|
|
13648
14664
|
/**
|
|
13649
|
-
*
|
|
14665
|
+
* FNV-1a checksum of this tile's posting payload bytes.
|
|
14666
|
+
* @returns {bigint}
|
|
14667
|
+
*/
|
|
14668
|
+
get checksum64() {
|
|
14669
|
+
const ret = wasm.terrainstoretileindex_checksum64(this.__wbg_ptr);
|
|
14670
|
+
return BigInt.asUintN(64, ret);
|
|
14671
|
+
}
|
|
14672
|
+
/**
|
|
14673
|
+
* Byte length of this tile's posting payload in the store.
|
|
14674
|
+
* @returns {bigint}
|
|
14675
|
+
*/
|
|
14676
|
+
get dataLen() {
|
|
14677
|
+
const ret = wasm.terrainstoretileindex_dataLen(this.__wbg_ptr);
|
|
14678
|
+
return BigInt.asUintN(64, ret);
|
|
14679
|
+
}
|
|
14680
|
+
/**
|
|
14681
|
+
* Byte offset of this tile's posting payload in the store.
|
|
14682
|
+
* @returns {bigint}
|
|
14683
|
+
*/
|
|
14684
|
+
get dataOffset() {
|
|
14685
|
+
const ret = wasm.terrainstoretileindex_dataOffset(this.__wbg_ptr);
|
|
14686
|
+
return BigInt.asUintN(64, ret);
|
|
14687
|
+
}
|
|
14688
|
+
/**
|
|
14689
|
+
* Number of latitude postings.
|
|
13650
14690
|
* @returns {number}
|
|
13651
14691
|
*/
|
|
13652
|
-
get
|
|
13653
|
-
const ret = wasm.
|
|
14692
|
+
get latCount() {
|
|
14693
|
+
const ret = wasm.terrainstoretileindex_latCount(this.__wbg_ptr);
|
|
13654
14694
|
return ret >>> 0;
|
|
13655
14695
|
}
|
|
13656
14696
|
/**
|
|
13657
|
-
*
|
|
13658
|
-
*
|
|
14697
|
+
* Integer latitude tile id, for example `36` for a tile covering
|
|
14698
|
+
* `36..37` degrees.
|
|
14699
|
+
* @returns {number}
|
|
13659
14700
|
*/
|
|
13660
|
-
get
|
|
13661
|
-
|
|
13662
|
-
|
|
13663
|
-
try {
|
|
13664
|
-
const ret = wasm.sunmoon_frame(this.__wbg_ptr);
|
|
13665
|
-
deferred1_0 = ret[0];
|
|
13666
|
-
deferred1_1 = ret[1];
|
|
13667
|
-
return getStringFromWasm0(ret[0], ret[1]);
|
|
13668
|
-
} finally {
|
|
13669
|
-
wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
|
|
13670
|
-
}
|
|
14701
|
+
get latIndex() {
|
|
14702
|
+
const ret = wasm.terrainstoretileindex_latIndex(this.__wbg_ptr);
|
|
14703
|
+
return ret;
|
|
13671
14704
|
}
|
|
13672
14705
|
/**
|
|
13673
|
-
*
|
|
13674
|
-
* @returns {
|
|
14706
|
+
* Number of longitude postings.
|
|
14707
|
+
* @returns {number}
|
|
13675
14708
|
*/
|
|
13676
|
-
get
|
|
13677
|
-
const ret = wasm.
|
|
13678
|
-
|
|
13679
|
-
wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
|
|
13680
|
-
return v1;
|
|
14709
|
+
get lonCount() {
|
|
14710
|
+
const ret = wasm.terrainstoretileindex_lonCount(this.__wbg_ptr);
|
|
14711
|
+
return ret >>> 0;
|
|
13681
14712
|
}
|
|
13682
14713
|
/**
|
|
13683
|
-
*
|
|
13684
|
-
*
|
|
14714
|
+
* Integer longitude tile id, for example `-107` for a tile covering
|
|
14715
|
+
* `-107..-106` degrees.
|
|
14716
|
+
* @returns {number}
|
|
13685
14717
|
*/
|
|
13686
|
-
get
|
|
13687
|
-
const ret = wasm.
|
|
13688
|
-
|
|
13689
|
-
|
|
13690
|
-
|
|
14718
|
+
get lonIndex() {
|
|
14719
|
+
const ret = wasm.terrainstoretileindex_lonIndex(this.__wbg_ptr);
|
|
14720
|
+
return ret;
|
|
14721
|
+
}
|
|
14722
|
+
/**
|
|
14723
|
+
* Northern edge latitude, degrees.
|
|
14724
|
+
* @returns {number}
|
|
14725
|
+
*/
|
|
14726
|
+
get maxLatitudeDeg() {
|
|
14727
|
+
const ret = wasm.terrainstoretileindex_maxLatitudeDeg(this.__wbg_ptr);
|
|
14728
|
+
return ret;
|
|
14729
|
+
}
|
|
14730
|
+
/**
|
|
14731
|
+
* Eastern edge longitude, degrees.
|
|
14732
|
+
* @returns {number}
|
|
14733
|
+
*/
|
|
14734
|
+
get maxLongitudeDeg() {
|
|
14735
|
+
const ret = wasm.terrainstoretileindex_maxLongitudeDeg(this.__wbg_ptr);
|
|
14736
|
+
return ret;
|
|
14737
|
+
}
|
|
14738
|
+
/**
|
|
14739
|
+
* Southern edge latitude, degrees.
|
|
14740
|
+
* @returns {number}
|
|
14741
|
+
*/
|
|
14742
|
+
get minLatitudeDeg() {
|
|
14743
|
+
const ret = wasm.terrainstoretileindex_minLatitudeDeg(this.__wbg_ptr);
|
|
14744
|
+
return ret;
|
|
14745
|
+
}
|
|
14746
|
+
/**
|
|
14747
|
+
* Western edge longitude, degrees.
|
|
14748
|
+
* @returns {number}
|
|
14749
|
+
*/
|
|
14750
|
+
get minLongitudeDeg() {
|
|
14751
|
+
const ret = wasm.terrainstoretileindex_minLongitudeDeg(this.__wbg_ptr);
|
|
14752
|
+
return ret;
|
|
14753
|
+
}
|
|
14754
|
+
/**
|
|
14755
|
+
* Vertical datum for this tile's orthometric posting payload.
|
|
14756
|
+
* @returns {VerticalDatum}
|
|
14757
|
+
*/
|
|
14758
|
+
get verticalDatum() {
|
|
14759
|
+
const ret = wasm.terrainstoretileindex_verticalDatum(this.__wbg_ptr);
|
|
14760
|
+
return ret;
|
|
13691
14761
|
}
|
|
13692
14762
|
}
|
|
13693
|
-
if (Symbol.dispose)
|
|
14763
|
+
if (Symbol.dispose) TerrainStoreTileIndex.prototype[Symbol.dispose] = TerrainStoreTileIndex.prototype.free;
|
|
13694
14764
|
|
|
13695
14765
|
/**
|
|
13696
14766
|
* A named time scale. The JS value matches the variant order below.
|
|
@@ -14339,6 +15409,17 @@ export class VelocitySolution {
|
|
|
14339
15409
|
}
|
|
14340
15410
|
if (Symbol.dispose) VelocitySolution.prototype[Symbol.dispose] = VelocitySolution.prototype.free;
|
|
14341
15411
|
|
|
15412
|
+
/**
|
|
15413
|
+
* Vertical datum carried by a terrain store.
|
|
15414
|
+
* @enum {0}
|
|
15415
|
+
*/
|
|
15416
|
+
export const VerticalDatum = Object.freeze({
|
|
15417
|
+
/**
|
|
15418
|
+
* Orthometric height `H` in metres above the EGM96 mean sea level geoid.
|
|
15419
|
+
*/
|
|
15420
|
+
Egm96MslOrthometric: 0, "0": "Egm96MslOrthometric",
|
|
15421
|
+
});
|
|
15422
|
+
|
|
14342
15423
|
/**
|
|
14343
15424
|
* Per-epoch topocentric visibility plus the dense pass list over the grid
|
|
14344
15425
|
* window.
|
|
@@ -14630,6 +15711,27 @@ export function acquire(samples, prn, options) {
|
|
|
14630
15711
|
return AcquisitionResult.__wrap(ret[0]);
|
|
14631
15712
|
}
|
|
14632
15713
|
|
|
15714
|
+
/**
|
|
15715
|
+
* Plain non-overlapping Allan deviation for explicit averaging factors.
|
|
15716
|
+
*
|
|
15717
|
+
* `series` is `{ kind, values }`, where `kind` is `"phaseSeconds"` or
|
|
15718
|
+
* `"fractionalFrequency"` and `values` are phase seconds or dimensionless
|
|
15719
|
+
* fractional-frequency samples. `tau0S` is the sample interval in seconds.
|
|
15720
|
+
* `averagingFactors` is an array of positive integer `m` values. Returns
|
|
15721
|
+
* `{ tauS, deviation, n }`.
|
|
15722
|
+
* @param {any} series
|
|
15723
|
+
* @param {number} tau0_s
|
|
15724
|
+
* @param {any} averaging_factors
|
|
15725
|
+
* @returns {any}
|
|
15726
|
+
*/
|
|
15727
|
+
export function allanDeviation(series, tau0_s, averaging_factors) {
|
|
15728
|
+
const ret = wasm.allanDeviation(series, tau0_s, averaging_factors);
|
|
15729
|
+
if (ret[2]) {
|
|
15730
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
15731
|
+
}
|
|
15732
|
+
return takeFromExternrefTable0(ret[0]);
|
|
15733
|
+
}
|
|
15734
|
+
|
|
14633
15735
|
/**
|
|
14634
15736
|
* On-sky angle in degrees between two direction vectors.
|
|
14635
15737
|
* @param {Float64Array} a
|
|
@@ -14664,6 +15766,65 @@ export function angularSeparationCoords(a_lon_deg, a_lat_deg, b_lon_deg, b_lat_d
|
|
|
14664
15766
|
return ret[0];
|
|
14665
15767
|
}
|
|
14666
15768
|
|
|
15769
|
+
/**
|
|
15770
|
+
* Run ARAIM MHSS protection-level computation.
|
|
15771
|
+
*
|
|
15772
|
+
* `geometry.rows` contains satellite IDs, ECEF line-of-sight unit vectors,
|
|
15773
|
+
* optional constellation labels, and elevations in radians. `receiver` is WGS84
|
|
15774
|
+
* geodetic radians plus ellipsoidal height meters. `ism` contains
|
|
15775
|
+
* constellation defaults and optional satellite overrides. Satellite models may
|
|
15776
|
+
* provide paired `effectiveSigmaIntM` and `effectiveSigmaAccM` fields; omit both
|
|
15777
|
+
* to let the core derive them from elevation. `allocation` may be omitted to use
|
|
15778
|
+
* `araimLpv200Allocation()`. Returned `hplM`, `vplM`, `sigmaAccHM`,
|
|
15779
|
+
* `sigmaAccVM`, `emtM`, and per-mode ENU arrays are meters.
|
|
15780
|
+
* @param {any} geometry
|
|
15781
|
+
* @param {any} ism
|
|
15782
|
+
* @param {any} allocation
|
|
15783
|
+
* @returns {any}
|
|
15784
|
+
*/
|
|
15785
|
+
export function araim(geometry, ism, allocation) {
|
|
15786
|
+
const ret = wasm.araim(geometry, ism, allocation);
|
|
15787
|
+
if (ret[2]) {
|
|
15788
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
15789
|
+
}
|
|
15790
|
+
return takeFromExternrefTable0(ret[0]);
|
|
15791
|
+
}
|
|
15792
|
+
|
|
15793
|
+
/**
|
|
15794
|
+
* Enumerate ARAIM fault hypotheses for the given geometry, ISM, and allocation.
|
|
15795
|
+
*
|
|
15796
|
+
* Inputs mirror `araim`. The returned priors are probabilities. Excluded
|
|
15797
|
+
* satellites are string tokens such as `"G01"`, and excluded constellations are
|
|
15798
|
+
* labels such as `"GPS"`.
|
|
15799
|
+
* @param {any} geometry
|
|
15800
|
+
* @param {any} ism
|
|
15801
|
+
* @param {any} allocation
|
|
15802
|
+
* @returns {any}
|
|
15803
|
+
*/
|
|
15804
|
+
export function araimFaultModes(geometry, ism, allocation) {
|
|
15805
|
+
const ret = wasm.araimFaultModes(geometry, ism, allocation);
|
|
15806
|
+
if (ret[2]) {
|
|
15807
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
15808
|
+
}
|
|
15809
|
+
return takeFromExternrefTable0(ret[0]);
|
|
15810
|
+
}
|
|
15811
|
+
|
|
15812
|
+
/**
|
|
15813
|
+
* LPV-200 ARAIM integrity and continuity allocation.
|
|
15814
|
+
*
|
|
15815
|
+
* The returned object can be passed to `araim`. Probability fields are
|
|
15816
|
+
* dimensionless, `pEmt` defaults to `1e-5`, and `maxFaultOrder` is an integer
|
|
15817
|
+
* fault order.
|
|
15818
|
+
* @returns {any}
|
|
15819
|
+
*/
|
|
15820
|
+
export function araimLpv200Allocation() {
|
|
15821
|
+
const ret = wasm.araimLpv200Allocation();
|
|
15822
|
+
if (ret[2]) {
|
|
15823
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
15824
|
+
}
|
|
15825
|
+
return takeFromExternrefTable0(ret[0]);
|
|
15826
|
+
}
|
|
15827
|
+
|
|
14667
15828
|
/**
|
|
14668
15829
|
* Evaluate NRLMSISE-00 neutral-atmosphere density and temperature.
|
|
14669
15830
|
*
|
|
@@ -14980,6 +16141,28 @@ export function collisionProbability(object1, object2, hard_body_radius_km, meth
|
|
|
14980
16141
|
return CollisionProbability.__wrap(ret[0]);
|
|
14981
16142
|
}
|
|
14982
16143
|
|
|
16144
|
+
/**
|
|
16145
|
+
* Compute one or more Allan-family curves with a selected tau grid and gap
|
|
16146
|
+
* policy.
|
|
16147
|
+
*
|
|
16148
|
+
* `input` is `{ series, tau0S, options? }`. `series.kind` may be
|
|
16149
|
+
* `"phaseSeconds"`, `"fractionalFrequency"`, `"phaseSecondsWithGaps"`, or
|
|
16150
|
+
* `"fractionalFrequencyWithGaps"`; gap series use `null` for missing samples.
|
|
16151
|
+
* `options.estimators` is `"standard"`, `"all"`, `"none"`, or a boolean flag
|
|
16152
|
+
* object. `options.tauGrid` is `"octave"`, `"all"`, or
|
|
16153
|
+
* `{ kind: "explicit", averagingFactors }`. `tau0S` and all returned `tauS`
|
|
16154
|
+
* values are seconds.
|
|
16155
|
+
* @param {any} input
|
|
16156
|
+
* @returns {any}
|
|
16157
|
+
*/
|
|
16158
|
+
export function computeAllanDeviations(input) {
|
|
16159
|
+
const ret = wasm.computeAllanDeviations(input);
|
|
16160
|
+
if (ret[2]) {
|
|
16161
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
16162
|
+
}
|
|
16163
|
+
return takeFromExternrefTable0(ret[0]);
|
|
16164
|
+
}
|
|
16165
|
+
|
|
14983
16166
|
/**
|
|
14984
16167
|
* Coherently correlate interleaved IQ samples against a GPS C/A PRN replica.
|
|
14985
16168
|
* `iq` is `[i0, q0, i1, q1, ...]`.
|
|
@@ -15237,6 +16420,12 @@ export function decodeRtcmStream(bytes) {
|
|
|
15237
16420
|
}
|
|
15238
16421
|
|
|
15239
16422
|
/**
|
|
16423
|
+
* Decode a raw SBAS message.
|
|
16424
|
+
*
|
|
16425
|
+
* `form` is `"framed250"` for a 32-byte message with CRC or `"body226"` for a
|
|
16426
|
+
* 29-byte body. The result contains `messageType`, `form`, legacy debug
|
|
16427
|
+
* `kind`, and `message`, a structured decoded payload. Parse failures are
|
|
16428
|
+
* thrown as `Error`.
|
|
15240
16429
|
* @param {Uint8Array} bytes
|
|
15241
16430
|
* @param {string | null} [form]
|
|
15242
16431
|
* @returns {any}
|
|
@@ -15470,6 +16659,26 @@ export function dopplerToRangeRate(doppler_hz, carrier_hz) {
|
|
|
15470
16659
|
return ret[0];
|
|
15471
16660
|
}
|
|
15472
16661
|
|
|
16662
|
+
/**
|
|
16663
|
+
* Convert a DTED tile tree into canonical memory-mappable terrain store bytes.
|
|
16664
|
+
*
|
|
16665
|
+
* The returned `Uint8Array` can be passed to [`MmapTerrain.fromBytes`] or
|
|
16666
|
+
* [`MmapTerrain.fromVec`]. Posting payloads are decoded orthometric metres.
|
|
16667
|
+
* @param {string} root
|
|
16668
|
+
* @returns {Uint8Array}
|
|
16669
|
+
*/
|
|
16670
|
+
export function dtedTreeToMmapStore(root) {
|
|
16671
|
+
const ptr0 = passStringToWasm0(root, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
16672
|
+
const len0 = WASM_VECTOR_LEN;
|
|
16673
|
+
const ret = wasm.dtedTreeToMmapStore(ptr0, len0);
|
|
16674
|
+
if (ret[3]) {
|
|
16675
|
+
throw takeFromExternrefTable0(ret[2]);
|
|
16676
|
+
}
|
|
16677
|
+
var v2 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
|
|
16678
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
|
|
16679
|
+
return v2;
|
|
16680
|
+
}
|
|
16681
|
+
|
|
15473
16682
|
/**
|
|
15474
16683
|
* Angular radius in degrees of Earth as seen from each satellite position.
|
|
15475
16684
|
* @param {Float64Array} satellite_position_km
|
|
@@ -16695,6 +17904,25 @@ export function gpsUtcOffsetS(year, month, day) {
|
|
|
16695
17904
|
return ret;
|
|
16696
17905
|
}
|
|
16697
17906
|
|
|
17907
|
+
/**
|
|
17908
|
+
* Overlapping Hadamard deviation for explicit averaging factors.
|
|
17909
|
+
*
|
|
17910
|
+
* `series` is `{ kind, values }`, `tau0S` is seconds, and
|
|
17911
|
+
* `averagingFactors` contains positive integer `m` values. Returns
|
|
17912
|
+
* `{ tauS, deviation, n }`.
|
|
17913
|
+
* @param {any} series
|
|
17914
|
+
* @param {number} tau0_s
|
|
17915
|
+
* @param {any} averaging_factors
|
|
17916
|
+
* @returns {any}
|
|
17917
|
+
*/
|
|
17918
|
+
export function hadamardDeviation(series, tau0_s, averaging_factors) {
|
|
17919
|
+
const ret = wasm.hadamardDeviation(series, tau0_s, averaging_factors);
|
|
17920
|
+
if (ret[2]) {
|
|
17921
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
17922
|
+
}
|
|
17923
|
+
return takeFromExternrefTable0(ret[0]);
|
|
17924
|
+
}
|
|
17925
|
+
|
|
16698
17926
|
/**
|
|
16699
17927
|
* Trace of the Gauss-Newton Hessian approximation `J^T J`: the sum of the
|
|
16700
17928
|
* squared column norms of the Jacobian, with no inverse formed.
|
|
@@ -16804,6 +18032,47 @@ export function iodHerrickGibbs(r1, r2, r3, jd1, jd2, jd3) {
|
|
|
16804
18032
|
return IodVelocity.__wrap(ret[0]);
|
|
16805
18033
|
}
|
|
16806
18034
|
|
|
18035
|
+
/**
|
|
18036
|
+
* Build an IONEX vertical-TEC product from flat node samples.
|
|
18037
|
+
*
|
|
18038
|
+
* `samples` is an array of `{ epochJ2000S, latDeg, lonDeg, vtecTecu,
|
|
18039
|
+
* rmsTecu? }` objects. Epochs are integer seconds since J2000, coordinates are
|
|
18040
|
+
* degrees, and TEC/RMS values are TECU. `shellHeightKm` and `baseRadiusKm` are
|
|
18041
|
+
* kilometers. Validation errors from the core sample builder are thrown as
|
|
18042
|
+
* `RangeError`.
|
|
18043
|
+
* @param {any} samples
|
|
18044
|
+
* @param {number} shell_height_km
|
|
18045
|
+
* @param {number} base_radius_km
|
|
18046
|
+
* @param {number} exponent
|
|
18047
|
+
* @returns {Ionex}
|
|
18048
|
+
*/
|
|
18049
|
+
export function ionexFromNodeSamples(samples, shell_height_km, base_radius_km, exponent) {
|
|
18050
|
+
const ret = wasm.ionexFromNodeSamples(samples, shell_height_km, base_radius_km, exponent);
|
|
18051
|
+
if (ret[2]) {
|
|
18052
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
18053
|
+
}
|
|
18054
|
+
return Ionex.__wrap(ret[0]);
|
|
18055
|
+
}
|
|
18056
|
+
|
|
18057
|
+
/**
|
|
18058
|
+
* Build an IONEX vertical-TEC product from full-grid samples.
|
|
18059
|
+
*
|
|
18060
|
+
* `samples.mapEpochsJ2000S` are integer seconds since J2000. Latitude and
|
|
18061
|
+
* longitude nodes and `dlatDeg` / `dlonDeg` are degrees. `tecMaps` and
|
|
18062
|
+
* `rmsMaps` are TECU and indexed `[map][iLat][iLon]`. The shell height and
|
|
18063
|
+
* base radius are kilometers. Validation errors from the core sample builder
|
|
18064
|
+
* are thrown as `RangeError`.
|
|
18065
|
+
* @param {any} samples
|
|
18066
|
+
* @returns {Ionex}
|
|
18067
|
+
*/
|
|
18068
|
+
export function ionexFromSamples(samples) {
|
|
18069
|
+
const ret = wasm.ionexFromSamples(samples);
|
|
18070
|
+
if (ret[2]) {
|
|
18071
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
18072
|
+
}
|
|
18073
|
+
return Ionex.__wrap(ret[0]);
|
|
18074
|
+
}
|
|
18075
|
+
|
|
16807
18076
|
/**
|
|
16808
18077
|
* Ionosphere-free code or meter-valued phase combination, metres.
|
|
16809
18078
|
* @param {number} obs1_m
|
|
@@ -17705,6 +18974,25 @@ export function meridianTransitsSpk(spk, body, station, start_unix_us, end_unix_
|
|
|
17705
18974
|
return takeFromExternrefTable0(ret[0]);
|
|
17706
18975
|
}
|
|
17707
18976
|
|
|
18977
|
+
/**
|
|
18978
|
+
* Modified Allan deviation for explicit averaging factors.
|
|
18979
|
+
*
|
|
18980
|
+
* `series` is `{ kind, values }`, `tau0S` is seconds, and
|
|
18981
|
+
* `averagingFactors` contains positive integer `m` values. Returns
|
|
18982
|
+
* `{ tauS, deviation, n }`.
|
|
18983
|
+
* @param {any} series
|
|
18984
|
+
* @param {number} tau0_s
|
|
18985
|
+
* @param {any} averaging_factors
|
|
18986
|
+
* @returns {any}
|
|
18987
|
+
*/
|
|
18988
|
+
export function modifiedAdev(series, tau0_s, averaging_factors) {
|
|
18989
|
+
const ret = wasm.modifiedAdev(series, tau0_s, averaging_factors);
|
|
18990
|
+
if (ret[2]) {
|
|
18991
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
18992
|
+
}
|
|
18993
|
+
return takeFromExternrefTable0(ret[0]);
|
|
18994
|
+
}
|
|
18995
|
+
|
|
17708
18996
|
/**
|
|
17709
18997
|
* Mean, variance, skewness, and excess kurtosis of a residual set in one pass.
|
|
17710
18998
|
*
|
|
@@ -18083,7 +19371,7 @@ export function observationKindLabel(kind) {
|
|
|
18083
19371
|
* Aggregate observation QC for a parsed RINEX OBS product.
|
|
18084
19372
|
* @param {RinexObs} obs
|
|
18085
19373
|
* @param {any} options
|
|
18086
|
-
* @returns {
|
|
19374
|
+
* @returns {ObservationQcReport}
|
|
18087
19375
|
*/
|
|
18088
19376
|
export function observationQc(obs, options) {
|
|
18089
19377
|
_assertClass(obs, RinexObs);
|
|
@@ -18091,7 +19379,7 @@ export function observationQc(obs, options) {
|
|
|
18091
19379
|
if (ret[2]) {
|
|
18092
19380
|
throw takeFromExternrefTable0(ret[1]);
|
|
18093
19381
|
}
|
|
18094
|
-
return
|
|
19382
|
+
return ObservationQcReport.__wrap(ret[0]);
|
|
18095
19383
|
}
|
|
18096
19384
|
|
|
18097
19385
|
/**
|
|
@@ -18201,6 +19489,25 @@ export function orthometricHeightM(ellipsoidal_height_m, lat_rad, lon_rad) {
|
|
|
18201
19489
|
return ret;
|
|
18202
19490
|
}
|
|
18203
19491
|
|
|
19492
|
+
/**
|
|
19493
|
+
* Fully overlapping Allan deviation for explicit averaging factors.
|
|
19494
|
+
*
|
|
19495
|
+
* `series` is `{ kind, values }`, `tau0S` is seconds, and
|
|
19496
|
+
* `averagingFactors` contains positive integer `m` values. Returns
|
|
19497
|
+
* `{ tauS, deviation, n }`.
|
|
19498
|
+
* @param {any} series
|
|
19499
|
+
* @param {number} tau0_s
|
|
19500
|
+
* @param {any} averaging_factors
|
|
19501
|
+
* @returns {any}
|
|
19502
|
+
*/
|
|
19503
|
+
export function overlappingAdev(series, tau0_s, averaging_factors) {
|
|
19504
|
+
const ret = wasm.overlappingAdev(series, tau0_s, averaging_factors);
|
|
19505
|
+
if (ret[2]) {
|
|
19506
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
19507
|
+
}
|
|
19508
|
+
return takeFromExternrefTable0(ret[0]);
|
|
19509
|
+
}
|
|
19510
|
+
|
|
18204
19511
|
/**
|
|
18205
19512
|
* Parallactic angle (degrees) of a target at a station.
|
|
18206
19513
|
*
|
|
@@ -19355,6 +20662,22 @@ export function sampleSp3Ephemeris(sp3, satellites, start_j2000_s, stop_j2000_s,
|
|
|
19355
20662
|
return takeFromExternrefTable0(ret[0]);
|
|
19356
20663
|
}
|
|
19357
20664
|
|
|
20665
|
+
/**
|
|
20666
|
+
* Convert an SBAS satellite token such as `"S29"` to broadcast PRN number
|
|
20667
|
+
* such as `129`. Returns `null` for non-SBAS satellites.
|
|
20668
|
+
* @param {string} sat
|
|
20669
|
+
* @returns {any}
|
|
20670
|
+
*/
|
|
20671
|
+
export function satToSbasPrn(sat) {
|
|
20672
|
+
const ptr0 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
20673
|
+
const len0 = WASM_VECTOR_LEN;
|
|
20674
|
+
const ret = wasm.satToSbasPrn(ptr0, len0);
|
|
20675
|
+
if (ret[2]) {
|
|
20676
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
20677
|
+
}
|
|
20678
|
+
return takeFromExternrefTable0(ret[0]);
|
|
20679
|
+
}
|
|
20680
|
+
|
|
19358
20681
|
/**
|
|
19359
20682
|
* Apparent visual magnitude of a sunlit body from a diffuse-sphere phase law.
|
|
19360
20683
|
*
|
|
@@ -19378,6 +20701,10 @@ export function satelliteVisualMagnitude(range_km, phase_angle_deg, standard_mag
|
|
|
19378
20701
|
}
|
|
19379
20702
|
|
|
19380
20703
|
/**
|
|
20704
|
+
* SBAS-corrected broadcast satellite position and clock.
|
|
20705
|
+
*
|
|
20706
|
+
* Position is ECEF meters and clock is seconds at `tJ2000S`, seconds since
|
|
20707
|
+
* J2000. Returns `null` when the selected SBAS mode cannot provide a state.
|
|
19381
20708
|
* @param {BroadcastEphemeris} broadcast
|
|
19382
20709
|
* @param {SbasCorrectionStore} store
|
|
19383
20710
|
* @param {string} geo
|
|
@@ -19402,6 +20729,17 @@ export function sbasCorrectedState(broadcast, store, geo, sat, t_j2000_s, mode)
|
|
|
19402
20729
|
return takeFromExternrefTable0(ret[0]);
|
|
19403
20730
|
}
|
|
19404
20731
|
|
|
20732
|
+
/**
|
|
20733
|
+
* Convert an SBAS broadcast PRN number such as `129` to an SBAS satellite
|
|
20734
|
+
* token such as `"S29"`. Returns `null` when the PRN is outside the SBAS range.
|
|
20735
|
+
* @param {number} broadcast_prn
|
|
20736
|
+
* @returns {any}
|
|
20737
|
+
*/
|
|
20738
|
+
export function sbasPrnToSat(broadcast_prn) {
|
|
20739
|
+
const ret = wasm.sbasPrnToSat(broadcast_prn);
|
|
20740
|
+
return ret;
|
|
20741
|
+
}
|
|
20742
|
+
|
|
19405
20743
|
/**
|
|
19406
20744
|
* Screen a primary satellite against a secondary TLE catalog for threshold TCAs.
|
|
19407
20745
|
*
|
|
@@ -19959,6 +21297,11 @@ export function solveRtkFloat(config) {
|
|
|
19959
21297
|
}
|
|
19960
21298
|
|
|
19961
21299
|
/**
|
|
21300
|
+
* Solve SPP using an SBAS-corrected broadcast source and optional SBAS iono.
|
|
21301
|
+
*
|
|
21302
|
+
* The returned solution uses the same units as `solveSpp`: ECEF meters,
|
|
21303
|
+
* receiver clock seconds, residual meters, and optional geodetic radians plus
|
|
21304
|
+
* ellipsoidal height meters.
|
|
19962
21305
|
* @param {BroadcastEphemeris} broadcast
|
|
19963
21306
|
* @param {SbasCorrectionStore} store
|
|
19964
21307
|
* @param {string} geo
|
|
@@ -20342,6 +21685,37 @@ export function terminatorLatitudeDeg(sub_solar_latitude_deg, sub_solar_longitud
|
|
|
20342
21685
|
return ret[0];
|
|
20343
21686
|
}
|
|
20344
21687
|
|
|
21688
|
+
/**
|
|
21689
|
+
* Return an FNV-1a checksum for terrain store bytes.
|
|
21690
|
+
* @param {Uint8Array} bytes
|
|
21691
|
+
* @returns {bigint}
|
|
21692
|
+
*/
|
|
21693
|
+
export function terrainStoreChecksum64(bytes) {
|
|
21694
|
+
const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
|
|
21695
|
+
const len0 = WASM_VECTOR_LEN;
|
|
21696
|
+
const ret = wasm.terrainStoreChecksum64(ptr0, len0);
|
|
21697
|
+
return BigInt.asUintN(64, ret);
|
|
21698
|
+
}
|
|
21699
|
+
|
|
21700
|
+
/**
|
|
21701
|
+
* Time deviation for explicit averaging factors.
|
|
21702
|
+
*
|
|
21703
|
+
* `series` is `{ kind, values }`, `tau0S` is seconds, and
|
|
21704
|
+
* `averagingFactors` contains positive integer `m` values. Returns
|
|
21705
|
+
* `{ tauS, deviation, n }`.
|
|
21706
|
+
* @param {any} series
|
|
21707
|
+
* @param {number} tau0_s
|
|
21708
|
+
* @param {any} averaging_factors
|
|
21709
|
+
* @returns {any}
|
|
21710
|
+
*/
|
|
21711
|
+
export function timeDeviation(series, tau0_s, averaging_factors) {
|
|
21712
|
+
const ret = wasm.timeDeviation(series, tau0_s, averaging_factors);
|
|
21713
|
+
if (ret[2]) {
|
|
21714
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
21715
|
+
}
|
|
21716
|
+
return takeFromExternrefTable0(ret[0]);
|
|
21717
|
+
}
|
|
21718
|
+
|
|
20345
21719
|
/**
|
|
20346
21720
|
* Short uppercase identifier for a time scale, e.g. `"GPST"`.
|
|
20347
21721
|
* @param {TimeScale} scale
|
|
@@ -20692,6 +22066,22 @@ export function wideLaneWavelength(f1_hz, f2_hz) {
|
|
|
20692
22066
|
}
|
|
20693
22067
|
return ret[0];
|
|
20694
22068
|
}
|
|
22069
|
+
|
|
22070
|
+
/**
|
|
22071
|
+
* Convert a DTED tile tree and write canonical terrain store bytes to a path.
|
|
22072
|
+
* @param {string} root
|
|
22073
|
+
* @param {string} out_path
|
|
22074
|
+
*/
|
|
22075
|
+
export function writeDtedTreeToMmapStore(root, out_path) {
|
|
22076
|
+
const ptr0 = passStringToWasm0(root, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
22077
|
+
const len0 = WASM_VECTOR_LEN;
|
|
22078
|
+
const ptr1 = passStringToWasm0(out_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
22079
|
+
const len1 = WASM_VECTOR_LEN;
|
|
22080
|
+
const ret = wasm.writeDtedTreeToMmapStore(ptr0, len0, ptr1, len1);
|
|
22081
|
+
if (ret[1]) {
|
|
22082
|
+
throw takeFromExternrefTable0(ret[0]);
|
|
22083
|
+
}
|
|
22084
|
+
}
|
|
20695
22085
|
function __wbg_get_imports() {
|
|
20696
22086
|
const import0 = {
|
|
20697
22087
|
__proto__: null,
|
|
@@ -21072,6 +22462,10 @@ function __wbg_get_imports() {
|
|
|
21072
22462
|
const ret = SpkSegment.__wrap(arg0);
|
|
21073
22463
|
return ret;
|
|
21074
22464
|
},
|
|
22465
|
+
__wbg_terrainstoretileindex_new: function(arg0) {
|
|
22466
|
+
const ret = TerrainStoreTileIndex.__wrap(arg0);
|
|
22467
|
+
return ret;
|
|
22468
|
+
},
|
|
21075
22469
|
__wbg_tle_unwrap: function(arg0) {
|
|
21076
22470
|
const ret = Tle.__unwrap(arg0);
|
|
21077
22471
|
return ret;
|
|
@@ -21234,6 +22628,12 @@ const DragForceFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
|
21234
22628
|
const DtedTerrainFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
21235
22629
|
? { register: () => {}, unregister: () => {} }
|
|
21236
22630
|
: new FinalizationRegistry(ptr => wasm.__wbg_dtedterrain_free(ptr, 1));
|
|
22631
|
+
const Egm96FifteenMinuteGeoidFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
22632
|
+
? { register: () => {}, unregister: () => {} }
|
|
22633
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_egm96fifteenminutegeoid_free(ptr, 1));
|
|
22634
|
+
const EllipsoidalHeightMFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
22635
|
+
? { register: () => {}, unregister: () => {} }
|
|
22636
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_ellipsoidalheightm_free(ptr, 1));
|
|
21237
22637
|
const EncounterFrameFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
21238
22638
|
? { register: () => {}, unregister: () => {} }
|
|
21239
22639
|
: new FinalizationRegistry(ptr => wasm.__wbg_encounterframe_free(ptr, 1));
|
|
@@ -21342,6 +22742,9 @@ const LookAnglesFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
|
21342
22742
|
const MappingFactorsFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
21343
22743
|
? { register: () => {}, unregister: () => {} }
|
|
21344
22744
|
: new FinalizationRegistry(ptr => wasm.__wbg_mappingfactors_free(ptr, 1));
|
|
22745
|
+
const MmapTerrainFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
22746
|
+
? { register: () => {}, unregister: () => {} }
|
|
22747
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_mmapterrain_free(ptr, 1));
|
|
21345
22748
|
const MoonElevationCrossingFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
21346
22749
|
? { register: () => {}, unregister: () => {} }
|
|
21347
22750
|
: new FinalizationRegistry(ptr => wasm.__wbg_moonelevationcrossing_free(ptr, 1));
|
|
@@ -21378,6 +22781,9 @@ const ObsPhaseShiftFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
|
21378
22781
|
const ObservationFilterFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
21379
22782
|
? { register: () => {}, unregister: () => {} }
|
|
21380
22783
|
: new FinalizationRegistry(ptr => wasm.__wbg_observationfilter_free(ptr, 1));
|
|
22784
|
+
const ObservationQcReportFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
22785
|
+
? { register: () => {}, unregister: () => {} }
|
|
22786
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_observationqcreport_free(ptr, 1));
|
|
21381
22787
|
const ObservationValueSeriesFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
21382
22788
|
? { register: () => {}, unregister: () => {} }
|
|
21383
22789
|
: new FinalizationRegistry(ptr => wasm.__wbg_observationvalueseries_free(ptr, 1));
|
|
@@ -21423,6 +22829,9 @@ const OpmSpacecraftFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
|
21423
22829
|
const OpmStateFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
21424
22830
|
? { register: () => {}, unregister: () => {} }
|
|
21425
22831
|
: new FinalizationRegistry(ptr => wasm.__wbg_opmstate_free(ptr, 1));
|
|
22832
|
+
const OrthometricHeightMFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
22833
|
+
? { register: () => {}, unregister: () => {} }
|
|
22834
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_orthometricheightm_free(ptr, 1));
|
|
21426
22835
|
const ParsedTleFileFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
21427
22836
|
? { register: () => {}, unregister: () => {} }
|
|
21428
22837
|
: new FinalizationRegistry(ptr => wasm.__wbg_parsedtlefile_free(ptr, 1));
|
|
@@ -21564,6 +22973,12 @@ const SsrCorrectionStoreFinalization = (typeof FinalizationRegistry === 'undefin
|
|
|
21564
22973
|
const SunMoonFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
21565
22974
|
? { register: () => {}, unregister: () => {} }
|
|
21566
22975
|
: new FinalizationRegistry(ptr => wasm.__wbg_sunmoon_free(ptr, 1));
|
|
22976
|
+
const TerrainGeoidModelFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
22977
|
+
? { register: () => {}, unregister: () => {} }
|
|
22978
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_terraingeoidmodel_free(ptr, 1));
|
|
22979
|
+
const TerrainStoreTileIndexFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
22980
|
+
? { register: () => {}, unregister: () => {} }
|
|
22981
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_terrainstoretileindex_free(ptr, 1));
|
|
21567
22982
|
const TleFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
21568
22983
|
? { register: () => {}, unregister: () => {} }
|
|
21569
22984
|
: new FinalizationRegistry(ptr => wasm.__wbg_tle_free(ptr, 1));
|