@takram/three-geospatial 0.2.2 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/build/index.cjs +1 -1
- package/build/index.cjs.map +1 -1
- package/build/index.js +1293 -1282
- package/build/index.js.map +1 -1
- package/build/r3f.cjs +1 -1
- package/build/r3f.cjs.map +1 -1
- package/build/r3f.js +28 -55
- package/build/r3f.js.map +1 -1
- package/build/shaders.cjs.map +1 -1
- package/build/shaders.js.map +1 -1
- package/build/shared.cjs.map +1 -1
- package/build/shared.js.map +1 -1
- package/package.json +1 -2
- package/src/DataTextureLoader.ts +134 -0
- package/src/EXR3DTextureLoader.ts +66 -0
- package/src/{EXR3DLoader.ts → EXRTextureLoader.ts} +25 -12
- package/src/STBNLoader.ts +28 -13
- package/src/TilingScheme.ts +1 -1
- package/src/TypedArrayLoader.ts +11 -21
- package/src/capabilities.ts +5 -0
- package/src/constants.ts +1 -0
- package/src/decorators.ts +0 -1
- package/src/defineShorthand.ts +1 -1
- package/src/index.ts +5 -3
- package/src/r3f/EastNorthUpFrame.tsx +2 -2
- package/src/r3f/EllipsoidMesh.tsx +3 -5
- package/src/r3f/index.ts +1 -1
- package/src/r3f/types.ts +1 -1
- package/src/typedArrayParsers.ts +1 -1
- package/src/types.ts +3 -1
- package/types/DataTextureLoader.d.ts +27 -0
- package/types/EXR3DTextureLoader.d.ts +11 -0
- package/types/EXRTextureLoader.d.ts +10 -0
- package/types/STBNLoader.d.ts +5 -1
- package/types/TypedArrayLoader.d.ts +4 -6
- package/types/capabilities.d.ts +2 -0
- package/types/index.d.ts +5 -3
- package/types/r3f/index.d.ts +1 -1
- package/types/types.d.ts +2 -1
- package/src/DataLoader.ts +0 -164
- package/src/Texture3DLoader.ts +0 -81
- package/types/DataLoader.d.ts +0 -29
- package/types/EXR3DLoader.d.ts +0 -6
- package/types/Texture3DLoader.d.ts +0 -4
package/build/r3f.js
CHANGED
@@ -1,65 +1,38 @@
|
|
1
|
-
import { jsx as
|
2
|
-
import { useMemo as
|
3
|
-
import { Group as
|
4
|
-
import { E as
|
5
|
-
import { extend as
|
6
|
-
const
|
7
|
-
class F extends
|
8
|
-
set(t, o,
|
9
|
-
const
|
10
|
-
s.getEastNorthUpFrame(
|
1
|
+
import { jsx as m, jsxs as a } from "react/jsx-runtime";
|
2
|
+
import { useMemo as p, useEffect as f } from "react";
|
3
|
+
import { Group as h, Vector3 as E, Matrix4 as x } from "three";
|
4
|
+
import { E as n, G, a as d } from "./shared.js";
|
5
|
+
import { extend as l } from "@react-three/fiber";
|
6
|
+
const u = /* @__PURE__ */ new x(), S = /* @__PURE__ */ new G(), w = /* @__PURE__ */ new E();
|
7
|
+
class F extends h {
|
8
|
+
set(t, o, e, s = n.WGS84) {
|
9
|
+
const c = S.set(t, o, e).toECEF(w);
|
10
|
+
s.getEastNorthUpFrame(c, u).decompose(this.position, this.quaternion, this.scale);
|
11
11
|
}
|
12
12
|
}
|
13
|
-
const
|
14
|
-
ref:
|
13
|
+
const y = ({
|
14
|
+
ref: r,
|
15
15
|
longitude: t,
|
16
16
|
latitude: o,
|
17
|
-
height:
|
18
|
-
ellipsoid: s =
|
19
|
-
children:
|
17
|
+
height: e = 0,
|
18
|
+
ellipsoid: s = n.WGS84,
|
19
|
+
children: c
|
20
20
|
}) => {
|
21
|
-
const
|
22
|
-
return
|
23
|
-
|
24
|
-
}, [t, o,
|
25
|
-
}
|
26
|
-
|
27
|
-
return (t) => {
|
28
|
-
for (const o of e) i(o, t);
|
29
|
-
};
|
30
|
-
}
|
31
|
-
function v(e) {
|
32
|
-
return (t) => {
|
33
|
-
const o = [];
|
34
|
-
for (const r of e) {
|
35
|
-
const s = i(r, t), n = typeof s == "function";
|
36
|
-
o.push(n ? s : () => i(r, null));
|
37
|
-
}
|
38
|
-
return () => {
|
39
|
-
for (const r of o) r();
|
40
|
-
};
|
41
|
-
};
|
42
|
-
}
|
43
|
-
function i(e, t) {
|
44
|
-
if (typeof e == "function")
|
45
|
-
return e(t);
|
46
|
-
e && (e.current = t);
|
47
|
-
}
|
48
|
-
var M = parseInt(l.split(".")[0], 10) >= 19 ? v : j;
|
49
|
-
const I = ({
|
50
|
-
ref: e,
|
21
|
+
const i = p(() => new F(), []);
|
22
|
+
return f(() => {
|
23
|
+
i.set(t, o, e, s);
|
24
|
+
}, [t, o, e, s, i]), /* @__PURE__ */ m("primitive", { ref: r, object: i, children: c });
|
25
|
+
}, W = ({
|
26
|
+
ref: r,
|
51
27
|
args: t,
|
52
28
|
children: o,
|
53
|
-
...
|
54
|
-
}) => {
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
o
|
59
|
-
] });
|
60
|
-
};
|
29
|
+
...e
|
30
|
+
}) => (l({ EllipsoidGeometry: d }), /* @__PURE__ */ a("mesh", { ref: r, ...e, children: [
|
31
|
+
/* @__PURE__ */ m("ellipsoidGeometry", { args: t }),
|
32
|
+
o
|
33
|
+
] }));
|
61
34
|
export {
|
62
|
-
|
63
|
-
|
35
|
+
y as EastNorthUpFrame,
|
36
|
+
W as EllipsoidMesh
|
64
37
|
};
|
65
38
|
//# sourceMappingURL=r3f.js.map
|
package/build/r3f.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"r3f.js","sources":["../src/r3f/EastNorthUpFrame.tsx","../
|
1
|
+
{"version":3,"file":"r3f.js","sources":["../src/r3f/EastNorthUpFrame.tsx","../src/r3f/EllipsoidMesh.tsx"],"sourcesContent":null,"names":["matrixScratch","Matrix4","geodeticScratch","Geodetic","vectorScratch","Vector3","EastNorthUpFrameGroup","Group","longitude","latitude","height","ellipsoid","Ellipsoid","position","EastNorthUpFrame","forwardedRef","children","group","useMemo","useEffect","EllipsoidMesh","args","props","extend","EllipsoidGeometry","jsxs","jsx"],"mappings":";;;;;AAQA,MAAMA,wBAAkCC,EAAA,GAClCC,wBAAoCC,EAAA,GACpCC,wBAAkCC,EAAA;AAExC,MAAMC,UAA8BC,EAAM;AAAA,EACxC,IACEC,GACAC,GACAC,GACAC,IAAYC,EAAU,OAChB;AAEN,UAAMC,IAAWX,EACd,IAAIM,GAAWC,GAAUC,CAAM,EAC/B,OAAON,CAAa;AAEvB,IADeO,EAAU,oBAAoBE,GAAUb,CAAa,EAC7D,UAAU,KAAK,UAAU,KAAK,YAAY,KAAK,KAAK;AAAA,EAAA;AAE/D;AASO,MAAMc,IAA8C,CAAC;AAAA,EAC1D,KAAKC;AAAA,EACL,WAAAP;AAAA,EACA,UAAAC;AAAA,EACA,QAAAC,IAAS;AAAA,EACT,WAAAC,IAAYC,EAAU;AAAA,EACtB,UAAAI;AACF,MAAM;AACJ,QAAMC,IAAQC,EAAQ,MAAM,IAAIZ,EAAA,GAAyB,CAAA,CAAE;AAE3D,SAAAa,EAAU,MAAM;AACd,IAAAF,EAAM,IAAIT,GAAWC,GAAUC,GAAQC,CAAS;AAAA,EAAA,GAC/C,CAACH,GAAWC,GAAUC,GAAQC,GAAWM,CAAK,CAAC,qBAG/C,aAAA,EAAU,KAAKF,GAAc,QAAQE,GACnC,UAAAD,GACH;AAEJ,GCjCaI,IAAwC,CAAC;AAAA,EACpD,KAAKL;AAAA,EACL,MAAAM;AAAA,EACA,UAAAL;AAAA,EACA,GAAGM;AACL,OACEC,EAAO,EAAE,mBAAAC,GAAmB,GAE1B,gBAAAC,EAAC,QAAA,EAAK,KAAKV,GAAe,GAAGO,GAC3B,UAAA;AAAA,EAAA,gBAAAI,EAAC,uBAAkB,MAAAL,GAAY;AAAA,EAC9BL;AAAA,GACH;"}
|
package/build/shaders.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"shaders.cjs","sources":["../src/shaders/cascadedShadowMaps.glsl?raw","../src/shaders/depth.glsl?raw","../src/shaders/generators.glsl?raw","../src/shaders/interleavedGradientNoise.glsl?raw","../src/shaders/math.glsl?raw","../src/shaders/packing.glsl?raw","../src/shaders/raySphereIntersection.glsl?raw","../src/shaders/transform.glsl?raw","../src/shaders/turbo.glsl?raw","../src/shaders/vogelDisk.glsl?raw","../src/shaders/index.ts"],"sourcesContent":null,"names":["_cascadedShadowMaps","_depth","_generators","_interleavedGradientNoise","_math","_packing","_raySphereIntersection","_transform","_turbo","_vogelDisk","cascadedShadowMaps","depth","generators","interleavedGradientNoise","math","packing","raySphereIntersection","transform","turbo","vogelDisk"],"mappings":"gFAAA,
|
1
|
+
{"version":3,"file":"shaders.cjs","sources":["../src/shaders/cascadedShadowMaps.glsl?raw","../src/shaders/depth.glsl?raw","../src/shaders/generators.glsl?raw","../src/shaders/interleavedGradientNoise.glsl?raw","../src/shaders/math.glsl?raw","../src/shaders/packing.glsl?raw","../src/shaders/raySphereIntersection.glsl?raw","../src/shaders/transform.glsl?raw","../src/shaders/turbo.glsl?raw","../src/shaders/vogelDisk.glsl?raw","../src/shaders/index.ts"],"sourcesContent":null,"names":["_cascadedShadowMaps","_depth","_generators","_interleavedGradientNoise","_math","_packing","_raySphereIntersection","_transform","_turbo","_vogelDisk","cascadedShadowMaps","depth","generators","interleavedGradientNoise","math","packing","raySphereIntersection","transform","turbo","vogelDisk"],"mappings":"gFAAA,MAAAA,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAfC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAfC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAfC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAfC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAfC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAfC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAfC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAfC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAfC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECWFC,EAA6BV,EAC7BW,EAAgBV,EAChBW,EAAqBV,EACrBW,EAA2BV,EAC3BW,EAAeV,EACfW,EAAkBV,EAClBW,EAAgCV,EAChCW,EAAoBV,EACpBW,EAAgBV,EAChBW,EAAYV"}
|
package/build/shaders.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"shaders.js","sources":["../src/shaders/cascadedShadowMaps.glsl?raw","../src/shaders/depth.glsl?raw","../src/shaders/generators.glsl?raw","../src/shaders/interleavedGradientNoise.glsl?raw","../src/shaders/math.glsl?raw","../src/shaders/packing.glsl?raw","../src/shaders/raySphereIntersection.glsl?raw","../src/shaders/transform.glsl?raw","../src/shaders/turbo.glsl?raw","../src/shaders/vogelDisk.glsl?raw","../src/shaders/index.ts"],"sourcesContent":null,"names":["_cascadedShadowMaps","_depth","_generators","_interleavedGradientNoise","_math","_packing","_raySphereIntersection","_transform","_turbo","_vogelDisk","cascadedShadowMaps","depth","generators","interleavedGradientNoise","math","packing","raySphereIntersection","transform","turbo","vogelDisk"],"mappings":"AAAA,
|
1
|
+
{"version":3,"file":"shaders.js","sources":["../src/shaders/cascadedShadowMaps.glsl?raw","../src/shaders/depth.glsl?raw","../src/shaders/generators.glsl?raw","../src/shaders/interleavedGradientNoise.glsl?raw","../src/shaders/math.glsl?raw","../src/shaders/packing.glsl?raw","../src/shaders/raySphereIntersection.glsl?raw","../src/shaders/transform.glsl?raw","../src/shaders/turbo.glsl?raw","../src/shaders/vogelDisk.glsl?raw","../src/shaders/index.ts"],"sourcesContent":null,"names":["_cascadedShadowMaps","_depth","_generators","_interleavedGradientNoise","_math","_packing","_raySphereIntersection","_transform","_turbo","_vogelDisk","cascadedShadowMaps","depth","generators","interleavedGradientNoise","math","packing","raySphereIntersection","transform","turbo","vogelDisk"],"mappings":"AAAA,MAAAA,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAfC,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAfC,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAfC,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAfC,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAfC,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAfC,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAfC,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAfC,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAfC,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCWFC,IAA6BV,GAC7BW,IAAgBV,GAChBW,IAAqBV,GACrBW,IAA2BV,GAC3BW,IAAeV,GACfW,IAAkBV,GAClBW,IAAgCV,GAChCW,IAAoBV,GACpBW,IAAgBV,GAChBW,IAAYV;"}
|
package/build/shared.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"shared.cjs","sources":["../node_modules/.pnpm/tiny-invariant@1.3.3/node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../src/helpers/projectOnEllipsoidSurface.ts","../src/Ellipsoid.ts","../src/EllipsoidGeometry.ts","../src/Geodetic.ts"],"sourcesContent":null,"names":["isProduction","prefix","invariant","condition","message","value","vectorScratch","Vector3","projectOnEllipsoidSurface","position","reciprocalRadiiSquared","result","options","x","y","z","rx","ry","rz","x2","y2","z2","normSquared","ratio","intersection","gradient","lambda","correction","sx","sy","sz","error","sx2","sy2","sz2","sx3","sy3","sz3","vectorScratch1","vectorScratch2","vectorScratch3","_Ellipsoid","east","north","up","Matrix4","ray","reciprocalRadii","p","d","p2","d2","pd","discriminant","Q","t1","t2","t","surfacePosition","radius","a2","b2","normal","direction","v","q","Ellipsoid","EllipsoidGeometry","BufferGeometry","radii","longitudeSegments","latitudeSegments","elementCount","vertex","vertices","normals","uvs","grid","indices","vertexIndex","uvIndex","rowIndex","rowIndices","phi","uOffset","u","theta","a","b","c","BufferAttribute","source","_Geodetic","longitude","latitude","height","other","projection","ellipsoid","radiiSquared","cosLatitude","array","offset","Geodetic"],"mappings":"sCAAA,IAAIA,EAAe,QAAQ,IAAI,WAAa,aACxCC,EAAS,mBACb,SAASC,EAAUC,EAAWC,EAAS,CACnC,GAAI,CAAAD,EAGJ,IAAIH,EACA,MAAM,IAAI,MAAMC,CAAM,EAG1B,IAAII,EAA8DJ,EAClE,MAAM,IAAI,MAAMI,CAAK,EACzB,CCVA,MAAMC,MAAkCC,EAAAA,QASjC,SAASC,EACdC,EACAC,EACAC,EAAS,IAAIJ,EAAAA,QACbK,EACqB,CACrB,KAAM,CAAE,EAAAC,EAAG,EAAAC,EAAG,EAAAC,
|
1
|
+
{"version":3,"file":"shared.cjs","sources":["../node_modules/.pnpm/tiny-invariant@1.3.3/node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../src/helpers/projectOnEllipsoidSurface.ts","../src/Ellipsoid.ts","../src/EllipsoidGeometry.ts","../src/Geodetic.ts"],"sourcesContent":null,"names":["isProduction","prefix","invariant","condition","message","value","vectorScratch","Vector3","projectOnEllipsoidSurface","position","reciprocalRadiiSquared","result","options","x","y","z","rx","ry","rz","x2","y2","z2","normSquared","ratio","intersection","gradient","lambda","correction","sx","sy","sz","error","sx2","sy2","sz2","sx3","sy3","sz3","vectorScratch1","vectorScratch2","vectorScratch3","_Ellipsoid","east","north","up","Matrix4","ray","reciprocalRadii","p","d","p2","d2","pd","discriminant","Q","t1","t2","t","surfacePosition","radius","a2","b2","normal","direction","v","q","Ellipsoid","EllipsoidGeometry","BufferGeometry","radii","longitudeSegments","latitudeSegments","elementCount","vertex","vertices","normals","uvs","grid","indices","vertexIndex","uvIndex","rowIndex","rowIndices","phi","uOffset","u","theta","a","b","c","BufferAttribute","source","_Geodetic","longitude","latitude","height","other","projection","ellipsoid","radiiSquared","cosLatitude","array","offset","Geodetic"],"mappings":"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","x_google_ignoreList":[0]}
|
package/build/shared.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"shared.js","sources":["../node_modules/.pnpm/tiny-invariant@1.3.3/node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../src/helpers/projectOnEllipsoidSurface.ts","../src/Ellipsoid.ts","../src/EllipsoidGeometry.ts","../src/Geodetic.ts"],"sourcesContent":null,"names":["isProduction","prefix","invariant","condition","message","value","vectorScratch","Vector3","projectOnEllipsoidSurface","position","reciprocalRadiiSquared","result","options","x","y","z","rx","ry","rz","x2","y2","z2","normSquared","ratio","intersection","gradient","lambda","correction","sx","sy","sz","error","sx2","sy2","sz2","sx3","sy3","sz3","vectorScratch1","vectorScratch2","vectorScratch3","_Ellipsoid","east","north","up","Matrix4","ray","reciprocalRadii","p","d","p2","d2","pd","discriminant","Q","t1","t2","t","surfacePosition","radius","a2","b2","normal","direction","v","q","Ellipsoid","EllipsoidGeometry","BufferGeometry","radii","longitudeSegments","latitudeSegments","elementCount","vertex","vertices","normals","uvs","grid","indices","vertexIndex","uvIndex","rowIndex","rowIndices","phi","uOffset","u","theta","a","b","c","BufferAttribute","source","_Geodetic","longitude","latitude","height","other","projection","ellipsoid","radiiSquared","cosLatitude","array","offset","Geodetic"],"mappings":"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","x_google_ignoreList":[0]}
|
1
|
+
{"version":3,"file":"shared.js","sources":["../node_modules/.pnpm/tiny-invariant@1.3.3/node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../src/helpers/projectOnEllipsoidSurface.ts","../src/Ellipsoid.ts","../src/EllipsoidGeometry.ts","../src/Geodetic.ts"],"sourcesContent":null,"names":["isProduction","prefix","invariant","condition","message","value","vectorScratch","Vector3","projectOnEllipsoidSurface","position","reciprocalRadiiSquared","result","options","x","y","z","rx","ry","rz","x2","y2","z2","normSquared","ratio","intersection","gradient","lambda","correction","sx","sy","sz","error","sx2","sy2","sz2","sx3","sy3","sz3","vectorScratch1","vectorScratch2","vectorScratch3","_Ellipsoid","east","north","up","Matrix4","ray","reciprocalRadii","p","d","p2","d2","pd","discriminant","Q","t1","t2","t","surfacePosition","radius","a2","b2","normal","direction","v","q","Ellipsoid","EllipsoidGeometry","BufferGeometry","radii","longitudeSegments","latitudeSegments","elementCount","vertex","vertices","normals","uvs","grid","indices","vertexIndex","uvIndex","rowIndex","rowIndices","phi","uOffset","u","theta","a","b","c","BufferAttribute","source","_Geodetic","longitude","latitude","height","other","projection","ellipsoid","radiiSquared","cosLatitude","array","offset","Geodetic"],"mappings":"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","x_google_ignoreList":[0]}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@takram/three-geospatial",
|
3
|
-
"version": "0.
|
3
|
+
"version": "0.3.0",
|
4
4
|
"description": "Provides fundamental functions for rendering GIS data in Three.js and R3F",
|
5
5
|
"keywords": [
|
6
6
|
"three",
|
@@ -49,7 +49,6 @@
|
|
49
49
|
],
|
50
50
|
"dependencies": {
|
51
51
|
"@petamoriken/float16": "^3.9.1",
|
52
|
-
"react-merge-refs": "^3.0.2",
|
53
52
|
"three-stdlib": "2.36.0",
|
54
53
|
"tiny-invariant": "^1.3.3",
|
55
54
|
"type-fest": "^4.33.0"
|
@@ -0,0 +1,134 @@
|
|
1
|
+
import {
|
2
|
+
ByteType,
|
3
|
+
FloatType,
|
4
|
+
HalfFloatType,
|
5
|
+
IntType,
|
6
|
+
LinearFilter,
|
7
|
+
Loader,
|
8
|
+
RGBAFormat,
|
9
|
+
ShortType,
|
10
|
+
UnsignedByteType,
|
11
|
+
UnsignedIntType,
|
12
|
+
UnsignedShortType,
|
13
|
+
type ColorSpace,
|
14
|
+
type Data3DTexture,
|
15
|
+
type DataTexture,
|
16
|
+
type LoadingManager,
|
17
|
+
type MagnificationTextureFilter,
|
18
|
+
type Mapping,
|
19
|
+
type MinificationTextureFilter,
|
20
|
+
type PixelFormat,
|
21
|
+
type TextureDataType,
|
22
|
+
type Wrapping
|
23
|
+
} from 'three'
|
24
|
+
import invariant from 'tiny-invariant'
|
25
|
+
import type { Class } from 'type-fest'
|
26
|
+
|
27
|
+
import { Float16Array, type TypedArray } from './typedArray'
|
28
|
+
import { TypedArrayLoader } from './TypedArrayLoader'
|
29
|
+
import type { TypedArrayParser } from './typedArrayParsers'
|
30
|
+
|
31
|
+
function getTextureDataType(array: TypedArray): TextureDataType {
|
32
|
+
// prettier-ignore
|
33
|
+
const type = (
|
34
|
+
array instanceof Int8Array ? ByteType :
|
35
|
+
array instanceof Uint8Array ? UnsignedByteType :
|
36
|
+
array instanceof Uint8ClampedArray ? UnsignedByteType :
|
37
|
+
array instanceof Int16Array ? ShortType :
|
38
|
+
array instanceof Uint16Array ? UnsignedShortType :
|
39
|
+
array instanceof Int32Array ? IntType :
|
40
|
+
array instanceof Uint32Array ? UnsignedIntType :
|
41
|
+
array instanceof Float16Array ? HalfFloatType :
|
42
|
+
array instanceof Float32Array ? FloatType :
|
43
|
+
array instanceof Float64Array ? FloatType :
|
44
|
+
null
|
45
|
+
)
|
46
|
+
invariant(type != null)
|
47
|
+
return type
|
48
|
+
}
|
49
|
+
|
50
|
+
export interface DataTextureLoaderOptions {
|
51
|
+
width?: number
|
52
|
+
height?: number
|
53
|
+
depth?: number
|
54
|
+
mapping?: Mapping
|
55
|
+
wrapS?: Wrapping
|
56
|
+
wrapT?: Wrapping
|
57
|
+
wrapR?: Wrapping
|
58
|
+
magFilter?: MagnificationTextureFilter
|
59
|
+
minFilter?: MinificationTextureFilter
|
60
|
+
format?: PixelFormat
|
61
|
+
type?: TextureDataType
|
62
|
+
anisotropy?: number
|
63
|
+
colorSpace?: ColorSpace
|
64
|
+
manager?: LoadingManager
|
65
|
+
}
|
66
|
+
|
67
|
+
export class DataTextureLoader<
|
68
|
+
T extends DataTexture | Data3DTexture = DataTexture | Data3DTexture,
|
69
|
+
U extends TypedArray = TypedArray
|
70
|
+
> extends Loader<T> {
|
71
|
+
textureClass: Class<T>
|
72
|
+
parser: TypedArrayParser<U>
|
73
|
+
options: DataTextureLoaderOptions
|
74
|
+
|
75
|
+
constructor(
|
76
|
+
textureClass: Class<T>,
|
77
|
+
parser: TypedArrayParser<U>,
|
78
|
+
options: DataTextureLoaderOptions = {},
|
79
|
+
manager?: LoadingManager
|
80
|
+
) {
|
81
|
+
super(manager)
|
82
|
+
this.textureClass = textureClass
|
83
|
+
this.parser = parser
|
84
|
+
this.options = {
|
85
|
+
format: RGBAFormat,
|
86
|
+
minFilter: LinearFilter,
|
87
|
+
magFilter: LinearFilter,
|
88
|
+
...options
|
89
|
+
}
|
90
|
+
}
|
91
|
+
|
92
|
+
override load(
|
93
|
+
url: string,
|
94
|
+
onLoad?: (data: T) => void,
|
95
|
+
onProgress?: (event: ProgressEvent) => void,
|
96
|
+
onError?: (error: unknown) => void
|
97
|
+
): T {
|
98
|
+
// eslint-disable-next-line new-cap
|
99
|
+
const texture = new this.textureClass()
|
100
|
+
|
101
|
+
const loader = new TypedArrayLoader(this.parser, this.manager)
|
102
|
+
loader.setRequestHeader(this.requestHeader)
|
103
|
+
loader.setPath(this.path)
|
104
|
+
loader.setWithCredentials(this.withCredentials)
|
105
|
+
loader.load(
|
106
|
+
url,
|
107
|
+
array => {
|
108
|
+
texture.image.data =
|
109
|
+
array instanceof Float16Array ? new Uint16Array(array.buffer) : array
|
110
|
+
const { width, height, depth, ...options } = this.options
|
111
|
+
if (width != null) {
|
112
|
+
texture.image.width = width
|
113
|
+
}
|
114
|
+
if (height != null) {
|
115
|
+
texture.image.height = height
|
116
|
+
}
|
117
|
+
if ('depth' in texture.image && depth != null) {
|
118
|
+
texture.image.depth = depth
|
119
|
+
}
|
120
|
+
|
121
|
+
// Populate the default texture type for the array type.
|
122
|
+
texture.type = getTextureDataType(array)
|
123
|
+
|
124
|
+
Object.assign(texture, options)
|
125
|
+
texture.needsUpdate = true
|
126
|
+
onLoad?.(texture)
|
127
|
+
},
|
128
|
+
onProgress,
|
129
|
+
onError
|
130
|
+
)
|
131
|
+
|
132
|
+
return texture
|
133
|
+
}
|
134
|
+
}
|
@@ -0,0 +1,66 @@
|
|
1
|
+
import { Data3DTexture, Loader, type LoadingManager } from 'three'
|
2
|
+
import { EXRLoader } from 'three-stdlib'
|
3
|
+
|
4
|
+
export interface EXR3DTextureLoaderOptions {
|
5
|
+
width?: number
|
6
|
+
height?: number
|
7
|
+
depth?: number
|
8
|
+
}
|
9
|
+
|
10
|
+
export class EXR3DTextureLoader extends Loader<Data3DTexture> {
|
11
|
+
options: EXR3DTextureLoaderOptions
|
12
|
+
|
13
|
+
constructor(
|
14
|
+
options: EXR3DTextureLoaderOptions = {},
|
15
|
+
manager?: LoadingManager
|
16
|
+
) {
|
17
|
+
super(manager)
|
18
|
+
this.options = options
|
19
|
+
}
|
20
|
+
|
21
|
+
override load(
|
22
|
+
url: string,
|
23
|
+
onLoad?: (data: Data3DTexture) => void,
|
24
|
+
onProgress?: (event: ProgressEvent) => void,
|
25
|
+
onError?: (error: unknown) => void
|
26
|
+
): Data3DTexture {
|
27
|
+
const { width, height, depth } = this.options
|
28
|
+
const texture = new Data3DTexture(null, width, height, depth)
|
29
|
+
|
30
|
+
const loader = new EXRLoader(this.manager)
|
31
|
+
loader.setRequestHeader(this.requestHeader)
|
32
|
+
loader.setPath(this.path)
|
33
|
+
loader.setWithCredentials(this.withCredentials)
|
34
|
+
loader.load(
|
35
|
+
url,
|
36
|
+
exr => {
|
37
|
+
const { image } = exr
|
38
|
+
texture.image = {
|
39
|
+
data: image.data,
|
40
|
+
width: width ?? image.width,
|
41
|
+
height: height ?? image.height,
|
42
|
+
depth: depth ?? Math.sqrt(image.height)
|
43
|
+
}
|
44
|
+
texture.type = exr.type
|
45
|
+
texture.format = exr.format
|
46
|
+
texture.colorSpace = exr.colorSpace
|
47
|
+
texture.needsUpdate = true
|
48
|
+
|
49
|
+
try {
|
50
|
+
onLoad?.(texture)
|
51
|
+
} catch (error) {
|
52
|
+
if (onError != null) {
|
53
|
+
onError(error)
|
54
|
+
} else {
|
55
|
+
console.error(error)
|
56
|
+
}
|
57
|
+
this.manager.itemError(url)
|
58
|
+
}
|
59
|
+
},
|
60
|
+
onProgress,
|
61
|
+
onError
|
62
|
+
)
|
63
|
+
|
64
|
+
return texture
|
65
|
+
}
|
66
|
+
}
|