@tolokoban/tgd 2.0.18 → 2.0.20
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/lib/dist/buffer/buffer.d.ts +5 -2
- package/lib/dist/buffer/buffer.d.ts.map +1 -1
- package/lib/dist/buffer/buffer.js +13 -13
- package/lib/dist/camera/camera-node.js +2 -3
- package/lib/dist/camera/camera-orthographic.js +9 -8
- package/lib/dist/camera/camera-perspective.js +9 -8
- package/lib/dist/camera/camera.js +43 -43
- package/lib/dist/canvas/gizmo/gizmo.js +68 -72
- package/lib/dist/canvas/gizmo/painter/tips.d.ts +0 -1
- package/lib/dist/canvas/gizmo/painter/tips.d.ts.map +1 -1
- package/lib/dist/canvas/gizmo/painter/tips.js +24 -22
- package/lib/dist/canvas/landscape/landscape.js +4 -11
- package/lib/dist/color/color.js +15 -15
- package/lib/dist/context/animation/animation-manager.js +7 -4
- package/lib/dist/context/context.d.ts +5 -18
- package/lib/dist/context/context.d.ts.map +1 -1
- package/lib/dist/context/context.js +43 -79
- package/lib/dist/controller/camera/orbit.d.ts +24 -2
- package/lib/dist/controller/camera/orbit.d.ts.map +1 -1
- package/lib/dist/controller/camera/orbit.js +147 -103
- package/lib/dist/dataset/dataset.d.ts +1 -1
- package/lib/dist/dataset/dataset.d.ts.map +1 -1
- package/lib/dist/dataset/dataset.js +13 -18
- package/lib/dist/debug/debug.js +6 -5
- package/lib/dist/event/event.js +4 -2
- package/lib/dist/filter/chromatic-aberration.js +10 -10
- package/lib/dist/filter/filter.d.ts +2 -1
- package/lib/dist/filter/filter.d.ts.map +1 -1
- package/lib/dist/filter/filter.js +22 -22
- package/lib/dist/filter/hue-rotation.d.ts +1 -1
- package/lib/dist/filter/hue-rotation.d.ts.map +1 -1
- package/lib/dist/filter/hue-rotation.js +5 -5
- package/lib/dist/filter/index.d.ts +1 -0
- package/lib/dist/filter/index.d.ts.map +1 -1
- package/lib/dist/filter/index.js +2 -1
- package/lib/dist/filter/verbatim.d.ts +8 -0
- package/lib/dist/filter/verbatim.d.ts.map +1 -0
- package/lib/dist/filter/verbatim.js +20 -0
- package/lib/dist/filter/zoom.d.ts +3 -1
- package/lib/dist/filter/zoom.d.ts.map +1 -1
- package/lib/dist/filter/zoom.js +10 -6
- package/lib/dist/geometry/geometry.js +9 -17
- package/lib/dist/geometry/index.d.ts +1 -0
- package/lib/dist/geometry/index.d.ts.map +1 -1
- package/lib/dist/geometry/index.js +2 -1
- package/lib/dist/geometry/place.d.ts +12 -0
- package/lib/dist/geometry/place.d.ts.map +1 -0
- package/lib/dist/geometry/place.js +145 -0
- package/lib/dist/geometry/plane.d.ts +12 -0
- package/lib/dist/geometry/plane.d.ts.map +1 -0
- package/lib/dist/geometry/plane.js +51 -0
- package/lib/dist/index.d.ts +4 -1
- package/lib/dist/index.d.ts.map +1 -1
- package/lib/dist/index.js +5 -2
- package/lib/dist/input/inputs.js +3 -4
- package/lib/dist/input/keyboard.js +14 -14
- package/lib/dist/input/pointer.js +80 -104
- package/lib/dist/light/light.js +5 -8
- package/lib/dist/loader/asset.js +14 -11
- package/lib/dist/loader/binary.js +29 -24
- package/lib/dist/loader/image.js +31 -24
- package/lib/dist/log.js +7 -4
- package/lib/dist/material/diffuse.d.ts +3 -1
- package/lib/dist/material/diffuse.d.ts.map +1 -1
- package/lib/dist/material/diffuse.js +17 -20
- package/lib/dist/material/ghost.d.ts +2 -1
- package/lib/dist/material/ghost.d.ts.map +1 -1
- package/lib/dist/material/ghost.js +1 -4
- package/lib/dist/material/hull.d.ts +2 -1
- package/lib/dist/material/hull.d.ts.map +1 -1
- package/lib/dist/material/hull.js +10 -13
- package/lib/dist/material/material.d.ts +2 -1
- package/lib/dist/material/material.d.ts.map +1 -1
- package/lib/dist/material/material.js +14 -20
- package/lib/dist/material/normals.d.ts +2 -1
- package/lib/dist/material/normals.d.ts.map +1 -1
- package/lib/dist/material/normals.js +1 -4
- package/lib/dist/material/solid.d.ts +2 -1
- package/lib/dist/material/solid.d.ts.map +1 -1
- package/lib/dist/material/solid.js +6 -9
- package/lib/dist/math/mat3.d.ts +6 -2
- package/lib/dist/math/mat3.d.ts.map +1 -1
- package/lib/dist/math/mat3.js +43 -4
- package/lib/dist/math/mat4.js +2 -2
- package/lib/dist/math/math.js +5 -5
- package/lib/dist/math/quat.d.ts +4 -1
- package/lib/dist/math/quat.d.ts.map +1 -1
- package/lib/dist/math/quat.js +25 -4
- package/lib/dist/math/transfo.js +12 -10
- package/lib/dist/math/vec4.js +8 -8
- package/lib/dist/painter/axis/axis.js +5 -7
- package/lib/dist/painter/background/background.d.ts +1 -1
- package/lib/dist/painter/background/background.d.ts.map +1 -1
- package/lib/dist/painter/background/background.js +14 -16
- package/lib/dist/painter/clear.d.ts +4 -3
- package/lib/dist/painter/clear.d.ts.map +1 -1
- package/lib/dist/painter/clear.js +16 -19
- package/lib/dist/painter/debug/index.d.ts +2 -0
- package/lib/dist/painter/debug/index.d.ts.map +1 -0
- package/lib/dist/painter/debug/index.js +2 -0
- package/lib/dist/painter/debug/stencil/index.d.ts +2 -0
- package/lib/dist/painter/debug/stencil/index.d.ts.map +1 -0
- package/lib/dist/painter/debug/stencil/index.js +2 -0
- package/lib/dist/painter/debug/stencil/stencil.d.ts +11 -0
- package/lib/dist/painter/debug/stencil/stencil.d.ts.map +1 -0
- package/lib/dist/painter/debug/stencil/stencil.frag +10 -0
- package/lib/dist/painter/debug/stencil/stencil.js +53 -0
- package/lib/dist/painter/debug/stencil/stencil.vert +7 -0
- package/lib/dist/painter/debug/stencil.d.ts +11 -0
- package/lib/dist/painter/debug/stencil.d.ts.map +1 -0
- package/lib/dist/painter/debug/stencil.js +41 -0
- package/lib/dist/painter/depth.d.ts +5 -3
- package/lib/dist/painter/depth.d.ts.map +1 -1
- package/lib/dist/painter/depth.js +4 -10
- package/lib/dist/painter/filter/filter.d.ts +1 -1
- package/lib/dist/painter/filter/filter.d.ts.map +1 -1
- package/lib/dist/painter/filter/filter.js +13 -24
- package/lib/dist/painter/framebuffer.backup.js +10 -13
- package/lib/dist/painter/framebuffer.d.ts +25 -4
- package/lib/dist/painter/framebuffer.d.ts.map +1 -1
- package/lib/dist/painter/framebuffer.js +76 -43
- package/lib/dist/painter/group.js +6 -8
- package/lib/dist/painter/index.d.ts +1 -0
- package/lib/dist/painter/index.d.ts.map +1 -1
- package/lib/dist/painter/index.js +2 -1
- package/lib/dist/painter/logic.js +3 -3
- package/lib/dist/painter/mesh/gltf/gltf.d.ts +1 -1
- package/lib/dist/painter/mesh/gltf/gltf.d.ts.map +1 -1
- package/lib/dist/painter/mesh/gltf/gltf.js +9 -10
- package/lib/dist/painter/mesh/mesh/mesh.d.ts.map +1 -1
- package/lib/dist/painter/mesh/mesh/mesh.js +30 -39
- package/lib/dist/painter/mesh/normals/normals.js +17 -20
- package/lib/dist/painter/node/node.js +8 -8
- package/lib/dist/painter/painter.js +11 -9
- package/lib/dist/painter/segments/segments.d.ts +11 -3
- package/lib/dist/painter/segments/segments.d.ts.map +1 -1
- package/lib/dist/painter/segments/segments.js +27 -27
- package/lib/dist/painter/skybox/skybox.d.ts.map +1 -1
- package/lib/dist/painter/skybox/skybox.js +12 -13
- package/lib/dist/painter/state/state.js +6 -10
- package/lib/dist/parser/gltf/gltf.d.ts +5 -2
- package/lib/dist/parser/gltf/gltf.d.ts.map +1 -1
- package/lib/dist/parser/gltf/gltf.js +86 -55
- package/lib/dist/parser/mesh/wavefront.js +95 -92
- package/lib/dist/program/program.d.ts +6 -4
- package/lib/dist/program/program.d.ts.map +1 -1
- package/lib/dist/program/program.js +6 -11
- package/lib/dist/ref-map.js +9 -5
- package/lib/dist/resource/program.js +1 -2
- package/lib/dist/resource/resource.js +11 -7
- package/lib/dist/resource/texture2d.js +1 -2
- package/lib/dist/resource/textureCube.js +1 -2
- package/lib/dist/shader/fragment.js +2 -14
- package/lib/dist/shader/vertex.js +2 -7
- package/lib/dist/table/index.d.ts +2 -0
- package/lib/dist/table/index.d.ts.map +1 -0
- package/lib/dist/table/index.js +2 -0
- package/lib/dist/table/table.d.ts +41 -0
- package/lib/dist/table/table.d.ts.map +1 -0
- package/lib/dist/table/table.js +101 -0
- package/lib/dist/texture/texture2d.d.ts +45 -22
- package/lib/dist/texture/texture2d.d.ts.map +1 -1
- package/lib/dist/texture/texture2d.js +162 -135
- package/lib/dist/texture/texture2dArray.d.ts +43 -0
- package/lib/dist/texture/texture2dArray.d.ts.map +1 -0
- package/lib/dist/texture/texture2dArray.js +112 -0
- package/lib/dist/texture/textureCube.d.ts +12 -5
- package/lib/dist/texture/textureCube.d.ts.map +1 -1
- package/lib/dist/texture/textureCube.js +7 -25
- package/lib/dist/types/gltf.js +3 -9
- package/lib/dist/types/index.d.ts +0 -2
- package/lib/dist/types/index.d.ts.map +1 -1
- package/lib/dist/types/index.js +1 -3
- package/lib/dist/types/program.d.ts +0 -37
- package/lib/dist/types/program.d.ts.map +1 -1
- package/lib/dist/types/texture2d.d.ts +17 -2
- package/lib/dist/types/texture2d.d.ts.map +1 -1
- package/lib/dist/types/textureCube.d.ts +6 -15
- package/lib/dist/types/textureCube.d.ts.map +1 -1
- package/lib/dist/types/webgl.d.ts +10 -1
- package/lib/dist/types/webgl.d.ts.map +1 -1
- package/lib/dist/types/webgl.js +1 -1
- package/lib/dist/uniform/uniform-buffer-object.d.ts +49 -0
- package/lib/dist/uniform/uniform-buffer-object.d.ts.map +1 -0
- package/lib/dist/uniform/uniform-buffer-object.js +93 -0
- package/lib/dist/utils/action/camera.js +8 -7
- package/lib/dist/utils/bbox.js +3 -3
- package/lib/dist/utils/canvas.d.ts +28 -0
- package/lib/dist/utils/canvas.d.ts.map +1 -1
- package/lib/dist/utils/canvas.js +55 -1
- package/lib/dist/utils/framebuffer.d.ts +2 -0
- package/lib/dist/utils/framebuffer.d.ts.map +1 -0
- package/lib/dist/utils/framebuffer.js +7 -0
- package/lib/dist/utils/fullscreen.js +38 -31
- package/lib/dist/utils/index.d.ts +2 -0
- package/lib/dist/utils/index.d.ts.map +1 -1
- package/lib/dist/utils/index.js +3 -1
- package/lib/dist/utils/pbo.d.ts +9 -0
- package/lib/dist/utils/pbo.d.ts.map +1 -0
- package/lib/dist/utils/pbo.js +32 -0
- package/lib/dist/utils/ref-map.js +9 -5
- package/lib/dist/utils/state/stencil.d.ts +55 -1
- package/lib/dist/utils/state/stencil.d.ts.map +1 -1
- package/lib/dist/utils/state/stencil.js +20 -38
- package/lib/dist/utils/webgl.d.ts +1 -1
- package/lib/dist/utils/webgl.d.ts.map +1 -1
- package/lib/dist/vao/vao.d.ts +2 -1
- package/lib/dist/vao/vao.d.ts.map +1 -1
- package/lib/dist/vao/vao.js +10 -14
- package/lib/dist/webgl/index.d.ts +2 -0
- package/lib/dist/webgl/index.d.ts.map +1 -0
- package/lib/dist/webgl/index.js +2 -0
- package/lib/dist/webgl/texture/index.d.ts +3 -0
- package/lib/dist/webgl/texture/index.d.ts.map +1 -0
- package/lib/dist/webgl/texture/index.js +3 -0
- package/lib/dist/webgl/texture/texture2d.d.ts +38 -0
- package/lib/dist/webgl/texture/texture2d.d.ts.map +1 -0
- package/lib/dist/webgl/texture/texture2d.js +35 -0
- package/lib/dist/webgl/texture/types.d.ts +4 -0
- package/lib/dist/webgl/texture/types.d.ts.map +1 -0
- package/lib/dist/webgl/texture/types.js +2 -0
- package/package.json +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export type TgdBufferOptionTarget = "ARRAY_BUFFER" | "ELEMENT_ARRAY_BUFFER" | "COPY_READ_BUFFER" | "COPY_WRITE_BUFFER" | "TRANSFORM_FEEDBACK_BUFFER" | "UNIFORM_BUFFER" | "PIXEL_PACK_BUFFER" | "PIXEL_UNPACK_BUFFER";
|
|
2
2
|
export type TgdBufferOptionUsage = "STATIC_DRAW" | "DYNAMIC_DRAW" | "STREAM_DRAW" | "STATIC_READ" | "DYNAMIC_READ" | "STREAM_READ" | "STATIC_COPY" | "DYNAMIC_COPY" | "STREAM_COPY";
|
|
3
3
|
export interface TgdBufferOptions {
|
|
4
|
+
data: BufferSource;
|
|
4
5
|
target: TgdBufferOptionTarget;
|
|
5
6
|
usage: TgdBufferOptionUsage;
|
|
6
7
|
}
|
|
@@ -9,10 +10,12 @@ export declare class TgdBuffer {
|
|
|
9
10
|
readonly buffer: WebGLBuffer;
|
|
10
11
|
private _target;
|
|
11
12
|
private _usage;
|
|
12
|
-
constructor(gl: WebGL2RenderingContext,
|
|
13
|
+
constructor(gl: WebGL2RenderingContext, options?: Partial<TgdBufferOptions>);
|
|
13
14
|
get target(): TgdBufferOptionTarget;
|
|
14
15
|
bind(target?: TgdBufferOptionTarget): void;
|
|
15
|
-
bufferData(
|
|
16
|
+
bufferData(options: Partial<TgdBufferOptions> & {
|
|
17
|
+
data: BufferSource;
|
|
18
|
+
}): void;
|
|
16
19
|
delete(): void;
|
|
17
20
|
}
|
|
18
21
|
//# sourceMappingURL=buffer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffer.d.ts","sourceRoot":"","sources":["../../src/buffer/buffer.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAC3B,cAAc,GACd,sBAAsB,GACtB,kBAAkB,GAClB,mBAAmB,GACnB,2BAA2B,GAC3B,gBAAgB,GAChB,mBAAmB,GACnB,qBAAqB,CAAA;AAE3B,MAAM,MAAM,oBAAoB,GAC1B,aAAa,GACb,cAAc,GACd,aAAa,GACb,aAAa,GACb,cAAc,GACd,aAAa,GACb,aAAa,GACb,cAAc,GACd,aAAa,CAAA;AAEnB,MAAM,WAAW,gBAAgB;IAC7B,MAAM,EAAE,qBAAqB,CAAA;IAC7B,KAAK,EAAE,oBAAoB,CAAA;CAC9B;AAED,qBAAa,SAAS;aAOE,EAAE,EAAE,sBAAsB;IAN9C,SAAgB,MAAM,EAAE,WAAW,CAAA;IAEnC,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,MAAM,CAAsB;gBAGhB,EAAE,EAAE,sBAAsB,EAC1C,
|
|
1
|
+
{"version":3,"file":"buffer.d.ts","sourceRoot":"","sources":["../../src/buffer/buffer.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAC3B,cAAc,GACd,sBAAsB,GACtB,kBAAkB,GAClB,mBAAmB,GACnB,2BAA2B,GAC3B,gBAAgB,GAChB,mBAAmB,GACnB,qBAAqB,CAAA;AAE3B,MAAM,MAAM,oBAAoB,GAC1B,aAAa,GACb,cAAc,GACd,aAAa,GACb,aAAa,GACb,cAAc,GACd,aAAa,GACb,aAAa,GACb,cAAc,GACd,aAAa,CAAA;AAEnB,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,YAAY,CAAA;IAClB,MAAM,EAAE,qBAAqB,CAAA;IAC7B,KAAK,EAAE,oBAAoB,CAAA;CAC9B;AAED,qBAAa,SAAS;aAOE,EAAE,EAAE,sBAAsB;IAN9C,SAAgB,MAAM,EAAE,WAAW,CAAA;IAEnC,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,MAAM,CAAsB;gBAGhB,EAAE,EAAE,sBAAsB,EAC1C,OAAO,GAAE,OAAO,CAAC,gBAAgB,CAAM;IAc3C,IAAI,MAAM,0BAET;IAED,IAAI,CAAC,MAAM,CAAC,EAAE,qBAAqB;IAMnC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG;QAAE,IAAI,EAAE,YAAY,CAAA;KAAE;IAQtE,MAAM;CAIT"}
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
export class TgdBuffer {
|
|
2
|
-
gl
|
|
3
|
-
|
|
4
|
-
_target;
|
|
5
|
-
_usage;
|
|
6
|
-
constructor(gl, data, options) {
|
|
2
|
+
constructor(gl, options = {}) {
|
|
3
|
+
var _a, _b;
|
|
7
4
|
this.gl = gl;
|
|
8
5
|
const buffer = gl.createBuffer();
|
|
9
6
|
if (!buffer)
|
|
10
7
|
throw Error("Unable to create WebGLBuffer!");
|
|
11
|
-
this._target = options
|
|
12
|
-
this._usage = options
|
|
8
|
+
this._target = (_a = options === null || options === void 0 ? void 0 : options.target) !== null && _a !== void 0 ? _a : "ARRAY_BUFFER";
|
|
9
|
+
this._usage = (_b = options === null || options === void 0 ? void 0 : options.usage) !== null && _b !== void 0 ? _b : "STATIC_DRAW";
|
|
13
10
|
this.buffer = buffer;
|
|
11
|
+
const { data } = options;
|
|
14
12
|
if (data) {
|
|
15
|
-
this.bufferData(
|
|
13
|
+
this.bufferData(Object.assign(Object.assign({}, options), { data }));
|
|
16
14
|
}
|
|
17
15
|
}
|
|
18
16
|
get target() {
|
|
@@ -20,18 +18,20 @@ export class TgdBuffer {
|
|
|
20
18
|
}
|
|
21
19
|
bind(target) {
|
|
22
20
|
const { gl, buffer } = this;
|
|
23
|
-
this._target = target
|
|
21
|
+
this._target = target !== null && target !== void 0 ? target : this._target;
|
|
24
22
|
gl.bindBuffer(gl[this._target], buffer);
|
|
25
23
|
}
|
|
26
|
-
bufferData(
|
|
24
|
+
bufferData(options) {
|
|
25
|
+
var _a, _b;
|
|
27
26
|
const { gl } = this;
|
|
27
|
+
this._usage = (_a = options.usage) !== null && _a !== void 0 ? _a : this._usage;
|
|
28
|
+
this._target = (_b = options.target) !== null && _b !== void 0 ? _b : this._target;
|
|
28
29
|
this.bind(options.target);
|
|
29
|
-
this.
|
|
30
|
-
gl.bufferData(gl[this._target], data, gl[this._usage]);
|
|
30
|
+
gl.bufferData(gl[this._target], options.data, gl[this._usage]);
|
|
31
31
|
}
|
|
32
32
|
delete() {
|
|
33
33
|
const { gl, buffer } = this;
|
|
34
34
|
gl.deleteBuffer(buffer);
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVmZmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2J1ZmZlci9idWZmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMkJBLE1BQU0sT0FBTyxTQUFTO0lBTWxCLFlBQ29CLEVBQTBCLEVBQzFDLFVBQXFDLEVBQUU7O1FBRHZCLE9BQUUsR0FBRixFQUFFLENBQXdCO1FBRzFDLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQTtRQUNoQyxJQUFJLENBQUMsTUFBTTtZQUFFLE1BQU0sS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUE7UUFFekQsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFBLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxNQUFNLG1DQUFJLGNBQWMsQ0FBQTtRQUNoRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQUEsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLEtBQUssbUNBQUksYUFBYSxDQUFBO1FBQzdDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ3BCLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxPQUFPLENBQUE7UUFDeEIsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNQLElBQUksQ0FBQyxVQUFVLGlDQUFNLE9BQU8sS0FBRSxJQUFJLElBQUcsQ0FBQTtRQUN6QyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksTUFBTTtRQUNOLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQTtJQUN2QixDQUFDO0lBRUQsSUFBSSxDQUFDLE1BQThCO1FBQy9CLE1BQU0sRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFBO1FBQzNCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxhQUFOLE1BQU0sY0FBTixNQUFNLEdBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQTtRQUNyQyxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDM0MsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUEyRDs7UUFDbEUsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQTtRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQUEsT0FBTyxDQUFDLEtBQUssbUNBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQTtRQUMxQyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQUEsT0FBTyxDQUFDLE1BQU0sbUNBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQTtRQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUN6QixFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7SUFDbEUsQ0FBQztJQUVELE1BQU07UUFDRixNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQTtRQUMzQixFQUFFLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzNCLENBQUM7Q0FDSiJ9
|
|
@@ -5,14 +5,13 @@ import { TgdMat4 } from "./../math/index.js";
|
|
|
5
5
|
* Once in such a node, a camera cannot be moved directly.
|
|
6
6
|
*/
|
|
7
7
|
export class TgdCameraNode {
|
|
8
|
-
camera;
|
|
9
|
-
matrixTransfo = new TgdMat4();
|
|
10
8
|
constructor(camera) {
|
|
11
9
|
this.camera = camera;
|
|
10
|
+
this.matrixTransfo = new TgdMat4();
|
|
12
11
|
}
|
|
13
12
|
paint(_time, _delay) {
|
|
14
13
|
this.camera.fromTransfo(this.matrixTransfo);
|
|
15
14
|
}
|
|
16
15
|
delete() { }
|
|
17
16
|
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLW5vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2FtZXJhL2NhbWVyYS1ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFJbkM7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxhQUFhO0lBR3RCLFlBQW1CLE1BQWlCO1FBQWpCLFdBQU0sR0FBTixNQUFNLENBQVc7UUFGcEIsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFBO0lBRU4sQ0FBQztJQUV4QyxLQUFLLENBQUMsS0FBYSxFQUFFLE1BQWM7UUFDL0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0lBQy9DLENBQUM7SUFFRCxNQUFNLEtBQVUsQ0FBQztDQUNwQiJ9
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { TgdMat4, TgdVec3 } from "./../math/index.js";
|
|
2
2
|
import { TgdCamera } from "./camera.js";
|
|
3
3
|
export class TgdCameraOrthographic extends TgdCamera {
|
|
4
|
-
_matrixProjection = new TgdMat4();
|
|
5
|
-
_spaceHeight = 10;
|
|
6
|
-
_ray = {
|
|
7
|
-
origin: new TgdVec3(),
|
|
8
|
-
direction: new TgdVec3(),
|
|
9
|
-
};
|
|
10
4
|
constructor(options = {}) {
|
|
5
|
+
var _a;
|
|
11
6
|
super(options);
|
|
12
|
-
this.
|
|
7
|
+
this._matrixProjection = new TgdMat4();
|
|
8
|
+
this._spaceHeight = 10;
|
|
9
|
+
this._ray = {
|
|
10
|
+
origin: new TgdVec3(),
|
|
11
|
+
direction: new TgdVec3(),
|
|
12
|
+
};
|
|
13
|
+
this.spaceHeight = (_a = options.spaceHeight) !== null && _a !== void 0 ? _a : 10;
|
|
13
14
|
}
|
|
14
15
|
copyProjectionFrom(camera) {
|
|
15
16
|
this.spaceHeight = camera.spaceHeight;
|
|
@@ -94,4 +95,4 @@ export class TgdCameraOrthographic extends TgdCamera {
|
|
|
94
95
|
this.dirtyProjection = true;
|
|
95
96
|
}
|
|
96
97
|
}
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLW9ydGhvZ3JhcGhpYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jYW1lcmEvY2FtZXJhLW9ydGhvZ3JhcGhpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsU0FBUyxFQUFvQixNQUFNLFVBQVUsQ0FBQTtBQU10RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsU0FBUztJQVFoRCxZQUFZLFVBQXdDLEVBQUU7O1FBQ2xELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQVJELHNCQUFpQixHQUFHLElBQUksT0FBTyxFQUFFLENBQUE7UUFDMUMsaUJBQVksR0FBRyxFQUFFLENBQUE7UUFDUixTQUFJLEdBQUc7WUFDcEIsTUFBTSxFQUFFLElBQUksT0FBTyxFQUFFO1lBQ3JCLFNBQVMsRUFBRSxJQUFJLE9BQU8sRUFBRTtTQUMzQixDQUFBO1FBSUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFBLE9BQU8sQ0FBQyxXQUFXLG1DQUFJLEVBQUUsQ0FBQTtJQUNoRCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsTUFBNkI7UUFDNUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFBO1FBQ3JDLE9BQU8sSUFBSSxDQUFBO0lBQ2YsQ0FBQztJQUVELE9BQU8sQ0FDSCxPQUFlLEVBQ2YsT0FBZTtRQUVmLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQTtRQUN2QyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUMxQixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQTtRQUNoQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFBO1FBQ3BDLE1BQU07YUFD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QUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtRQUNoQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ1YsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNWLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDVixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ1YsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtRQUNaLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDWCxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFBO1FBQzdCLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUE7UUFDN0IsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUE7UUFDbkIsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNYLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFBO0lBQy9CLENBQUM7Q0FDSiJ9
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { TgdMat4, TgdVec3 } from "./../math/index.js";
|
|
2
2
|
import { TgdCamera } from "./camera.js";
|
|
3
3
|
export class TgdCameraPerspective extends TgdCamera {
|
|
4
|
-
_matrixProjection = new TgdMat4();
|
|
5
|
-
_fovy = Math.PI / 4;
|
|
6
|
-
_ray = {
|
|
7
|
-
origin: new TgdVec3(),
|
|
8
|
-
direction: new TgdVec3(),
|
|
9
|
-
};
|
|
10
4
|
constructor(options = {}) {
|
|
5
|
+
var _a;
|
|
11
6
|
super(options);
|
|
12
|
-
this.
|
|
7
|
+
this._matrixProjection = new TgdMat4();
|
|
8
|
+
this._fovy = Math.PI / 4;
|
|
9
|
+
this._ray = {
|
|
10
|
+
origin: new TgdVec3(),
|
|
11
|
+
direction: new TgdVec3(),
|
|
12
|
+
};
|
|
13
|
+
this._fovy = (_a = options.fovy) !== null && _a !== void 0 ? _a : Math.PI / 4;
|
|
13
14
|
}
|
|
14
15
|
copyProjectionFrom(camera) {
|
|
15
16
|
this.fovy = camera.fovy;
|
|
@@ -91,4 +92,4 @@ export class TgdCameraPerspective extends TgdCamera {
|
|
|
91
92
|
this.dirtyProjection = true;
|
|
92
93
|
}
|
|
93
94
|
}
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLXBlcnNwZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NhbWVyYS9jYW1lcmEtcGVyc3BlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBb0IsTUFBTSxVQUFVLENBQUE7QUFNdEQsTUFBTSxPQUFPLG9CQUFxQixTQUFRLFNBQVM7SUFRL0MsWUFBWSxVQUF1QyxFQUFFOztRQUNqRCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUE7UUFSRCxzQkFBaUIsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFBO1FBQzFDLFVBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQTtRQUNWLFNBQUksR0FBRztZQUNwQixNQUFNLEVBQUUsSUFBSSxPQUFPLEVBQUU7WUFDckIsU0FBUyxFQUFFLElBQUksT0FBTyxFQUFFO1NBQzNCLENBQUE7UUFJRyxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQUEsT0FBTyxDQUFDLElBQUksbUNBQUksSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUE7SUFDNUMsQ0FBQztJQUVELGtCQUFrQixDQUFDLE1BQTRCO1FBQzNDLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQTtRQUN2QixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUE7UUFDdkIsSUFBSSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFBO1FBQ3JCLE9BQU8sSUFBSSxDQUFBO0lBQ2YsQ0FBQztJQUVELE9BQU8sQ0FDSCxPQUFlLEVBQ2YsT0FBZTtRQUVmLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQTtRQUN2QyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFR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
|
|
@@ -2,48 +2,47 @@ import { TgdQuat, TgdVec3, TgdMat4 } from "./../math/index.js";
|
|
|
2
2
|
import { TgdMat3 } from "./../math/mat3.js";
|
|
3
3
|
import { TgdEvent } from "../event/index.js";
|
|
4
4
|
export class TgdCamera {
|
|
5
|
-
static incrementalId = 1;
|
|
6
|
-
/**
|
|
7
|
-
* A change in the position/orientation/size of the camera.
|
|
8
|
-
*/
|
|
9
|
-
eventTransformChange = new TgdEvent();
|
|
10
|
-
name;
|
|
11
|
-
_screenWidth = 1920;
|
|
12
|
-
_screenHeight = 1080;
|
|
13
|
-
_screenAspectRatio = 1920 / 1080;
|
|
14
|
-
/** Do we need recalculation? */
|
|
15
|
-
_dirtyModelView = true;
|
|
16
|
-
dirtyModelViewInverse = true;
|
|
17
|
-
_dirtyAxis = true;
|
|
18
|
-
_dirtyProjection = true;
|
|
19
|
-
dirtyProjectionInverse = true;
|
|
20
|
-
_near = 1e-3;
|
|
21
|
-
_far = Infinity;
|
|
22
|
-
_axisX = new TgdVec3();
|
|
23
|
-
_axisY = new TgdVec3();
|
|
24
|
-
_axisZ = new TgdVec3();
|
|
25
|
-
// transformation
|
|
26
|
-
_matrixModelView = new TgdMat4();
|
|
27
|
-
_matrixModelViewInverse = new TgdMat4();
|
|
28
|
-
_matrixProjectionInverse = new TgdMat4();
|
|
29
|
-
_orientation = new TgdQuat(0, 0, 0, 1).face("+X+Z-Y");
|
|
30
|
-
_shift = new TgdVec3(0, 0, 0);
|
|
31
|
-
_target = new TgdVec3(0, 0, 0);
|
|
32
|
-
_position = new TgdVec3(0, 0, 0);
|
|
33
|
-
_distance = 10;
|
|
34
|
-
_zoom = 1;
|
|
35
|
-
// For fast calculations (we don't want to recreate them).
|
|
36
|
-
tmpMat3 = new TgdMat3();
|
|
37
|
-
tmpVec3 = new TgdVec3();
|
|
38
5
|
constructor(options = {}) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
this.
|
|
44
|
-
|
|
6
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
7
|
+
/**
|
|
8
|
+
* A change in the position/orientation/size of the camera.
|
|
9
|
+
*/
|
|
10
|
+
this.eventTransformChange = new TgdEvent();
|
|
11
|
+
this._screenWidth = 1920;
|
|
12
|
+
this._screenHeight = 1080;
|
|
13
|
+
this._screenAspectRatio = 1920 / 1080;
|
|
14
|
+
/** Do we need recalculation? */
|
|
15
|
+
this._dirtyModelView = true;
|
|
16
|
+
this.dirtyModelViewInverse = true;
|
|
17
|
+
this._dirtyAxis = true;
|
|
18
|
+
this._dirtyProjection = true;
|
|
19
|
+
this.dirtyProjectionInverse = true;
|
|
20
|
+
this._near = 1e-3;
|
|
21
|
+
this._far = Infinity;
|
|
22
|
+
this._axisX = new TgdVec3();
|
|
23
|
+
this._axisY = new TgdVec3();
|
|
24
|
+
this._axisZ = new TgdVec3();
|
|
25
|
+
// transformation
|
|
26
|
+
this._matrixModelView = new TgdMat4();
|
|
27
|
+
this._matrixModelViewInverse = new TgdMat4();
|
|
28
|
+
this._matrixProjectionInverse = new TgdMat4();
|
|
29
|
+
this._orientation = new TgdQuat(0, 0, 0, 1).face("+X+Z-Y");
|
|
30
|
+
this._shift = new TgdVec3(0, 0, 0);
|
|
31
|
+
this._target = new TgdVec3(0, 0, 0);
|
|
32
|
+
this._position = new TgdVec3(0, 0, 0);
|
|
33
|
+
this._distance = 10;
|
|
34
|
+
this._zoom = 1;
|
|
35
|
+
// For fast calculations (we don't want to recreate them).
|
|
36
|
+
this.tmpMat3 = new TgdMat3();
|
|
37
|
+
this.tmpVec3 = new TgdVec3();
|
|
38
|
+
this.name = (_a = options.name) !== null && _a !== void 0 ? _a : `TgdCamera#${TgdCamera.incrementalId++}`;
|
|
39
|
+
this._near = (_b = options.near) !== null && _b !== void 0 ? _b : 1e-3;
|
|
40
|
+
this._far = (_c = options.far) !== null && _c !== void 0 ? _c : 1e6;
|
|
41
|
+
this._distance = (_d = options.distance) !== null && _d !== void 0 ? _d : 10;
|
|
42
|
+
this._zoom = (_e = options.zoom) !== null && _e !== void 0 ? _e : 1;
|
|
43
|
+
const [tx, ty, tz] = (_f = options.target) !== null && _f !== void 0 ? _f : [0, 0, 0];
|
|
45
44
|
this.target.reset(tx, ty, tz);
|
|
46
|
-
const [qx, qy, qz, qw] = options.orientation
|
|
45
|
+
const [qx, qy, qz, qw] = (_g = options.orientation) !== null && _g !== void 0 ? _g : [0, 0, 0, 1];
|
|
47
46
|
this.orientation.reset(qx, qy, qz, qw);
|
|
48
47
|
}
|
|
49
48
|
getCurrentState() {
|
|
@@ -132,7 +131,7 @@ export class TgdCamera {
|
|
|
132
131
|
const y = transfo.m31;
|
|
133
132
|
const z = transfo.m32;
|
|
134
133
|
this.setTarget(x, y, z);
|
|
135
|
-
this._orientation.
|
|
134
|
+
this._orientation.fromMatrix(transfo);
|
|
136
135
|
this.dirtyModelView = true;
|
|
137
136
|
this.dirtyAxis = true;
|
|
138
137
|
return this;
|
|
@@ -325,7 +324,7 @@ export class TgdCamera {
|
|
|
325
324
|
return this;
|
|
326
325
|
}
|
|
327
326
|
debug(caption) {
|
|
328
|
-
const name = caption
|
|
327
|
+
const name = caption !== null && caption !== void 0 ? caption : this.name;
|
|
329
328
|
this._orientation.debug(`${name} orientation`);
|
|
330
329
|
this._target.debug(`${name} target`);
|
|
331
330
|
this._position.debug(`${name} position`);
|
|
@@ -390,4 +389,5 @@ export class TgdCamera {
|
|
|
390
389
|
this.dirtyProjectionInverse = true;
|
|
391
390
|
}
|
|
392
391
|
}
|
|
393
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NhbWVyYS9jYW1lcmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFlLE1BQU0sV0FBVyxDQUFBO0FBQ2xFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBc0JuQyxNQUFNLE9BQWdCLFNBQVM7SUFDbkIsTUFBTSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUE7SUFFaEM7O09BRUc7SUFDYSxvQkFBb0IsR0FBRyxJQUFJLFFBQVEsRUFBYSxDQUFBO0lBQ2hELElBQUksQ0FBUTtJQUVwQixZQUFZLEdBQUcsSUFBSSxDQUFBO0lBQ25CLGFBQWEsR0FBRyxJQUFJLENBQUE7SUFDcEIsa0JBQWtCLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQTtJQUV4QyxnQ0FBZ0M7SUFDeEIsZUFBZSxHQUFHLElBQUksQ0FBQTtJQUN0QixxQkFBcUIsR0FBRyxJQUFJLENBQUE7SUFDNUIsVUFBVSxHQUFHLElBQUksQ0FBQTtJQUNmLGdCQUFnQixHQUFHLElBQUksQ0FBQTtJQUN2QixzQkFBc0IsR0FBRyxJQUFJLENBQUE7SUFFN0IsS0FBSyxHQUFHLElBQUksQ0FBQTtJQUNaLElBQUksR0FBRyxRQUFRLENBQUE7SUFFUixNQUFNLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtJQUN0QixNQUFNLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtJQUN0QixNQUFNLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtJQUN2QyxpQkFBaUI7SUFDQSxnQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFBO0lBQ2hDLHVCQUF1QixHQUFHLElBQUksT0FBTyxFQUFFLENBQUE7SUFDdkMsd0JBQXdCLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FB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
|
|
392
|
+
TgdCamera.incrementalId = 1;
|
|
393
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NhbWVyYS9jYW1lcmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFlLE1BQU0sV0FBVyxDQUFBO0FBQ2xFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBc0JuQyxNQUFNLE9BQWdCLFNBQVM7SUF3QzNCLFlBQVksVUFBNEIsRUFBRTs7UUFyQzFDOztXQUVHO1FBQ2EseUJBQW9CLEdBQUcsSUFBSSxRQUFRLEVBQWEsQ0FBQTtRQUd4RCxpQkFBWSxHQUFHLElBQUksQ0FBQTtRQUNuQixrQkFBYSxHQUFHLElBQUksQ0FBQTtRQUNwQix1QkFBa0IsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBRXhDLGdDQUFnQztRQUN4QixvQkFBZSxHQUFHLElBQUksQ0FBQTtRQUN0QiwwQkFBcUIsR0FBRyxJQUFJLENBQUE7UUFDNUIsZUFBVSxHQUFHLElBQUksQ0FBQTtRQUNmLHFCQUFnQixHQUFHLElBQUksQ0FBQTtRQUN2QiwyQkFBc0IsR0FBRyxJQUFJLENBQUE7UUFFN0IsVUFBSyxHQUFHLElBQUksQ0FBQTtRQUNaLFNBQUksR0FBRyxRQUFRLENBQUE7UUFFUixXQUFNLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQUN0QixXQUFNLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQUN0QixXQUFNLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQUN2QyxpQkFBaUI7UUFDQSxxQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFBO1FBQ2hDLDRCQUF1QixHQUFHLElBQUksT0FBTyxFQUFFLENBQUE7UUFDdkMsNkJBQXdCLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQUN4QyxpQkFBWSxHQUFHLElBQUks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
|
|
@@ -10,24 +10,70 @@ import { TipsPainter } from "./painter/tips.js";
|
|
|
10
10
|
* You can click one of the axis to force the camera to face it.
|
|
11
11
|
*/
|
|
12
12
|
export class TgdCanvasGizmo {
|
|
13
|
-
options;
|
|
14
|
-
/**
|
|
15
|
-
* The user clicked a tip, so we dispatch the target orientation.
|
|
16
|
-
*/
|
|
17
|
-
eventTipClick = new TgdEvent();
|
|
18
|
-
_canvas = null;
|
|
19
|
-
context = null;
|
|
20
|
-
cameraExternal = null;
|
|
21
|
-
cameraInternal = new TgdCameraPerspective({
|
|
22
|
-
fovy: Math.PI / 3,
|
|
23
|
-
distance: 2.7,
|
|
24
|
-
near: 0.01,
|
|
25
|
-
far: 10,
|
|
26
|
-
});
|
|
27
|
-
orbiter = null;
|
|
28
|
-
tipsPainter = null;
|
|
29
13
|
constructor(options = {}) {
|
|
30
14
|
this.options = options;
|
|
15
|
+
/**
|
|
16
|
+
* The user clicked a tip, so we dispatch the target orientation.
|
|
17
|
+
*/
|
|
18
|
+
this.eventTipClick = new TgdEvent();
|
|
19
|
+
this._canvas = null;
|
|
20
|
+
this.context = null;
|
|
21
|
+
this.cameraExternal = null;
|
|
22
|
+
this.cameraInternal = new TgdCameraPerspective({
|
|
23
|
+
fovy: Math.PI / 3,
|
|
24
|
+
distance: 2.7,
|
|
25
|
+
near: 0.01,
|
|
26
|
+
far: 10,
|
|
27
|
+
});
|
|
28
|
+
this.orbiter = null;
|
|
29
|
+
this.tipsPainter = null;
|
|
30
|
+
this.handleExternalToInternal = (externalCamera) => {
|
|
31
|
+
this.cameraInternal.orientation = externalCamera.orientation;
|
|
32
|
+
};
|
|
33
|
+
this.handleInternalToExternal = (internalCamera) => {
|
|
34
|
+
const { cameraExternal } = this;
|
|
35
|
+
if (cameraExternal) {
|
|
36
|
+
cameraExternal.orientation = internalCamera.orientation;
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
this.handleTap = (evt) => {
|
|
40
|
+
var _a;
|
|
41
|
+
const camera = (_a = this.context) === null || _a === void 0 ? void 0 : _a.camera;
|
|
42
|
+
if (!camera)
|
|
43
|
+
return;
|
|
44
|
+
const { origin, direction } = camera.castRay(evt.x, evt.y);
|
|
45
|
+
const maxDist = 1;
|
|
46
|
+
let bestDist = maxDist;
|
|
47
|
+
let bestTip = TIPS[0];
|
|
48
|
+
for (const tip of TIPS) {
|
|
49
|
+
const dist = tip.distanceToLineSquared(origin, direction);
|
|
50
|
+
if (dist < bestDist) {
|
|
51
|
+
bestDist = dist;
|
|
52
|
+
bestTip = tip;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
if (bestDist < maxDist) {
|
|
56
|
+
const axisX = new TgdVec3();
|
|
57
|
+
const axisY = new TgdVec3();
|
|
58
|
+
const axisZ = bestTip;
|
|
59
|
+
axisX.from(this.findAxisX());
|
|
60
|
+
if (axisX.isClose(axisZ)) {
|
|
61
|
+
axisY.from(this.findAxisY());
|
|
62
|
+
axisX.from(axisY).cross(axisZ);
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
axisY.from(axisZ).cross(axisX);
|
|
66
|
+
}
|
|
67
|
+
const quat = new TgdQuat().fromAxis(axisX, axisY, axisZ);
|
|
68
|
+
if (quat.isEqual(camera.orientation)) {
|
|
69
|
+
quat.rotateAroundY(Math.PI);
|
|
70
|
+
}
|
|
71
|
+
this.eventTipClick.dispatch({
|
|
72
|
+
from: new TgdQuat(camera.orientation),
|
|
73
|
+
to: quat,
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
};
|
|
31
77
|
if (options.canvas)
|
|
32
78
|
this.canvas = options.canvas;
|
|
33
79
|
}
|
|
@@ -47,24 +93,17 @@ export class TgdCanvasGizmo {
|
|
|
47
93
|
}
|
|
48
94
|
}
|
|
49
95
|
attach() {
|
|
96
|
+
var _a;
|
|
50
97
|
const camera = this.cameraExternal;
|
|
51
98
|
if (camera)
|
|
52
99
|
camera.eventTransformChange.addListener(this.handleExternalToInternal);
|
|
53
|
-
this.context
|
|
100
|
+
(_a = this.context) === null || _a === void 0 ? void 0 : _a.paint();
|
|
54
101
|
}
|
|
55
|
-
handleExternalToInternal = (externalCamera) => {
|
|
56
|
-
this.cameraInternal.orientation = externalCamera.orientation;
|
|
57
|
-
};
|
|
58
|
-
handleInternalToExternal = (internalCamera) => {
|
|
59
|
-
const { cameraExternal } = this;
|
|
60
|
-
if (cameraExternal) {
|
|
61
|
-
cameraExternal.orientation = internalCamera.orientation;
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
102
|
get canvas() {
|
|
65
103
|
return this._canvas;
|
|
66
104
|
}
|
|
67
105
|
set canvas(canvas) {
|
|
106
|
+
var _a;
|
|
68
107
|
if (canvas === this._canvas)
|
|
69
108
|
return;
|
|
70
109
|
this._canvas = canvas;
|
|
@@ -78,16 +117,10 @@ export class TgdCanvasGizmo {
|
|
|
78
117
|
orbiter.eventChange.removeListener(this.handleInternalToExternal);
|
|
79
118
|
}
|
|
80
119
|
}
|
|
81
|
-
this.tipsPainter
|
|
120
|
+
(_a = this.tipsPainter) === null || _a === void 0 ? void 0 : _a.delete();
|
|
82
121
|
if (!canvas)
|
|
83
122
|
return;
|
|
84
|
-
const context = new TgdContext(canvas, {
|
|
85
|
-
alpha: true,
|
|
86
|
-
depth: true,
|
|
87
|
-
antialias: true,
|
|
88
|
-
name: "GizmoCanvas",
|
|
89
|
-
...this.options,
|
|
90
|
-
});
|
|
123
|
+
const context = new TgdContext(canvas, Object.assign({ alpha: true, depth: true, antialias: true, name: "GizmoCanvas" }, this.options));
|
|
91
124
|
context.inputs.pointer.eventTap.addListener(this.handleTap);
|
|
92
125
|
this.context = context;
|
|
93
126
|
context.camera = this.cameraInternal;
|
|
@@ -104,43 +137,6 @@ export class TgdCanvasGizmo {
|
|
|
104
137
|
}), new TgdPainterDepth(context, { enabled: true }), painter);
|
|
105
138
|
context.paint();
|
|
106
139
|
}
|
|
107
|
-
handleTap = (evt) => {
|
|
108
|
-
const camera = this.context?.camera;
|
|
109
|
-
if (!camera)
|
|
110
|
-
return;
|
|
111
|
-
const { origin, direction } = camera.castRay(evt.x, evt.y);
|
|
112
|
-
const maxDist = 1;
|
|
113
|
-
let bestDist = maxDist;
|
|
114
|
-
let bestTip = TIPS[0];
|
|
115
|
-
for (const tip of TIPS) {
|
|
116
|
-
const dist = tip.distanceToLineSquared(origin, direction);
|
|
117
|
-
if (dist < bestDist) {
|
|
118
|
-
bestDist = dist;
|
|
119
|
-
bestTip = tip;
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
if (bestDist < maxDist) {
|
|
123
|
-
const axisX = new TgdVec3();
|
|
124
|
-
const axisY = new TgdVec3();
|
|
125
|
-
const axisZ = bestTip;
|
|
126
|
-
axisX.from(this.findAxisX());
|
|
127
|
-
if (axisX.isClose(axisZ)) {
|
|
128
|
-
axisY.from(this.findAxisY());
|
|
129
|
-
axisX.from(axisY).cross(axisZ);
|
|
130
|
-
}
|
|
131
|
-
else {
|
|
132
|
-
axisY.from(axisZ).cross(axisX);
|
|
133
|
-
}
|
|
134
|
-
const quat = new TgdQuat().fromAxis(axisX, axisY, axisZ);
|
|
135
|
-
if (quat.isEqual(camera.orientation)) {
|
|
136
|
-
quat.rotateAroundY(Math.PI);
|
|
137
|
-
}
|
|
138
|
-
this.eventTipClick.dispatch({
|
|
139
|
-
from: new TgdQuat(camera.orientation),
|
|
140
|
-
to: quat,
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
};
|
|
144
140
|
findAxisX() {
|
|
145
141
|
let bestScore = 0;
|
|
146
142
|
let bestTip = TIPS[0];
|
|
@@ -180,4 +176,4 @@ const TIPS = [
|
|
|
180
176
|
new TgdVec3(0, -1, 0),
|
|
181
177
|
new TgdVec3(0, 0, -1),
|
|
182
178
|
];
|
|
183
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l6bW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2FudmFzL2dpem1vL2dpem1vLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYSxvQkFBb0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUM3RCxPQUFPLEVBQUUsVUFBVSxFQUFxQixNQUFNLGNBQWMsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUUvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFNNUM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGNBQWM7SUFxQnZCLFlBQTZCLFVBQWlDLEVBQUU7UUFBbkMsWUFBTyxHQUFQLE9BQU8sQ0FBNEI7UUFwQmhFOztXQUVHO1FBQ0ksa0JBQWEsR0FBRyxJQUFJLFFBQVEsRUFHL0IsQ0FBQTtRQUVJLFlBQU8sR0FBNkIsSUFBSSxDQUFBO1FBQ3hDLFlBQU8sR0FBc0IsSUFBSSxDQUFBO1FBQ2pDLG1CQUFjLEdBQXFCLElBQUksQ0FBQTtRQUM5QixtQkFBYyxHQUFHLElBQUksb0JBQW9CLENBQUM7WUFDdkQsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQztZQUNqQixRQUFRLEVBQUUsR0FBRztZQUNiLElBQUksRUFBRSxJQUFJO1lBQ1YsR0FBRyxFQUFFLEVBQUU7U0FDVixDQUFDLENBQUE7UUFDTSxZQUFPLEdBQW9DLElBQUksQ0FBQTtRQUMvQyxnQkFBVyxHQUF1QixJQUFJLENBQUE7UUFrQzdCLDZCQUF3QixHQUFHLENBQUMsY0FBeUIsRUFBRSxF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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tips.d.ts","sourceRoot":"","sources":["../../../../src/canvas/gizmo/painter/tips.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"tips.d.ts","sourceRoot":"","sources":["../../../../src/canvas/gizmo/painter/tips.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AASjD,qBAAa,WAAY,SAAQ,UAAU;IAK3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAJpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAY;IAChC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;gBAEP,OAAO,EAAE,UAAU;IAuChD,MAAM,IAAI,IAAI;IAId,KAAK,IAAI,IAAI;CAYhB"}
|