@treasuryspatial/map-kit 0.1.12 → 0.1.14

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.
@@ -1 +1 @@
1
- {"version":3,"file":"mapThreeLayer.d.ts","sourceRoot":"","sources":["../src/mapThreeLayer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,QAAQ,CAAC,oBAAoB,CAAC;IACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9C,SAAS,EAAE,CAAC,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,KAAK,IAAI,CAAC;IACjE,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC;IAC3F,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAmWhF"}
1
+ {"version":3,"file":"mapThreeLayer.d.ts","sourceRoot":"","sources":["../src/mapThreeLayer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,QAAQ,CAAC,oBAAoB,CAAC;IACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9C,SAAS,EAAE,CAAC,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,KAAK,IAAI,CAAC;IACjE,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC;IAC3F,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CA2VhF"}
@@ -24,15 +24,6 @@ export function createMapThreeLayer(options) {
24
24
  let originResolved = false;
25
25
  let didPrerender = false;
26
26
  let lastMatrix = null;
27
- const applyMatrix = (matrix) => {
28
- if (!matrix || !camera)
29
- return;
30
- lastMatrix = matrix;
31
- camera.projectionMatrix = new THREE.Matrix4().fromArray(matrix);
32
- if ('projectionMatrixInverse' in camera) {
33
- camera.projectionMatrixInverse.copy(camera.projectionMatrix).invert();
34
- }
35
- };
36
27
  const renderOffscreen = () => {
37
28
  if (renderDisabled)
38
29
  return;
@@ -40,9 +31,6 @@ export function createMapThreeLayer(options) {
40
31
  return;
41
32
  if (!hasRenderable)
42
33
  return;
43
- if (lastMatrix) {
44
- applyMatrix(lastMatrix);
45
- }
46
34
  if (!mercatorOrigin && mapRef && !originResolved) {
47
35
  try {
48
36
  const center = mapRef.getCenter();
@@ -61,11 +49,15 @@ export function createMapThreeLayer(options) {
61
49
  logError('origin fallback failed', err);
62
50
  }
63
51
  }
64
- if (mercatorOrigin) {
52
+ if (mercatorOrigin && lastMatrix && camera) {
53
+ const m = new THREE.Matrix4().fromArray(lastMatrix);
65
54
  const translate = new THREE.Matrix4().makeTranslation(mercatorOrigin.x, mercatorOrigin.y, (mercatorOrigin.z ?? 0) + zOffset * meterScale);
66
55
  const scale = new THREE.Matrix4().makeScale(meterScale, -meterScale, meterScale);
67
- rootGroup.matrix = new THREE.Matrix4().multiplyMatrices(translate, scale);
68
- rootGroup.matrixWorldNeedsUpdate = true;
56
+ const l = new THREE.Matrix4().multiplyMatrices(translate, scale);
57
+ camera.projectionMatrix = m.multiply(l);
58
+ if ('projectionMatrixInverse' in camera) {
59
+ camera.projectionMatrixInverse.copy(camera.projectionMatrix).invert();
60
+ }
69
61
  }
70
62
  const canvas = mapRef?.getCanvas();
71
63
  if (canvas && (canvas.width !== targetWidth || canvas.height !== targetHeight)) {
@@ -227,7 +219,7 @@ export function createMapThreeLayer(options) {
227
219
  if (!hasRenderable)
228
220
  return;
229
221
  try {
230
- applyMatrix(matrix);
222
+ lastMatrix = matrix;
231
223
  renderOffscreen();
232
224
  didPrerender = true;
233
225
  }
@@ -249,7 +241,7 @@ export function createMapThreeLayer(options) {
249
241
  return;
250
242
  try {
251
243
  if (matrix) {
252
- applyMatrix(matrix);
244
+ lastMatrix = matrix;
253
245
  }
254
246
  if (!didPrerender) {
255
247
  renderOffscreen();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@treasuryspatial/map-kit",
3
- "version": "0.1.12",
3
+ "version": "0.1.14",
4
4
  "type": "module",
5
5
  "license": "UNLICENSED",
6
6
  "main": "./dist/index.js",