@math.gl/geospatial 5.0.0-alpha.18 → 5.0.0-alpha.19
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/README.md +12 -0
- package/crs/README.md +84 -0
- package/crs/schemas/README.md +9 -0
- package/crs/schemas/projjson.schema.json +1174 -0
- package/dist/crs/crs-metadata.cjs +67 -0
- package/dist/crs/crs-metadata.cjs.map +6 -0
- package/dist/crs/crs-metadata.d.ts +43 -0
- package/dist/crs/crs-metadata.d.ts.map +1 -0
- package/dist/crs/crs-metadata.js +26 -0
- package/dist/crs/crs-metadata.js.map +1 -0
- package/dist/crs/crs.d.ts +22 -0
- package/dist/crs/crs.d.ts.map +1 -0
- package/dist/crs/crs.js +5 -0
- package/dist/crs/crs.js.map +1 -0
- package/dist/crs/index.cjs +916 -0
- package/dist/crs/index.cjs.map +6 -0
- package/dist/crs/index.d.ts +12 -0
- package/dist/crs/index.d.ts.map +1 -0
- package/dist/crs/index.js +10 -0
- package/dist/crs/index.js.map +1 -0
- package/dist/crs/proj-string.cjs +219 -0
- package/dist/crs/proj-string.cjs.map +6 -0
- package/dist/crs/proj-string.d.ts +32 -0
- package/dist/crs/proj-string.d.ts.map +1 -0
- package/dist/crs/proj-string.js +204 -0
- package/dist/crs/proj-string.js.map +1 -0
- package/dist/crs/projjson-schema-constants.d.ts +5 -0
- package/dist/crs/projjson-schema-constants.d.ts.map +1 -0
- package/dist/crs/projjson-schema-constants.js +8 -0
- package/dist/crs/projjson-schema-constants.js.map +1 -0
- package/dist/crs/projjson-types.d.ts +557 -0
- package/dist/crs/projjson-types.d.ts.map +1 -0
- package/dist/crs/projjson-types.js +5 -0
- package/dist/crs/projjson-types.js.map +1 -0
- package/dist/crs/spatial-reference.cjs +80 -0
- package/dist/crs/spatial-reference.cjs.map +6 -0
- package/dist/crs/spatial-reference.d.ts +104 -0
- package/dist/crs/spatial-reference.d.ts.map +1 -0
- package/dist/crs/spatial-reference.js +86 -0
- package/dist/crs/spatial-reference.js.map +1 -0
- package/dist/crs/units-table.d.ts +4 -0
- package/dist/crs/units-table.d.ts.map +1 -0
- package/dist/crs/units-table.js +29 -0
- package/dist/crs/units-table.js.map +1 -0
- package/dist/crs/wkt-crs.cjs +610 -0
- package/dist/crs/wkt-crs.cjs.map +6 -0
- package/dist/crs/wkt-crs.d.ts +86 -0
- package/dist/crs/wkt-crs.d.ts.map +1 -0
- package/dist/crs/wkt-crs.js +613 -0
- package/dist/crs/wkt-crs.js.map +1 -0
- package/dist/ellipsoid-helpers/ellipsoid-transform.d.ts +1 -1
- package/dist/ellipsoid-helpers/ellipsoid-transform.d.ts.map +1 -1
- package/dist/ellipsoid-tangent-plane.d.ts +1 -1
- package/dist/ellipsoid-tangent-plane.d.ts.map +1 -1
- package/dist/ellipsoid-tangent-plane.js +1 -1
- package/dist/ellipsoid-tangent-plane.js.map +1 -1
- package/dist/ellipsoid.d.ts +1 -1
- package/dist/ellipsoid.d.ts.map +1 -1
- package/dist/entries/ellipsoid.cjs +572 -0
- package/dist/entries/ellipsoid.cjs.map +6 -0
- package/dist/entries/ellipsoid.d.ts +5 -0
- package/dist/entries/ellipsoid.d.ts.map +1 -0
- package/dist/entries/ellipsoid.js +7 -0
- package/dist/entries/ellipsoid.js.map +1 -0
- package/dist/expressions.cjs +528 -0
- package/dist/expressions.cjs.map +6 -0
- package/dist/expressions.d.ts +4 -0
- package/dist/expressions.d.ts.map +1 -0
- package/dist/expressions.js +23 -0
- package/dist/expressions.js.map +1 -0
- package/dist/geoarrow/builder-entry.cjs +699 -0
- package/dist/geoarrow/builder-entry.cjs.map +6 -0
- package/dist/geoarrow/builder-entry.d.ts +4 -0
- package/dist/geoarrow/builder-entry.d.ts.map +1 -0
- package/dist/geoarrow/builder-entry.js +5 -0
- package/dist/geoarrow/builder-entry.js.map +1 -0
- package/dist/geoarrow/builder.d.ts +106 -0
- package/dist/geoarrow/builder.d.ts.map +1 -0
- package/dist/geoarrow/builder.js +668 -0
- package/dist/geoarrow/builder.js.map +1 -0
- package/dist/geoarrow/codecs.d.ts +24 -0
- package/dist/geoarrow/codecs.d.ts.map +1 -0
- package/dist/geoarrow/codecs.js +921 -0
- package/dist/geoarrow/codecs.js.map +1 -0
- package/dist/geoarrow/index.cjs +4089 -0
- package/dist/geoarrow/index.cjs.map +6 -0
- package/dist/geoarrow/index.d.ts +15 -0
- package/dist/geoarrow/index.d.ts.map +1 -0
- package/dist/geoarrow/index.js +11 -0
- package/dist/geoarrow/index.js.map +1 -0
- package/dist/geoarrow/kernels.d.ts +56 -0
- package/dist/geoarrow/kernels.d.ts.map +1 -0
- package/dist/geoarrow/kernels.js +982 -0
- package/dist/geoarrow/kernels.js.map +1 -0
- package/dist/geoarrow/layout.d.ts +64 -0
- package/dist/geoarrow/layout.d.ts.map +1 -0
- package/dist/geoarrow/layout.js +722 -0
- package/dist/geoarrow/layout.js.map +1 -0
- package/dist/geoarrow/tessellate.d.ts +31 -0
- package/dist/geoarrow/tessellate.d.ts.map +1 -0
- package/dist/geoarrow/tessellate.js +102 -0
- package/dist/geoarrow/tessellate.js.map +1 -0
- package/dist/geoarrow/tessellation-entry.cjs +431 -0
- package/dist/geoarrow/tessellation-entry.cjs.map +6 -0
- package/dist/geoarrow/tessellation-entry.d.ts +4 -0
- package/dist/geoarrow/tessellation-entry.d.ts.map +1 -0
- package/dist/geoarrow/tessellation-entry.js +5 -0
- package/dist/geoarrow/tessellation-entry.js.map +1 -0
- package/dist/geoarrow/types.d.ts +147 -0
- package/dist/geoarrow/types.d.ts.map +1 -0
- package/dist/geoarrow/types.js +41 -0
- package/dist/geoarrow/types.js.map +1 -0
- package/dist/geoarrow/views.d.ts +45 -0
- package/dist/geoarrow/views.d.ts.map +1 -0
- package/dist/geoarrow/views.js +114 -0
- package/dist/geoarrow/views.js.map +1 -0
- package/dist/geoarrow/wkb-entry.cjs +2467 -0
- package/dist/geoarrow/wkb-entry.cjs.map +6 -0
- package/dist/geoarrow/wkb-entry.d.ts +4 -0
- package/dist/geoarrow/wkb-entry.d.ts.map +1 -0
- package/dist/geoarrow/wkb-entry.js +6 -0
- package/dist/geoarrow/wkb-entry.js.map +1 -0
- package/dist/geoarrow/worker.cjs +77 -0
- package/dist/geoarrow/worker.cjs.map +6 -0
- package/dist/geoarrow/worker.d.ts +11 -0
- package/dist/geoarrow/worker.d.ts.map +1 -0
- package/dist/geoarrow/worker.js +10 -0
- package/dist/geoarrow/worker.js.map +1 -0
- package/dist/globe.cjs +1002 -0
- package/dist/globe.cjs.map +6 -0
- package/dist/globe.d.ts +10 -0
- package/dist/globe.d.ts.map +1 -0
- package/dist/globe.js +9 -0
- package/dist/globe.js.map +1 -0
- package/dist/index.cjs +154 -261
- package/dist/index.cjs.map +3 -3
- package/dist/index.d.ts +3 -15
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -9
- package/dist/index.js.map +1 -1
- package/dist/make-obb-from-region.d.ts +1 -1
- package/dist/make-obb-from-region.d.ts.map +1 -1
- package/dist/make-obb-from-region.js +1 -1
- package/dist/make-obb-from-region.js.map +1 -1
- package/dist/projection/analysis.cjs +239 -0
- package/dist/projection/analysis.cjs.map +6 -0
- package/dist/projection/analysis.d.ts +72 -0
- package/dist/projection/analysis.d.ts.map +1 -0
- package/dist/projection/analysis.js +221 -0
- package/dist/projection/analysis.js.map +1 -0
- package/dist/projection/bulk.cjs +203 -0
- package/dist/projection/bulk.cjs.map +6 -0
- package/dist/projection/bulk.d.ts +51 -0
- package/dist/projection/bulk.d.ts.map +1 -0
- package/dist/projection/bulk.js +215 -0
- package/dist/projection/bulk.js.map +1 -0
- package/dist/projection/datums.cjs +1383 -0
- package/dist/projection/datums.cjs.map +6 -0
- package/dist/projection/datums.d.ts +5 -0
- package/dist/projection/datums.d.ts.map +1 -0
- package/dist/projection/datums.js +10 -0
- package/dist/projection/datums.js.map +1 -0
- package/dist/projection/deformation.cjs +134 -0
- package/dist/projection/deformation.cjs.map +6 -0
- package/dist/projection/deformation.d.ts +3 -0
- package/dist/projection/deformation.d.ts.map +1 -0
- package/dist/projection/deformation.js +5 -0
- package/dist/projection/deformation.js.map +1 -0
- package/dist/projection/experimental/catalogue-kernel.d.ts +9 -0
- package/dist/projection/experimental/catalogue-kernel.d.ts.map +1 -0
- package/dist/projection/experimental/catalogue-kernel.js +44 -0
- package/dist/projection/experimental/catalogue-kernel.js.map +1 -0
- package/dist/projection/experimental/common/adjust_lat.d.ts +2 -0
- package/dist/projection/experimental/common/adjust_lat.d.ts.map +1 -0
- package/dist/projection/experimental/common/adjust_lat.js +10 -0
- package/dist/projection/experimental/common/adjust_lat.js.map +1 -0
- package/dist/projection/experimental/common/adjust_lon.d.ts +2 -0
- package/dist/projection/experimental/common/adjust_lon.d.ts.map +1 -0
- package/dist/projection/experimental/common/adjust_lon.js +13 -0
- package/dist/projection/experimental/common/adjust_lon.js.map +1 -0
- package/dist/projection/experimental/common/asinhy.d.ts +2 -0
- package/dist/projection/experimental/common/asinhy.d.ts.map +1 -0
- package/dist/projection/experimental/common/asinhy.js +12 -0
- package/dist/projection/experimental/common/asinhy.js.map +1 -0
- package/dist/projection/experimental/common/asinz.d.ts +2 -0
- package/dist/projection/experimental/common/asinz.d.ts.map +1 -0
- package/dist/projection/experimental/common/asinz.js +11 -0
- package/dist/projection/experimental/common/asinz.js.map +1 -0
- package/dist/projection/experimental/common/authlat.d.ts +2 -0
- package/dist/projection/experimental/common/authlat.d.ts.map +1 -0
- package/dist/projection/experimental/common/authlat.js +9 -0
- package/dist/projection/experimental/common/authlat.js.map +1 -0
- package/dist/projection/experimental/common/authset.d.ts +2 -0
- package/dist/projection/experimental/common/authset.d.ts.map +1 -0
- package/dist/projection/experimental/common/authset.js +24 -0
- package/dist/projection/experimental/common/authset.js.map +1 -0
- package/dist/projection/experimental/common/clens.d.ts +2 -0
- package/dist/projection/experimental/common/clens.d.ts.map +1 -0
- package/dist/projection/experimental/common/clens.js +18 -0
- package/dist/projection/experimental/common/clens.js.map +1 -0
- package/dist/projection/experimental/common/clens_cmplx.d.ts +5 -0
- package/dist/projection/experimental/common/clens_cmplx.d.ts.map +1 -0
- package/dist/projection/experimental/common/clens_cmplx.js +34 -0
- package/dist/projection/experimental/common/clens_cmplx.js.map +1 -0
- package/dist/projection/experimental/common/constants.d.ts +9 -0
- package/dist/projection/experimental/common/constants.d.ts.map +1 -0
- package/dist/projection/experimental/common/constants.js +14 -0
- package/dist/projection/experimental/common/constants.js.map +1 -0
- package/dist/projection/experimental/common/cosh.d.ts +2 -0
- package/dist/projection/experimental/common/cosh.d.ts.map +1 -0
- package/dist/projection/experimental/common/cosh.js +10 -0
- package/dist/projection/experimental/common/cosh.js.map +1 -0
- package/dist/projection/experimental/common/e0fn.d.ts +2 -0
- package/dist/projection/experimental/common/e0fn.d.ts.map +1 -0
- package/dist/projection/experimental/common/e0fn.js +8 -0
- package/dist/projection/experimental/common/e0fn.js.map +1 -0
- package/dist/projection/experimental/common/e1fn.d.ts +2 -0
- package/dist/projection/experimental/common/e1fn.d.ts.map +1 -0
- package/dist/projection/experimental/common/e1fn.js +8 -0
- package/dist/projection/experimental/common/e1fn.js.map +1 -0
- package/dist/projection/experimental/common/e2fn.d.ts +2 -0
- package/dist/projection/experimental/common/e2fn.d.ts.map +1 -0
- package/dist/projection/experimental/common/e2fn.js +8 -0
- package/dist/projection/experimental/common/e2fn.js.map +1 -0
- package/dist/projection/experimental/common/e3fn.d.ts +2 -0
- package/dist/projection/experimental/common/e3fn.d.ts.map +1 -0
- package/dist/projection/experimental/common/e3fn.js +8 -0
- package/dist/projection/experimental/common/e3fn.js.map +1 -0
- package/dist/projection/experimental/common/fL.d.ts +2 -0
- package/dist/projection/experimental/common/fL.d.ts.map +1 -0
- package/dist/projection/experimental/common/fL.js +9 -0
- package/dist/projection/experimental/common/fL.js.map +1 -0
- package/dist/projection/experimental/common/gN.d.ts +2 -0
- package/dist/projection/experimental/common/gN.d.ts.map +1 -0
- package/dist/projection/experimental/common/gN.js +9 -0
- package/dist/projection/experimental/common/gN.js.map +1 -0
- package/dist/projection/experimental/common/gatg.d.ts +2 -0
- package/dist/projection/experimental/common/gatg.d.ts.map +1 -0
- package/dist/projection/experimental/common/gatg.js +18 -0
- package/dist/projection/experimental/common/gatg.js.map +1 -0
- package/dist/projection/experimental/common/hypot.d.ts +2 -0
- package/dist/projection/experimental/common/hypot.d.ts.map +1 -0
- package/dist/projection/experimental/common/hypot.js +12 -0
- package/dist/projection/experimental/common/hypot.js.map +1 -0
- package/dist/projection/experimental/common/imlfn.d.ts +2 -0
- package/dist/projection/experimental/common/imlfn.d.ts.map +1 -0
- package/dist/projection/experimental/common/imlfn.js +21 -0
- package/dist/projection/experimental/common/imlfn.js.map +1 -0
- package/dist/projection/experimental/common/invlatiso.d.ts +2 -0
- package/dist/projection/experimental/common/invlatiso.d.ts.map +1 -0
- package/dist/projection/experimental/common/invlatiso.js +20 -0
- package/dist/projection/experimental/common/invlatiso.js.map +1 -0
- package/dist/projection/experimental/common/iqsfnz.d.ts +2 -0
- package/dist/projection/experimental/common/iqsfnz.d.ts.map +1 -0
- package/dist/projection/experimental/common/iqsfnz.js +44 -0
- package/dist/projection/experimental/common/iqsfnz.js.map +1 -0
- package/dist/projection/experimental/common/latiso.d.ts +2 -0
- package/dist/projection/experimental/common/latiso.d.ts.map +1 -0
- package/dist/projection/experimental/common/latiso.js +19 -0
- package/dist/projection/experimental/common/latiso.js.map +1 -0
- package/dist/projection/experimental/common/log1py.d.ts +2 -0
- package/dist/projection/experimental/common/log1py.d.ts.map +1 -0
- package/dist/projection/experimental/common/log1py.js +10 -0
- package/dist/projection/experimental/common/log1py.js.map +1 -0
- package/dist/projection/experimental/common/meridian-distance.d.ts +5 -0
- package/dist/projection/experimental/common/meridian-distance.d.ts.map +1 -0
- package/dist/projection/experimental/common/meridian-distance.js +47 -0
- package/dist/projection/experimental/common/meridian-distance.js.map +1 -0
- package/dist/projection/experimental/common/mlfn.d.ts +2 -0
- package/dist/projection/experimental/common/mlfn.d.ts.map +1 -0
- package/dist/projection/experimental/common/mlfn.js +8 -0
- package/dist/projection/experimental/common/mlfn.js.map +1 -0
- package/dist/projection/experimental/common/msfnz.d.ts +2 -0
- package/dist/projection/experimental/common/msfnz.d.ts.map +1 -0
- package/dist/projection/experimental/common/msfnz.js +9 -0
- package/dist/projection/experimental/common/msfnz.js.map +1 -0
- package/dist/projection/experimental/common/phi2z.d.ts +2 -0
- package/dist/projection/experimental/common/phi2z.d.ts.map +1 -0
- package/dist/projection/experimental/common/phi2z.js +21 -0
- package/dist/projection/experimental/common/phi2z.js.map +1 -0
- package/dist/projection/experimental/common/pj_enfn.d.ts +2 -0
- package/dist/projection/experimental/common/pj_enfn.d.ts.map +1 -0
- package/dist/projection/experimental/common/pj_enfn.js +28 -0
- package/dist/projection/experimental/common/pj_enfn.js.map +1 -0
- package/dist/projection/experimental/common/pj_inv_mlfn.d.ts +2 -0
- package/dist/projection/experimental/common/pj_inv_mlfn.d.ts.map +1 -0
- package/dist/projection/experimental/common/pj_inv_mlfn.js +26 -0
- package/dist/projection/experimental/common/pj_inv_mlfn.js.map +1 -0
- package/dist/projection/experimental/common/pj_mlfn.d.ts +2 -0
- package/dist/projection/experimental/common/pj_mlfn.d.ts.map +1 -0
- package/dist/projection/experimental/common/pj_mlfn.js +10 -0
- package/dist/projection/experimental/common/pj_mlfn.js.map +1 -0
- package/dist/projection/experimental/common/qsfnz.d.ts +2 -0
- package/dist/projection/experimental/common/qsfnz.d.ts.map +1 -0
- package/dist/projection/experimental/common/qsfnz.js +16 -0
- package/dist/projection/experimental/common/qsfnz.js.map +1 -0
- package/dist/projection/experimental/common/sign.d.ts +2 -0
- package/dist/projection/experimental/common/sign.d.ts.map +1 -0
- package/dist/projection/experimental/common/sign.js +8 -0
- package/dist/projection/experimental/common/sign.js.map +1 -0
- package/dist/projection/experimental/common/sinh.d.ts +2 -0
- package/dist/projection/experimental/common/sinh.d.ts.map +1 -0
- package/dist/projection/experimental/common/sinh.js +10 -0
- package/dist/projection/experimental/common/sinh.js.map +1 -0
- package/dist/projection/experimental/common/srat.d.ts +2 -0
- package/dist/projection/experimental/common/srat.d.ts.map +1 -0
- package/dist/projection/experimental/common/srat.js +8 -0
- package/dist/projection/experimental/common/srat.js.map +1 -0
- package/dist/projection/experimental/common/tsfnz.d.ts +2 -0
- package/dist/projection/experimental/common/tsfnz.d.ts.map +1 -0
- package/dist/projection/experimental/common/tsfnz.js +12 -0
- package/dist/projection/experimental/common/tsfnz.js.map +1 -0
- package/dist/projection/experimental/common/vincenty.d.ts +29 -0
- package/dist/projection/experimental/common/vincenty.d.ts.map +1 -0
- package/dist/projection/experimental/common/vincenty.js +134 -0
- package/dist/projection/experimental/common/vincenty.js.map +1 -0
- package/dist/projection/experimental/core.cjs +1940 -0
- package/dist/projection/experimental/core.cjs.map +6 -0
- package/dist/projection/experimental/core.d.ts +16 -0
- package/dist/projection/experimental/core.d.ts.map +1 -0
- package/dist/projection/experimental/core.js +10 -0
- package/dist/projection/experimental/core.js.map +1 -0
- package/dist/projection/experimental/crs/datum-catalog.d.ts +5 -0
- package/dist/projection/experimental/crs/datum-catalog.d.ts.map +1 -0
- package/dist/projection/experimental/crs/datum-catalog.js +47 -0
- package/dist/projection/experimental/crs/datum-catalog.js.map +1 -0
- package/dist/projection/experimental/crs/datum-table.d.ts +8 -0
- package/dist/projection/experimental/crs/datum-table.d.ts.map +1 -0
- package/dist/projection/experimental/crs/datum-table.js +1355 -0
- package/dist/projection/experimental/crs/datum-table.js.map +1 -0
- package/dist/projection/experimental/crs/ellipsoid-table.d.ts +8 -0
- package/dist/projection/experimental/crs/ellipsoid-table.d.ts.map +1 -0
- package/dist/projection/experimental/crs/ellipsoid-table.js +229 -0
- package/dist/projection/experimental/crs/ellipsoid-table.js.map +1 -0
- package/dist/projection/experimental/crs/normalize.d.ts +8 -0
- package/dist/projection/experimental/crs/normalize.d.ts.map +1 -0
- package/dist/projection/experimental/crs/normalize.js +279 -0
- package/dist/projection/experimental/crs/normalize.js.map +1 -0
- package/dist/projection/experimental/crs/primemeridian-table.d.ts +3 -0
- package/dist/projection/experimental/crs/primemeridian-table.d.ts.map +1 -0
- package/dist/projection/experimental/crs/primemeridian-table.js +20 -0
- package/dist/projection/experimental/crs/primemeridian-table.js.map +1 -0
- package/dist/projection/experimental/crs/projjson.cjs +564 -0
- package/dist/projection/experimental/crs/projjson.cjs.map +6 -0
- package/dist/projection/experimental/crs/projjson.d.ts +4 -0
- package/dist/projection/experimental/crs/projjson.d.ts.map +1 -0
- package/dist/projection/experimental/crs/projjson.js +12 -0
- package/dist/projection/experimental/crs/projjson.js.map +1 -0
- package/dist/projection/experimental/crs/spatial-reference.d.ts +11 -0
- package/dist/projection/experimental/crs/spatial-reference.d.ts.map +1 -0
- package/dist/projection/experimental/crs/spatial-reference.js +91 -0
- package/dist/projection/experimental/crs/spatial-reference.js.map +1 -0
- package/dist/projection/experimental/crs/structured.d.ts +8 -0
- package/dist/projection/experimental/crs/structured.d.ts.map +1 -0
- package/dist/projection/experimental/crs/structured.js +534 -0
- package/dist/projection/experimental/crs/structured.js.map +1 -0
- package/dist/projection/experimental/crs/types.d.ts +73 -0
- package/dist/projection/experimental/crs/types.d.ts.map +1 -0
- package/dist/projection/experimental/crs/types.js +21 -0
- package/dist/projection/experimental/crs/types.js.map +1 -0
- package/dist/projection/experimental/crs/wkt.cjs +1229 -0
- package/dist/projection/experimental/crs/wkt.cjs.map +6 -0
- package/dist/projection/experimental/crs/wkt.d.ts +3 -0
- package/dist/projection/experimental/crs/wkt.d.ts.map +1 -0
- package/dist/projection/experimental/crs/wkt.js +190 -0
- package/dist/projection/experimental/crs/wkt.js.map +1 -0
- package/dist/projection/experimental/crs-descriptor.d.ts +10 -0
- package/dist/projection/experimental/crs-descriptor.d.ts.map +1 -0
- package/dist/projection/experimental/crs-descriptor.js +171 -0
- package/dist/projection/experimental/crs-descriptor.js.map +1 -0
- package/dist/projection/experimental/crs-rendering-scale.d.ts +5 -0
- package/dist/projection/experimental/crs-rendering-scale.d.ts.map +1 -0
- package/dist/projection/experimental/crs-rendering-scale.js +97 -0
- package/dist/projection/experimental/crs-rendering-scale.js.map +1 -0
- package/dist/projection/experimental/datum.d.ts +17 -0
- package/dist/projection/experimental/datum.d.ts.map +1 -0
- package/dist/projection/experimental/datum.js +160 -0
- package/dist/projection/experimental/datum.js.map +1 -0
- package/dist/projection/experimental/deformation-inverse.d.ts +5 -0
- package/dist/projection/experimental/deformation-inverse.d.ts.map +1 -0
- package/dist/projection/experimental/deformation-inverse.js +89 -0
- package/dist/projection/experimental/deformation-inverse.js.map +1 -0
- package/dist/projection/experimental/deformation.d.ts +23 -0
- package/dist/projection/experimental/deformation.d.ts.map +1 -0
- package/dist/projection/experimental/deformation.js +13 -0
- package/dist/projection/experimental/deformation.js.map +1 -0
- package/dist/projection/experimental/entries/projections/aea.cjs +642 -0
- package/dist/projection/experimental/entries/projections/aea.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/aea.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/aea.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/aea.js +5 -0
- package/dist/projection/experimental/entries/projections/aea.js.map +1 -0
- package/dist/projection/experimental/entries/projections/aeqd.cjs +718 -0
- package/dist/projection/experimental/entries/projections/aeqd.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/aeqd.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/aeqd.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/aeqd.js +5 -0
- package/dist/projection/experimental/entries/projections/aeqd.js.map +1 -0
- package/dist/projection/experimental/entries/projections/bonne.cjs +621 -0
- package/dist/projection/experimental/entries/projections/bonne.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/bonne.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/bonne.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/bonne.js +5 -0
- package/dist/projection/experimental/entries/projections/bonne.js.map +1 -0
- package/dist/projection/experimental/entries/projections/cass.cjs +610 -0
- package/dist/projection/experimental/entries/projections/cass.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/cass.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/cass.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/cass.js +5 -0
- package/dist/projection/experimental/entries/projections/cass.js.map +1 -0
- package/dist/projection/experimental/entries/projections/cea.cjs +536 -0
- package/dist/projection/experimental/entries/projections/cea.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/cea.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/cea.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/cea.js +5 -0
- package/dist/projection/experimental/entries/projections/cea.js.map +1 -0
- package/dist/projection/experimental/entries/projections/eck6.cjs +559 -0
- package/dist/projection/experimental/entries/projections/eck6.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/eck6.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/eck6.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/eck6.js +5 -0
- package/dist/projection/experimental/entries/projections/eck6.js.map +1 -0
- package/dist/projection/experimental/entries/projections/eqc.cjs +256 -0
- package/dist/projection/experimental/entries/projections/eqc.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/eqc.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/eqc.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/eqc.js +5 -0
- package/dist/projection/experimental/entries/projections/eqc.js.map +1 -0
- package/dist/projection/experimental/entries/projections/eqdc.cjs +650 -0
- package/dist/projection/experimental/entries/projections/eqdc.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/eqdc.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/eqdc.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/eqdc.js +5 -0
- package/dist/projection/experimental/entries/projections/eqdc.js.map +1 -0
- package/dist/projection/experimental/entries/projections/eqearth.cjs +451 -0
- package/dist/projection/experimental/entries/projections/eqearth.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/eqearth.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/eqearth.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/eqearth.js +5 -0
- package/dist/projection/experimental/entries/projections/eqearth.js.map +1 -0
- package/dist/projection/experimental/entries/projections/equi.cjs +475 -0
- package/dist/projection/experimental/entries/projections/equi.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/equi.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/equi.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/equi.js +5 -0
- package/dist/projection/experimental/entries/projections/equi.js.map +1 -0
- package/dist/projection/experimental/entries/projections/etmerc.cjs +887 -0
- package/dist/projection/experimental/entries/projections/etmerc.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/etmerc.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/etmerc.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/etmerc.js +5 -0
- package/dist/projection/experimental/entries/projections/etmerc.js.map +1 -0
- package/dist/projection/experimental/entries/projections/geocent.cjs +215 -0
- package/dist/projection/experimental/entries/projections/geocent.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/geocent.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/geocent.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/geocent.js +5 -0
- package/dist/projection/experimental/entries/projections/geocent.js.map +1 -0
- package/dist/projection/experimental/entries/projections/geos.cjs +703 -0
- package/dist/projection/experimental/entries/projections/geos.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/geos.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/geos.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/geos.js +5 -0
- package/dist/projection/experimental/entries/projections/geos.js.map +1 -0
- package/dist/projection/experimental/entries/projections/gnom.cjs +571 -0
- package/dist/projection/experimental/entries/projections/gnom.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/gnom.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/gnom.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/gnom.js +5 -0
- package/dist/projection/experimental/entries/projections/gnom.js.map +1 -0
- package/dist/projection/experimental/entries/projections/gstmerc.cjs +526 -0
- package/dist/projection/experimental/entries/projections/gstmerc.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/gstmerc.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/gstmerc.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/gstmerc.js +5 -0
- package/dist/projection/experimental/entries/projections/gstmerc.js.map +1 -0
- package/dist/projection/experimental/entries/projections/krovak.cjs +683 -0
- package/dist/projection/experimental/entries/projections/krovak.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/krovak.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/krovak.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/krovak.js +5 -0
- package/dist/projection/experimental/entries/projections/krovak.js.map +1 -0
- package/dist/projection/experimental/entries/projections/laea.cjs +761 -0
- package/dist/projection/experimental/entries/projections/laea.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/laea.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/laea.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/laea.js +5 -0
- package/dist/projection/experimental/entries/projections/laea.js.map +1 -0
- package/dist/projection/experimental/entries/projections/lcc.cjs +642 -0
- package/dist/projection/experimental/entries/projections/lcc.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/lcc.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/lcc.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/lcc.js +5 -0
- package/dist/projection/experimental/entries/projections/lcc.js.map +1 -0
- package/dist/projection/experimental/entries/projections/merc.cjs +354 -0
- package/dist/projection/experimental/entries/projections/merc.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/merc.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/merc.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/merc.js +5 -0
- package/dist/projection/experimental/entries/projections/merc.js.map +1 -0
- package/dist/projection/experimental/entries/projections/mill.cjs +470 -0
- package/dist/projection/experimental/entries/projections/mill.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/mill.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/mill.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/mill.js +5 -0
- package/dist/projection/experimental/entries/projections/mill.js.map +1 -0
- package/dist/projection/experimental/entries/projections/moll.cjs +510 -0
- package/dist/projection/experimental/entries/projections/moll.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/moll.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/moll.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/moll.js +5 -0
- package/dist/projection/experimental/entries/projections/moll.js.map +1 -0
- package/dist/projection/experimental/entries/projections/nzmg.cjs +623 -0
- package/dist/projection/experimental/entries/projections/nzmg.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/nzmg.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/nzmg.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/nzmg.js +5 -0
- package/dist/projection/experimental/entries/projections/nzmg.js.map +1 -0
- package/dist/projection/experimental/entries/projections/ob_tran.cjs +540 -0
- package/dist/projection/experimental/entries/projections/ob_tran.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/ob_tran.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/ob_tran.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/ob_tran.js +5 -0
- package/dist/projection/experimental/entries/projections/ob_tran.js.map +1 -0
- package/dist/projection/experimental/entries/projections/omerc.cjs +852 -0
- package/dist/projection/experimental/entries/projections/omerc.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/omerc.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/omerc.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/omerc.js +5 -0
- package/dist/projection/experimental/entries/projections/omerc.js.map +1 -0
- package/dist/projection/experimental/entries/projections/ortho.cjs +573 -0
- package/dist/projection/experimental/entries/projections/ortho.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/ortho.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/ortho.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/ortho.js +5 -0
- package/dist/projection/experimental/entries/projections/ortho.js.map +1 -0
- package/dist/projection/experimental/entries/projections/poly.cjs +588 -0
- package/dist/projection/experimental/entries/projections/poly.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/poly.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/poly.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/poly.js +5 -0
- package/dist/projection/experimental/entries/projections/poly.js.map +1 -0
- package/dist/projection/experimental/entries/projections/qsc.cjs +714 -0
- package/dist/projection/experimental/entries/projections/qsc.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/qsc.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/qsc.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/qsc.js +5 -0
- package/dist/projection/experimental/entries/projections/qsc.js.map +1 -0
- package/dist/projection/experimental/entries/projections/robin.cjs +584 -0
- package/dist/projection/experimental/entries/projections/robin.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/robin.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/robin.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/robin.js +5 -0
- package/dist/projection/experimental/entries/projections/robin.js.map +1 -0
- package/dist/projection/experimental/entries/projections/sinu.cjs +583 -0
- package/dist/projection/experimental/entries/projections/sinu.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/sinu.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/sinu.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/sinu.js +5 -0
- package/dist/projection/experimental/entries/projections/sinu.js.map +1 -0
- package/dist/projection/experimental/entries/projections/somerc.cjs +582 -0
- package/dist/projection/experimental/entries/projections/somerc.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/somerc.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/somerc.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/somerc.js +5 -0
- package/dist/projection/experimental/entries/projections/somerc.js.map +1 -0
- package/dist/projection/experimental/entries/projections/stere.cjs +684 -0
- package/dist/projection/experimental/entries/projections/stere.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/stere.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/stere.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/stere.js +5 -0
- package/dist/projection/experimental/entries/projections/stere.js.map +1 -0
- package/dist/projection/experimental/entries/projections/sterea.cjs +623 -0
- package/dist/projection/experimental/entries/projections/sterea.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/sterea.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/sterea.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/sterea.js +5 -0
- package/dist/projection/experimental/entries/projections/sterea.js.map +1 -0
- package/dist/projection/experimental/entries/projections/tmerc.cjs +887 -0
- package/dist/projection/experimental/entries/projections/tmerc.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/tmerc.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/tmerc.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/tmerc.js +5 -0
- package/dist/projection/experimental/entries/projections/tmerc.js.map +1 -0
- package/dist/projection/experimental/entries/projections/tpers.cjs +645 -0
- package/dist/projection/experimental/entries/projections/tpers.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/tpers.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/tpers.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/tpers.js +5 -0
- package/dist/projection/experimental/entries/projections/tpers.js.map +1 -0
- package/dist/projection/experimental/entries/projections/utm.cjs +915 -0
- package/dist/projection/experimental/entries/projections/utm.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/utm.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/utm.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/utm.js +5 -0
- package/dist/projection/experimental/entries/projections/utm.js.map +1 -0
- package/dist/projection/experimental/entries/projections/vandg.cjs +560 -0
- package/dist/projection/experimental/entries/projections/vandg.cjs.map +6 -0
- package/dist/projection/experimental/entries/projections/vandg.d.ts +2 -0
- package/dist/projection/experimental/entries/projections/vandg.d.ts.map +1 -0
- package/dist/projection/experimental/entries/projections/vandg.js +5 -0
- package/dist/projection/experimental/entries/projections/vandg.js.map +1 -0
- package/dist/projection/experimental/exact-helmert.d.ts +9 -0
- package/dist/projection/experimental/exact-helmert.d.ts.map +1 -0
- package/dist/projection/experimental/exact-helmert.js +32 -0
- package/dist/projection/experimental/exact-helmert.js.map +1 -0
- package/dist/projection/experimental/flat-projection.d.ts +15 -0
- package/dist/projection/experimental/flat-projection.d.ts.map +1 -0
- package/dist/projection/experimental/flat-projection.js +70 -0
- package/dist/projection/experimental/flat-projection.js.map +1 -0
- package/dist/projection/experimental/grids/geotiff.cjs +180 -0
- package/dist/projection/experimental/grids/geotiff.cjs.map +6 -0
- package/dist/projection/experimental/grids/geotiff.d.ts +23 -0
- package/dist/projection/experimental/grids/geotiff.d.ts.map +1 -0
- package/dist/projection/experimental/grids/geotiff.js +59 -0
- package/dist/projection/experimental/grids/geotiff.js.map +1 -0
- package/dist/projection/experimental/grids/grid.d.ts +4 -0
- package/dist/projection/experimental/grids/grid.d.ts.map +1 -0
- package/dist/projection/experimental/grids/grid.js +111 -0
- package/dist/projection/experimental/grids/grid.js.map +1 -0
- package/dist/projection/experimental/grids/gtx.cjs +91 -0
- package/dist/projection/experimental/grids/gtx.cjs.map +6 -0
- package/dist/projection/experimental/grids/gtx.d.ts +7 -0
- package/dist/projection/experimental/grids/gtx.d.ts.map +1 -0
- package/dist/projection/experimental/grids/gtx.js +30 -0
- package/dist/projection/experimental/grids/gtx.js.map +1 -0
- package/dist/projection/experimental/grids/ntv2.cjs +181 -0
- package/dist/projection/experimental/grids/ntv2.cjs.map +6 -0
- package/dist/projection/experimental/grids/ntv2.d.ts +8 -0
- package/dist/projection/experimental/grids/ntv2.d.ts.map +1 -0
- package/dist/projection/experimental/grids/ntv2.js +56 -0
- package/dist/projection/experimental/grids/ntv2.js.map +1 -0
- package/dist/projection/experimental/grids/scalar-geotiff.d.ts +58 -0
- package/dist/projection/experimental/grids/scalar-geotiff.d.ts.map +1 -0
- package/dist/projection/experimental/grids/scalar-geotiff.js +147 -0
- package/dist/projection/experimental/grids/scalar-geotiff.js.map +1 -0
- package/dist/projection/experimental/grids/types.d.ts +35 -0
- package/dist/projection/experimental/grids/types.d.ts.map +1 -0
- package/dist/projection/experimental/grids/types.js +2 -0
- package/dist/projection/experimental/grids/types.js.map +1 -0
- package/dist/projection/experimental/grids/velocity-geotiff.cjs +247 -0
- package/dist/projection/experimental/grids/velocity-geotiff.cjs.map +6 -0
- package/dist/projection/experimental/grids/velocity-geotiff.d.ts +11 -0
- package/dist/projection/experimental/grids/velocity-geotiff.d.ts.map +1 -0
- package/dist/projection/experimental/grids/velocity-geotiff.js +61 -0
- package/dist/projection/experimental/grids/velocity-geotiff.js.map +1 -0
- package/dist/projection/experimental/grids/velocity.d.ts +21 -0
- package/dist/projection/experimental/grids/velocity.d.ts.map +1 -0
- package/dist/projection/experimental/grids/velocity.js +29 -0
- package/dist/projection/experimental/grids/velocity.js.map +1 -0
- package/dist/projection/experimental/grids/vertical-geotiff.cjs +195 -0
- package/dist/projection/experimental/grids/vertical-geotiff.cjs.map +6 -0
- package/dist/projection/experimental/grids/vertical-geotiff.d.ts +6 -0
- package/dist/projection/experimental/grids/vertical-geotiff.d.ts.map +1 -0
- package/dist/projection/experimental/grids/vertical-geotiff.js +20 -0
- package/dist/projection/experimental/grids/vertical-geotiff.js.map +1 -0
- package/dist/projection/experimental/grids/vertical.cjs +80 -0
- package/dist/projection/experimental/grids/vertical.cjs.map +6 -0
- package/dist/projection/experimental/grids/vertical.d.ts +22 -0
- package/dist/projection/experimental/grids/vertical.d.ts.map +1 -0
- package/dist/projection/experimental/grids/vertical.js +73 -0
- package/dist/projection/experimental/grids/vertical.js.map +1 -0
- package/dist/projection/experimental/helmert-flat.d.ts +4 -0
- package/dist/projection/experimental/helmert-flat.d.ts.map +1 -0
- package/dist/projection/experimental/helmert-flat.js +53 -0
- package/dist/projection/experimental/helmert-flat.js.map +1 -0
- package/dist/projection/experimental/index.cjs +10047 -0
- package/dist/projection/experimental/index.cjs.map +6 -0
- package/dist/projection/experimental/index.d.ts +49 -0
- package/dist/projection/experimental/index.d.ts.map +1 -0
- package/dist/projection/experimental/index.js +48 -0
- package/dist/projection/experimental/index.js.map +1 -0
- package/dist/projection/experimental/kernel.d.ts +37 -0
- package/dist/projection/experimental/kernel.d.ts.map +1 -0
- package/dist/projection/experimental/kernel.js +81 -0
- package/dist/projection/experimental/kernel.js.map +1 -0
- package/dist/projection/experimental/kernels/aea.d.ts +25 -0
- package/dist/projection/experimental/kernels/aea.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/aea.js +136 -0
- package/dist/projection/experimental/kernels/aea.js.map +1 -0
- package/dist/projection/experimental/kernels/aeqd.d.ts +10 -0
- package/dist/projection/experimental/kernels/aeqd.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/aeqd.js +168 -0
- package/dist/projection/experimental/kernels/aeqd.js.map +1 -0
- package/dist/projection/experimental/kernels/bonne.d.ts +12 -0
- package/dist/projection/experimental/kernels/bonne.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/bonne.js +128 -0
- package/dist/projection/experimental/kernels/bonne.js.map +1 -0
- package/dist/projection/experimental/kernels/cass.d.ts +10 -0
- package/dist/projection/experimental/kernels/cass.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/cass.js +122 -0
- package/dist/projection/experimental/kernels/cass.js.map +1 -0
- package/dist/projection/experimental/kernels/cea.d.ts +6 -0
- package/dist/projection/experimental/kernels/cea.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/cea.js +63 -0
- package/dist/projection/experimental/kernels/cea.js.map +1 -0
- package/dist/projection/experimental/kernels/eck6.d.ts +13 -0
- package/dist/projection/experimental/kernels/eck6.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/eck6.js +23 -0
- package/dist/projection/experimental/kernels/eck6.js.map +1 -0
- package/dist/projection/experimental/kernels/eqdc.d.ts +19 -0
- package/dist/projection/experimental/kernels/eqdc.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/eqdc.js +117 -0
- package/dist/projection/experimental/kernels/eqdc.js.map +1 -0
- package/dist/projection/experimental/kernels/eqearth.d.ts +10 -0
- package/dist/projection/experimental/kernels/eqearth.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/eqearth.js +103 -0
- package/dist/projection/experimental/kernels/eqearth.js.map +1 -0
- package/dist/projection/experimental/kernels/equi.d.ts +9 -0
- package/dist/projection/experimental/kernels/equi.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/equi.js +41 -0
- package/dist/projection/experimental/kernels/equi.js.map +1 -0
- package/dist/projection/experimental/kernels/etmerc.d.ts +13 -0
- package/dist/projection/experimental/kernels/etmerc.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/etmerc.js +145 -0
- package/dist/projection/experimental/kernels/etmerc.js.map +1 -0
- package/dist/projection/experimental/kernels/gauss.d.ts +12 -0
- package/dist/projection/experimental/kernels/gauss.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/gauss.js +64 -0
- package/dist/projection/experimental/kernels/gauss.js.map +1 -0
- package/dist/projection/experimental/kernels/geos.d.ts +17 -0
- package/dist/projection/experimental/kernels/geos.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/geos.js +153 -0
- package/dist/projection/experimental/kernels/geos.js.map +1 -0
- package/dist/projection/experimental/kernels/gnom.d.ts +12 -0
- package/dist/projection/experimental/kernels/gnom.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/gnom.js +95 -0
- package/dist/projection/experimental/kernels/gnom.js.map +1 -0
- package/dist/projection/experimental/kernels/gstmerc.d.ts +13 -0
- package/dist/projection/experimental/kernels/gstmerc.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/gstmerc.js +57 -0
- package/dist/projection/experimental/kernels/gstmerc.js.map +1 -0
- package/dist/projection/experimental/kernels/krovak.d.ts +23 -0
- package/dist/projection/experimental/kernels/krovak.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/krovak.js +128 -0
- package/dist/projection/experimental/kernels/krovak.js.map +1 -0
- package/dist/projection/experimental/kernels/laea.d.ts +23 -0
- package/dist/projection/experimental/kernels/laea.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/laea.js +278 -0
- package/dist/projection/experimental/kernels/laea.js.map +1 -0
- package/dist/projection/experimental/kernels/lcc.d.ts +10 -0
- package/dist/projection/experimental/kernels/lcc.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/lcc.js +131 -0
- package/dist/projection/experimental/kernels/lcc.js.map +1 -0
- package/dist/projection/experimental/kernels/mill.d.ts +6 -0
- package/dist/projection/experimental/kernels/mill.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/mill.js +49 -0
- package/dist/projection/experimental/kernels/mill.js.map +1 -0
- package/dist/projection/experimental/kernels/moll.d.ts +6 -0
- package/dist/projection/experimental/kernels/moll.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/moll.js +89 -0
- package/dist/projection/experimental/kernels/moll.js.map +1 -0
- package/dist/projection/experimental/kernels/nzmg.d.ts +28 -0
- package/dist/projection/experimental/kernels/nzmg.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/nzmg.js +209 -0
- package/dist/projection/experimental/kernels/nzmg.js.map +1 -0
- package/dist/projection/experimental/kernels/omerc.d.ts +30 -0
- package/dist/projection/experimental/kernels/omerc.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/omerc.js +260 -0
- package/dist/projection/experimental/kernels/omerc.js.map +1 -0
- package/dist/projection/experimental/kernels/ortho.d.ts +9 -0
- package/dist/projection/experimental/kernels/ortho.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/ortho.js +91 -0
- package/dist/projection/experimental/kernels/ortho.js.map +1 -0
- package/dist/projection/experimental/kernels/poly.d.ts +13 -0
- package/dist/projection/experimental/kernels/poly.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/poly.js +141 -0
- package/dist/projection/experimental/kernels/poly.js.map +1 -0
- package/dist/projection/experimental/kernels/qsc.d.ts +10 -0
- package/dist/projection/experimental/kernels/qsc.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/qsc.js +379 -0
- package/dist/projection/experimental/kernels/qsc.js.map +1 -0
- package/dist/projection/experimental/kernels/robin.d.ts +6 -0
- package/dist/projection/experimental/kernels/robin.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/robin.js +166 -0
- package/dist/projection/experimental/kernels/robin.js.map +1 -0
- package/dist/projection/experimental/kernels/sinu.d.ts +12 -0
- package/dist/projection/experimental/kernels/sinu.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/sinu.js +104 -0
- package/dist/projection/experimental/kernels/sinu.js.map +1 -0
- package/dist/projection/experimental/kernels/somerc.d.ts +13 -0
- package/dist/projection/experimental/kernels/somerc.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/somerc.js +81 -0
- package/dist/projection/experimental/kernels/somerc.js.map +1 -0
- package/dist/projection/experimental/kernels/stere.d.ts +15 -0
- package/dist/projection/experimental/kernels/stere.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/stere.js +195 -0
- package/dist/projection/experimental/kernels/stere.js.map +1 -0
- package/dist/projection/experimental/kernels/sterea.d.ts +11 -0
- package/dist/projection/experimental/kernels/sterea.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/sterea.js +65 -0
- package/dist/projection/experimental/kernels/sterea.js.map +1 -0
- package/dist/projection/experimental/kernels/tmerc.d.ts +9 -0
- package/dist/projection/experimental/kernels/tmerc.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/tmerc.js +201 -0
- package/dist/projection/experimental/kernels/tmerc.js.map +1 -0
- package/dist/projection/experimental/kernels/tpers.d.ts +22 -0
- package/dist/projection/experimental/kernels/tpers.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/tpers.js +156 -0
- package/dist/projection/experimental/kernels/tpers.js.map +1 -0
- package/dist/projection/experimental/kernels/vandg.d.ts +8 -0
- package/dist/projection/experimental/kernels/vandg.d.ts.map +1 -0
- package/dist/projection/experimental/kernels/vandg.js +133 -0
- package/dist/projection/experimental/kernels/vandg.js.map +1 -0
- package/dist/projection/experimental/kinematic-helmert-flat.d.ts +4 -0
- package/dist/projection/experimental/kinematic-helmert-flat.d.ts.map +1 -0
- package/dist/projection/experimental/kinematic-helmert-flat.js +60 -0
- package/dist/projection/experimental/kinematic-helmert-flat.js.map +1 -0
- package/dist/projection/experimental/kinematic-helmert.d.ts +11 -0
- package/dist/projection/experimental/kinematic-helmert.d.ts.map +1 -0
- package/dist/projection/experimental/kinematic-helmert.js +103 -0
- package/dist/projection/experimental/kinematic-helmert.js.map +1 -0
- package/dist/projection/experimental/lazy-projection.d.ts +17 -0
- package/dist/projection/experimental/lazy-projection.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projection.js +156 -0
- package/dist/projection/experimental/lazy-projection.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/aea.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/aea.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/aea.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/aea.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/aea.js +7 -0
- package/dist/projection/experimental/lazy-projections/aea.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/aeqd.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/aeqd.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/aeqd.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/aeqd.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/aeqd.js +8 -0
- package/dist/projection/experimental/lazy-projections/aeqd.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/bonne.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/bonne.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/bonne.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/bonne.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/bonne.js +7 -0
- package/dist/projection/experimental/lazy-projections/bonne.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/cass.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/cass.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/cass.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/cass.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/cass.js +7 -0
- package/dist/projection/experimental/lazy-projections/cass.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/cea.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/cea.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/cea.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/cea.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/cea.js +8 -0
- package/dist/projection/experimental/lazy-projections/cea.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/eck6.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/eck6.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/eck6.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/eck6.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/eck6.js +7 -0
- package/dist/projection/experimental/lazy-projections/eck6.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/eqc.cjs +82 -0
- package/dist/projection/experimental/lazy-projections/eqc.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/eqc.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/eqc.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/eqc.js +11 -0
- package/dist/projection/experimental/lazy-projections/eqc.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/eqdc.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/eqdc.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/eqdc.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/eqdc.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/eqdc.js +8 -0
- package/dist/projection/experimental/lazy-projections/eqdc.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/eqearth.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/eqearth.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/eqearth.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/eqearth.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/eqearth.js +7 -0
- package/dist/projection/experimental/lazy-projections/eqearth.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/equi.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/equi.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/equi.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/equi.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/equi.js +7 -0
- package/dist/projection/experimental/lazy-projections/equi.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/etmerc.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/etmerc.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/etmerc.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/etmerc.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/etmerc.js +8 -0
- package/dist/projection/experimental/lazy-projections/etmerc.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/geocent.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/geocent.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/geocent.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/geocent.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/geocent.js +7 -0
- package/dist/projection/experimental/lazy-projections/geocent.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/geos.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/geos.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/geos.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/geos.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/geos.js +7 -0
- package/dist/projection/experimental/lazy-projections/geos.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/gnom.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/gnom.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/gnom.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/gnom.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/gnom.js +7 -0
- package/dist/projection/experimental/lazy-projections/gnom.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/gstmerc.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/gstmerc.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/gstmerc.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/gstmerc.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/gstmerc.js +9 -0
- package/dist/projection/experimental/lazy-projections/gstmerc.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/index.cjs +2243 -0
- package/dist/projection/experimental/lazy-projections/index.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/index.d.ts +38 -0
- package/dist/projection/experimental/lazy-projections/index.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/index.js +41 -0
- package/dist/projection/experimental/lazy-projections/index.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/krovak.cjs +87 -0
- package/dist/projection/experimental/lazy-projections/krovak.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/krovak.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/krovak.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/krovak.js +15 -0
- package/dist/projection/experimental/lazy-projections/krovak.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/laea.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/laea.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/laea.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/laea.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/laea.js +8 -0
- package/dist/projection/experimental/lazy-projections/laea.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/lcc.cjs +89 -0
- package/dist/projection/experimental/lazy-projections/lcc.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/lcc.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/lcc.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/lcc.js +18 -0
- package/dist/projection/experimental/lazy-projections/lcc.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/merc.cjs +88 -0
- package/dist/projection/experimental/lazy-projections/merc.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/merc.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/merc.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/merc.js +16 -0
- package/dist/projection/experimental/lazy-projections/merc.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/mill.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/mill.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/mill.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/mill.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/mill.js +8 -0
- package/dist/projection/experimental/lazy-projections/mill.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/moll.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/moll.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/moll.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/moll.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/moll.js +7 -0
- package/dist/projection/experimental/lazy-projections/moll.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/nzmg.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/nzmg.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/nzmg.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/nzmg.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/nzmg.js +8 -0
- package/dist/projection/experimental/lazy-projections/nzmg.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/ob_tran.cjs +90 -0
- package/dist/projection/experimental/lazy-projections/ob_tran.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/ob_tran.d.ts +5 -0
- package/dist/projection/experimental/lazy-projections/ob_tran.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/ob_tran.js +18 -0
- package/dist/projection/experimental/lazy-projections/ob_tran.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/omerc.cjs +91 -0
- package/dist/projection/experimental/lazy-projections/omerc.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/omerc.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/omerc.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/omerc.js +19 -0
- package/dist/projection/experimental/lazy-projections/omerc.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/ortho.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/ortho.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/ortho.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/ortho.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/ortho.js +7 -0
- package/dist/projection/experimental/lazy-projections/ortho.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/poly.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/poly.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/poly.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/poly.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/poly.js +7 -0
- package/dist/projection/experimental/lazy-projections/poly.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/qsc.cjs +82 -0
- package/dist/projection/experimental/lazy-projections/qsc.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/qsc.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/qsc.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/qsc.js +12 -0
- package/dist/projection/experimental/lazy-projections/qsc.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/robin.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/robin.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/robin.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/robin.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/robin.js +7 -0
- package/dist/projection/experimental/lazy-projections/robin.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/sinu.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/sinu.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/sinu.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/sinu.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/sinu.js +7 -0
- package/dist/projection/experimental/lazy-projections/sinu.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/somerc.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/somerc.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/somerc.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/somerc.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/somerc.js +8 -0
- package/dist/projection/experimental/lazy-projections/somerc.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/stere.cjs +87 -0
- package/dist/projection/experimental/lazy-projections/stere.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/stere.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/stere.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/stere.js +15 -0
- package/dist/projection/experimental/lazy-projections/stere.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/sterea.cjs +87 -0
- package/dist/projection/experimental/lazy-projections/sterea.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/sterea.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/sterea.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/sterea.js +16 -0
- package/dist/projection/experimental/lazy-projections/sterea.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/tmerc.cjs +89 -0
- package/dist/projection/experimental/lazy-projections/tmerc.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/tmerc.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/tmerc.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/tmerc.js +18 -0
- package/dist/projection/experimental/lazy-projections/tmerc.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/tpers.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/tpers.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/tpers.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/tpers.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/tpers.js +8 -0
- package/dist/projection/experimental/lazy-projections/tpers.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/utm.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/utm.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/utm.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/utm.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/utm.js +8 -0
- package/dist/projection/experimental/lazy-projections/utm.js.map +1 -0
- package/dist/projection/experimental/lazy-projections/vandg.cjs +79 -0
- package/dist/projection/experimental/lazy-projections/vandg.cjs.map +6 -0
- package/dist/projection/experimental/lazy-projections/vandg.d.ts +3 -0
- package/dist/projection/experimental/lazy-projections/vandg.d.ts.map +1 -0
- package/dist/projection/experimental/lazy-projections/vandg.js +7 -0
- package/dist/projection/experimental/lazy-projections/vandg.js.map +1 -0
- package/dist/projection/experimental/mutable-projection.d.ts +6 -0
- package/dist/projection/experimental/mutable-projection.d.ts.map +1 -0
- package/dist/projection/experimental/mutable-projection.js +53 -0
- package/dist/projection/experimental/mutable-projection.js.map +1 -0
- package/dist/projection/experimental/numeric-flat.d.ts +8 -0
- package/dist/projection/experimental/numeric-flat.d.ts.map +1 -0
- package/dist/projection/experimental/numeric-flat.js +54 -0
- package/dist/projection/experimental/numeric-flat.js.map +1 -0
- package/dist/projection/experimental/parameters.d.ts +8 -0
- package/dist/projection/experimental/parameters.d.ts.map +1 -0
- package/dist/projection/experimental/parameters.js +31 -0
- package/dist/projection/experimental/parameters.js.map +1 -0
- package/dist/projection/experimental/projection-descriptor.d.ts +13 -0
- package/dist/projection/experimental/projection-descriptor.d.ts.map +1 -0
- package/dist/projection/experimental/projection-descriptor.js +52 -0
- package/dist/projection/experimental/projection-descriptor.js.map +1 -0
- package/dist/projection/experimental/projection-engine.d.ts +27 -0
- package/dist/projection/experimental/projection-engine.d.ts.map +1 -0
- package/dist/projection/experimental/projection-engine.js +50 -0
- package/dist/projection/experimental/projection-engine.js.map +1 -0
- package/dist/projection/experimental/projection-pipeline.d.ts +142 -0
- package/dist/projection/experimental/projection-pipeline.d.ts.map +1 -0
- package/dist/projection/experimental/projection-pipeline.js +740 -0
- package/dist/projection/experimental/projection-pipeline.js.map +1 -0
- package/dist/projection/experimental/projection-scratch.d.ts +11 -0
- package/dist/projection/experimental/projection-scratch.d.ts.map +1 -0
- package/dist/projection/experimental/projection-scratch.js +25 -0
- package/dist/projection/experimental/projection-scratch.js.map +1 -0
- package/dist/projection/experimental/projections/aea.d.ts +3 -0
- package/dist/projection/experimental/projections/aea.d.ts.map +1 -0
- package/dist/projection/experimental/projections/aea.js +24 -0
- package/dist/projection/experimental/projections/aea.js.map +1 -0
- package/dist/projection/experimental/projections/aeqd.d.ts +3 -0
- package/dist/projection/experimental/projections/aeqd.d.ts.map +1 -0
- package/dist/projection/experimental/projections/aeqd.js +19 -0
- package/dist/projection/experimental/projections/aeqd.js.map +1 -0
- package/dist/projection/experimental/projections/bonne.d.ts +3 -0
- package/dist/projection/experimental/projections/bonne.d.ts.map +1 -0
- package/dist/projection/experimental/projections/bonne.js +25 -0
- package/dist/projection/experimental/projections/bonne.js.map +1 -0
- package/dist/projection/experimental/projections/cass.d.ts +3 -0
- package/dist/projection/experimental/projections/cass.d.ts.map +1 -0
- package/dist/projection/experimental/projections/cass.js +22 -0
- package/dist/projection/experimental/projections/cass.js.map +1 -0
- package/dist/projection/experimental/projections/cea.d.ts +3 -0
- package/dist/projection/experimental/projections/cea.d.ts.map +1 -0
- package/dist/projection/experimental/projections/cea.js +24 -0
- package/dist/projection/experimental/projections/cea.js.map +1 -0
- package/dist/projection/experimental/projections/eck6.d.ts +3 -0
- package/dist/projection/experimental/projections/eck6.d.ts.map +1 -0
- package/dist/projection/experimental/projections/eck6.js +22 -0
- package/dist/projection/experimental/projections/eck6.js.map +1 -0
- package/dist/projection/experimental/projections/eqdc.d.ts +3 -0
- package/dist/projection/experimental/projections/eqdc.d.ts.map +1 -0
- package/dist/projection/experimental/projections/eqdc.js +23 -0
- package/dist/projection/experimental/projections/eqdc.js.map +1 -0
- package/dist/projection/experimental/projections/eqearth.d.ts +3 -0
- package/dist/projection/experimental/projections/eqearth.d.ts.map +1 -0
- package/dist/projection/experimental/projections/eqearth.js +47 -0
- package/dist/projection/experimental/projections/eqearth.js.map +1 -0
- package/dist/projection/experimental/projections/equi.d.ts +3 -0
- package/dist/projection/experimental/projections/equi.d.ts.map +1 -0
- package/dist/projection/experimental/projections/equi.js +24 -0
- package/dist/projection/experimental/projections/equi.js.map +1 -0
- package/dist/projection/experimental/projections/equidistant-cylindrical.d.ts +4 -0
- package/dist/projection/experimental/projections/equidistant-cylindrical.d.ts.map +1 -0
- package/dist/projection/experimental/projections/equidistant-cylindrical.js +47 -0
- package/dist/projection/experimental/projections/equidistant-cylindrical.js.map +1 -0
- package/dist/projection/experimental/projections/geocentric.d.ts +3 -0
- package/dist/projection/experimental/projections/geocentric.d.ts.map +1 -0
- package/dist/projection/experimental/projections/geocentric.js +34 -0
- package/dist/projection/experimental/projections/geocentric.js.map +1 -0
- package/dist/projection/experimental/projections/geos.d.ts +3 -0
- package/dist/projection/experimental/projections/geos.d.ts.map +1 -0
- package/dist/projection/experimental/projections/geos.js +30 -0
- package/dist/projection/experimental/projections/geos.js.map +1 -0
- package/dist/projection/experimental/projections/gnom.d.ts +3 -0
- package/dist/projection/experimental/projections/gnom.d.ts.map +1 -0
- package/dist/projection/experimental/projections/gnom.js +20 -0
- package/dist/projection/experimental/projections/gnom.js.map +1 -0
- package/dist/projection/experimental/projections/gstmerc.d.ts +3 -0
- package/dist/projection/experimental/projections/gstmerc.d.ts.map +1 -0
- package/dist/projection/experimental/projections/gstmerc.js +23 -0
- package/dist/projection/experimental/projections/gstmerc.js.map +1 -0
- package/dist/projection/experimental/projections/krovak.d.ts +3 -0
- package/dist/projection/experimental/projections/krovak.d.ts.map +1 -0
- package/dist/projection/experimental/projections/krovak.js +41 -0
- package/dist/projection/experimental/projections/krovak.js.map +1 -0
- package/dist/projection/experimental/projections/laea.d.ts +3 -0
- package/dist/projection/experimental/projections/laea.d.ts.map +1 -0
- package/dist/projection/experimental/projections/laea.js +22 -0
- package/dist/projection/experimental/projections/laea.js.map +1 -0
- package/dist/projection/experimental/projections/lcc.d.ts +3 -0
- package/dist/projection/experimental/projections/lcc.d.ts.map +1 -0
- package/dist/projection/experimental/projections/lcc.js +39 -0
- package/dist/projection/experimental/projections/lcc.js.map +1 -0
- package/dist/projection/experimental/projections/mercator.d.ts +4 -0
- package/dist/projection/experimental/projections/mercator.d.ts.map +1 -0
- package/dist/projection/experimental/projections/mercator.js +106 -0
- package/dist/projection/experimental/projections/mercator.js.map +1 -0
- package/dist/projection/experimental/projections/mill.d.ts +3 -0
- package/dist/projection/experimental/projections/mill.d.ts.map +1 -0
- package/dist/projection/experimental/projections/mill.js +22 -0
- package/dist/projection/experimental/projections/mill.js.map +1 -0
- package/dist/projection/experimental/projections/moll.d.ts +3 -0
- package/dist/projection/experimental/projections/moll.d.ts.map +1 -0
- package/dist/projection/experimental/projections/moll.js +22 -0
- package/dist/projection/experimental/projections/moll.js.map +1 -0
- package/dist/projection/experimental/projections/nzmg.d.ts +3 -0
- package/dist/projection/experimental/projections/nzmg.d.ts.map +1 -0
- package/dist/projection/experimental/projections/nzmg.js +29 -0
- package/dist/projection/experimental/projections/nzmg.js.map +1 -0
- package/dist/projection/experimental/projections/ob-tran.d.ts +4 -0
- package/dist/projection/experimental/projections/ob-tran.d.ts.map +1 -0
- package/dist/projection/experimental/projections/ob-tran.js +194 -0
- package/dist/projection/experimental/projections/ob-tran.js.map +1 -0
- package/dist/projection/experimental/projections/omerc.d.ts +3 -0
- package/dist/projection/experimental/projections/omerc.d.ts.map +1 -0
- package/dist/projection/experimental/projections/omerc.js +69 -0
- package/dist/projection/experimental/projections/omerc.js.map +1 -0
- package/dist/projection/experimental/projections/ortho.d.ts +3 -0
- package/dist/projection/experimental/projections/ortho.d.ts.map +1 -0
- package/dist/projection/experimental/projections/ortho.js +20 -0
- package/dist/projection/experimental/projections/ortho.js.map +1 -0
- package/dist/projection/experimental/projections/poly.d.ts +3 -0
- package/dist/projection/experimental/projections/poly.d.ts.map +1 -0
- package/dist/projection/experimental/projections/poly.js +22 -0
- package/dist/projection/experimental/projections/poly.js.map +1 -0
- package/dist/projection/experimental/projections/qsc.d.ts +3 -0
- package/dist/projection/experimental/projections/qsc.d.ts.map +1 -0
- package/dist/projection/experimental/projections/qsc.js +64 -0
- package/dist/projection/experimental/projections/qsc.js.map +1 -0
- package/dist/projection/experimental/projections/robin.d.ts +3 -0
- package/dist/projection/experimental/projections/robin.d.ts.map +1 -0
- package/dist/projection/experimental/projections/robin.js +22 -0
- package/dist/projection/experimental/projections/robin.js.map +1 -0
- package/dist/projection/experimental/projections/sinu.d.ts +3 -0
- package/dist/projection/experimental/projections/sinu.d.ts.map +1 -0
- package/dist/projection/experimental/projections/sinu.js +22 -0
- package/dist/projection/experimental/projections/sinu.js.map +1 -0
- package/dist/projection/experimental/projections/somerc.d.ts +3 -0
- package/dist/projection/experimental/projections/somerc.d.ts.map +1 -0
- package/dist/projection/experimental/projections/somerc.js +22 -0
- package/dist/projection/experimental/projections/somerc.js.map +1 -0
- package/dist/projection/experimental/projections/stere.d.ts +3 -0
- package/dist/projection/experimental/projections/stere.d.ts.map +1 -0
- package/dist/projection/experimental/projections/stere.js +32 -0
- package/dist/projection/experimental/projections/stere.js.map +1 -0
- package/dist/projection/experimental/projections/sterea.d.ts +3 -0
- package/dist/projection/experimental/projections/sterea.d.ts.map +1 -0
- package/dist/projection/experimental/projections/sterea.js +32 -0
- package/dist/projection/experimental/projections/sterea.js.map +1 -0
- package/dist/projection/experimental/projections/tpers.d.ts +3 -0
- package/dist/projection/experimental/projections/tpers.d.ts.map +1 -0
- package/dist/projection/experimental/projections/tpers.js +31 -0
- package/dist/projection/experimental/projections/tpers.js.map +1 -0
- package/dist/projection/experimental/projections/transverse-mercator.d.ts +6 -0
- package/dist/projection/experimental/projections/transverse-mercator.d.ts.map +1 -0
- package/dist/projection/experimental/projections/transverse-mercator.js +48 -0
- package/dist/projection/experimental/projections/transverse-mercator.js.map +1 -0
- package/dist/projection/experimental/projections/utm.d.ts +3 -0
- package/dist/projection/experimental/projections/utm.d.ts.map +1 -0
- package/dist/projection/experimental/projections/utm.js +37 -0
- package/dist/projection/experimental/projections/utm.js.map +1 -0
- package/dist/projection/experimental/projections/vandg.d.ts +3 -0
- package/dist/projection/experimental/projections/vandg.d.ts.map +1 -0
- package/dist/projection/experimental/projections/vandg.js +22 -0
- package/dist/projection/experimental/projections/vandg.js.map +1 -0
- package/dist/projection/experimental/rendering-profile/angular-rendering-profile.d.ts +9 -0
- package/dist/projection/experimental/rendering-profile/angular-rendering-profile.d.ts.map +1 -0
- package/dist/projection/experimental/rendering-profile/angular-rendering-profile.js +79 -0
- package/dist/projection/experimental/rendering-profile/angular-rendering-profile.js.map +1 -0
- package/dist/projection/experimental/rendering-profile/azimuthal-rendering-bounds.d.ts +16 -0
- package/dist/projection/experimental/rendering-profile/azimuthal-rendering-bounds.d.ts.map +1 -0
- package/dist/projection/experimental/rendering-profile/azimuthal-rendering-bounds.js +91 -0
- package/dist/projection/experimental/rendering-profile/azimuthal-rendering-bounds.js.map +1 -0
- package/dist/projection/experimental/rendering-profile/geographic-bounds.d.ts +29 -0
- package/dist/projection/experimental/rendering-profile/geographic-bounds.d.ts.map +1 -0
- package/dist/projection/experimental/rendering-profile/geographic-bounds.js +127 -0
- package/dist/projection/experimental/rendering-profile/geographic-bounds.js.map +1 -0
- package/dist/projection/experimental/rendering-profile/geographic-rendering-profile.d.ts +4 -0
- package/dist/projection/experimental/rendering-profile/geographic-rendering-profile.d.ts.map +1 -0
- package/dist/projection/experimental/rendering-profile/geographic-rendering-profile.js +18 -0
- package/dist/projection/experimental/rendering-profile/geographic-rendering-profile.js.map +1 -0
- package/dist/projection/experimental/rendering-profile/geostationary-rendering-profile.d.ts +7 -0
- package/dist/projection/experimental/rendering-profile/geostationary-rendering-profile.d.ts.map +1 -0
- package/dist/projection/experimental/rendering-profile/geostationary-rendering-profile.js +86 -0
- package/dist/projection/experimental/rendering-profile/geostationary-rendering-profile.js.map +1 -0
- package/dist/projection/experimental/rendering-profile/identity-rendering-profile.d.ts +4 -0
- package/dist/projection/experimental/rendering-profile/identity-rendering-profile.d.ts.map +1 -0
- package/dist/projection/experimental/rendering-profile/identity-rendering-profile.js +13 -0
- package/dist/projection/experimental/rendering-profile/identity-rendering-profile.js.map +1 -0
- package/dist/projection/experimental/rendering-profile/rectangular-rendering-profile.d.ts +13 -0
- package/dist/projection/experimental/rendering-profile/rectangular-rendering-profile.d.ts.map +1 -0
- package/dist/projection/experimental/rendering-profile/rectangular-rendering-profile.js +76 -0
- package/dist/projection/experimental/rendering-profile/rectangular-rendering-profile.js.map +1 -0
- package/dist/projection/experimental/rendering-profile/regional-rendering-bounds.d.ts +29 -0
- package/dist/projection/experimental/rendering-profile/regional-rendering-bounds.d.ts.map +1 -0
- package/dist/projection/experimental/rendering-profile/regional-rendering-bounds.js +143 -0
- package/dist/projection/experimental/rendering-profile/regional-rendering-bounds.js.map +1 -0
- package/dist/projection/experimental/rendering-profile/rendering-bounds.d.ts +28 -0
- package/dist/projection/experimental/rendering-profile/rendering-bounds.d.ts.map +1 -0
- package/dist/projection/experimental/rendering-profile/rendering-bounds.js +111 -0
- package/dist/projection/experimental/rendering-profile/rendering-bounds.js.map +1 -0
- package/dist/projection/experimental/rendering-profile/rendering-profile.d.ts +11 -0
- package/dist/projection/experimental/rendering-profile/rendering-profile.d.ts.map +1 -0
- package/dist/projection/experimental/rendering-profile/rendering-profile.js +81 -0
- package/dist/projection/experimental/rendering-profile/rendering-profile.js.map +1 -0
- package/dist/projection/experimental/rendering-profile/spherical-rendering-domain.d.ts +24 -0
- package/dist/projection/experimental/rendering-profile/spherical-rendering-domain.d.ts.map +1 -0
- package/dist/projection/experimental/rendering-profile/spherical-rendering-domain.js +129 -0
- package/dist/projection/experimental/rendering-profile/spherical-rendering-domain.js.map +1 -0
- package/dist/projection/experimental/scalar-output.d.ts +8 -0
- package/dist/projection/experimental/scalar-output.d.ts.map +1 -0
- package/dist/projection/experimental/scalar-output.js +46 -0
- package/dist/projection/experimental/scalar-output.js.map +1 -0
- package/dist/projection/experimental/spatial-deformation.d.ts +6 -0
- package/dist/projection/experimental/spatial-deformation.d.ts.map +1 -0
- package/dist/projection/experimental/spatial-deformation.js +85 -0
- package/dist/projection/experimental/spatial-deformation.js.map +1 -0
- package/dist/projection/experimental/types.d.ts +156 -0
- package/dist/projection/experimental/types.d.ts.map +1 -0
- package/dist/projection/experimental/types.js +5 -0
- package/dist/projection/experimental/types.js.map +1 -0
- package/dist/projection/experimental/typescript-projection.d.ts +76 -0
- package/dist/projection/experimental/typescript-projection.d.ts.map +1 -0
- package/dist/projection/experimental/typescript-projection.js +459 -0
- package/dist/projection/experimental/typescript-projection.js.map +1 -0
- package/dist/projection/experimental/vertical-datum.d.ts +4 -0
- package/dist/projection/experimental/vertical-datum.d.ts.map +1 -0
- package/dist/projection/experimental/vertical-datum.js +43 -0
- package/dist/projection/experimental/vertical-datum.js.map +1 -0
- package/dist/projection/grids/velocity.cjs +92 -0
- package/dist/projection/grids/velocity.cjs.map +6 -0
- package/dist/projection/grids/velocity.d.ts +3 -0
- package/dist/projection/grids/velocity.d.ts.map +1 -0
- package/dist/projection/grids/velocity.js +5 -0
- package/dist/projection/grids/velocity.js.map +1 -0
- package/dist/projection/index.cjs +11504 -0
- package/dist/projection/index.cjs.map +6 -0
- package/dist/projection/index.d.ts +3 -0
- package/dist/projection/index.d.ts.map +1 -0
- package/dist/projection/index.js +6 -0
- package/dist/projection/index.js.map +1 -0
- package/dist/projection/lib/projection.d.ts +8 -0
- package/dist/projection/lib/projection.d.ts.map +1 -0
- package/dist/projection/lib/projection.js +115 -0
- package/dist/projection/lib/projection.js.map +1 -0
- package/dist/projection/numerical-derivative.d.ts +15 -0
- package/dist/projection/numerical-derivative.d.ts.map +1 -0
- package/dist/projection/numerical-derivative.js +47 -0
- package/dist/projection/numerical-derivative.js.map +1 -0
- package/dist/projection/operations.cjs +322 -0
- package/dist/projection/operations.cjs.map +6 -0
- package/dist/projection/operations.d.ts +89 -0
- package/dist/projection/operations.d.ts.map +1 -0
- package/dist/projection/operations.js +344 -0
- package/dist/projection/operations.js.map +1 -0
- package/dist/projection/pipeline.cjs +1961 -0
- package/dist/projection/pipeline.cjs.map +6 -0
- package/dist/projection/pipeline.d.ts +2 -0
- package/dist/projection/pipeline.d.ts.map +1 -0
- package/dist/projection/pipeline.js +5 -0
- package/dist/projection/pipeline.js.map +1 -0
- package/dist/projection/temporal.cjs +290 -0
- package/dist/projection/temporal.cjs.map +6 -0
- package/dist/projection/temporal.d.ts +31 -0
- package/dist/projection/temporal.d.ts.map +1 -0
- package/dist/projection/temporal.js +91 -0
- package/dist/projection/temporal.js.map +1 -0
- package/dist/projection/transform-analysis.cjs +1889 -0
- package/dist/projection/transform-analysis.cjs.map +6 -0
- package/dist/projection/transform-analysis.d.ts +43 -0
- package/dist/projection/transform-analysis.d.ts.map +1 -0
- package/dist/projection/transform-analysis.js +110 -0
- package/dist/projection/transform-analysis.js.map +1 -0
- package/dist/projection/types.cjs +18 -0
- package/dist/projection/types.cjs.map +6 -0
- package/dist/projection/types.d.ts +47 -0
- package/dist/projection/types.d.ts.map +1 -0
- package/dist/projection/types.js +5 -0
- package/dist/projection/types.js.map +1 -0
- package/dist/projection/web-mercator.cjs +171 -0
- package/dist/projection/web-mercator.cjs.map +6 -0
- package/dist/projection/web-mercator.d.ts +7 -0
- package/dist/projection/web-mercator.d.ts.map +1 -0
- package/dist/projection/web-mercator.js +113 -0
- package/dist/projection/web-mercator.js.map +1 -0
- package/dist/subdivide-globe-mesh.d.ts +20 -0
- package/dist/subdivide-globe-mesh.d.ts.map +1 -0
- package/dist/subdivide-globe-mesh.js +54 -0
- package/dist/subdivide-globe-mesh.js.map +1 -0
- package/dist/tile-matrix.cjs +94 -20
- package/dist/tile-matrix.cjs.map +1 -1
- package/dist/tile-matrix.d.ts +30 -8
- package/dist/tile-matrix.d.ts.map +1 -1
- package/dist/tile-matrix.js +125 -25
- package/dist/tile-matrix.js.map +1 -1
- package/dist/tiles.cjs +303 -0
- package/dist/tiles.cjs.map +6 -0
- package/dist/tiles.d.ts +5 -0
- package/dist/tiles.d.ts.map +1 -0
- package/dist/tiles.js +6 -0
- package/dist/tiles.js.map +1 -0
- package/dist/web-mercator.cjs +20 -0
- package/dist/web-mercator.cjs.map +6 -0
- package/dist/web-mercator.d.ts +2 -0
- package/dist/web-mercator.d.ts.map +1 -0
- package/dist/web-mercator.js +5 -0
- package/dist/web-mercator.js.map +1 -0
- package/dist/wkb/index.cjs +1050 -0
- package/dist/wkb/index.cjs.map +6 -0
- package/dist/wkb/index.d.ts +11 -0
- package/dist/wkb/index.d.ts.map +1 -0
- package/dist/wkb/index.js +9 -0
- package/dist/wkb/index.js.map +1 -0
- package/dist/wkb/types.d.ts +30 -0
- package/dist/wkb/types.d.ts.map +1 -0
- package/dist/wkb/types.js +34 -0
- package/dist/wkb/types.js.map +1 -0
- package/dist/wkb/wkb-builder.d.ts +91 -0
- package/dist/wkb/wkb-builder.d.ts.map +1 -0
- package/dist/wkb/wkb-builder.js +276 -0
- package/dist/wkb/wkb-builder.js.map +1 -0
- package/dist/wkb/wkb-reader.d.ts +74 -0
- package/dist/wkb/wkb-reader.d.ts.map +1 -0
- package/dist/wkb/wkb-reader.js +251 -0
- package/dist/wkb/wkb-reader.js.map +1 -0
- package/dist/wkb/wkb.d.ts +21 -0
- package/dist/wkb/wkb.d.ts.map +1 -0
- package/dist/wkb/wkb.js +204 -0
- package/dist/wkb/wkb.js.map +1 -0
- package/dist/wkb/wkt.d.ts +19 -0
- package/dist/wkb/wkt.d.ts.map +1 -0
- package/dist/wkb/wkt.js +321 -0
- package/dist/wkb/wkt.js.map +1 -0
- package/package.json +1053 -6
- package/projection/APACHE-2.0-LICENSE.txt +55 -0
- package/projection/PROJ-LICENSE.txt +37 -0
- package/projection/PROJ4-LICENSE.md +29 -0
- package/projection/THIRD-PARTY-NOTICES.md +163 -0
- package/src/crs/crs-metadata.ts +63 -0
- package/src/crs/crs.ts +36 -0
- package/src/crs/index.ts +65 -0
- package/src/crs/proj-string.ts +239 -0
- package/src/crs/projjson-schema-constants.ts +9 -0
- package/src/crs/projjson-types.ts +665 -0
- package/src/crs/spatial-reference.ts +221 -0
- package/src/crs/units-table.ts +51 -0
- package/src/crs/wkt-crs.ts +790 -0
- package/src/ellipsoid-helpers/ellipsoid-transform.ts +1 -1
- package/src/ellipsoid-tangent-plane.ts +1 -1
- package/src/ellipsoid.ts +1 -1
- package/src/entries/ellipsoid.ts +8 -0
- package/src/expressions.ts +34 -0
- package/src/geoarrow/builder-entry.ts +18 -0
- package/src/geoarrow/builder.ts +860 -0
- package/src/geoarrow/codecs.ts +1274 -0
- package/src/geoarrow/index.ts +100 -0
- package/src/geoarrow/kernels.ts +1290 -0
- package/src/geoarrow/layout.ts +899 -0
- package/src/geoarrow/tessellate.ts +133 -0
- package/src/geoarrow/tessellation-entry.ts +7 -0
- package/src/geoarrow/types.ts +219 -0
- package/src/geoarrow/views.ts +150 -0
- package/src/geoarrow/wkb-entry.ts +13 -0
- package/src/geoarrow/worker.ts +20 -0
- package/src/globe.ts +14 -0
- package/src/index.ts +3 -30
- package/src/make-obb-from-region.ts +1 -1
- package/src/projection/analysis.ts +284 -0
- package/src/projection/bulk.ts +343 -0
- package/src/projection/datums.ts +13 -0
- package/src/projection/deformation.ts +5 -0
- package/src/projection/experimental/catalogue-kernel.ts +65 -0
- package/src/projection/experimental/common/adjust_lat.ts +11 -0
- package/src/projection/experimental/common/adjust_lon.ts +14 -0
- package/src/projection/experimental/common/asinhy.ts +14 -0
- package/src/projection/experimental/common/asinz.ts +11 -0
- package/src/projection/experimental/common/authlat.ts +9 -0
- package/src/projection/experimental/common/authset.ts +25 -0
- package/src/projection/experimental/common/clens.ts +20 -0
- package/src/projection/experimental/common/clens_cmplx.ts +43 -0
- package/src/projection/experimental/common/constants.ts +15 -0
- package/src/projection/experimental/common/cosh.ts +10 -0
- package/src/projection/experimental/common/e0fn.ts +8 -0
- package/src/projection/experimental/common/e1fn.ts +8 -0
- package/src/projection/experimental/common/e2fn.ts +8 -0
- package/src/projection/experimental/common/e3fn.ts +8 -0
- package/src/projection/experimental/common/fL.ts +10 -0
- package/src/projection/experimental/common/gN.ts +9 -0
- package/src/projection/experimental/common/gatg.ts +20 -0
- package/src/projection/experimental/common/hypot.ts +13 -0
- package/src/projection/experimental/common/imlfn.ts +23 -0
- package/src/projection/experimental/common/invlatiso.ts +20 -0
- package/src/projection/experimental/common/iqsfnz.ts +45 -0
- package/src/projection/experimental/common/latiso.ts +21 -0
- package/src/projection/experimental/common/log1py.ts +11 -0
- package/src/projection/experimental/common/meridian-distance.ts +45 -0
- package/src/projection/experimental/common/mlfn.ts +8 -0
- package/src/projection/experimental/common/msfnz.ts +9 -0
- package/src/projection/experimental/common/phi2z.ts +22 -0
- package/src/projection/experimental/common/pj_enfn.ts +29 -0
- package/src/projection/experimental/common/pj_inv_mlfn.ts +28 -0
- package/src/projection/experimental/common/pj_mlfn.ts +10 -0
- package/src/projection/experimental/common/qsfnz.ts +17 -0
- package/src/projection/experimental/common/sign.ts +8 -0
- package/src/projection/experimental/common/sinh.ts +10 -0
- package/src/projection/experimental/common/srat.ts +8 -0
- package/src/projection/experimental/common/tsfnz.ts +13 -0
- package/src/projection/experimental/common/vincenty.ts +180 -0
- package/src/projection/experimental/core.ts +77 -0
- package/src/projection/experimental/crs/datum-catalog.ts +65 -0
- package/src/projection/experimental/crs/datum-table.ts +1360 -0
- package/src/projection/experimental/crs/ellipsoid-table.ts +230 -0
- package/src/projection/experimental/crs/normalize.ts +306 -0
- package/src/projection/experimental/crs/primemeridian-table.ts +22 -0
- package/src/projection/experimental/crs/projjson.ts +12 -0
- package/src/projection/experimental/crs/spatial-reference.ts +115 -0
- package/src/projection/experimental/crs/structured.ts +580 -0
- package/src/projection/experimental/crs/types.ts +97 -0
- package/src/projection/experimental/crs/wkt.ts +201 -0
- package/src/projection/experimental/crs-descriptor.ts +250 -0
- package/src/projection/experimental/crs-rendering-scale.ts +115 -0
- package/src/projection/experimental/datum.ts +185 -0
- package/src/projection/experimental/deformation-inverse.ts +125 -0
- package/src/projection/experimental/deformation.ts +30 -0
- package/src/projection/experimental/entries/projections/aea.ts +5 -0
- package/src/projection/experimental/entries/projections/aeqd.ts +5 -0
- package/src/projection/experimental/entries/projections/bonne.ts +5 -0
- package/src/projection/experimental/entries/projections/cass.ts +5 -0
- package/src/projection/experimental/entries/projections/cea.ts +5 -0
- package/src/projection/experimental/entries/projections/eck6.ts +5 -0
- package/src/projection/experimental/entries/projections/eqc.ts +5 -0
- package/src/projection/experimental/entries/projections/eqdc.ts +5 -0
- package/src/projection/experimental/entries/projections/eqearth.ts +5 -0
- package/src/projection/experimental/entries/projections/equi.ts +5 -0
- package/src/projection/experimental/entries/projections/etmerc.ts +5 -0
- package/src/projection/experimental/entries/projections/geocent.ts +5 -0
- package/src/projection/experimental/entries/projections/geos.ts +5 -0
- package/src/projection/experimental/entries/projections/gnom.ts +5 -0
- package/src/projection/experimental/entries/projections/gstmerc.ts +5 -0
- package/src/projection/experimental/entries/projections/krovak.ts +5 -0
- package/src/projection/experimental/entries/projections/laea.ts +5 -0
- package/src/projection/experimental/entries/projections/lcc.ts +5 -0
- package/src/projection/experimental/entries/projections/merc.ts +5 -0
- package/src/projection/experimental/entries/projections/mill.ts +5 -0
- package/src/projection/experimental/entries/projections/moll.ts +5 -0
- package/src/projection/experimental/entries/projections/nzmg.ts +5 -0
- package/src/projection/experimental/entries/projections/ob_tran.ts +5 -0
- package/src/projection/experimental/entries/projections/omerc.ts +5 -0
- package/src/projection/experimental/entries/projections/ortho.ts +5 -0
- package/src/projection/experimental/entries/projections/poly.ts +5 -0
- package/src/projection/experimental/entries/projections/qsc.ts +5 -0
- package/src/projection/experimental/entries/projections/robin.ts +5 -0
- package/src/projection/experimental/entries/projections/sinu.ts +5 -0
- package/src/projection/experimental/entries/projections/somerc.ts +5 -0
- package/src/projection/experimental/entries/projections/stere.ts +5 -0
- package/src/projection/experimental/entries/projections/sterea.ts +5 -0
- package/src/projection/experimental/entries/projections/tmerc.ts +5 -0
- package/src/projection/experimental/entries/projections/tpers.ts +5 -0
- package/src/projection/experimental/entries/projections/utm.ts +5 -0
- package/src/projection/experimental/entries/projections/vandg.ts +5 -0
- package/src/projection/experimental/exact-helmert.ts +58 -0
- package/src/projection/experimental/flat-projection.ts +80 -0
- package/src/projection/experimental/grids/geotiff.ts +88 -0
- package/src/projection/experimental/grids/grid.ts +141 -0
- package/src/projection/experimental/grids/gtx.ts +31 -0
- package/src/projection/experimental/grids/ntv2.ts +71 -0
- package/src/projection/experimental/grids/scalar-geotiff.ts +231 -0
- package/src/projection/experimental/grids/types.ts +35 -0
- package/src/projection/experimental/grids/velocity-geotiff.ts +82 -0
- package/src/projection/experimental/grids/velocity.ts +58 -0
- package/src/projection/experimental/grids/vertical-geotiff.ts +28 -0
- package/src/projection/experimental/grids/vertical.ts +99 -0
- package/src/projection/experimental/helmert-flat.ts +76 -0
- package/src/projection/experimental/index.ts +59 -0
- package/src/projection/experimental/kernel.ts +142 -0
- package/src/projection/experimental/kernels/aea.ts +170 -0
- package/src/projection/experimental/kernels/aeqd.ts +171 -0
- package/src/projection/experimental/kernels/bonne.ts +141 -0
- package/src/projection/experimental/kernels/cass.ts +140 -0
- package/src/projection/experimental/kernels/cea.ts +71 -0
- package/src/projection/experimental/kernels/eck6.ts +36 -0
- package/src/projection/experimental/kernels/eqdc.ts +137 -0
- package/src/projection/experimental/kernels/eqearth.ts +136 -0
- package/src/projection/experimental/kernels/equi.ts +53 -0
- package/src/projection/experimental/kernels/etmerc.ts +190 -0
- package/src/projection/experimental/kernels/gauss.ts +79 -0
- package/src/projection/experimental/kernels/geos.ts +183 -0
- package/src/projection/experimental/kernels/gnom.ts +113 -0
- package/src/projection/experimental/kernels/gstmerc.ts +74 -0
- package/src/projection/experimental/kernels/krovak.ts +166 -0
- package/src/projection/experimental/kernels/laea.ts +297 -0
- package/src/projection/experimental/kernels/lcc.ts +147 -0
- package/src/projection/experimental/kernels/mill.ts +60 -0
- package/src/projection/experimental/kernels/moll.ts +105 -0
- package/src/projection/experimental/kernels/nzmg.ts +249 -0
- package/src/projection/experimental/kernels/omerc.ts +343 -0
- package/src/projection/experimental/kernels/ortho.ts +106 -0
- package/src/projection/experimental/kernels/poly.ts +156 -0
- package/src/projection/experimental/kernels/qsc.ts +369 -0
- package/src/projection/experimental/kernels/robin.ts +189 -0
- package/src/projection/experimental/kernels/sinu.ts +116 -0
- package/src/projection/experimental/kernels/somerc.ts +112 -0
- package/src/projection/experimental/kernels/stere.ts +221 -0
- package/src/projection/experimental/kernels/sterea.ts +80 -0
- package/src/projection/experimental/kernels/tmerc.ts +227 -0
- package/src/projection/experimental/kernels/tpers.ts +187 -0
- package/src/projection/experimental/kernels/vandg.ts +147 -0
- package/src/projection/experimental/kinematic-helmert-flat.ts +85 -0
- package/src/projection/experimental/kinematic-helmert.ts +132 -0
- package/src/projection/experimental/lazy-projection.ts +179 -0
- package/src/projection/experimental/lazy-projections/aea.ts +10 -0
- package/src/projection/experimental/lazy-projections/aeqd.ts +12 -0
- package/src/projection/experimental/lazy-projections/bonne.ts +10 -0
- package/src/projection/experimental/lazy-projections/cass.ts +10 -0
- package/src/projection/experimental/lazy-projections/cea.ts +12 -0
- package/src/projection/experimental/lazy-projections/eck6.ts +10 -0
- package/src/projection/experimental/lazy-projections/eqc.ts +15 -0
- package/src/projection/experimental/lazy-projections/eqdc.ts +11 -0
- package/src/projection/experimental/lazy-projections/eqearth.ts +10 -0
- package/src/projection/experimental/lazy-projections/equi.ts +10 -0
- package/src/projection/experimental/lazy-projections/etmerc.ts +12 -0
- package/src/projection/experimental/lazy-projections/geocent.ts +10 -0
- package/src/projection/experimental/lazy-projections/geos.ts +10 -0
- package/src/projection/experimental/lazy-projections/gnom.ts +10 -0
- package/src/projection/experimental/lazy-projections/gstmerc.ts +13 -0
- package/src/projection/experimental/lazy-projections/index.ts +41 -0
- package/src/projection/experimental/lazy-projections/krovak.ts +18 -0
- package/src/projection/experimental/lazy-projections/laea.ts +12 -0
- package/src/projection/experimental/lazy-projections/lcc.ts +22 -0
- package/src/projection/experimental/lazy-projections/merc.ts +19 -0
- package/src/projection/experimental/lazy-projections/mill.ts +11 -0
- package/src/projection/experimental/lazy-projections/moll.ts +10 -0
- package/src/projection/experimental/lazy-projections/nzmg.ts +11 -0
- package/src/projection/experimental/lazy-projections/ob_tran.ts +25 -0
- package/src/projection/experimental/lazy-projections/omerc.ts +22 -0
- package/src/projection/experimental/lazy-projections/ortho.ts +10 -0
- package/src/projection/experimental/lazy-projections/poly.ts +10 -0
- package/src/projection/experimental/lazy-projections/qsc.ts +16 -0
- package/src/projection/experimental/lazy-projections/robin.ts +10 -0
- package/src/projection/experimental/lazy-projections/sinu.ts +10 -0
- package/src/projection/experimental/lazy-projections/somerc.ts +12 -0
- package/src/projection/experimental/lazy-projections/stere.ts +18 -0
- package/src/projection/experimental/lazy-projections/sterea.ts +20 -0
- package/src/projection/experimental/lazy-projections/tmerc.ts +22 -0
- package/src/projection/experimental/lazy-projections/tpers.ts +11 -0
- package/src/projection/experimental/lazy-projections/utm.ts +12 -0
- package/src/projection/experimental/lazy-projections/vandg.ts +10 -0
- package/src/projection/experimental/mutable-projection.ts +63 -0
- package/src/projection/experimental/numeric-flat.ts +73 -0
- package/src/projection/experimental/parameters.ts +36 -0
- package/src/projection/experimental/projection-descriptor.ts +79 -0
- package/src/projection/experimental/projection-engine.ts +81 -0
- package/src/projection/experimental/projection-pipeline.ts +1047 -0
- package/src/projection/experimental/projection-scratch.ts +26 -0
- package/src/projection/experimental/projections/aea.ts +41 -0
- package/src/projection/experimental/projections/aeqd.ts +27 -0
- package/src/projection/experimental/projections/bonne.ts +38 -0
- package/src/projection/experimental/projections/cass.ts +39 -0
- package/src/projection/experimental/projections/cea.ts +31 -0
- package/src/projection/experimental/projections/eck6.ts +30 -0
- package/src/projection/experimental/projections/eqdc.ts +40 -0
- package/src/projection/experimental/projections/eqearth.ts +72 -0
- package/src/projection/experimental/projections/equi.ts +31 -0
- package/src/projection/experimental/projections/equidistant-cylindrical.ts +79 -0
- package/src/projection/experimental/projections/geocentric.ts +42 -0
- package/src/projection/experimental/projections/geos.ts +46 -0
- package/src/projection/experimental/projections/gnom.ts +34 -0
- package/src/projection/experimental/projections/gstmerc.ts +43 -0
- package/src/projection/experimental/projections/krovak.ts +61 -0
- package/src/projection/experimental/projections/laea.ts +39 -0
- package/src/projection/experimental/projections/lcc.ts +67 -0
- package/src/projection/experimental/projections/mercator.ts +150 -0
- package/src/projection/experimental/projections/mill.ts +30 -0
- package/src/projection/experimental/projections/moll.ts +30 -0
- package/src/projection/experimental/projections/nzmg.ts +47 -0
- package/src/projection/experimental/projections/ob-tran.ts +279 -0
- package/src/projection/experimental/projections/omerc.ts +86 -0
- package/src/projection/experimental/projections/ortho.ts +34 -0
- package/src/projection/experimental/projections/poly.ts +40 -0
- package/src/projection/experimental/projections/qsc.ts +84 -0
- package/src/projection/experimental/projections/robin.ts +30 -0
- package/src/projection/experimental/projections/sinu.ts +30 -0
- package/src/projection/experimental/projections/somerc.ts +39 -0
- package/src/projection/experimental/projections/stere.ts +59 -0
- package/src/projection/experimental/projections/sterea.ts +61 -0
- package/src/projection/experimental/projections/tpers.ts +59 -0
- package/src/projection/experimental/projections/transverse-mercator.ts +89 -0
- package/src/projection/experimental/projections/utm.ts +50 -0
- package/src/projection/experimental/projections/vandg.ts +30 -0
- package/src/projection/experimental/rendering-profile/angular-rendering-profile.ts +117 -0
- package/src/projection/experimental/rendering-profile/azimuthal-rendering-bounds.ts +181 -0
- package/src/projection/experimental/rendering-profile/geographic-bounds.ts +190 -0
- package/src/projection/experimental/rendering-profile/geographic-rendering-profile.ts +29 -0
- package/src/projection/experimental/rendering-profile/geostationary-rendering-profile.ts +128 -0
- package/src/projection/experimental/rendering-profile/identity-rendering-profile.ts +15 -0
- package/src/projection/experimental/rendering-profile/rectangular-rendering-profile.ts +133 -0
- package/src/projection/experimental/rendering-profile/regional-rendering-bounds.ts +252 -0
- package/src/projection/experimental/rendering-profile/rendering-bounds.ts +163 -0
- package/src/projection/experimental/rendering-profile/rendering-profile.ts +96 -0
- package/src/projection/experimental/rendering-profile/spherical-rendering-domain.ts +175 -0
- package/src/projection/experimental/scalar-output.ts +74 -0
- package/src/projection/experimental/spatial-deformation.ts +115 -0
- package/src/projection/experimental/types.ts +181 -0
- package/src/projection/experimental/typescript-projection.ts +581 -0
- package/src/projection/experimental/vertical-datum.ts +39 -0
- package/src/projection/grids/velocity.ts +5 -0
- package/src/projection/index.ts +6 -0
- package/src/projection/lib/projection.ts +161 -0
- package/src/projection/numerical-derivative.ts +50 -0
- package/src/projection/operations.ts +479 -0
- package/src/projection/pipeline.ts +4 -0
- package/src/projection/temporal.ts +133 -0
- package/src/projection/transform-analysis.ts +169 -0
- package/src/projection/types.ts +79 -0
- package/src/projection/web-mercator.ts +148 -0
- package/src/subdivide-globe-mesh.ts +75 -0
- package/src/tile-matrix.ts +205 -34
- package/src/tiles.ts +28 -0
- package/src/web-mercator.ts +5 -0
- package/src/wkb/index.ts +38 -0
- package/src/wkb/types.ts +54 -0
- package/src/wkb/wkb-builder.ts +386 -0
- package/src/wkb/wkb-reader.ts +401 -0
- package/src/wkb/wkb.ts +255 -0
- package/src/wkb/wkt.ts +375 -0
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
// math.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// SPDX-FileCopyrightText: Copyright (c) vis.gl contributors
|
|
4
|
+
const RADIANS = Math.PI / 180;
|
|
5
|
+
/** Construct explicitly typed numerical parameter ranges, in radians. */
|
|
6
|
+
export function createAngularRanges(west, south, east, north) {
|
|
7
|
+
return [
|
|
8
|
+
[west, south],
|
|
9
|
+
[east, north]
|
|
10
|
+
];
|
|
11
|
+
}
|
|
12
|
+
/** Normalize a longitude in degrees; the dateline's canonical point is -180. */
|
|
13
|
+
export function normalizeLongitude(longitude) {
|
|
14
|
+
return longitude >= -180 && longitude < 180
|
|
15
|
+
? longitude
|
|
16
|
+
: ((((longitude + 180) % 360) + 360) % 360) - 180;
|
|
17
|
+
}
|
|
18
|
+
/** Construct geographic coverage from an eastward degree interval, preserving a full world. */
|
|
19
|
+
export function createGeographicBounds(west, south, east, north) {
|
|
20
|
+
if (![west, south, east, north].every(Number.isFinite) ||
|
|
21
|
+
south < -90 ||
|
|
22
|
+
north > 90 ||
|
|
23
|
+
south > north ||
|
|
24
|
+
east - west < -360 ||
|
|
25
|
+
east - west > 360 + 1e-10)
|
|
26
|
+
throw new Error('Invalid geographic coverage');
|
|
27
|
+
if (east - west >= 360 - 1e-10)
|
|
28
|
+
return [-180, south, 180, north];
|
|
29
|
+
const wrappedEast = normalizeLongitude(east);
|
|
30
|
+
return [
|
|
31
|
+
normalizeLongitude(west),
|
|
32
|
+
south,
|
|
33
|
+
wrappedEast === -180 && east > west ? 180 : wrappedEast,
|
|
34
|
+
north
|
|
35
|
+
];
|
|
36
|
+
}
|
|
37
|
+
/** Eastward longitude span in degrees, preserving full-world and single-meridian coverage. */
|
|
38
|
+
export function getLongitudeSpan(bounds) {
|
|
39
|
+
const span = bounds[2] - bounds[0];
|
|
40
|
+
// Modulo would collapse the explicitly represented full world to a meridian.
|
|
41
|
+
return span < 0 ? span + 360 : span;
|
|
42
|
+
}
|
|
43
|
+
/** Split periodic coverage into rectangles whose longitude endpoints are ordered. */
|
|
44
|
+
export function splitGeographicBounds(bounds) {
|
|
45
|
+
const [west, south, east, north] = bounds;
|
|
46
|
+
return west <= east
|
|
47
|
+
? [bounds]
|
|
48
|
+
: [
|
|
49
|
+
[west, south, 180, north],
|
|
50
|
+
[-180, south, east, north]
|
|
51
|
+
];
|
|
52
|
+
}
|
|
53
|
+
/** Inclusive coverage membership; +180 and -180 refer to the same meridian. */
|
|
54
|
+
export function containsGeographicPoint(bounds, point) {
|
|
55
|
+
const [west, south, east, north] = bounds;
|
|
56
|
+
const longitude = normalizeLongitude(point[0]);
|
|
57
|
+
return (point[1] >= south &&
|
|
58
|
+
point[1] <= north &&
|
|
59
|
+
(west <= east
|
|
60
|
+
? (longitude >= west && longitude <= east) || (longitude === -180 && east === 180)
|
|
61
|
+
: longitude >= west || longitude <= east));
|
|
62
|
+
}
|
|
63
|
+
/** Intersect periodic coverage without replacing disconnected regions with an envelope. */
|
|
64
|
+
export function intersectGeographicBounds(a, b) {
|
|
65
|
+
const south = Math.max(a[1], b[1]), north = Math.min(a[3], b[3]);
|
|
66
|
+
if (south > north)
|
|
67
|
+
return [];
|
|
68
|
+
const intervals = [];
|
|
69
|
+
for (const left of splitGeographicBounds(a))
|
|
70
|
+
for (const right of splitGeographicBounds(b)) {
|
|
71
|
+
const west = Math.max(left[0], right[0]), east = Math.min(left[2], right[2]);
|
|
72
|
+
if (west <= east)
|
|
73
|
+
intervals.push([west, east]);
|
|
74
|
+
else if ((left[2] === 180 && right[0] === -180) || (right[2] === 180 && left[0] === -180))
|
|
75
|
+
intervals.push([-180, -180]);
|
|
76
|
+
}
|
|
77
|
+
intervals.sort((left, right) => left[0] - right[0]);
|
|
78
|
+
const merged = [];
|
|
79
|
+
for (const interval of intervals) {
|
|
80
|
+
const last = merged[merged.length - 1];
|
|
81
|
+
if (last && interval[0] <= last[1])
|
|
82
|
+
last[1] = Math.max(last[1], interval[1]);
|
|
83
|
+
else
|
|
84
|
+
merged.push([...interval]);
|
|
85
|
+
}
|
|
86
|
+
if (merged.length > 1 && merged[0][0] === -180 && merged[merged.length - 1][1] === 180) {
|
|
87
|
+
const first = merged.shift(), last = merged.pop();
|
|
88
|
+
return [
|
|
89
|
+
[last[0], south, first[1], north],
|
|
90
|
+
...merged.map(([west, east]) => [west, south, east, north])
|
|
91
|
+
];
|
|
92
|
+
}
|
|
93
|
+
return merged.map(([west, east]) => [west, south, east, north]);
|
|
94
|
+
}
|
|
95
|
+
/** Clamp a degree point to coverage using circular longitude distance. */
|
|
96
|
+
export function clampGeographicPoint(bounds, point) {
|
|
97
|
+
let longitude = normalizeLongitude(point[0]);
|
|
98
|
+
const latitude = Math.max(bounds[1], Math.min(bounds[3], point[1]));
|
|
99
|
+
if (!containsGeographicPoint(bounds, [longitude, latitude])) {
|
|
100
|
+
const westDistance = Math.abs(normalizeLongitude(longitude - bounds[0]));
|
|
101
|
+
const eastDistance = Math.abs(normalizeLongitude(longitude - bounds[2]));
|
|
102
|
+
longitude = westDistance <= eastDistance ? bounds[0] : bounds[2];
|
|
103
|
+
}
|
|
104
|
+
return [longitude, latitude];
|
|
105
|
+
}
|
|
106
|
+
/** Express coverage in the kernel's angular parameters, choosing a continuous periodic interval. */
|
|
107
|
+
export function getAngularRanges(bounds, primeMeridian = 0, origin = 0) {
|
|
108
|
+
const width = getLongitudeSpan(bounds);
|
|
109
|
+
const west = bounds[0] * RADIANS - primeMeridian;
|
|
110
|
+
const middle = west + (width * RADIANS) / 2;
|
|
111
|
+
const shift = Math.round((origin - middle) / (2 * Math.PI)) * 2 * Math.PI;
|
|
112
|
+
return createAngularRanges(width === 360 ? origin - Math.PI : west + shift, bounds[1] * RADIANS, width === 360 ? origin + Math.PI : west + shift + width * RADIANS, bounds[3] * RADIANS);
|
|
113
|
+
}
|
|
114
|
+
/** Convert numerical kernel ranges into Greenwich degree coverage at an explicit boundary. */
|
|
115
|
+
export function getGeographicBounds(ranges, primeMeridian = 0) {
|
|
116
|
+
return createGeographicBounds((ranges[0][0] + primeMeridian) / RADIANS, ranges[0][1] / RADIANS, (ranges[1][0] + primeMeridian) / RADIANS, ranges[1][1] / RADIANS);
|
|
117
|
+
}
|
|
118
|
+
/** Combine projected envelopes for disconnected coverage regions. */
|
|
119
|
+
export function unionRenderingBounds(bounds) {
|
|
120
|
+
if (!bounds.length)
|
|
121
|
+
throw new Error('CRS coverage does not intersect the rendering target');
|
|
122
|
+
return [
|
|
123
|
+
[0, 1, 2].map(axis => Math.min(...bounds.map(pair => pair[0][axis]))),
|
|
124
|
+
[0, 1, 2].map(axis => Math.max(...bounds.map(pair => pair[1][axis])))
|
|
125
|
+
];
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=geographic-bounds.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geographic-bounds.js","sourceRoot":"","sources":["../../../../src/projection/experimental/rendering-profile/geographic-bounds.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ProjectionParameters, ProjectionImplementation } from "../types.js";
|
|
2
|
+
/** Geographic rendering follows the same longitude branch as its output convention. */
|
|
3
|
+
export declare function createGeographicProfile(parameters: ProjectionParameters, primeMeridian?: number): NonNullable<ProjectionImplementation['getRenderingProfile']>;
|
|
4
|
+
//# sourceMappingURL=geographic-rendering-profile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geographic-rendering-profile.d.ts","sourceRoot":"","sources":["../../../../src/projection/experimental/rendering-profile/geographic-rendering-profile.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,oBAAoB,EAAE,wBAAwB,EAAC,oBAAiB;AAK7E,uFAAuF;AACvF,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,oBAAoB,EAChC,aAAa,SAAI,GAChB,WAAW,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,CAAC,CAe9D"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// math.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// SPDX-FileCopyrightText: Copyright (c) vis.gl contributors
|
|
4
|
+
import { DEGREES_TO_RADIANS, numberParameter } from "../parameters.js";
|
|
5
|
+
import { createRectangleRenderingProfile } from "./rectangular-rendering-profile.js";
|
|
6
|
+
import { longitudeRange } from "./rendering-bounds.js";
|
|
7
|
+
/** Geographic rendering follows the same longitude branch as its output convention. */
|
|
8
|
+
export function createGeographicProfile(parameters, primeMeridian = 0) {
|
|
9
|
+
const center = numberParameter(parameters, 'lon_wrap', 0) * DEGREES_TO_RADIANS;
|
|
10
|
+
return coverage => createRectangleRenderingProfile(ranges => {
|
|
11
|
+
const longitude = longitudeRange(ranges, center);
|
|
12
|
+
return [
|
|
13
|
+
[center + longitude[0], ranges[0][1], 0],
|
|
14
|
+
[center + longitude[1], ranges[1][1], 0]
|
|
15
|
+
];
|
|
16
|
+
}, coverage ?? [-180, -90, 180, 90], center, primeMeridian);
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=geographic-rendering-profile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geographic-rendering-profile.js","sourceRoot":"","sources":["../../../../src/projection/experimental/rendering-profile/geographic-rendering-profile.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,4DAA4D;AAG5D,OAAO,EAAC,kBAAkB,EAAE,eAAe,EAAC,yBAAsB;AAClE,OAAO,EAAC,+BAA+B,EAAC,2CAAwC;AAChF,OAAO,EAAC,cAAc,EAAC,8BAA2B;AAElD,uFAAuF;AACvF,MAAM,UAAU,uBAAuB,CACrC,UAAgC,EAChC,aAAa,GAAG,CAAC;IAEjB,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC,GAAG,kBAAkB,CAAC;IAC/E,OAAO,QAAQ,CAAC,EAAE,CAChB,+BAA+B,CAC7B,MAAM,CAAC,EAAE;QACP,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO;YACL,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACzC,CAAC;IACJ,CAAC,EACD,QAAQ,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAChC,MAAM,EACN,aAAa,CACd,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { KernelParameters } from "../kernel.js";
|
|
2
|
+
import type { ProjectionImplementation } from "../types.js";
|
|
3
|
+
/** The satellite limb is the ellipsoid/satellite tangency, Rg*X=1.
|
|
4
|
+
* Solve the limb's latitude and longitude intersections directly in geodetic coordinates.
|
|
5
|
+
*/
|
|
6
|
+
export declare function createGeostationaryProfile(base: KernelParameters, height: number, sweepX?: boolean): NonNullable<ProjectionImplementation['getRenderingProfile']>;
|
|
7
|
+
//# sourceMappingURL=geostationary-rendering-profile.d.ts.map
|
package/dist/projection/experimental/rendering-profile/geostationary-rendering-profile.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geostationary-rendering-profile.d.ts","sourceRoot":"","sources":["../../../../src/projection/experimental/rendering-profile/geostationary-rendering-profile.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,gBAAgB,EAAC,qBAAkB;AAUhD,OAAO,KAAK,EAAC,wBAAwB,EAA6B,oBAAiB;AAKnF;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,MAAM,EACd,MAAM,UAAQ,GACb,WAAW,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,CAAC,CAqG9D"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
// math.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// SPDX-FileCopyrightText: Copyright (c) vis.gl contributors
|
|
4
|
+
import { createAngularRanges, getAngularRanges, getGeographicBounds, intersectGeographicBounds } from "./geographic-bounds.js";
|
|
5
|
+
import { combineRenderingProfiles, createAngularNormalization } from "./rendering-profile.js";
|
|
6
|
+
import { normalizeCoverage } from "./rectangular-rendering-profile.js";
|
|
7
|
+
import { wrapLongitude } from "../parameters.js";
|
|
8
|
+
import { sphericalRange } from "./spherical-rendering-domain.js";
|
|
9
|
+
import { multiply, envelope, add } from "./rendering-bounds.js";
|
|
10
|
+
/** The satellite limb is the ellipsoid/satellite tangency, Rg*X=1.
|
|
11
|
+
* Solve the limb's latitude and longitude intersections directly in geodetic coordinates.
|
|
12
|
+
*/
|
|
13
|
+
export function createGeostationaryProfile(base, height, sweepX = false) {
|
|
14
|
+
const radius = 1 + height / base.a;
|
|
15
|
+
const visibleRadius = radius / (1 + 1e-10);
|
|
16
|
+
const longitudeLimit = (latitude) => Math.acos(Math.min(1, Math.sqrt(1 - base.es * Math.sin(latitude) ** 2) / (visibleRadius * Math.cos(latitude))));
|
|
17
|
+
const latitudeLimit = (longitude) => {
|
|
18
|
+
const squared = (visibleRadius * Math.cos(longitude)) ** 2;
|
|
19
|
+
return Math.asin(Math.sqrt(Math.max(0, (squared - 1) / (squared - base.es))));
|
|
20
|
+
};
|
|
21
|
+
const fullX = height * Math.asin(1 / radius);
|
|
22
|
+
const fullY = height * Math.atan(Math.sqrt((1 - base.es) / (radius * radius - 1)));
|
|
23
|
+
const create = (coverage, declared) => {
|
|
24
|
+
const closestLatitude = Math.max(coverage[0][1], Math.min(coverage[1][1], 0));
|
|
25
|
+
const maximumLongitude = longitudeLimit(closestLatitude);
|
|
26
|
+
const west = Math.max(coverage[0][0] - base.long0, -maximumLongitude);
|
|
27
|
+
const east = Math.min(coverage[1][0] - base.long0, maximumLongitude);
|
|
28
|
+
const maxLatitude = latitudeLimit(Math.max(west, Math.min(east, 0)));
|
|
29
|
+
const south = Math.max(coverage[0][1], -maxLatitude), north = Math.min(coverage[1][1], maxLatitude);
|
|
30
|
+
if (east < west || north < south)
|
|
31
|
+
return null;
|
|
32
|
+
const region = createAngularRanges(west, south, east, north);
|
|
33
|
+
const geographicCoverage = getGeographicBounds(createAngularRanges(west + base.long0, south, east + base.long0, north), base.primeMeridian);
|
|
34
|
+
const center = ((base.long0 + base.primeMeridian) * 180) / Math.PI;
|
|
35
|
+
const normalizeLimb = createAngularNormalization(point => {
|
|
36
|
+
const longitude = Math.max(west, Math.min(east, wrapLongitude(point.x - base.long0)));
|
|
37
|
+
const limit = latitudeLimit(longitude);
|
|
38
|
+
const latitude = Math.max(Math.max(south, -limit), Math.min(Math.min(north, limit), point.y));
|
|
39
|
+
// Avoid reconstructing a native longitude when it is already within the limb.
|
|
40
|
+
if (longitude !== point.x - base.long0)
|
|
41
|
+
point.x = longitude + base.long0;
|
|
42
|
+
point.y = latitude;
|
|
43
|
+
}, base.primeMeridian);
|
|
44
|
+
return {
|
|
45
|
+
get bounds() {
|
|
46
|
+
if (!declared)
|
|
47
|
+
return envelope([base.x0 - fullX, base.x0 + fullX], [base.y0 - fullY, base.y0 + fullY]);
|
|
48
|
+
// Geodetic surface coordinates: N*cos(phi)*sin(lambda), N*(1-e²)*sin(phi).
|
|
49
|
+
const sin = sphericalRange([0, 0, 1], region);
|
|
50
|
+
const n = [1, 1 / Math.sqrt(1 - base.es * Math.max(sin[0] ** 2, sin[1] ** 2))];
|
|
51
|
+
const x = multiply(sphericalRange([1, 0, 0], region), n);
|
|
52
|
+
const y = multiply(sphericalRange([0, 1, 0], region), n);
|
|
53
|
+
const z = multiply(sin, [1 - base.es, (1 - base.es) * n[1]]);
|
|
54
|
+
const denominators = [radius - Math.min(1, x[1]), radius - Math.max(1 / radius, x[0])];
|
|
55
|
+
const angleRange = (range, other, maximum, orthogonal) => {
|
|
56
|
+
const minimumOther = other[0] <= 0 && other[1] >= 0 ? 0 : Math.min(Math.abs(other[0]), Math.abs(other[1]));
|
|
57
|
+
const ds = orthogonal
|
|
58
|
+
? [
|
|
59
|
+
Math.hypot(denominators[0], minimumOther),
|
|
60
|
+
Math.hypot(denominators[1], Math.max(Math.abs(other[0]), Math.abs(other[1])))
|
|
61
|
+
]
|
|
62
|
+
: denominators;
|
|
63
|
+
const values = range.flatMap(value => ds.map(d => height * Math.atan(value / d)));
|
|
64
|
+
return [
|
|
65
|
+
Math.max(-maximum, Math.min(...values)),
|
|
66
|
+
Math.min(maximum, Math.max(...values))
|
|
67
|
+
];
|
|
68
|
+
};
|
|
69
|
+
return envelope(add([base.x0, base.x0], angleRange(y, z, fullX, sweepX)), add([base.y0, base.y0], angleRange(z, y, fullY, !sweepX)));
|
|
70
|
+
},
|
|
71
|
+
normalize(point) {
|
|
72
|
+
normalizeCoverage(point, geographicCoverage, center);
|
|
73
|
+
normalizeLimb(point);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
const extent = getGeographicBounds(createAngularRanges(base.long0 - longitudeLimit(0), -latitudeLimit(0), base.long0 + longitudeLimit(0), latitudeLimit(0)), base.primeMeridian);
|
|
78
|
+
return coverage => {
|
|
79
|
+
const regions = coverage ? intersectGeographicBounds(coverage, extent) : [extent];
|
|
80
|
+
const profile = combineRenderingProfiles(regions, region => create(getAngularRanges(region, base.primeMeridian, base.long0), Boolean(coverage)));
|
|
81
|
+
if (!profile)
|
|
82
|
+
throw new Error('CRS coverage does not intersect the satellite limb');
|
|
83
|
+
return profile;
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=geostationary-rendering-profile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geostationary-rendering-profile.js","sourceRoot":"","sources":["../../../../src/projection/experimental/rendering-profile/geostationary-rendering-profile.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ProjectionRenderingProfile } from "../types.js";
|
|
2
|
+
/** Identity coordinates use a unit square as their default rendering target. */
|
|
3
|
+
export declare function getIdentityRenderingProfile(): ProjectionRenderingProfile;
|
|
4
|
+
//# sourceMappingURL=identity-rendering-profile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-rendering-profile.d.ts","sourceRoot":"","sources":["../../../../src/projection/experimental/rendering-profile/identity-rendering-profile.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,0BAA0B,EAAC,oBAAiB;AAEzD,gFAAgF;AAChF,wBAAgB,2BAA2B,IAAI,0BAA0B,CAOxE"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// math.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// SPDX-FileCopyrightText: Copyright (c) vis.gl contributors
|
|
4
|
+
/** Identity coordinates use a unit square as their default rendering target. */
|
|
5
|
+
export function getIdentityRenderingProfile() {
|
|
6
|
+
return {
|
|
7
|
+
bounds: [
|
|
8
|
+
[-1, -1, 0],
|
|
9
|
+
[1, 1, 0]
|
|
10
|
+
]
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=identity-rendering-profile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-rendering-profile.js","sourceRoot":"","sources":["../../../../src/projection/experimental/rendering-profile/identity-rendering-profile.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,4DAA4D;AAI5D,gFAAgF;AAChF,MAAM,UAAU,2BAA2B;IACzC,OAAO;QACL,MAAM,EAAE;YACN,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACX,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACV;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { GeographicBounds, ProjectionImplementation, ProjectionRenderingProfile } from "../types.js";
|
|
2
|
+
import type { AngularRanges } from "./geographic-bounds.js";
|
|
3
|
+
export type ResolveRenderingBounds = (parameters: AngularRanges) => ProjectionRenderingProfile['bounds'];
|
|
4
|
+
/** Clamp Greenwich longitude/latitude in degrees to one rendering rectangle. */
|
|
5
|
+
export declare function normalizeCoverage(point: {
|
|
6
|
+
x: number;
|
|
7
|
+
y: number;
|
|
8
|
+
}, coverage: GeographicBounds, center?: number, over?: boolean): void;
|
|
9
|
+
/** Geographic coverage with a projection-owned analytical envelope. */
|
|
10
|
+
export declare function createRectangleRenderingProfile(resolveBounds: ResolveRenderingBounds, coverage: GeographicBounds, origin?: number, primeMeridian?: number, over?: boolean): ProjectionRenderingProfile;
|
|
11
|
+
/** Algorithms opt into rectangular coverage and clipping to their own default target. */
|
|
12
|
+
export declare function withRectangleRenderingProfile(implementation: ProjectionImplementation, parameters: AngularRanges, resolveBounds: ResolveRenderingBounds, primeMeridian?: number, over?: boolean): ProjectionImplementation;
|
|
13
|
+
//# sourceMappingURL=rectangular-rendering-profile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rectangular-rendering-profile.d.ts","sourceRoot":"","sources":["../../../../src/projection/experimental/rendering-profile/rectangular-rendering-profile.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,gBAAgB,EAChB,wBAAwB,EACxB,0BAA0B,EAC3B,oBAAiB;AAClB,OAAO,KAAK,EAAC,aAAa,EAAC,+BAA4B;AAWvD,MAAM,MAAM,sBAAsB,GAAG,CACnC,UAAU,EAAE,aAAa,KACtB,0BAA0B,CAAC,QAAQ,CAAC,CAAC;AAE1C,gFAAgF;AAChF,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,EAC7B,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,SAAI,EACV,IAAI,UAAQ,GACX,IAAI,CAuBN;AAED,uEAAuE;AACvE,wBAAgB,+BAA+B,CAC7C,aAAa,EAAE,sBAAsB,EACrC,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,SAAI,EACV,aAAa,SAAI,EACjB,IAAI,UAAQ,GACX,0BAA0B,CAU5B;AAgBD,yFAAyF;AACzF,wBAAgB,6BAA6B,CAC3C,cAAc,EAAE,wBAAwB,EACxC,UAAU,EAAE,aAAa,EACzB,aAAa,EAAE,sBAAsB,EACrC,aAAa,SAAI,EACjB,IAAI,UAAQ,GACX,wBAAwB,CAqC1B"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
// math.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// SPDX-FileCopyrightText: Copyright (c) vis.gl contributors
|
|
4
|
+
import { clampGeographicPoint, getAngularRanges, getLongitudeSpan, getGeographicBounds, intersectGeographicBounds, normalizeLongitude } from "./geographic-bounds.js";
|
|
5
|
+
import { combineRenderingProfiles } from "./rendering-profile.js";
|
|
6
|
+
/** Clamp Greenwich longitude/latitude in degrees to one rendering rectangle. */
|
|
7
|
+
export function normalizeCoverage(point, coverage, center = 0, over = false) {
|
|
8
|
+
const span = getLongitudeSpan(coverage);
|
|
9
|
+
const west = span === 360
|
|
10
|
+
? center - 180
|
|
11
|
+
: coverage[0] + Math.round((center - coverage[0] - span / 2) / 360) * 360;
|
|
12
|
+
const east = west + span;
|
|
13
|
+
// Keep geographic values in degrees: a covered seam endpoint must not be
|
|
14
|
+
// perturbed by a radians round trip onto the opposite projection branch.
|
|
15
|
+
if (over) {
|
|
16
|
+
point.x = Math.max(west, Math.min(east, point.x));
|
|
17
|
+
point.y = Math.max(coverage[1], Math.min(coverage[3], point.y));
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
const best = clampGeographicPoint(coverage, [point.x, point.y]);
|
|
21
|
+
let longitude = best[0];
|
|
22
|
+
if (best[0] === normalizeLongitude(point.x) && point.x >= west && point.x <= east)
|
|
23
|
+
longitude = point.x;
|
|
24
|
+
else if (longitude < west || longitude > east)
|
|
25
|
+
longitude += Math.round(((west + east) / 2 - longitude) / 360) * 360;
|
|
26
|
+
const offset = longitude - center;
|
|
27
|
+
point.x = Math.abs(offset) <= 180 ? longitude : center + normalizeLongitude(offset);
|
|
28
|
+
point.y = best[1];
|
|
29
|
+
}
|
|
30
|
+
/** Geographic coverage with a projection-owned analytical envelope. */
|
|
31
|
+
export function createRectangleRenderingProfile(resolveBounds, coverage, origin = 0, primeMeridian = 0, over = false) {
|
|
32
|
+
const center = ((origin + primeMeridian) * 180) / Math.PI;
|
|
33
|
+
return {
|
|
34
|
+
get bounds() {
|
|
35
|
+
return resolveBounds(getAngularRanges(coverage, primeMeridian, origin));
|
|
36
|
+
},
|
|
37
|
+
normalize(point) {
|
|
38
|
+
normalizeCoverage(point, coverage, center, over);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
function createRegionsRenderingProfile(resolveBounds, regions, origin, primeMeridian, over) {
|
|
43
|
+
const profile = combineRenderingProfiles(regions, region => createRectangleRenderingProfile(resolveBounds, region, origin, primeMeridian, over));
|
|
44
|
+
if (!profile)
|
|
45
|
+
throw new Error('CRS coverage does not intersect the rendering target');
|
|
46
|
+
return profile;
|
|
47
|
+
}
|
|
48
|
+
/** Algorithms opt into rectangular coverage and clipping to their own default target. */
|
|
49
|
+
export function withRectangleRenderingProfile(implementation, parameters, resolveBounds, primeMeridian = 0, over = false) {
|
|
50
|
+
const origin = (parameters[0][0] + parameters[1][0]) / 2;
|
|
51
|
+
const defaults = getGeographicBounds(parameters, primeMeridian);
|
|
52
|
+
const center = ((origin + primeMeridian) * 180) / Math.PI;
|
|
53
|
+
return {
|
|
54
|
+
...implementation,
|
|
55
|
+
longitudeOrigin: origin,
|
|
56
|
+
getRenderingProfile(coverage) {
|
|
57
|
+
if (!coverage)
|
|
58
|
+
return {
|
|
59
|
+
bounds: resolveBounds(parameters),
|
|
60
|
+
normalize(point) {
|
|
61
|
+
normalizeCoverage(point, defaults, center, over);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
try {
|
|
65
|
+
const profile = createRectangleRenderingProfile(resolveBounds, coverage, origin, primeMeridian, over);
|
|
66
|
+
const bounds = profile.bounds;
|
|
67
|
+
return { bounds, normalize: profile.normalize };
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
// Singular coverage is clipped to this algorithm's chosen finite target.
|
|
71
|
+
return createRegionsRenderingProfile(resolveBounds, intersectGeographicBounds(coverage, defaults), origin, primeMeridian, over);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=rectangular-rendering-profile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rectangular-rendering-profile.js","sourceRoot":"","sources":["../../../../src/projection/experimental/rendering-profile/rectangular-rendering-profile.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { KernelParameters } from "../kernel.js";
|
|
2
|
+
import type { ProjectionImplementation } from "../types.js";
|
|
3
|
+
import type { AngularRanges } from "./geographic-bounds.js";
|
|
4
|
+
import type { State as BonneState } from "../kernels/bonne.js";
|
|
5
|
+
import type { State as SwissState } from "../kernels/somerc.js";
|
|
6
|
+
import type { State as HotineState } from "../kernels/omerc.js";
|
|
7
|
+
import type { State as KrovakState } from "../kernels/krovak.js";
|
|
8
|
+
import type { State as NZMGState } from "../kernels/nzmg.js";
|
|
9
|
+
/** |sin(t)| <= |t| and |1-cos(t)| <= min(2, |t|) bound Bonne's polar terms,
|
|
10
|
+
* including the removable rho=0 limit, without searching its curved meridians.
|
|
11
|
+
*/
|
|
12
|
+
export declare function bonneBounds(state: BonneState, project: ProjectionImplementation['forward'], region: AngularRanges): readonly [readonly [number, number, number], readonly [number, number, number]];
|
|
13
|
+
/** Cancel the apparent polar cotangent singularity before bounding the polynomial terms. */
|
|
14
|
+
export declare function polyconicBounds(base: KernelParameters, project: ProjectionImplementation['forward'], region: AngularRanges): readonly [readonly [number, number, number], readonly [number, number, number]];
|
|
15
|
+
/** Bounds of the explicit Cassini series, regrouped into bounded sin/cos factors. */
|
|
16
|
+
export declare function cassiniBounds(base: KernelParameters, project: ProjectionImplementation['forward'], region: AngularRanges): readonly [readonly [number, number, number], readonly [number, number, number]];
|
|
17
|
+
/** Swiss rotation on its conformal sphere, followed by monotone atan/atanh. */
|
|
18
|
+
export declare function swissBounds(state: SwissState, region: AngularRanges): readonly [readonly [number, number, number], readonly [number, number, number]];
|
|
19
|
+
/** Hotine's U is a linear form on the conformal sphere. Rotating its bounded
|
|
20
|
+
* longitude/isometric-latitude ranges gives a guaranteed regional envelope.
|
|
21
|
+
*/
|
|
22
|
+
export declare function hotineBounds(state: HotineState, region: AngularRanges): readonly [readonly [number, number, number], readonly [number, number, number]];
|
|
23
|
+
/** Krovak's auxiliary-sphere rotation followed by its monotone cone radius. */
|
|
24
|
+
export declare function krovakBounds(state: KrovakState, region: AngularRanges): readonly [readonly [number, number, number], readonly [number, number, number]];
|
|
25
|
+
/** Interval Horner evaluation of NZMG's published real/complex polynomials.
|
|
26
|
+
* The coefficient envelope is rigorous over the entire declared rectangle.
|
|
27
|
+
*/
|
|
28
|
+
export declare function nzmgBounds(state: NZMGState, region: AngularRanges): readonly [readonly [number, number, number], readonly [number, number, number]];
|
|
29
|
+
//# sourceMappingURL=regional-rendering-bounds.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"regional-rendering-bounds.d.ts","sourceRoot":"","sources":["../../../../src/projection/experimental/rendering-profile/regional-rendering-bounds.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,gBAAgB,EAAC,qBAAkB;AAChD,OAAO,KAAK,EAAC,wBAAwB,EAAC,oBAAiB;AAEvD,OAAO,KAAK,EAAC,aAAa,EAAC,+BAA4B;AACvD,OAAO,KAAK,EAAC,KAAK,IAAI,UAAU,EAAC,4BAAyB;AAC1D,OAAO,KAAK,EAAC,KAAK,IAAI,UAAU,EAAC,6BAA0B;AAC3D,OAAO,KAAK,EAAC,KAAK,IAAI,WAAW,EAAC,4BAAyB;AAC3D,OAAO,KAAK,EAAC,KAAK,IAAI,WAAW,EAAC,6BAA0B;AAC5D,OAAO,KAAK,EAAC,KAAK,IAAI,SAAS,EAAC,2BAAwB;AAiBxD;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,wBAAwB,CAAC,SAAS,CAAC,EAC5C,MAAM,EAAE,aAAa,mFAkBtB;AAED,4FAA4F;AAC5F,wBAAgB,eAAe,CAC7B,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,wBAAwB,CAAC,SAAS,CAAC,EAC5C,MAAM,EAAE,aAAa,mFAkBtB;AAED,qFAAqF;AACrF,wBAAgB,aAAa,CAC3B,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,wBAAwB,CAAC,SAAS,CAAC,EAC5C,MAAM,EAAE,aAAa,mFAoBtB;AAOD,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,mFA0BnE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,mFAoCrE;AAED,+EAA+E;AAC/E,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,mFA0CrE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,mFAuBjE"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
// math.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// SPDX-FileCopyrightText: Copyright (c) vis.gl contributors
|
|
4
|
+
import { createAngularRanges } from "./geographic-bounds.js";
|
|
5
|
+
import { sphericalRange } from "./spherical-rendering-domain.js";
|
|
6
|
+
import { add, scale, multiply, ordered, sine, cosine, maxAbs, envelope, longitudeRange } from "./rendering-bounds.js";
|
|
7
|
+
import tsfnz from "../common/tsfnz.js";
|
|
8
|
+
import { SEC_TO_RAD } from "../common/constants.js";
|
|
9
|
+
/** |sin(t)| <= |t| and |1-cos(t)| <= min(2, |t|) bound Bonne's polar terms,
|
|
10
|
+
* including the removable rho=0 limit, without searching its curved meridians.
|
|
11
|
+
*/
|
|
12
|
+
export function bonneBounds(state, project, region) {
|
|
13
|
+
const d = maxAbs(longitudeRange(region, state.long0, state.over));
|
|
14
|
+
const n = state.a / Math.sqrt(1 - state.es);
|
|
15
|
+
const meridian = ordered(project(state.long0, region[0][1])[1], project(state.long0, region[1][1])[1]);
|
|
16
|
+
const radius = Math.max(Math.abs(state.a * (state.es ? state.am1 : state.cphi1) + state.y0 - meridian[0]), Math.abs(state.a * (state.es ? state.am1 : state.cphi1) + state.y0 - meridian[1]));
|
|
17
|
+
const width = Math.min(radius, n * d);
|
|
18
|
+
const correction = Math.min(2 * radius, n * d);
|
|
19
|
+
return envelope([state.x0 - width, state.x0 + width], [meridian[0] - correction, meridian[1] + correction]);
|
|
20
|
+
}
|
|
21
|
+
/** Cancel the apparent polar cotangent singularity before bounding the polynomial terms. */
|
|
22
|
+
export function polyconicBounds(base, project, region) {
|
|
23
|
+
const d = maxAbs(longitudeRange(region, base.long0, base.over));
|
|
24
|
+
const n = base.a / Math.sqrt(1 - base.es);
|
|
25
|
+
const correction = (n * d * d) / 4; // |sin(phi) cos(phi)| <= 1/2
|
|
26
|
+
let meridian = ordered(project(base.long0, region[0][1])[1], project(base.long0, region[1][1])[1]);
|
|
27
|
+
if (base.sphere &&
|
|
28
|
+
(region[0][1] - base.lat0 < -Math.PI / 2 || region[1][1] - base.lat0 > Math.PI / 2))
|
|
29
|
+
meridian = [base.y0 - (base.a * Math.PI) / 2, base.y0 + (base.a * Math.PI) / 2];
|
|
30
|
+
return envelope([base.x0 - n * d, base.x0 + n * d], [meridian[0] - correction, meridian[1] + correction]);
|
|
31
|
+
}
|
|
32
|
+
/** Bounds of the explicit Cassini series, regrouped into bounded sin/cos factors. */
|
|
33
|
+
export function cassiniBounds(base, project, region) {
|
|
34
|
+
const d = maxAbs(longitudeRange(region, base.long0, base.over));
|
|
35
|
+
// Beyond the front hemisphere, atan2 northing crosses a branch cut that
|
|
36
|
+
// the meridian correction below does not bound. Use the regional fallback.
|
|
37
|
+
if (base.sphere && d > Math.PI / 2)
|
|
38
|
+
throw new Error('Unsupported Cassini rendering coverage');
|
|
39
|
+
const n = base.a / Math.sqrt(1 - base.es), c = base.es / (1 - base.es);
|
|
40
|
+
const width = base.sphere
|
|
41
|
+
? base.a * Math.asin(Math.min(1, Math.sin(Math.min(d, Math.PI / 2))))
|
|
42
|
+
: n * (d + d ** 3 / 6 + ((9 + 8 * c) * d ** 5) / 120);
|
|
43
|
+
const correction = base.sphere ? base.a * d : n * ((d * d) / 4 + ((6 + 6 * c) * d ** 4) / 24);
|
|
44
|
+
const meridian = ordered(project(base.long0, region[0][1])[1], project(base.long0, region[1][1])[1]);
|
|
45
|
+
return envelope([base.x0 - width, base.x0 + width], [meridian[0] - correction, meridian[1] + correction]);
|
|
46
|
+
}
|
|
47
|
+
function ratioRange(numerator, denominator) {
|
|
48
|
+
if (denominator[0] <= 0 && denominator[1] >= 0)
|
|
49
|
+
return [-Infinity, Infinity];
|
|
50
|
+
return multiply(numerator, ordered(1 / denominator[0], 1 / denominator[1]));
|
|
51
|
+
}
|
|
52
|
+
/** Swiss rotation on its conformal sphere, followed by monotone atan/atanh. */
|
|
53
|
+
export function swissBounds(state, region) {
|
|
54
|
+
const latitude = (phi) => {
|
|
55
|
+
const s = state.alpha * (Math.asinh(Math.tan(phi)) - state.e * Math.atanh(state.e * Math.sin(phi))) +
|
|
56
|
+
state.K;
|
|
57
|
+
return Math.asin(Math.tanh(s));
|
|
58
|
+
};
|
|
59
|
+
const rotated = createAngularRanges((region[0][0] - state.long0) * state.alpha, latitude(region[0][1]), (region[1][0] - state.long0) * state.alpha, latitude(region[1][1]));
|
|
60
|
+
const north = sphericalRange([-Math.sin(state.b0), 0, Math.cos(state.b0)], rotated);
|
|
61
|
+
if (maxAbs(north) >= 1 - 1e-14)
|
|
62
|
+
throw new Error('Swiss oblique Mercator coverage reaches a rotated pole');
|
|
63
|
+
const east = sphericalRange([0, 1, 0], rotated);
|
|
64
|
+
const forward = sphericalRange([Math.cos(state.b0), 0, Math.sin(state.b0)], rotated);
|
|
65
|
+
const x = ratioRange(east, forward).map(Math.atan);
|
|
66
|
+
const y = north.map(value => Math.atanh(Math.max(-1 + Number.EPSILON, Math.min(1 - Number.EPSILON, value))));
|
|
67
|
+
return envelope(add([state.x0, state.x0], scale(x, state.R)), add([state.y0, state.y0], scale(y, state.R)));
|
|
68
|
+
}
|
|
69
|
+
/** Hotine's U is a linear form on the conformal sphere. Rotating its bounded
|
|
70
|
+
* longitude/isometric-latitude ranges gives a guaranteed regional envelope.
|
|
71
|
+
*/
|
|
72
|
+
export function hotineBounds(state, region) {
|
|
73
|
+
const logW = (phi) => Math.log(state.E) - state.B * Math.log(tsfnz(state.e, phi, Math.sin(phi)));
|
|
74
|
+
const w = ordered(logW(region[0][1]), logW(region[1][1]));
|
|
75
|
+
const longitude = scale([region[0][0] - state.lam0, region[1][0] - state.lam0], state.B);
|
|
76
|
+
const sphere = createAngularRanges(longitude[0], Math.asin(Math.tanh(w[0])), longitude[1], Math.asin(Math.tanh(w[1])));
|
|
77
|
+
const U = sphericalRange([0, -state.cosgam, state.singam], sphere);
|
|
78
|
+
const v = scale(ordered(-Math.atanh(U[0]), -Math.atanh(U[1])), state.ArB);
|
|
79
|
+
const numerator = add(scale([Math.sinh(w[0]), Math.sinh(w[1])], state.cosgam), scale(sine(longitude), state.singam));
|
|
80
|
+
const denominator = cosine(longitude);
|
|
81
|
+
const angle = denominator[0] > 0
|
|
82
|
+
? ratioRange(numerator, denominator).map(Math.atan)
|
|
83
|
+
: [-Math.PI, Math.PI];
|
|
84
|
+
let u = scale(angle, state.ArB);
|
|
85
|
+
let x, y;
|
|
86
|
+
if (state.no_rot) {
|
|
87
|
+
x = u;
|
|
88
|
+
y = v;
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
u = add(u, [-state.u_0, -state.u_0]);
|
|
92
|
+
x = add(scale(v, state.cosrot), scale(u, state.sinrot));
|
|
93
|
+
y = add(scale(u, state.cosrot), scale(v, -state.sinrot));
|
|
94
|
+
}
|
|
95
|
+
return envelope(add([state.x0, state.x0], scale(x, state.a)), add([state.y0, state.y0], scale(y, state.a)));
|
|
96
|
+
}
|
|
97
|
+
/** Krovak's auxiliary-sphere rotation followed by its monotone cone radius. */
|
|
98
|
+
export function krovakBounds(state, region) {
|
|
99
|
+
const latitude = (phi) => 2 *
|
|
100
|
+
(Math.atan((state.k * Math.pow(Math.tan(phi / 2 + state.s45), state.alfa)) /
|
|
101
|
+
Math.pow((1 + state.e * Math.sin(phi)) / (1 - state.e * Math.sin(phi)), (state.alfa * state.e) / 2)) -
|
|
102
|
+
state.s45);
|
|
103
|
+
const longitude = scale(longitudeRange(region, state.long0, state.over), -state.alfa);
|
|
104
|
+
const sphere = createAngularRanges(longitude[0], latitude(region[0][1]), longitude[1], latitude(region[1][1]));
|
|
105
|
+
const s = sphericalRange([Math.sin(state.ad), 0, Math.cos(state.ad)], sphere);
|
|
106
|
+
const cosS = [
|
|
107
|
+
Math.sqrt(Math.max(Number.EPSILON, 1 - maxAbs(s) ** 2)),
|
|
108
|
+
1 // cos(s) never exceeds one; a conservative upper endpoint avoids underbounding.
|
|
109
|
+
];
|
|
110
|
+
const numerator = sphericalRange([0, 1, 0], sphere);
|
|
111
|
+
// Both denominator endpoints matter when the numerator has one sign.
|
|
112
|
+
const quotient = ratioRange(numerator, cosS);
|
|
113
|
+
const d = scale(quotient.map(value => Math.asin(Math.max(-1, Math.min(1, value)))), state.n);
|
|
114
|
+
const radius = (sin) => state.ro0 *
|
|
115
|
+
Math.pow(Math.tan(state.s0 / 2 + state.s45) / Math.tan(Math.asin(sin) / 2 + state.s45), state.n);
|
|
116
|
+
const radii = ordered(radius(s[0]), radius(s[1]));
|
|
117
|
+
const sign = state.czech ? 1 : -1;
|
|
118
|
+
return envelope(add([state.x0, state.x0], scale(multiply(radii, sine(d)), sign)), add([state.y0, state.y0], scale(multiply(radii, cosine(d)), sign)));
|
|
119
|
+
}
|
|
120
|
+
/** Interval Horner evaluation of NZMG's published real/complex polynomials.
|
|
121
|
+
* The coefficient envelope is rigorous over the entire declared rectangle.
|
|
122
|
+
*/
|
|
123
|
+
export function nzmgBounds(state, region) {
|
|
124
|
+
const phi = scale([region[0][1] - state.lat0, region[1][1] - state.lat0], 1e-5 / SEC_TO_RAD);
|
|
125
|
+
// Normalization selects the origin-relative branch unless +over is active.
|
|
126
|
+
// Enclose both sides when coverage crosses that cut: the polynomial is not periodic.
|
|
127
|
+
const lambda = longitudeRange(region, state.long0, state.over);
|
|
128
|
+
let psi = [0, 0];
|
|
129
|
+
for (let index = 10; index >= 1; index--)
|
|
130
|
+
psi = add([state.A[index], state.A[index]], multiply(psi, phi));
|
|
131
|
+
psi = multiply(psi, phi);
|
|
132
|
+
let real = [0, 0], imaginary = [0, 0];
|
|
133
|
+
for (let index = 6; index >= 1; index--) {
|
|
134
|
+
const nextReal = add(multiply(real, psi), scale(multiply(imaginary, lambda), -1));
|
|
135
|
+
const nextImaginary = add(multiply(real, lambda), multiply(imaginary, psi));
|
|
136
|
+
real = add(nextReal, [state.B_re[index], state.B_re[index]]);
|
|
137
|
+
imaginary = add(nextImaginary, [state.B_im[index], state.B_im[index]]);
|
|
138
|
+
}
|
|
139
|
+
const finalReal = add(multiply(real, psi), scale(multiply(imaginary, lambda), -1));
|
|
140
|
+
const finalImaginary = add(multiply(real, lambda), multiply(imaginary, psi));
|
|
141
|
+
return envelope(add([state.x0, state.x0], scale(finalImaginary, state.a)), add([state.y0, state.y0], scale(finalReal, state.a)));
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=regional-rendering-bounds.js.map
|