@tolokoban/tgd 2.0.50 → 2.0.52

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.
@@ -6,13 +6,19 @@ import { TgdInputs } from "../../input";
6
6
  export interface TgdControllerCameraOrbitZoomRequest extends TgdInputPointerModifierKeys {
7
7
  x: number;
8
8
  y: number;
9
+ /**
10
+ * The computed zoom, if accepted.
11
+ */
12
+ zoom: number;
9
13
  }
10
14
  export interface TgdControllerCameraOrbitOptions {
11
- minDistance: number;
12
- maxDistance: number;
15
+ zoom: number;
16
+ minZoom: number;
17
+ maxZoom: number;
13
18
  speedOrbit: number;
14
19
  /**
15
- * Units of zoom per second.
20
+ * Number of seconds for the zoom to go
21
+ * from 1 to 2, or from 1 to 0.5.
16
22
  */
17
23
  speedZoom: number;
18
24
  speedPanning: number;
@@ -84,8 +90,6 @@ export declare class TgdControllerCameraOrbit {
84
90
  readonly eventChange: TgdEvent<TgdCamera>;
85
91
  minZoom: number;
86
92
  maxZoom: number;
87
- minDistance: number;
88
- maxDistance: number;
89
93
  speedZoom: number;
90
94
  speedOrbit: number;
91
95
  speedPanning: number;
@@ -113,6 +117,13 @@ export declare class TgdControllerCameraOrbit {
113
117
  */
114
118
  _enabled: boolean;
115
119
  private animOrbit;
120
+ /**
121
+ * This is the space height at target for zoom == 1.0
122
+ *
123
+ * @see resetZoom()
124
+ */
125
+ private spaceHeightAtTargetForZoom1;
126
+ private _zoom;
116
127
  /**
117
128
  * It can be usefull to disable to orbit controller for some time
118
129
  * because an animation is going on on the camera, for instance.
@@ -129,9 +140,12 @@ export declare class TgdControllerCameraOrbit {
129
140
  animSchedule(...animations: TgdAnimation[]): TgdAnimation[];
130
141
  animCancel(animation: TgdAnimation): void;
131
142
  paint(): void;
132
- }, { geo, minDistance, maxDistance, speedZoom, speedOrbit, speedPanning, inertiaZoom, inertiaOrbit, inertiaPanning, fixedTarget, debug, onZoomRequest, }?: Partial<TgdControllerCameraOrbitOptions>);
143
+ }, { geo, zoom, minZoom, maxZoom, speedZoom, speedOrbit, speedPanning, inertiaZoom, inertiaOrbit, inertiaPanning, fixedTarget, debug, onZoomRequest, }?: Partial<TgdControllerCameraOrbitOptions>);
144
+ get zoom(): number;
145
+ set zoom(value: number);
133
146
  get enabled(): boolean;
134
147
  set enabled(value: boolean);
148
+ resetZoom(zoomForCurrentCameraState?: number): void;
135
149
  reset(animDuration: number, easingFunction?: (x: number) => number): void;
136
150
  disableForSomeTime(delayInMsec: number): void;
137
151
  detach(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"orbit.d.ts","sourceRoot":"","sources":["../../../src/controller/camera/orbit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orbit.d.ts","sourceRoot":"","sources":["../../../src/controller/camera/orbit.ts"],"names":[],"mappings":"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"}
@@ -3,14 +3,12 @@ import { tgdCalcClamp } from "./../../math/math.js";
3
3
  import { TgdEvent } from "./../../event/index.js";
4
4
  import { TgdMat3, TgdQuat, TgdVec3 } from "./../../math/index.js";
5
5
  export class TgdControllerCameraOrbit {
6
- constructor(context, { geo, minDistance = 0, maxDistance = Infinity, speedZoom = 1, speedOrbit = 1, speedPanning = 1, inertiaZoom = 0, inertiaOrbit = 0, inertiaPanning = 0, fixedTarget = false, debug = false, onZoomRequest = alwaysTrue, } = {}) {
6
+ constructor(context, { geo, zoom = 1, minZoom = 1e-3, maxZoom = Infinity, speedZoom = 1, speedOrbit = 1, speedPanning = 1, inertiaZoom = 0, inertiaOrbit = 0, inertiaPanning = 0, fixedTarget = false, debug = false, onZoomRequest = alwaysTrue, } = {}) {
7
7
  this.context = context;
8
8
  this.id = `TgdControllerCameraOrbit-${TgdControllerCameraOrbit.counter++}`;
9
9
  this.eventChange = new TgdEvent();
10
10
  this.minZoom = 1e-3;
11
11
  this.maxZoom = Infinity;
12
- this.minDistance = 0;
13
- this.maxDistance = Infinity;
14
12
  this.speedZoom = 1;
15
13
  this.speedOrbit = 1;
16
14
  this.speedPanning = 1;
@@ -27,6 +25,13 @@ export class TgdControllerCameraOrbit {
27
25
  */
28
26
  this._enabled = true;
29
27
  this.animOrbit = null;
28
+ /**
29
+ * This is the space height at target for zoom == 1.0
30
+ *
31
+ * @see resetZoom()
32
+ */
33
+ this.spaceHeightAtTargetForZoom1 = 1;
34
+ this._zoom = 1;
30
35
  /**
31
36
  * It can be usefull to disable to orbit controller for some time
32
37
  * because an animation is going on on the camera, for instance.
@@ -108,17 +113,8 @@ export class TgdControllerCameraOrbit {
108
113
  this.handleZoom = (event) => {
109
114
  if (this.lastPointerEventTimestamp > 0 &&
110
115
  this.enabled &&
111
- this.speedZoom > 0 &&
112
- this.onZoomRequest({
113
- altKey: event.altKey,
114
- ctrlKey: event.ctrlKey,
115
- metaKey: event.metaKey,
116
- shiftKey: event.shiftKey,
117
- x: event.current.x,
118
- y: event.current.y,
119
- })) {
116
+ this.speedZoom > 0) {
120
117
  const { context } = this;
121
- const { camera } = context;
122
118
  // Msec since last mouse event
123
119
  const time = 16e-3; // We assume 60 FPS
124
120
  let speed = this.speedZoom * time;
@@ -126,11 +122,22 @@ export class TgdControllerCameraOrbit {
126
122
  speed *= 0.1;
127
123
  else if (this.context.inputs.keyboard.isDown("Control"))
128
124
  speed *= 10;
129
- const deltaDistance = -event.direction * speed;
130
- console.log("🚀 [orbit] speed, event.direction =", speed, event.direction); // @FIXME: Remove this line written on 2025-10-15 at 11:50
131
- camera.transfo.distance = tgdCalcClamp(camera.transfo.distance + deltaDistance, this.minDistance, this.maxDistance);
125
+ const factor = 1 + speed;
126
+ const zoom = tgdCalcClamp(this.zoom * (event.direction > 0 ? factor : 1 / factor), this.minZoom, this.maxZoom);
127
+ if (zoom !== this.zoom &&
128
+ this.onZoomRequest({
129
+ altKey: event.altKey,
130
+ ctrlKey: event.ctrlKey,
131
+ metaKey: event.metaKey,
132
+ shiftKey: event.shiftKey,
133
+ x: event.current.x,
134
+ y: event.current.y,
135
+ zoom,
136
+ })) {
137
+ this.zoom = zoom;
138
+ this.fireZoomChange();
139
+ }
132
140
  event.preventDefault();
133
- this.fireZoomChange();
134
141
  }
135
142
  this.lastPointerEventTimestamp = event.current.t;
136
143
  };
@@ -151,8 +158,8 @@ export class TgdControllerCameraOrbit {
151
158
  this.inertiaZoom = inertiaZoom;
152
159
  this.inertiaPanning = inertiaPanning;
153
160
  this.fixedTarget = fixedTarget;
154
- this.minDistance = minDistance;
155
- this.maxDistance = maxDistance;
161
+ this.minZoom = minZoom;
162
+ this.maxZoom = maxZoom;
156
163
  this.onZoomRequest = onZoomRequest;
157
164
  if (this.geo)
158
165
  this.orbitGeo(this.geo.lat, this.geo.lng);
@@ -164,6 +171,18 @@ export class TgdControllerCameraOrbit {
164
171
  }
165
172
  });
166
173
  }
174
+ this.resetZoom(zoom);
175
+ }
176
+ get zoom() {
177
+ return this._zoom;
178
+ }
179
+ set zoom(value) {
180
+ const newZoom = tgdCalcClamp(value, this.minZoom, this.maxZoom);
181
+ if (newZoom === this._zoom)
182
+ return;
183
+ this._zoom = newZoom;
184
+ this.context.camera.spaceHeightAtTarget =
185
+ newZoom * this.spaceHeightAtTargetForZoom1;
167
186
  }
168
187
  get enabled() {
169
188
  return this.context.time > this.disabledUntil && this._enabled;
@@ -171,6 +190,13 @@ export class TgdControllerCameraOrbit {
171
190
  set enabled(value) {
172
191
  this._enabled = value;
173
192
  }
193
+ resetZoom(zoomForCurrentCameraState = 1) {
194
+ if (zoomForCurrentCameraState <= 0)
195
+ return;
196
+ this.spaceHeightAtTargetForZoom1 =
197
+ this.context.camera.spaceHeightAtTarget / zoomForCurrentCameraState;
198
+ this._zoom = zoomForCurrentCameraState;
199
+ }
174
200
  reset(animDuration, easingFunction) {
175
201
  const { context } = this;
176
202
  this.disableForSomeTime(animDuration);
@@ -282,4 +308,4 @@ function makeGeoVec3(lat, lng) {
282
308
  const x = radius * Math.sin(lng);
283
309
  return new TgdVec3(x, y, z);
284
310
  }
285
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JiaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJvbGxlci9jYW1lcmEvb3JiaXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNILGtDQUFrQyxFQUNsQyx3QkFBd0IsR0FDM0IsTUFBTSxZQUFZLENBQUE7QUFDbkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBTTdDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBbUZyRCxNQUFNLE9BQU8sd0JBQXdCO0lBNEVqQyxZQUNxQixPQU9oQixFQUNELEVBQ0ksR0FBRyxFQUNILFdBQVcsR0FBRyxDQUFDLEVBQ2YsV0FBVyxHQUFHLFFBQVEsRUFDdEIsU0FBUyxHQUFHLENBQUMsRUFDYixVQUFVLEdBQUcsQ0FBQyxFQUNkLFlBQVksR0FBRyxDQUFDLEVBQ2hCLFdBQVcsR0FBRyxDQUFDLEVBQ2YsWUFBWSxHQUFHLENBQUMsRUFDaEIsY0FBYyxHQUFHLENBQUMsRUFDbEIsV0FBVyxHQUFHLEtBQUssRUFDbkIsS0FBSyxHQUFHLEtBQUssRUFDYixhQUFhLEdBQUcsVUFBVSxNQUNnQixFQUFFO1FBckIvQixZQUFPLEdBQVAsT0FBTyxDQU92QjtRQWpGVyxPQUFFLEdBQUcsNEJBQTRCLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUE7UUFFckUsZ0JBQVcsR0FBRyxJQUFJLFFBQVEsRUFBYSxDQUFBO1FBRWhELFlBQU8sR0FBRyxJQUFJLENBQUE7UUFFZCxZQUFPLEdBQUcsUUFBUSxDQUFBO1FBRWxCLGdCQUFXLEdBQUcsQ0FBQyxDQUFBO1FBRWYsZ0JBQVcsR0FBRyxRQUFRLENBQUE7UUFFdEIsY0FBUyxHQUFHLENBQUMsQ0FBQTtRQUViLGVBQVUsR0FBRyxDQUFDLENBQUE7UUFFZCxp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
311
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JiaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJvbGxlci9jYW1lcmEvb3JiaXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNILGtDQUFrQyxFQUNsQyx3QkFBd0IsR0FDM0IsTUFBTSxZQUFZLENBQUE7QUFDbkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBTTdDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBeUZyRCxNQUFNLE9BQU8sd0JBQXdCO0lBaUZqQyxZQUNxQixPQU9oQixFQUNELEVBQ0ksR0FBRyxFQUNILElBQUksR0FBRyxDQUFDLEVBQ1IsT0FBTyxHQUFHLElBQUksRUFDZCxPQUFPLEdBQUcsUUFBUSxFQUNsQixTQUFTLEdBQUcsQ0FBQyxFQUNiLFVBQVUsR0FBRyxDQUFDLEVBQ2QsWUFBWSxHQUFHLENBQUMsRUFDaEIsV0FBVyxHQUFHLENBQUMsRUFDZixZQUFZLEdBQUcsQ0FBQyxFQUNoQixjQUFjLEdBQUcsQ0FBQyxFQUNsQixXQUFXLEdBQUcsS0FBSyxFQUNuQixLQUFLLEdBQUcsS0FBSyxFQUNiLGFBQWEsR0FBRyxVQUFVLE1BQ2dCLEVBQUU7UUF0Qi9CLFlBQU8sR0FBUCxPQUFPLENBT3ZCO1FBdEZXLE9BQUUsR0FBRyw0QkFBNEIsd0JBQXdCLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQTtRQUVyRSxnQkFBVyxHQUFHLElBQUksUUFBUSxFQUFhLENBQUE7UUFFaEQsWUFBTyxHQUFHLElBQUksQ0FBQTtRQUVkLFlBQU8sR0FBRyxRQUFRLENBQUE7UUFFbEIsY0FBUyxHQUFHLENBQUMsQ0FBQTtRQUViLGVBQVUsR0FBRyxDQUFDLENBQUE7UUFFZCxpQkFBWSxHQUFHLENBQUMsQ0FBQTtRQUVoQixnQkFBVyxH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
@@ -48,8 +48,8 @@ export class TgdInputPointerImpl {
48
48
  event.preventDefault();
49
49
  };
50
50
  this.handleCanvasWheel = (event) => {
51
- let delta = event.deltaX + event.deltaY + event.deltaZ;
52
- delta = delta > 0 ? 1 : -1;
51
+ const eventDelta = event.deltaX + event.deltaY + event.deltaZ;
52
+ const delta = eventDelta > 0 ? 1 : -1;
53
53
  this.eventZoom.dispatch(Object.assign({ current: this.getPoint(event), direction: delta, preventDefault: () => event.preventDefault() }, this.controlKeys));
54
54
  };
55
55
  this.handlePointerDown = (event) => {
@@ -157,4 +157,4 @@ export class TgdInputPointerImpl {
157
157
  return { x, y, t: event.timeStamp, fingersCount: 1 };
158
158
  }
159
159
  }
160
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbnB1dC9wb2ludGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFRckMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRWhELE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxDQUFBO0FBRTVCLE1BQU0sT0FBTyxtQkFBbUI7SUE0QzVCLFlBQTZCLE1BQTBCO1FBQTFCLFdBQU0sR0FBTixNQUFNLENBQW9CO1FBM0M5QyxhQUFRLEdBQUcsSUFBSSxRQUFRLEVBQXFDLENBQUE7UUFDNUQsbUJBQWMsR0FBRyxJQUFJLFFBQVEsRUFBc0MsQ0FBQTtRQUNuRSxjQUFTLEdBQUcsSUFBSSxRQUFRLEVBQXNDLENBQUE7UUFDOUQsZUFBVSxHQUFHLElBQUksUUFBUSxFQUFzQyxDQUFBO1FBQy9ELGlCQUFZLEdBQUcsSUFBSSxRQUFRLEVBQXNDLENBQUE7UUFDakUsY0FBUyxHQUFHLElBQUksUUFBUSxFQUFzQyxDQUFBO1FBQ3ZFOzs7V0FHRztRQUNJLGFBQVEsR0FBRyxHQUFHLENBQUE7UUFFYixVQUFLLEdBQUcsSUFBSSxtQkFBbUIsQ0FBNkIsQ0FBQyxDQUFDLENBQUE7UUFFOUQsZ0JBQVcsR0FBRztZQUNsQixNQUFNLEVBQUUsS0FBSztZQUNiLE9BQU8sRUFBRSxLQUFLO1lBQ2QsT0FBTyxFQUFFLEtBQUs7WUFDZCxRQUFRLEVBQUUsS0FBSztTQUNsQixDQUFBO1FBQ08sVUFBSyxHQUErQjtZQUN4QyxDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7WUFDSixZQUFZLEVBQUUsQ0FBQztTQUNsQixDQUFBO1FBQ08sWUFBTyxHQUErQjtZQUMxQyxDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENB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LENBQUMsZUFBZSxDQUFDLENBQUE7SUFDOUQsQ0FBQztJQUVELElBQUksQ0FBQzs7UUFDRCxPQUFPLE1BQUEsTUFBQSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sMENBQUUsQ0FBQyxtQ0FBSSxDQUFDLENBQUE7SUFDcEMsQ0FBQztJQUNELElBQUksQ0FBQzs7UUFDRCxPQUFPLE1BQUEsTUFBQSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sMENBQUUsQ0FBQyxtQ0FBSSxDQUFDLENBQUE7SUFDcEMsQ0FBQztJQUVELElBQUksTUFBTTs7UUFDTixNQUFNLEVBQUUsR0FBRyxNQUFBLE1BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLDBDQUFFLENBQUMsbUNBQUksQ0FBQyxDQUFBO1FBQ3BDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQTtRQUNyQixNQUFNLEVBQUUsR0FBRyxNQUFBLE1BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLDBDQUFFLENBQUMsbUNBQUksQ0FBQyxDQUFBO1FBQ3BDLE1BQU0sRUFBRSxHQUFHLE1BQUEsTUFBQSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sMENBQUUsQ0FBQyxtQ0FBSSxDQUFDLENBQUE7UUFDcEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDdEQsQ0FBQztJQUNELElBQUksTUFBTTs7UUFDTixNQUFNLEVBQUUsR0FBRyxNQUFBLE1BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLDBDQUFFLENBQUMsbUNBQUksQ0FBQyxDQUFBO1FBQ3BDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQTtRQUNyQixNQUFNLEVBQUUsR0FBRyxNQUFBLE1BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLDBDQUFFLENB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
160
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbnB1dC9wb2ludGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFRckMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRWhELE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxDQUFBO0FBRTVCLE1BQU0sT0FBTyxtQkFBbUI7SUE0QzVCLFlBQTZCLE1BQTBCO1FBQTFCLFdBQU0sR0FBTixNQUFNLENBQW9CO1FBM0M5QyxhQUFRLEdBQUcsSUFBSSxRQUFRLEVBQXFDLENBQUE7UUFDNUQsbUJBQWMsR0FBRyxJQUFJLFFBQVEsRUFBc0MsQ0FBQTtRQUNuRSxjQUFTLEdBQUcsSUFBSSxRQUFRLEVBQXNDLENBQUE7UUFDOUQsZUFBVSxHQUFHLElBQUksUUFBUSxFQUFzQyxDQUFBO1FBQy9ELGlCQUFZLEdBQUcsSUFBSSxRQUFRLEVBQXNDLENBQUE7UUFDakUsY0FBUyxHQUFHLElBQUksUUFBUSxFQUFzQyxDQUFBO1FBQ3ZFOzs7V0FHRztRQUNJLGFBQVEsR0FBRyxHQUFHLENBQUE7UUFFYixVQUFLLEdBQUcsSUFBSSxtQkFBbUIsQ0FBNkIsQ0FBQyxDQUFDLENBQUE7UUFFOUQsZ0JBQVcsR0FBRztZQUNsQixNQUFNLEVBQUUsS0FBSztZQUNiLE9BQU8sRUFBRSxLQUFLO1lBQ2QsT0FBTyxFQUFFLEtBQUs7WUFDZCxRQUFRLEVBQUUsS0FBSztTQUNsQixDQUFBO1FBQ08sVUFBSyxHQUErQjtZQUN4QyxDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7WUFDSixZQUFZLEVBQUUsQ0FBQztTQUNsQixDQUFBO1FBQ08sWUFBTyxHQUErQjtZQUMxQyxDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENB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LElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQTtJQUM5RCxDQUFDO0lBRUQsSUFBSSxDQUFDOztRQUNELE9BQU8sTUFBQSxNQUFBLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSwwQ0FBRSxDQUFDLG1DQUFJLENBQUMsQ0FBQTtJQUNwQyxDQUFDO0lBQ0QsSUFBSSxDQUFDOztRQUNELE9BQU8sTUFBQSxNQUFBLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSwwQ0FBRSxDQUFDLG1DQUFJLENBQUMsQ0FBQTtJQUNwQyxDQUFDO0lBRUQsSUFBSSxNQUFNOztRQUNOLE1BQU0sRUFBRSxHQUFHLE1BQUEsTUFBQSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sMENBQUUsQ0FBQyxtQ0FBSSxDQUFDLENBQUE7UUFDcEMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFBO1FBQ3JCLE1BQU0sRUFBRSxHQUFHLE1BQUEsTUFBQSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sMENBQUUsQ0FBQyxtQ0FBSSxDQUFDLENBQUE7UUFDcEMsTUFBTSxFQUFFLEdBQUcsTUFBQSxNQUFBLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSwwQ0FBRSxDQUFDLG1DQUFJLENBQUMsQ0FBQTtRQUNwQyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUN0RCxDQUFDO0lBQ0QsSUFBSSxNQUFNOztRQUNOLE1BQU0sRUFBRSxHQUFHLE1BQUEsTUFBQSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sMENBQUUsQ0FBQyxtQ0FBSSxDQUFDLENBQUE7UUFDcEMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFBO1FBQ3JCLE1BQU0sRUFBRSxHQUFHLE1BQUEsTUFBQSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sMENB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
@@ -0,0 +1,46 @@
1
+ import { TgdPainterGroup, TgdPainterGroupOptions } from "./group";
2
+ export interface TgdPainterScissorOptions extends TgdPainterGroupOptions {
3
+ /**
4
+ * X relative to current viewport from 0 (left) to 1 (right).
5
+ */
6
+ x: number;
7
+ /**
8
+ * Y relative to current viewport from 0 (top) to 1 (bottom).
9
+ */
10
+ y: number;
11
+ /**
12
+ * Width relative to current viewport from 0 (0%) to 1 (100%).
13
+ */
14
+ width: number;
15
+ /**
16
+ * Height relative to current viewport from 0 (0%) to 1 (100%).
17
+ */
18
+ height: number;
19
+ }
20
+ /**
21
+ * Paint the children in a subset of the current viewport.
22
+ */
23
+ export declare class TgdPainterScissor extends TgdPainterGroup {
24
+ private readonly context;
25
+ /**
26
+ * X relative to current viewport from 0 (left) to 1 (right).
27
+ */
28
+ x: number;
29
+ /**
30
+ * Width relative to current viewport from 0 (0%) to 1 (100%).
31
+ */
32
+ y: number;
33
+ /**
34
+ * Width relative to current viewport from 0 (0%) to 1 (100%).
35
+ */
36
+ width: number;
37
+ /**
38
+ * Height relative to current viewport from 0 (0%) to 1 (100%).
39
+ */
40
+ height: number;
41
+ constructor(context: {
42
+ gl: WebGL2RenderingContext;
43
+ }, options: TgdPainterScissorOptions);
44
+ paint(time: number, delay: number): void;
45
+ }
46
+ //# sourceMappingURL=viewport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../src/painter/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAEjE,MAAM,WAAW,wBAAyB,SAAQ,sBAAsB;IACpE;;OAEG;IACH,CAAC,EAAE,MAAM,CAAA;IACT;;OAEG;IACH,CAAC,EAAE,MAAM,CAAA;IACT;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,eAAe;IAmB9C,OAAO,CAAC,QAAQ,CAAC,OAAO;IAlB5B;;OAEG;IACI,CAAC,EAAE,MAAM,CAAI;IACpB;;OAEG;IACI,CAAC,EAAE,MAAM,CAAI;IACpB;;OAEG;IACI,KAAK,EAAE,MAAM,CAAI;IACxB;;OAEG;IACI,MAAM,EAAE,MAAM,CAAI;gBAGJ,OAAO,EAAE;QAAE,EAAE,EAAE,sBAAsB,CAAA;KAAE,EACxD,OAAO,EAAE,wBAAwB;IASrC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;CAW3C"}
@@ -0,0 +1,42 @@
1
+ import { TgdPainterGroup } from "./group.js";
2
+ /**
3
+ * Paint the children in a subset of the current viewport.
4
+ */
5
+ export class TgdPainterScissor extends TgdPainterGroup {
6
+ constructor(context, options) {
7
+ super(options);
8
+ this.context = context;
9
+ /**
10
+ * X relative to current viewport from 0 (left) to 1 (right).
11
+ */
12
+ this.x = 0;
13
+ /**
14
+ * Width relative to current viewport from 0 (0%) to 1 (100%).
15
+ */
16
+ this.y = 0;
17
+ /**
18
+ * Width relative to current viewport from 0 (0%) to 1 (100%).
19
+ */
20
+ this.width = 0;
21
+ /**
22
+ * Height relative to current viewport from 0 (0%) to 1 (100%).
23
+ */
24
+ this.height = 0;
25
+ this.x = options.x;
26
+ this.y = options.y;
27
+ this.width = options.width;
28
+ this.height = options.height;
29
+ }
30
+ paint(time, delay) {
31
+ const { gl } = this.context;
32
+ const [curX, curY, curW, curH] = gl.getParameter(gl.SCISSOR_BOX);
33
+ const x = Math.round(this.x * curX);
34
+ const y = Math.round(this.y * curY);
35
+ const w = Math.round(this.width * curW);
36
+ const h = Math.round(this.height * curH);
37
+ gl.scissor(x, y, w, h);
38
+ super.paint(time, delay);
39
+ gl.scissor(curX, curY, curW, curH);
40
+ }
41
+ }
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFpbnRlci92aWV3cG9ydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUEwQixNQUFNLFNBQVMsQ0FBQTtBQXFCakU7O0dBRUc7QUFDSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsZUFBZTtJQWtCbEQsWUFDcUIsT0FBdUMsRUFDeEQsT0FBaUM7UUFFakMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBSEcsWUFBTyxHQUFQLE9BQU8sQ0FBZ0M7UUFsQjVEOztXQUVHO1FBQ0ksTUFBQyxHQUFXLENBQUMsQ0FBQTtRQUNwQjs7V0FFRztRQUNJLE1BQUMsR0FBVyxDQUFDLENBQUE7UUFDcEI7O1dBRUc7UUFDSSxVQUFLLEdBQVcsQ0FBQyxDQUFBO1FBQ3hCOztXQUVHO1FBQ0ksV0FBTSxHQUFXLENBQUMsQ0FBQTtRQU9yQixJQUFJLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUE7UUFDbEIsSUFBSSxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFBO1FBQ2xCLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQTtRQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUE7SUFDaEMsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFZLEVBQUUsS0FBYTtRQUM3QixNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQTtRQUMzQixNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDaEUsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFBO1FBQ25DLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQTtRQUNuQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUE7UUFDdkMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFBO1FBQ3hDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDdEIsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDeEIsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUN0QyxDQUFDO0NBQ0oifQ==
@@ -13,7 +13,7 @@ export interface TgdInputPointerModifierKeys {
13
13
  }
14
14
  export interface TgdInputPointerEventZoom extends TgdInputPointerModifierKeys {
15
15
  current: TgdInputPointerEventFinger;
16
- direction: number;
16
+ direction: -1 | 1;
17
17
  preventDefault: () => void;
18
18
  }
19
19
  export interface TgdInputPointerEventTap extends TgdInputPointerModifierKeys {
@@ -1 +1 @@
1
- {"version":3,"file":"input-pointer.d.ts","sourceRoot":"","sources":["../../src/types/input-pointer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,MAAM,WAAW,0BAA0B;IACvC,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,YAAY,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,2BAA2B;IACxC,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,wBAAyB,SAAQ,2BAA2B;IACzE,OAAO,EAAE,0BAA0B,CAAA;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,IAAI,CAAA;CAC7B;AAED,MAAM,WAAW,uBAAwB,SAAQ,2BAA2B;IACxE,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,YAAY,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,wBAAyB,SAAQ,2BAA2B;IACzE,OAAO,EAAE,0BAA0B,CAAA;IACnC,QAAQ,EAAE,0BAA0B,CAAA;IACpC,KAAK,EAAE,0BAA0B,CAAA;CACpC;AAED,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAA;IAE9D,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAErE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAEhE,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAEjE,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAEnE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAEhE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;IAElB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;IAElB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IAEvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IAEvB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAA;IAEhB,UAAU,CACN,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,0BAA0B,CAAC,KAAK,OAAO,GACnE,OAAO,CAAA;CACb"}
1
+ {"version":3,"file":"input-pointer.d.ts","sourceRoot":"","sources":["../../src/types/input-pointer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,MAAM,WAAW,0BAA0B;IACvC,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,YAAY,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,2BAA2B;IACxC,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,wBAAyB,SAAQ,2BAA2B;IACzE,OAAO,EAAE,0BAA0B,CAAA;IACnC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,CAAA;IACjB,cAAc,EAAE,MAAM,IAAI,CAAA;CAC7B;AAED,MAAM,WAAW,uBAAwB,SAAQ,2BAA2B;IACxE,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,YAAY,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,wBAAyB,SAAQ,2BAA2B;IACzE,OAAO,EAAE,0BAA0B,CAAA;IACnC,QAAQ,EAAE,0BAA0B,CAAA;IACpC,KAAK,EAAE,0BAA0B,CAAA;CACpC;AAED,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAA;IAE9D,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAErE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAEhE,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAEjE,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAEnE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAEhE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;IAElB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;IAElB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IAEvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IAEvB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAA;IAEhB,UAAU,CACN,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,0BAA0B,CAAC,KAAK,OAAO,GACnE,OAAO,CAAA;CACb"}
@@ -4,7 +4,6 @@ export declare function tgdCalcMix(valueAtT0: number, valueAtT1: number, t: numb
4
4
  export declare function tgdCalcDegToRad(deg: number): number;
5
5
  export declare function tgdCalcRadToDeg(rad: number): number;
6
6
  export declare function tgdCalcSmoothStep(boundFor0: number, boundFor1: number, value: number): number;
7
- export declare function tgdCalcRandom(min?: number, max?: number): number;
8
7
  /**
9
8
  * Force `value` to be between `min` and `max` by shifting it
10
9
  * by `max - min` as many times as needed.
@@ -16,4 +15,52 @@ export declare function tgdCalcRandom(min?: number, max?: number): number;
16
15
  * ```
17
16
  */
18
17
  export declare function tgdCalcModulo(value: number, min: number, max: number): number;
18
+ /**
19
+ * @return Random float between 0 and 1
20
+ */
21
+ export declare function tgdCalcRandom(): number;
22
+ /**
23
+ * @return Random float between 0 and `max`
24
+ */
25
+ export declare function tgdCalcRandom(max: number): number;
26
+ /**
27
+ * @return Random float between `min` and `max`
28
+ */
29
+ export declare function tgdCalcRandom(min: number, max: number): number;
30
+ /**
31
+ * @return Random vector of 3 floats between 0 and 1
32
+ */
33
+ export declare function tgdCalcRandom2(): ArrayNumber2;
34
+ /**
35
+ * @return Random vector of 3 floats between 0 and `max`
36
+ */
37
+ export declare function tgdCalcRandom2(max: number): ArrayNumber2;
38
+ /**
39
+ * @return Random vector of 3 floats between `min` and `max`
40
+ */
41
+ export declare function tgdCalcRandom2(min: number, max: number): ArrayNumber2;
42
+ /**
43
+ * @return Random vector of 2 floats between 0 and 1
44
+ */
45
+ export declare function tgdCalcRandom3(): ArrayNumber3;
46
+ /**
47
+ * @return Random vector of 2 floats between 0 and `max`
48
+ */
49
+ export declare function tgdCalcRandom3(max: number): ArrayNumber3;
50
+ /**
51
+ * @return Random vector of 2 floats between `min` and `max`
52
+ */
53
+ export declare function tgdCalcRandom3(min: number, max: number): ArrayNumber3;
54
+ /**
55
+ * @return Random vector of 4 floats between 0 and 1
56
+ */
57
+ export declare function tgdCalcRandom4(): ArrayNumber4;
58
+ /**
59
+ * @return Random vector of 4 floats between 0 and `max`
60
+ */
61
+ export declare function tgdCalcRandom4(max: number): ArrayNumber4;
62
+ /**
63
+ * @return Random vector of 4 floats between `min` and `max`
64
+ */
65
+ export declare function tgdCalcRandom4(min: number, max: number): ArrayNumber4;
19
66
  //# sourceMappingURL=math.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../src/utils/math.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAI5E;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,UAAQ,GACZ,MAAM,CAMR;AAED,wBAAgB,UAAU,CACxB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,CAAC,EAAE,MAAM,GACR,MAAM,CAER;AAKD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,UAE1C;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,UAE1C;AAED,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GACZ,MAAM,CAGR;AAED,wBAAgB,aAAa,CAAC,GAAG,SAAI,EAAE,GAAG,CAAC,EAAE,MAAM,UAGlD;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAepE"}
1
+ {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../src/utils/math.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAI5E;AAED,wBAAgB,eAAe,CAC3B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,UAAQ,GACd,MAAM,CAMR;AAED,wBAAgB,UAAU,CACtB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,CAAC,EAAE,MAAM,GACV,MAAM,CAER;AAKD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,UAE1C;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,UAE1C;AAED,wBAAgB,iBAAiB,CAC7B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GACd,MAAM,CAGR;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAepE;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAAA;AACvC;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;AAClD;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;AAS/D;;GAEG;AACH,wBAAgB,cAAc,IAAI,YAAY,CAAA;AAC9C;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;AACzD;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;AAYtE;;GAEG;AACH,wBAAgB,cAAc,IAAI,YAAY,CAAA;AAC9C;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;AACzD;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;AActE;;GAEG;AACH,wBAAgB,cAAc,IAAI,YAAY,CAAA;AAC9C;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;AACzD;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA"}
@@ -27,11 +27,6 @@ export function tgdCalcSmoothStep(boundFor0, boundFor1, value) {
27
27
  const t = tgdCalcClamp((value - boundFor0) / (boundFor1 - boundFor0), 0, 1);
28
28
  return t * t * (3 - 2 * t);
29
29
  }
30
- export function tgdCalcRandom(min = 1, max) {
31
- if (typeof max !== "number")
32
- return Math.random() * min;
33
- return min + (max - min) * Math.random();
34
- }
35
30
  /**
36
31
  * Force `value` to be between `min` and `max` by shifting it
37
32
  * by `max - min` as many times as needed.
@@ -56,4 +51,44 @@ export function tgdCalcModulo(value, min, max) {
56
51
  }
57
52
  return value;
58
53
  }
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9tYXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxZQUFZLENBQUMsS0FBYSxFQUFFLEdBQVcsRUFBRSxHQUFXO0lBQ2xFLElBQUksS0FBSyxHQUFHLEdBQUc7UUFBRSxPQUFPLEdBQUcsQ0FBQztJQUM1QixJQUFJLEtBQUssR0FBRyxHQUFHO1FBQUUsT0FBTyxHQUFHLENBQUM7SUFDNUIsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FDN0IsS0FBYSxFQUNiLE9BQWUsRUFDZixPQUFlLEVBQ2YsS0FBYSxFQUNiLEtBQWEsRUFDYixLQUFLLEdBQUcsS0FBSztJQUViLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNoRSxJQUFJLE9BQU8sS0FBSyxPQUFPO1FBQUUsT0FBTyxDQUFDLENBQUM7SUFFbEMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUM7SUFDbEQsT0FBTyxLQUFLLEdBQUcsS0FBSyxHQUFHLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFRCxNQUFNLFVBQVUsVUFBVSxDQUN4QixTQUFpQixFQUNqQixTQUFpQixFQUNqQixDQUFTO0lBRVQsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxTQUFTLEdBQUcsQ0FBQyxHQUFHLFNBQVMsQ0FBQztBQUM3QyxDQUFDO0FBRUQsTUFBTSxXQUFXLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7QUFDbEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUM7QUFFbEMsTUFBTSxVQUFVLGVBQWUsQ0FBQyxHQUFXO0lBQ3pDLE9BQU8sR0FBRyxHQUFHLFdBQVcsQ0FBQztBQUMzQixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxHQUFXO0lBQ3pDLE9BQU8sR0FBRyxHQUFHLFdBQVcsQ0FBQztBQUMzQixDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixTQUFpQixFQUNqQixTQUFpQixFQUNqQixLQUFhO0lBRWIsTUFBTSxDQUFDLEdBQUcsWUFBWSxDQUFDLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM1RSxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQzdCLENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFDLEdBQUcsR0FBRyxDQUFDLEVBQUUsR0FBWTtJQUNqRCxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVE7UUFBRSxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDeEQsT0FBTyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0FBQzNDLENBQUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLFVBQVUsYUFBYSxDQUFDLEtBQWEsRUFBRSxHQUFXLEVBQUUsR0FBVztJQUNuRSxNQUFNLEtBQUssR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO0lBQ3hCLElBQUksS0FBSyxLQUFLLENBQUM7UUFBRSxPQUFPLEdBQUcsQ0FBQztJQUU1QixJQUFJLEtBQUssR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUNoQixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQzNDLE9BQU8sS0FBSyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksS0FBSyxHQUFHLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFDM0MsT0FBTyxLQUFLLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDIn0=
54
+ export function tgdCalcRandom(a, b) {
55
+ if (typeof a !== "number")
56
+ return Math.random();
57
+ const min = typeof b === "number" ? a : 0;
58
+ const max = typeof b === "number" ? b : a;
59
+ return min + Math.random() * (max - min);
60
+ }
61
+ export function tgdCalcRandom2(a, b) {
62
+ if (typeof a !== "number")
63
+ return [Math.random(), Math.random()];
64
+ const min = typeof b === "number" ? a : 0;
65
+ const max = typeof b === "number" ? b : a;
66
+ return [
67
+ min + Math.random() * (max - min),
68
+ min + Math.random() * (max - min),
69
+ ];
70
+ }
71
+ export function tgdCalcRandom3(a, b) {
72
+ if (typeof a !== "number")
73
+ return [Math.random(), Math.random(), Math.random()];
74
+ const min = typeof b === "number" ? a : 0;
75
+ const max = typeof b === "number" ? b : a;
76
+ return [
77
+ min + Math.random() * (max - min),
78
+ min + Math.random() * (max - min),
79
+ min + Math.random() * (max - min),
80
+ ];
81
+ }
82
+ export function tgdCalcRandom4(a, b) {
83
+ if (typeof a !== "number")
84
+ return [Math.random(), Math.random(), Math.random(), Math.random()];
85
+ const min = typeof b === "number" ? a : 0;
86
+ const max = typeof b === "number" ? b : a;
87
+ return [
88
+ min + Math.random() * (max - min),
89
+ min + Math.random() * (max - min),
90
+ min + Math.random() * (max - min),
91
+ min + Math.random() * (max - min),
92
+ ];
93
+ }
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9tYXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxZQUFZLENBQUMsS0FBYSxFQUFFLEdBQVcsRUFBRSxHQUFXO0lBQ2hFLElBQUksS0FBSyxHQUFHLEdBQUc7UUFBRSxPQUFPLEdBQUcsQ0FBQTtJQUMzQixJQUFJLEtBQUssR0FBRyxHQUFHO1FBQUUsT0FBTyxHQUFHLENBQUE7SUFDM0IsT0FBTyxLQUFLLENBQUE7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSxlQUFlLENBQzNCLEtBQWEsRUFDYixPQUFlLEVBQ2YsT0FBZSxFQUNmLEtBQWEsRUFDYixLQUFhLEVBQ2IsS0FBSyxHQUFHLEtBQUs7SUFFYixNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7SUFDL0QsSUFBSSxPQUFPLEtBQUssT0FBTztRQUFFLE9BQU8sQ0FBQyxDQUFBO0lBRWpDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFBO0lBQ2pELE9BQU8sS0FBSyxHQUFHLEtBQUssR0FBRyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQTtBQUMxQyxDQUFDO0FBRUQsTUFBTSxVQUFVLFVBQVUsQ0FDdEIsU0FBaUIsRUFDakIsU0FBaUIsRUFDakIsQ0FBUztJQUVULE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsU0FBUyxHQUFHLENBQUMsR0FBRyxTQUFTLENBQUE7QUFDOUMsQ0FBQztBQUVELE1BQU0sV0FBVyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFBO0FBQ2pDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxFQUFFLEdB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tolokoban/tgd",
3
- "version": "2.0.50",
3
+ "version": "2.0.52",
4
4
  "description": "ToloGameDev library for WebGL2",
5
5
  "homepage": "https://tolokoban.github.io/tgd2",
6
6
  "main": "./lib/dist/index.js",
@@ -1,22 +0,0 @@
1
- import { ArrayNumber4, WebglAttributeType, WebglUniformType } from "../types";
2
- import { TgdVec4 } from "../math";
3
- import { TgdMaterial } from "./material";
4
- import { TgdCodeBloc } from "../shader/code";
5
- import { TgdProgram } from "../program";
6
- export type TgdMaterialSolidOptions = Partial<{
7
- color: ArrayNumber4 | TgdVec4;
8
- }>;
9
- export declare class TgdMaterialSolid extends TgdMaterial {
10
- color: TgdVec4;
11
- readonly varyings: {
12
- [name: string]: WebglAttributeType;
13
- };
14
- readonly uniforms: {
15
- [name: string]: WebglUniformType;
16
- };
17
- readonly fragmentShaderCode: TgdCodeBloc;
18
- readonly vertexShaderCode: TgdCodeBloc;
19
- constructor(options?: TgdMaterialSolidOptions);
20
- setUniforms(program: TgdProgram): void;
21
- }
22
- //# sourceMappingURL=solid.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"solid.d.ts","sourceRoot":"","sources":["../../src/material/solid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC/E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC;IAC1C,KAAK,EAAE,YAAY,GAAG,OAAO,CAAA;CAChC,CAAC,CAAA;AAIF,qBAAa,gBAAiB,SAAQ,WAAW;IACtC,KAAK,EAAE,OAAO,CAAA;IAErB,SAAgB,QAAQ,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAAA;KAAE,CAAA;IAChE,SAAgB,QAAQ,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAE7D;IACD,SAAgB,kBAAkB,EAAE,WAAW,CAAA;IAC/C,SAAgB,gBAAgB,EAAE,WAAW,CAAA;gBAEjC,OAAO,GAAE,uBAA4B;IAQjD,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;CAGzC"}
@@ -1,20 +0,0 @@
1
- import { TgdVec4 } from "./../math/index.js";
2
- import { TgdMaterial } from "./material.js";
3
- const DEFAULT_COLOR = [0.111, 0.333, 0.999, 1];
4
- export class TgdMaterialSolid extends TgdMaterial {
5
- constructor(options = {}) {
6
- var _a;
7
- super();
8
- this.uniforms = {
9
- uniColor: "vec4",
10
- };
11
- this.color = new TgdVec4((_a = options.color) !== null && _a !== void 0 ? _a : DEFAULT_COLOR);
12
- this.fragmentShaderCode = [`return uniColor;`];
13
- this.vertexShaderCode = [];
14
- this.varyings = {};
15
- }
16
- setUniforms(program) {
17
- program.uniform4fv("uniColor", this.color);
18
- }
19
- }
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29saWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbWF0ZXJpYWwvc29saWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUNuQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBUXhDLE1BQU0sYUFBYSxHQUFpQixDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFBO0FBRTVELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxXQUFXO0lBVTdDLFlBQVksVUFBbUMsRUFBRTs7UUFDN0MsS0FBSyxFQUFFLENBQUE7UUFQSyxhQUFRLEdBQXlDO1lBQzdELFFBQVEsRUFBRSxNQUFNO1NBQ25CLENBQUE7UUFNRyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksT0FBTyxDQUFDLE1BQUEsT0FBTyxDQUFDLEtBQUssbUNBQUksYUFBYSxDQUFDLENBQUE7UUFDeEQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtRQUM5QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFBO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFBO0lBQ3RCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBbUI7UUFDM0IsT0FBTyxDQUFDLFVBQVUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzlDLENBQUM7Q0FDSiJ9