@deck.gl/core 9.2.11 → 9.3.0-alpha.2

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.
Files changed (152) hide show
  1. package/debug.min.js +1 -1
  2. package/dist/controllers/controller.d.ts +10 -0
  3. package/dist/controllers/controller.d.ts.map +1 -1
  4. package/dist/controllers/controller.js +15 -0
  5. package/dist/controllers/controller.js.map +1 -1
  6. package/dist/controllers/first-person-controller.d.ts +3 -2
  7. package/dist/controllers/first-person-controller.d.ts.map +1 -1
  8. package/dist/controllers/first-person-controller.js +13 -5
  9. package/dist/controllers/first-person-controller.js.map +1 -1
  10. package/dist/controllers/globe-controller.d.ts +1 -0
  11. package/dist/controllers/globe-controller.d.ts.map +1 -1
  12. package/dist/controllers/globe-controller.js +66 -5
  13. package/dist/controllers/globe-controller.js.map +1 -1
  14. package/dist/controllers/map-controller.d.ts +21 -3
  15. package/dist/controllers/map-controller.d.ts.map +1 -1
  16. package/dist/controllers/map-controller.js +139 -25
  17. package/dist/controllers/map-controller.js.map +1 -1
  18. package/dist/controllers/orbit-controller.d.ts +12 -4
  19. package/dist/controllers/orbit-controller.d.ts.map +1 -1
  20. package/dist/controllers/orbit-controller.js +118 -10
  21. package/dist/controllers/orbit-controller.js.map +1 -1
  22. package/dist/controllers/orthographic-controller.d.ts +117 -9
  23. package/dist/controllers/orthographic-controller.d.ts.map +1 -1
  24. package/dist/controllers/orthographic-controller.js +302 -37
  25. package/dist/controllers/orthographic-controller.js.map +1 -1
  26. package/dist/controllers/view-state.d.ts +4 -1
  27. package/dist/controllers/view-state.d.ts.map +1 -1
  28. package/dist/controllers/view-state.js +2 -1
  29. package/dist/controllers/view-state.js.map +1 -1
  30. package/dist/debug/loggers.d.ts.map +1 -1
  31. package/dist/debug/loggers.js +1 -4
  32. package/dist/debug/loggers.js.map +1 -1
  33. package/dist/dist.dev.js +7585 -10714
  34. package/dist/effects/lighting/lighting-effect.d.ts +1 -0
  35. package/dist/effects/lighting/lighting-effect.d.ts.map +1 -1
  36. package/dist/effects/lighting/lighting-effect.js +14 -5
  37. package/dist/effects/lighting/lighting-effect.js.map +1 -1
  38. package/dist/index.cjs +812 -120
  39. package/dist/index.cjs.map +4 -4
  40. package/dist/lib/attribute/attribute-manager.d.ts.map +1 -1
  41. package/dist/lib/attribute/attribute-manager.js +2 -0
  42. package/dist/lib/attribute/attribute-manager.js.map +1 -1
  43. package/dist/lib/attribute/data-column.js +2 -2
  44. package/dist/lib/attribute/data-column.js.map +1 -1
  45. package/dist/lib/attribute/gl-utils.d.ts +1 -1
  46. package/dist/lib/attribute/gl-utils.d.ts.map +1 -1
  47. package/dist/lib/attribute/gl-utils.js +4 -0
  48. package/dist/lib/attribute/gl-utils.js.map +1 -1
  49. package/dist/lib/deck-picker.d.ts +14 -1
  50. package/dist/lib/deck-picker.d.ts.map +1 -1
  51. package/dist/lib/deck-picker.js +43 -11
  52. package/dist/lib/deck-picker.js.map +1 -1
  53. package/dist/lib/deck-renderer.d.ts +6 -1
  54. package/dist/lib/deck-renderer.d.ts.map +1 -1
  55. package/dist/lib/deck-renderer.js +14 -2
  56. package/dist/lib/deck-renderer.js.map +1 -1
  57. package/dist/lib/deck.d.ts +10 -0
  58. package/dist/lib/deck.d.ts.map +1 -1
  59. package/dist/lib/deck.js +29 -11
  60. package/dist/lib/deck.js.map +1 -1
  61. package/dist/lib/init.js +2 -2
  62. package/dist/lib/init.js.map +1 -1
  63. package/dist/lib/layer.d.ts.map +1 -1
  64. package/dist/lib/layer.js +7 -3
  65. package/dist/lib/layer.js.map +1 -1
  66. package/dist/lib/view-manager.d.ts +4 -0
  67. package/dist/lib/view-manager.d.ts.map +1 -1
  68. package/dist/lib/view-manager.js +6 -1
  69. package/dist/lib/view-manager.js.map +1 -1
  70. package/dist/lib/widget.d.ts +4 -0
  71. package/dist/lib/widget.d.ts.map +1 -1
  72. package/dist/lib/widget.js +11 -0
  73. package/dist/lib/widget.js.map +1 -1
  74. package/dist/passes/draw-layers-pass.d.ts +2 -0
  75. package/dist/passes/draw-layers-pass.d.ts.map +1 -1
  76. package/dist/passes/draw-layers-pass.js +3 -0
  77. package/dist/passes/draw-layers-pass.js.map +1 -1
  78. package/dist/passes/layers-pass.d.ts +2 -1
  79. package/dist/passes/layers-pass.d.ts.map +1 -1
  80. package/dist/passes/layers-pass.js +7 -3
  81. package/dist/passes/layers-pass.js.map +1 -1
  82. package/dist/passes/pick-layers-pass.d.ts +6 -3
  83. package/dist/passes/pick-layers-pass.d.ts.map +1 -1
  84. package/dist/passes/pick-layers-pass.js +12 -4
  85. package/dist/passes/pick-layers-pass.js.map +1 -1
  86. package/dist/shaderlib/project/project.glsl.d.ts.map +1 -1
  87. package/dist/shaderlib/project/project.glsl.js +3 -0
  88. package/dist/shaderlib/project/project.glsl.js.map +1 -1
  89. package/dist/utils/deep-merge.d.ts +5 -0
  90. package/dist/utils/deep-merge.d.ts.map +1 -0
  91. package/dist/utils/deep-merge.js +31 -0
  92. package/dist/utils/deep-merge.js.map +1 -0
  93. package/dist/utils/math-utils.d.ts +4 -0
  94. package/dist/utils/math-utils.d.ts.map +1 -1
  95. package/dist/utils/math-utils.js +8 -0
  96. package/dist/utils/math-utils.js.map +1 -1
  97. package/dist/utils/texture.d.ts.map +1 -1
  98. package/dist/utils/texture.js +3 -1
  99. package/dist/utils/texture.js.map +1 -1
  100. package/dist/viewports/globe-viewport.d.ts +1 -0
  101. package/dist/viewports/globe-viewport.d.ts.map +1 -1
  102. package/dist/viewports/globe-viewport.js +1 -1
  103. package/dist/viewports/globe-viewport.js.map +1 -1
  104. package/dist/viewports/orbit-viewport.d.ts.map +1 -1
  105. package/dist/viewports/orbit-viewport.js +7 -2
  106. package/dist/viewports/orbit-viewport.js.map +1 -1
  107. package/dist/viewports/orthographic-viewport.d.ts +8 -2
  108. package/dist/viewports/orthographic-viewport.d.ts.map +1 -1
  109. package/dist/viewports/orthographic-viewport.js.map +1 -1
  110. package/dist/viewports/web-mercator-viewport.d.ts +5 -0
  111. package/dist/viewports/web-mercator-viewport.d.ts.map +1 -1
  112. package/dist/viewports/web-mercator-viewport.js +9 -0
  113. package/dist/viewports/web-mercator-viewport.js.map +1 -1
  114. package/dist/views/orthographic-view.d.ts +38 -4
  115. package/dist/views/orthographic-view.d.ts.map +1 -1
  116. package/dist/views/orthographic-view.js.map +1 -1
  117. package/dist/views/view.d.ts.map +1 -1
  118. package/dist/views/view.js +2 -8
  119. package/dist/views/view.js.map +1 -1
  120. package/dist.min.js +226 -154
  121. package/package.json +9 -9
  122. package/src/controllers/controller.ts +25 -2
  123. package/src/controllers/first-person-controller.ts +18 -8
  124. package/src/controllers/globe-controller.ts +89 -5
  125. package/src/controllers/map-controller.ts +174 -32
  126. package/src/controllers/orbit-controller.ts +147 -13
  127. package/src/controllers/orthographic-controller.ts +417 -41
  128. package/src/controllers/view-state.ts +10 -3
  129. package/src/debug/loggers.ts +1 -5
  130. package/src/effects/lighting/lighting-effect.ts +20 -8
  131. package/src/lib/attribute/attribute-manager.ts +1 -0
  132. package/src/lib/attribute/data-column.ts +3 -3
  133. package/src/lib/attribute/gl-utils.ts +5 -1
  134. package/src/lib/deck-picker.ts +47 -12
  135. package/src/lib/deck-renderer.ts +17 -3
  136. package/src/lib/deck.ts +39 -11
  137. package/src/lib/layer.ts +7 -3
  138. package/src/lib/view-manager.ts +9 -1
  139. package/src/lib/widget.ts +14 -0
  140. package/src/passes/draw-layers-pass.ts +5 -0
  141. package/src/passes/layers-pass.ts +9 -4
  142. package/src/passes/pick-layers-pass.ts +18 -6
  143. package/src/shaderlib/project/project.glsl.ts +3 -0
  144. package/src/utils/deep-merge.ts +33 -0
  145. package/src/utils/math-utils.ts +12 -0
  146. package/src/utils/texture.ts +3 -1
  147. package/src/viewports/globe-viewport.ts +1 -1
  148. package/src/viewports/orbit-viewport.ts +8 -2
  149. package/src/viewports/orthographic-viewport.ts +8 -2
  150. package/src/viewports/web-mercator-viewport.ts +10 -0
  151. package/src/views/orthographic-view.ts +38 -4
  152. package/src/views/view.ts +2 -8
package/debug.min.js CHANGED
@@ -4,6 +4,6 @@
4
4
  else if (typeof define === 'function' && define.amd) define([], factory);
5
5
  else if (typeof exports === 'object') exports['deck.debug'] = factory();
6
6
  else root['deck.debug'] = factory();})(globalThis, function () {
7
- "use strict";var __exports__=(()=>{var d=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var h=Object.getOwnPropertyNames;var m=Object.prototype.hasOwnProperty;var _=(a,t)=>{for(var e in t)d(a,e,{get:t[e],enumerable:!0})},C=(a,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of h(t))!m.call(a,s)&&s!==e&&d(a,s,{get:()=>t[s],enumerable:!(r=y(t,s))||r.enumerable});return a};var D=a=>C(d({},"__esModule",{value:!0}),a);var O={};_(O,{loggers:()=>L});var i={attributeUpdateStart:-1,attributeManagerUpdateStart:-1,attributeUpdateMessages:[]},g=1,n=2,u=3,l=4,w=2,b=a=>({"layer.changeFlag":(t,e,r)=>{a.log(u,`${t.id} ${e}: `,r[e])()},"layer.initialize":t=>{a.log(g,`Initializing ${t}`)()},"layer.update":(t,e)=>{if(e){let r=t.getChangeFlags();a.log(n,`Updating ${t} because: ${Object.keys(r).filter(s=>r[s]).join(", ")}`)()}else a.log(l,`${t} does not need update`)()},"layer.matched":(t,e)=>{e&&a.log(l,`Matched ${t}, state transfered`)()},"layer.finalize":t=>{a.log(g,`Finalizing ${t}`)()},"compositeLayer.renderLayers":(t,e,r)=>{e?a.log(n,`Composite layer rendered new subLayers ${t}`,r)():a.log(l,`Composite layer reused subLayers ${t}`,r)()},"layerManager.setLayers":(t,e,r)=>{e&&a.log(n,`Updating ${r.length} deck layers`)()},"layerManager.activateViewport":(t,e)=>{a.log(u,"Viewport changed",e)()},"attributeManager.invalidate":(t,e,r)=>{a.log(g,r?`invalidated attributes ${r} (${e}) for ${t.id}`:`invalidated all attributes for ${t.id}`)()},"attributeManager.updateStart":t=>{i.attributeUpdateMessages.length=0,i.attributeManagerUpdateStart=Date.now()},"attributeManager.updateEnd":(t,e)=>{let r=Math.round(Date.now()-i.attributeManagerUpdateStart);a.groupCollapsed(n,`Updated attributes for ${e} instances in ${t.id} in ${r}ms`)();for(let s of i.attributeUpdateMessages)a.log(u,s)();a.groupEnd(n)()},"attribute.updateStart":t=>{i.attributeUpdateStart=Date.now()},"attribute.allocate":(t,e)=>{let r=`${t.id} allocated ${e}`;i.attributeUpdateMessages.push(r)},"attribute.updateEnd":(t,e)=>{let r=Math.round(Date.now()-i.attributeUpdateStart),s=`${t.id} updated ${e} in ${r}ms`;i.attributeUpdateMessages.push(s)},"deckRenderer.renderLayers":(t,e,r)=>{let{pass:s,redrawReason:M,stats:p}=r;for(let E of e){let{totalCount:c,visibleCount:o,compositeCount:$,pickableCount:f}=E,U=c-$-o;a.log(w,`RENDER #${t.renderCount} ${o} (of ${c} layers) to ${s} because ${M} (${U} hidden, ${$} composite ${f} pickable)`)(),p&&p.get("Redraw Layers").add(o)}}});var L=b(globalThis.deck.log);globalThis.deck._registerLoggers(L);return D(O);})();
7
+ "use strict";var __exports__=(()=>{var o=Object.defineProperty;var U=Object.getOwnPropertyDescriptor;var h=Object.getOwnPropertyNames;var m=Object.prototype.hasOwnProperty;var y=(a,t)=>{for(var e in t)o(a,e,{get:t[e],enumerable:!0})},_=(a,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of h(t))!m.call(a,s)&&s!==e&&o(a,s,{get:()=>t[s],enumerable:!(r=U(t,s))||r.enumerable});return a};var C=a=>_(o({},"__esModule",{value:!0}),a);var O={};y(O,{loggers:()=>b});var i={attributeUpdateStart:-1,attributeManagerUpdateStart:-1,attributeUpdateMessages:[]},d=1,n=2,g=3,u=4,D=2,$=a=>({"layer.changeFlag":(t,e,r)=>{a.log(g,`${t.id} ${e}: `,r[e])()},"layer.initialize":t=>{a.log(d,`Initializing ${t}`)()},"layer.update":(t,e)=>{if(e){let r=t.getChangeFlags();a.log(n,`Updating ${t} because: ${Object.keys(r).filter(s=>r[s]).join(", ")}`)()}else a.log(u,`${t} does not need update`)()},"layer.matched":(t,e)=>{e&&a.log(u,`Matched ${t}, state transfered`)()},"layer.finalize":t=>{a.log(d,`Finalizing ${t}`)()},"compositeLayer.renderLayers":(t,e,r)=>{e?a.log(n,`Composite layer rendered new subLayers ${t}`,r)():a.log(u,`Composite layer reused subLayers ${t}`,r)()},"layerManager.setLayers":(t,e,r)=>{e&&a.log(n,`Updating ${r.length} deck layers`)()},"layerManager.activateViewport":(t,e)=>{a.log(g,"Viewport changed",e)()},"attributeManager.invalidate":(t,e,r)=>{a.log(d,r?`invalidated attributes ${r} (${e}) for ${t.id}`:`invalidated all attributes for ${t.id}`)()},"attributeManager.updateStart":t=>{i.attributeUpdateMessages.length=0,i.attributeManagerUpdateStart=Date.now()},"attributeManager.updateEnd":(t,e)=>{let r=Math.round(Date.now()-i.attributeManagerUpdateStart);a.groupCollapsed(n,`Updated attributes for ${e} instances in ${t.id} in ${r}ms`)();for(let s of i.attributeUpdateMessages)a.log(g,s)();a.groupEnd(n)()},"attribute.updateStart":t=>{i.attributeUpdateStart=Date.now()},"attribute.allocate":(t,e)=>{let r=`${t.id} allocated ${e}`;i.attributeUpdateMessages.push(r)},"attribute.updateEnd":(t,e)=>{let r=Math.round(Date.now()-i.attributeUpdateStart),s=`${t.id} updated ${e} in ${r}ms`;i.attributeUpdateMessages.push(s)},"deckRenderer.renderLayers":(t,e,r)=>{let{pass:s,redrawReason:L}=r;for(let M of e){let{totalCount:l,visibleCount:p,compositeCount:c,pickableCount:E}=M,f=l-c-p;a.log(D,`RENDER #${t.renderCount} ${p} (of ${l} layers) to ${s} because ${L} (${f} hidden, ${c} composite ${E} pickable)`)()}}});var b=$(globalThis.deck.log);globalThis.deck._registerLoggers(b);return C(O);})();
8
8
  return __exports__;
9
9
  });
@@ -38,6 +38,8 @@ export type ControllerOptions = {
38
38
  dragMode?: 'pan' | 'rotate';
39
39
  /** Enable inertia after panning/pinching. If a number is provided, indicates the duration of time over which the velocity reduces to zero, in milliseconds. Default `false`. */
40
40
  inertia?: boolean | number;
41
+ /** Bounding box of content that the controller is constrained in */
42
+ maxBounds?: [min: [number, number], max: [number, number]] | [min: [number, number, number], max: [number, number, number]] | null;
41
43
  };
42
44
  export type ControllerProps = {
43
45
  /** Identifier of the controller */
@@ -63,6 +65,8 @@ export type InteractionState = {
63
65
  isRotating?: boolean;
64
66
  /** If the view is being zoomed, either from user input or transition */
65
67
  isZooming?: boolean;
68
+ /** World coordinate [lng, lat, altitude] of rotation pivot point when rotating */
69
+ rotationPivotPosition?: [number, number, number];
66
70
  };
67
71
  /** Parameters passed to the onViewStateChange callback */
68
72
  export type ViewStateChangeParameters<ViewStateT = any> = {
@@ -84,6 +88,9 @@ export default abstract class Controller<ControllerState extends IViewState<Cont
84
88
  protected onViewStateChange: (params: ViewStateChangeParameters) => void;
85
89
  protected onStateChange: (state: InteractionState) => void;
86
90
  protected makeViewport: (opts: Record<string, any>) => Viewport;
91
+ protected pickPosition?: (x: number, y: number) => {
92
+ coordinate?: number[];
93
+ } | null;
87
94
  private _controllerState?;
88
95
  private _events;
89
96
  private _interactionState;
@@ -114,6 +121,9 @@ export default abstract class Controller<ControllerState extends IViewState<Cont
114
121
  makeViewport: (opts: Record<string, any>) => Viewport;
115
122
  onViewStateChange: (params: ViewStateChangeParameters) => void;
116
123
  onStateChange: (state: InteractionState) => void;
124
+ pickPosition?: (x: number, y: number) => {
125
+ coordinate?: number[];
126
+ } | null;
117
127
  });
118
128
  set events(customEvents: any);
119
129
  finalize(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/controllers/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/controllers/controller.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  /* eslint-disable max-statements, complexity */
5
5
  import TransitionManager from "./transition-manager.js";
6
6
  import LinearInterpolator from "../transitions/linear-interpolator.js";
7
+ import { deepEqual } from "../utils/deep-equal.js";
7
8
  const NO_TRANSITION_PROPS = {
8
9
  transitionDuration: 0
9
10
  };
@@ -49,6 +50,7 @@ export default class Controller {
49
50
  this.onViewStateChange = opts.onViewStateChange || (() => { });
50
51
  this.onStateChange = opts.onStateChange || (() => { });
51
52
  this.makeViewport = opts.makeViewport;
53
+ this.pickPosition = opts.pickPosition;
52
54
  }
53
55
  set events(customEvents) {
54
56
  this.toggleEvents(this._customEvents, false);
@@ -157,6 +159,7 @@ export default class Controller {
157
159
  if (props.dragMode) {
158
160
  this.dragMode = props.dragMode;
159
161
  }
162
+ const oldProps = this.props;
160
163
  this.props = props;
161
164
  if (!('transitionInterpolator' in props)) {
162
165
  // Add default transition interpolator
@@ -184,6 +187,18 @@ export default class Controller {
184
187
  this.touchZoom = touchZoom;
185
188
  this.touchRotate = touchRotate;
186
189
  this.keyboard = keyboard;
190
+ // Normalize view state if maxBounds is defined
191
+ const dimensionChanged = !oldProps || oldProps.height !== props.height || oldProps.width !== props.width || oldProps.maxBounds !== props.maxBounds;
192
+ if (dimensionChanged && props.maxBounds) {
193
+ // Dimensions changed, try re-normalize the props
194
+ const controllerState = new this.ControllerState({ ...props, makeViewport: this.makeViewport });
195
+ const normalizedProps = controllerState.getViewportProps();
196
+ const changed = Object.keys(normalizedProps).some(key => !deepEqual(normalizedProps[key], props[key], 1));
197
+ if (changed) {
198
+ // some props are updated after normalization
199
+ this.updateViewport(controllerState);
200
+ }
201
+ }
187
202
  }
188
203
  updateTransition() {
189
204
  this.transitionManager.updateTransition();
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/controllers/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/controllers/controller.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import Controller from "./controller.js";
1
+ import Controller, { ControllerProps } from "./controller.js";
2
2
  import ViewState from "./view-state.js";
3
3
  import type Viewport from "../viewports/viewport.js";
4
4
  import LinearInterpolator from "../transitions/linear-interpolator.js";
@@ -13,6 +13,7 @@ type FirstPersonStateProps = {
13
13
  latitude?: number | null;
14
14
  maxPitch?: number;
15
15
  minPitch?: number;
16
+ maxBounds?: ControllerProps['maxBounds'];
16
17
  };
17
18
  type FirstPersonStateInternal = {
18
19
  startRotatePos?: [number, number];
@@ -23,7 +24,6 @@ type FirstPersonStateInternal = {
23
24
  startPanPosition?: number[];
24
25
  };
25
26
  declare class FirstPersonState extends ViewState<FirstPersonState, FirstPersonStateProps, FirstPersonStateInternal> {
26
- makeViewport: (props: Record<string, any>) => Viewport;
27
27
  constructor(options: FirstPersonStateProps & FirstPersonStateInternal & {
28
28
  makeViewport: (props: Record<string, any>) => Viewport;
29
29
  });
@@ -109,6 +109,7 @@ declare class FirstPersonState extends ViewState<FirstPersonState, FirstPersonSt
109
109
  latitude: number | null;
110
110
  maxPitch: number;
111
111
  minPitch: number;
112
+ maxBounds: [min: [number, number], max: [number, number]] | [min: [number, number, number], max: [number, number, number]] | null;
112
113
  };
113
114
  _move(direction: Vector3, speed: number, fromPosition?: number[]): FirstPersonState;
114
115
  getDirection(use2D?: boolean): Vector3;
@@ -1 +1 @@
1
- {"version":3,"file":"first-person-controller.d.ts","sourceRoot":"","sources":["../../src/controllers/first-person-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"first-person-controller.d.ts","sourceRoot":"","sources":["../../src/controllers/first-person-controller.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ class FirstPersonState extends ViewState {
19
19
  bearing = 0, // Rotation around y axis
20
20
  pitch = 0, // Rotation around x axis
21
21
  // Geospatial anchor
22
- longitude = null, latitude = null, maxPitch = 90, minPitch = -90,
22
+ longitude = null, latitude = null, maxPitch = 90, minPitch = -90, maxBounds = null,
23
23
  // Model state when the rotate operation first started
24
24
  startRotatePos, startBearing, startPitch, startZoomPosition, startPanPos, startPanPosition } = options;
25
25
  super({
@@ -31,7 +31,8 @@ class FirstPersonState extends ViewState {
31
31
  longitude,
32
32
  latitude,
33
33
  maxPitch,
34
- minPitch
34
+ minPitch,
35
+ maxBounds
35
36
  }, {
36
37
  startRotatePos,
37
38
  startBearing,
@@ -39,8 +40,7 @@ class FirstPersonState extends ViewState {
39
40
  startZoomPosition,
40
41
  startPanPos,
41
42
  startPanPosition
42
- });
43
- this.makeViewport = options.makeViewport;
43
+ }, options.makeViewport);
44
44
  }
45
45
  /* Public API */
46
46
  /**
@@ -257,7 +257,7 @@ class FirstPersonState extends ViewState {
257
257
  // Apply any constraints (mathematical or defined by _viewportProps) to map state
258
258
  applyConstraints(props) {
259
259
  // Ensure pitch and zoom are within specified range
260
- const { pitch, maxPitch, minPitch, longitude, bearing } = props;
260
+ const { pitch, maxPitch, minPitch, longitude, position, bearing, maxBounds } = props;
261
261
  props.pitch = clamp(pitch, minPitch, maxPitch);
262
262
  // Normalize degrees
263
263
  if (longitude !== null && (longitude < -180 || longitude > 180)) {
@@ -266,6 +266,14 @@ class FirstPersonState extends ViewState {
266
266
  if (bearing < -180 || bearing > 180) {
267
267
  props.bearing = mod(bearing + 180, 360) - 180;
268
268
  }
269
+ if (maxBounds) {
270
+ const x = clamp(position[0], maxBounds[0][0], maxBounds[1][0]);
271
+ const y = clamp(position[1], maxBounds[0][1], maxBounds[1][1]);
272
+ const z = clamp(position[2] ?? 0, maxBounds[0][2] ?? 0, maxBounds[1][2] ?? 0);
273
+ if (x !== position[0] || y !== position[1] || z !== position[2]) {
274
+ props.position = [x, y, z];
275
+ }
276
+ }
269
277
  return props;
270
278
  }
271
279
  }
@@ -1 +1 @@
1
- {"version":3,"file":"first-person-controller.js","sourceRoot":"","sources":["../../src/controllers/first-person-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"first-person-controller.js","sourceRoot":"","sources":["../../src/controllers/first-person-controller.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ declare class GlobeState extends MapState {
21
21
  scale: number;
22
22
  }): MapState;
23
23
  applyConstraints(props: Required<MapStateProps>): Required<MapStateProps>;
24
+ _constrainZoom(zoom: number, props?: Required<MapStateProps>): number;
24
25
  }
25
26
  export default class GlobeController extends Controller<MapState> {
26
27
  ControllerState: typeof GlobeState;
@@ -1 +1 @@
1
- {"version":3,"file":"globe-controller.d.ts","sourceRoot":"","sources":["../../src/controllers/globe-controller.ts"],"names":[],"mappings":"AAKA,OAAO,UAAU,EAAE,EAAC,eAAe,EAAC,wBAAqB;AAEzD,OAAO,EAAC,QAAQ,EAAE,aAAa,EAAC,4BAAyB;AACzD,OAAO,KAAK,EAAC,gBAAgB,EAAC,4BAAyB;AAEvD,OAAO,kBAAkB,8CAA2C;AAKpE,KAAK,kBAAkB,GAAG,gBAAgB,GAAG;IAC3C,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC,CAAC;AAEF,cAAM,UAAW,SAAQ,QAAQ;gBAE7B,OAAO,EAAE,aAAa,GACpB,kBAAkB,GAAG;QACnB,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC;KACnD;IAUL,QAAQ,CAAC,EAAC,GAAG,EAAC,EAAE;QAAC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAC,GAAG,UAAU;IASpD,GAAG,CAAC,EAAC,GAAG,EAAE,QAAQ,EAAC,EAAE;QAAC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAC,GAAG,UAAU;IAatF,MAAM,IAAI,UAAU;IAQpB,IAAI,CAAC,EAAC,KAAK,EAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,GAAG,QAAQ;IAOxC,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC;CAe1E;AAED,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,UAAU,CAAC,QAAQ,CAAC;IAC/D,eAAe,oBAAc;IAE7B,UAAU;;;MAGR;IAEF,QAAQ,EAAE,KAAK,GAAG,QAAQ,CAAS;IAEnC,QAAQ,CAAC,KAAK,EAAE,eAAe;CAOhC"}
1
+ {"version":3,"file":"globe-controller.d.ts","sourceRoot":"","sources":["../../src/controllers/globe-controller.ts"],"names":[],"mappings":"AAKA,OAAO,UAAU,EAAE,EAAC,eAAe,EAAC,wBAAqB;AAEzD,OAAO,EAAC,QAAQ,EAAE,aAAa,EAAC,4BAAyB;AACzD,OAAO,KAAK,EAAC,gBAAgB,EAAC,4BAAyB;AAEvD,OAAO,kBAAkB,8CAA2C;AAmBpE,KAAK,kBAAkB,GAAG,gBAAgB,GAAG;IAC3C,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC,CAAC;AAEF,cAAM,UAAW,SAAQ,QAAQ;gBAE7B,OAAO,EAAE,aAAa,GACpB,kBAAkB,GAAG;QACnB,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC;KACnD;IAWL,QAAQ,CAAC,EAAC,GAAG,EAAC,EAAE;QAAC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAC,GAAG,UAAU;IASpD,GAAG,CAAC,EAAC,GAAG,EAAE,QAAQ,EAAC,EAAE;QAAC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAC,GAAG,UAAU;IAatF,MAAM,IAAI,UAAU;IAQpB,IAAI,CAAC,EAAC,KAAK,EAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,GAAG,QAAQ;IAOxC,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC;IAqDzE,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,MAAM;CA+BtE;AAED,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,UAAU,CAAC,QAAQ,CAAC;IAC/D,eAAe,oBAAc;IAE7B,UAAU;;;MAGR;IAEF,QAAQ,EAAE,KAAK,GAAG,QAAQ,CAAS;IAEnC,QAAQ,CAAC,KAAK,EAAE,eAAe;CAOhC"}
@@ -6,11 +6,24 @@ import Controller from "./controller.js";
6
6
  import { MapState } from "./map-controller.js";
7
7
  import { mod } from "../utils/math-utils.js";
8
8
  import LinearInterpolator from "../transitions/linear-interpolator.js";
9
- import { zoomAdjust } from "../viewports/globe-viewport.js";
9
+ import { zoomAdjust, GLOBE_RADIUS } from "../viewports/globe-viewport.js";
10
10
  import { MAX_LATITUDE } from '@math.gl/web-mercator';
11
+ const DEGREES_TO_RADIANS = Math.PI / 180;
12
+ const RADIANS_TO_DEGREES = 180 / Math.PI;
13
+ function degreesToPixels(angle, zoom = 0) {
14
+ const radians = Math.min(180, angle) * DEGREES_TO_RADIANS;
15
+ const size = GLOBE_RADIUS * 2 * Math.sin(radians / 2);
16
+ return size * Math.pow(2, zoom);
17
+ }
18
+ function pixelsToDegrees(pixels, zoom = 0) {
19
+ const size = pixels / Math.pow(2, zoom);
20
+ const radians = Math.asin(Math.min(1, size / GLOBE_RADIUS / 2)) * 2;
21
+ return radians * RADIANS_TO_DEGREES;
22
+ }
11
23
  class GlobeState extends MapState {
12
24
  constructor(options) {
13
25
  const { startPanPos, ...mapStateOptions } = options;
26
+ mapStateOptions.normalize = false; // disable MapState default normalization
14
27
  super(mapStateOptions);
15
28
  if (startPanPos !== undefined) {
16
29
  this._state.startPanPos = startPanPos;
@@ -51,16 +64,64 @@ class GlobeState extends MapState {
51
64
  }
52
65
  applyConstraints(props) {
53
66
  // Ensure zoom is within specified range
54
- const { longitude, latitude, maxZoom, minZoom, zoom } = props;
55
- const ZOOM0 = zoomAdjust(0);
56
- const zoomAdjustment = zoomAdjust(latitude) - ZOOM0;
57
- props.zoom = clamp(zoom, minZoom + zoomAdjustment, maxZoom + zoomAdjustment);
67
+ const { longitude, latitude, maxBounds } = props;
68
+ props.zoom = this._constrainZoom(props.zoom, props);
58
69
  if (longitude < -180 || longitude > 180) {
59
70
  props.longitude = mod(longitude + 180, 360) - 180;
60
71
  }
61
72
  props.latitude = clamp(latitude, -MAX_LATITUDE, MAX_LATITUDE);
73
+ if (maxBounds) {
74
+ props.longitude = clamp(props.longitude, maxBounds[0][0], maxBounds[1][0]);
75
+ props.latitude = clamp(props.latitude, maxBounds[0][1], maxBounds[1][1]);
76
+ }
77
+ if (maxBounds) {
78
+ // calculate center and zoom ranges at pitch=0 and bearing=0
79
+ // to maintain visual stability when rotating
80
+ const effectiveZoom = props.zoom - zoomAdjust(latitude);
81
+ const lngSpan = maxBounds[1][0] - maxBounds[0][0];
82
+ const latSpan = maxBounds[1][1] - maxBounds[0][1];
83
+ if (latSpan > 0 && latSpan < MAX_LATITUDE * 2) {
84
+ const halfHeightDegrees = Math.min(pixelsToDegrees(props.height, effectiveZoom), latSpan) / 2;
85
+ props.latitude = clamp(props.latitude, maxBounds[0][1] + halfHeightDegrees, maxBounds[1][1] - halfHeightDegrees);
86
+ }
87
+ if (lngSpan > 0 && lngSpan < 360) {
88
+ const halfWidthDegrees = Math.min(pixelsToDegrees(props.width / Math.cos(props.latitude * DEGREES_TO_RADIANS), effectiveZoom), lngSpan) / 2;
89
+ props.longitude = clamp(props.longitude, maxBounds[0][0] + halfWidthDegrees, maxBounds[1][0] - halfWidthDegrees);
90
+ }
91
+ }
92
+ if (props.latitude !== latitude) {
93
+ props.zoom += zoomAdjust(props.latitude) - zoomAdjust(latitude);
94
+ }
62
95
  return props;
63
96
  }
97
+ _constrainZoom(zoom, props) {
98
+ props || (props = this.getViewportProps());
99
+ const { latitude, maxZoom, maxBounds } = props;
100
+ let { minZoom } = props;
101
+ const ZOOM0 = zoomAdjust(0);
102
+ const zoomAdjustment = zoomAdjust(latitude) - ZOOM0;
103
+ const shouldApplyMaxBounds = maxBounds !== null && props.width > 0 && props.height > 0;
104
+ if (shouldApplyMaxBounds) {
105
+ const minLatitude = maxBounds[0][1];
106
+ const maxLatitude = maxBounds[1][1];
107
+ // latitude at which the bounding box is the widest
108
+ const fitLatitude = Math.sign(minLatitude) === Math.sign(maxLatitude)
109
+ ? Math.min(Math.abs(minLatitude), Math.abs(maxLatitude))
110
+ : 0;
111
+ const w = degreesToPixels(maxBounds[1][0] - maxBounds[0][0]) *
112
+ Math.cos(fitLatitude * DEGREES_TO_RADIANS);
113
+ const h = degreesToPixels(maxBounds[1][1] - maxBounds[0][1]);
114
+ if (w > 0) {
115
+ minZoom = Math.max(minZoom, Math.log2(props.width / w) + ZOOM0);
116
+ }
117
+ if (h > 0) {
118
+ minZoom = Math.max(minZoom, Math.log2(props.height / h) + ZOOM0);
119
+ }
120
+ if (minZoom > maxZoom)
121
+ minZoom = maxZoom;
122
+ }
123
+ return clamp(zoom, minZoom + zoomAdjustment, maxZoom + zoomAdjustment);
124
+ }
64
125
  }
65
126
  export default class GlobeController extends Controller {
66
127
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":"globe-controller.js","sourceRoot":"","sources":["../../src/controllers/globe-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"globe-controller.js","sourceRoot":"","sources":["../../src/controllers/globe-controller.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import Controller, { ControllerProps } from "./controller.js";
1
+ import Controller, { ControllerProps, InteractionState } from "./controller.js";
2
2
  import ViewState from "./view-state.js";
3
3
  import LinearInterpolator from "../transitions/linear-interpolator.js";
4
4
  import type Viewport from "../viewports/viewport.js";
@@ -33,12 +33,14 @@ export type MapStateProps = {
33
33
  minPitch?: number;
34
34
  /** Normalize viewport props to fit map height into viewport. Default `true` */
35
35
  normalize?: boolean;
36
+ maxBounds?: ControllerProps['maxBounds'];
36
37
  };
37
38
  export type MapStateInternal = {
38
39
  /** Interaction states, required to calculate change during transform */
39
40
  startPanLngLat?: [number, number];
40
41
  startZoomLngLat?: [number, number];
41
42
  startRotatePos?: [number, number];
43
+ startRotateLngLat?: [number, number, number];
42
44
  /** Bearing when current perspective rotate operation started */
43
45
  startBearing?: number;
44
46
  /** Pitch when current perspective rotate operation started */
@@ -47,9 +49,10 @@ export type MapStateInternal = {
47
49
  startZoom?: number;
48
50
  };
49
51
  export declare class MapState extends ViewState<MapState, MapStateProps, MapStateInternal> {
50
- makeViewport: (props: Record<string, any>) => Viewport;
52
+ getAltitude?: (pos: [number, number]) => number | undefined;
51
53
  constructor(options: MapStateProps & MapStateInternal & {
52
54
  makeViewport: (props: Record<string, any>) => Viewport;
55
+ getAltitude?: (pos: [number, number]) => number | undefined;
53
56
  });
54
57
  /**
55
58
  * Start panning
@@ -131,10 +134,12 @@ export declare class MapState extends ViewState<MapState, MapStateProps, MapStat
131
134
  rotateDown(speed?: number): MapState;
132
135
  shortestPathFrom(viewState: MapState): MapStateProps;
133
136
  applyConstraints(props: Required<MapStateProps>): Required<MapStateProps>;
137
+ _constrainZoom(zoom: number, props?: Required<MapStateProps>): number;
134
138
  _zoomFromCenter(scale: any): MapState;
135
139
  _panFromCenter(offset: any): MapState;
136
140
  _getUpdatedState(newProps: any): MapState;
137
141
  _unproject(pos?: [number, number]): [number, number] | undefined;
142
+ _unproject3D(pos: [number, number], altitude: number): [number, number, number];
138
143
  _getNewRotation(pos: [number, number], startPos: [number, number], startPitch: number, startBearing: number): {
139
144
  pitch: number;
140
145
  bearing: number;
@@ -147,6 +152,19 @@ export default class MapController extends Controller<MapState> {
147
152
  transitionInterpolator: LinearInterpolator;
148
153
  };
149
154
  dragMode: 'pan' | 'rotate';
150
- setProps(props: ControllerProps & MapStateProps): void;
155
+ /**
156
+ * Rotation pivot behavior:
157
+ * - 'center': Rotate around viewport center (default)
158
+ * - '2d': Rotate around pointer position at ground level (z=0)
159
+ * - '3d': Rotate around 3D picked point (requires pickPosition callback)
160
+ */
161
+ protected rotationPivot: 'center' | '2d' | '3d';
162
+ setProps(props: ControllerProps & MapStateProps & {
163
+ rotationPivot?: 'center' | '2d' | '3d';
164
+ getAltitude?: (pos: [number, number]) => number | undefined;
165
+ }): void;
166
+ protected updateViewport(newControllerState: MapState, extraProps?: Record<string, any> | null, interactionState?: InteractionState): void;
167
+ /** Add altitude to rotateStart params based on rotationPivot mode */
168
+ protected _getAltitude: (pos: [number, number]) => number | undefined;
151
169
  }
152
170
  //# sourceMappingURL=map-controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"map-controller.d.ts","sourceRoot":"","sources":["../../src/controllers/map-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"map-controller.d.ts","sourceRoot":"","sources":["../../src/controllers/map-controller.ts"],"names":[],"mappings":"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"}