@tolokoban/tgd 2.0.18 → 2.0.22
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 +14 -14
- package/lib/dist/camera/camera-node.d.ts +2 -2
- package/lib/dist/camera/camera-node.d.ts.map +1 -1
- package/lib/dist/camera/camera-node.js +4 -5
- package/lib/dist/camera/camera-orthographic.d.ts.map +1 -1
- package/lib/dist/camera/camera-orthographic.js +14 -12
- package/lib/dist/camera/camera-perspective.d.ts.map +1 -1
- package/lib/dist/camera/camera-perspective.js +20 -38
- package/lib/dist/camera/camera.d.ts +9 -56
- package/lib/dist/camera/camera.d.ts.map +1 -1
- package/lib/dist/camera/camera.js +50 -279
- package/lib/dist/camera/index.d.ts +0 -1
- package/lib/dist/camera/index.d.ts.map +1 -1
- package/lib/dist/camera/index.js +1 -2
- package/lib/dist/canvas/gizmo/gizmo.d.ts.map +1 -1
- package/lib/dist/canvas/gizmo/gizmo.js +72 -78
- 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 +38 -36
- package/lib/dist/canvas/landscape/landscape.js +4 -11
- package/lib/dist/code/color.d.ts +12 -0
- package/lib/dist/code/color.d.ts.map +1 -0
- package/lib/dist/code/color.js +26 -0
- package/lib/dist/code/consts.d.ts +16 -0
- package/lib/dist/code/consts.d.ts.map +1 -0
- package/lib/dist/code/consts.js +20 -0
- package/lib/dist/code/coords.d.ts +46 -0
- package/lib/dist/code/coords.d.ts.map +1 -0
- package/lib/dist/code/coords.js +95 -0
- package/lib/dist/code/index.d.ts +6 -0
- package/lib/dist/code/index.d.ts.map +1 -0
- package/lib/dist/code/index.js +6 -0
- package/lib/dist/code/random.d.ts +8 -0
- package/lib/dist/code/random.d.ts.map +1 -0
- package/lib/dist/code/random.js +13 -0
- package/lib/dist/code/transfo.d.ts +8 -0
- package/lib/dist/code/transfo.d.ts.map +1 -0
- package/lib/dist/code/transfo.js +19 -0
- package/lib/dist/color/color.js +24 -24
- package/lib/dist/context/animation/animation-manager.js +9 -6
- package/lib/dist/context/context.d.ts +11 -18
- package/lib/dist/context/context.d.ts.map +1 -1
- package/lib/dist/context/context.js +71 -96
- package/lib/dist/controller/camera/orbit.d.ts +33 -4
- package/lib/dist/controller/camera/orbit.d.ts.map +1 -1
- package/lib/dist/controller/camera/orbit.js +163 -117
- 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 +72 -72
- package/lib/dist/debug/debug.d.ts +1 -1
- package/lib/dist/debug/debug.d.ts.map +1 -1
- package/lib/dist/debug/debug.js +8 -7
- package/lib/dist/debug/tools.js +3 -3
- package/lib/dist/event/event.js +6 -3
- package/lib/dist/filter/blur.d.ts.map +1 -1
- package/lib/dist/filter/blur.js +9 -8
- 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/box.d.ts +2 -1
- package/lib/dist/geometry/box.d.ts.map +1 -1
- package/lib/dist/geometry/box.js +103 -115
- package/lib/dist/geometry/geometry.d.ts.map +1 -1
- package/lib/dist/geometry/geometry.js +38 -48
- 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/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 +6 -1
- package/lib/dist/index.d.ts.map +1 -1
- package/lib/dist/index.js +7 -2
- package/lib/dist/input/inputs.js +3 -4
- package/lib/dist/input/keyboard.js +14 -14
- package/lib/dist/input/pointer.d.ts.map +1 -1
- package/lib/dist/input/pointer.js +85 -112
- package/lib/dist/interface/transformable.d.ts +3 -1
- package/lib/dist/interface/transformable.d.ts.map +1 -1
- package/lib/dist/light/light.js +5 -8
- package/lib/dist/loader/asset.js +15 -12
- package/lib/dist/loader/binary.js +29 -24
- package/lib/dist/loader/image.js +31 -24
- package/lib/dist/loader/index.d.ts +1 -0
- package/lib/dist/loader/index.d.ts.map +1 -1
- package/lib/dist/loader/index.js +2 -1
- package/lib/dist/loader/video.d.ts +6 -0
- package/lib/dist/loader/video.d.ts.map +1 -0
- package/lib/dist/loader/video.js +23 -0
- package/lib/dist/log.d.ts +1 -1
- package/lib/dist/log.d.ts.map +1 -1
- package/lib/dist/log.js +19 -16
- 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/common.test.d.ts +2 -0
- package/lib/dist/math/common.test.d.ts.map +1 -0
- package/lib/dist/math/common.test.js +22 -0
- package/lib/dist/math/index.d.ts +0 -1
- package/lib/dist/math/index.d.ts.map +1 -1
- package/lib/dist/math/index.js +1 -2
- package/lib/dist/math/mat3.d.ts +44 -16
- package/lib/dist/math/mat3.d.ts.map +1 -1
- package/lib/dist/math/mat3.js +140 -74
- package/lib/dist/math/mat3.test.d.ts +2 -0
- package/lib/dist/math/mat3.test.d.ts.map +1 -0
- package/lib/dist/math/mat3.test.js +32 -0
- package/lib/dist/math/mat4.d.ts +54 -121
- package/lib/dist/math/mat4.d.ts.map +1 -1
- package/lib/dist/math/mat4.js +167 -288
- package/lib/dist/math/quat.d.ts +9 -4
- package/lib/dist/math/quat.d.ts.map +1 -1
- package/lib/dist/math/quat.js +57 -70
- package/lib/dist/math/quat.test.d.ts +1 -0
- package/lib/dist/math/quat.test.d.ts.map +1 -1
- package/lib/dist/math/quat.test.js +81 -27
- package/lib/dist/math/transfo.d.ts +32 -5
- package/lib/dist/math/transfo.d.ts.map +1 -1
- package/lib/dist/math/transfo.js +135 -46
- package/lib/dist/math/vec2.js +6 -6
- package/lib/dist/math/vec3.d.ts +11 -3
- package/lib/dist/math/vec3.d.ts.map +1 -1
- package/lib/dist/math/vec3.js +30 -17
- package/lib/dist/math/vec3.test.js +20 -1
- package/lib/dist/math/vec4.d.ts +12 -3
- package/lib/dist/math/vec4.d.ts.map +1 -1
- package/lib/dist/math/vec4.js +36 -18
- package/lib/dist/painter/{axis/axis.d.ts → axes/axes.d.ts} +4 -4
- package/lib/dist/painter/{axis/axis.d.ts.map → axes/axes.d.ts.map} +1 -1
- package/lib/dist/painter/{axis/axis.frag → axes/axes.frag} +0 -0
- package/lib/dist/painter/axes/axes.js +82 -0
- package/lib/dist/painter/{axis/axis.vert → axes/axes.vert} +0 -0
- package/lib/dist/painter/axes/index.d.ts +2 -0
- package/lib/dist/painter/axes/index.d.ts.map +1 -0
- package/lib/dist/painter/axes/index.js +2 -0
- package/lib/dist/painter/background/background.d.ts +4 -3
- package/lib/dist/painter/background/background.d.ts.map +1 -1
- package/lib/dist/painter/background/background.js +15 -17
- 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 +18 -22
- 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/depth.d.ts +7 -5
- package/lib/dist/painter/depth.d.ts.map +1 -1
- package/lib/dist/painter/depth.js +5 -11
- package/lib/dist/painter/filter/filter.d.ts +3 -3
- package/lib/dist/painter/filter/filter.d.ts.map +1 -1
- package/lib/dist/painter/filter/filter.js +44 -46
- 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 +11 -12
- package/lib/dist/painter/index.d.ts +2 -1
- package/lib/dist/painter/index.d.ts.map +1 -1
- package/lib/dist/painter/index.js +3 -2
- 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 +2 -2
- package/lib/dist/painter/mesh/mesh/mesh.d.ts.map +1 -1
- package/lib/dist/painter/mesh/mesh/mesh.js +45 -43
- package/lib/dist/painter/mesh/normals/normals.d.ts.map +1 -1
- package/lib/dist/painter/mesh/normals/normals.js +19 -22
- package/lib/dist/painter/node/node.d.ts +12 -12
- package/lib/dist/painter/node/node.d.ts.map +1 -1
- package/lib/dist/painter/node/node.js +32 -43
- 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 +38 -38
- package/lib/dist/painter/skybox/skybox.d.ts.map +1 -1
- package/lib/dist/painter/skybox/skybox.js +13 -14
- package/lib/dist/painter/state/state.d.ts +4 -6
- package/lib/dist/painter/state/state.d.ts.map +1 -1
- package/lib/dist/painter/state/state.js +83 -65
- package/lib/dist/parser/for-each-line.d.ts.map +1 -1
- package/lib/dist/parser/for-each-line.js +5 -5
- 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 +114 -83
- package/lib/dist/parser/gltf/parser.js +10 -11
- package/lib/dist/parser/mesh/wavefront.d.ts.map +1 -1
- package/lib/dist/parser/mesh/wavefront.js +106 -111
- package/lib/dist/program/program.d.ts +2 -2
- package/lib/dist/program/program.d.ts.map +1 -1
- package/lib/dist/program/program.js +27 -33
- package/lib/dist/{ref-map.d.ts → reference-map.d.ts} +4 -4
- package/lib/dist/reference-map.d.ts.map +1 -0
- package/lib/dist/reference-map.js +52 -0
- package/lib/dist/shader/code.d.ts +2 -2
- package/lib/dist/shader/code.d.ts.map +1 -1
- package/lib/dist/shader/code.js +12 -12
- package/lib/dist/shader/fragment.js +7 -19
- package/lib/dist/shader/vertex.js +7 -12
- 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 +104 -0
- package/lib/dist/texture/index.d.ts +1 -1
- package/lib/dist/texture/index.d.ts.map +1 -1
- package/lib/dist/texture/index.js +2 -2
- package/lib/dist/texture/texture-cube.d.ts +24 -0
- package/lib/dist/texture/texture-cube.d.ts.map +1 -0
- package/lib/dist/texture/texture-cube.js +69 -0
- package/lib/dist/texture/texture2d.d.ts +47 -21
- package/lib/dist/texture/texture2d.d.ts.map +1 -1
- package/lib/dist/texture/texture2d.js +178 -133
- package/lib/dist/types/elements.js +2 -2
- package/lib/dist/types/gltf.js +3 -9
- package/lib/dist/types/guards.d.ts.map +1 -1
- package/lib/dist/types/guards.js +36 -37
- package/lib/dist/types/index.d.ts +1 -3
- package/lib/dist/types/index.d.ts.map +1 -1
- package/lib/dist/types/index.js +2 -4
- package/lib/dist/types/program.d.ts +0 -37
- package/lib/dist/types/program.d.ts.map +1 -1
- package/lib/dist/types/{textureCube.d.ts → texture-cube.d.ts} +7 -16
- package/lib/dist/types/texture-cube.d.ts.map +1 -0
- package/lib/dist/types/texture-cube.js +2 -0
- package/lib/dist/types/webgl.d.ts +15 -5
- package/lib/dist/types/webgl.d.ts.map +1 -1
- package/lib/dist/types/webgl.js +37 -30
- package/lib/dist/utils/action/camera.d.ts.map +1 -1
- package/lib/dist/utils/action/camera.js +15 -25
- package/lib/dist/utils/action/transfo.d.ts +3 -0
- package/lib/dist/utils/action/transfo.d.ts.map +1 -0
- package/lib/dist/utils/action/transfo.js +18 -0
- package/lib/dist/utils/action/vector.d.ts.map +1 -1
- package/lib/dist/utils/action/vector.js +11 -11
- package/lib/dist/utils/assert.d.ts.map +1 -1
- package/lib/dist/utils/assert.js +2 -2
- package/lib/dist/utils/bbox.js +3 -3
- package/lib/dist/utils/bbox.test.js +18 -19
- 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 +59 -5
- package/lib/dist/utils/{ease-func/ease-func.d.ts → easing-function/easing-function.d.ts} +1 -1
- package/lib/dist/utils/easing-function/easing-function.d.ts.map +1 -0
- package/lib/dist/utils/easing-function/easing-function.js +142 -0
- package/lib/dist/utils/easing-function/index.d.ts +2 -0
- package/lib/dist/utils/easing-function/index.d.ts.map +1 -0
- package/lib/dist/utils/easing-function/index.js +2 -0
- 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.d.ts +1 -1
- package/lib/dist/utils/fullscreen.d.ts.map +1 -1
- package/lib/dist/utils/fullscreen.js +44 -37
- package/lib/dist/utils/index.d.ts +4 -1
- package/lib/dist/utils/index.d.ts.map +1 -1
- package/lib/dist/utils/index.js +5 -2
- package/lib/dist/utils/math.d.ts +4 -2
- package/lib/dist/utils/math.d.ts.map +1 -1
- package/lib/dist/utils/math.js +12 -4
- 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.d.ts → reference-map.d.ts} +4 -4
- package/lib/dist/utils/reference-map.d.ts.map +1 -0
- package/lib/dist/utils/reference-map.js +52 -0
- package/lib/dist/utils/state/blend.d.ts +5 -5
- package/lib/dist/utils/state/blend.d.ts.map +1 -1
- package/lib/dist/utils/state/blend.js +10 -10
- package/lib/dist/utils/state/depth.d.ts +2 -2
- package/lib/dist/utils/state/depth.d.ts.map +1 -1
- package/lib/dist/utils/state/depth.js +5 -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 +28 -46
- package/lib/dist/utils/template.js +3 -3
- package/lib/dist/utils/webgl.d.ts +1 -1
- package/lib/dist/utils/webgl.d.ts.map +1 -1
- package/lib/dist/utils/webgl.js +5 -5
- 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 +19 -19
- 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
- package/lib/dist/math/math.d.ts +0 -9
- package/lib/dist/math/math.d.ts.map +0 -1
- package/lib/dist/math/math.js +0 -13
- package/lib/dist/painter/axis/axis.js +0 -84
- package/lib/dist/painter/axis/index.d.ts +0 -2
- package/lib/dist/painter/axis/index.d.ts.map +0 -1
- package/lib/dist/painter/axis/index.js +0 -2
- package/lib/dist/painter/framebuffer-old.d.ts +0 -38
- package/lib/dist/painter/framebuffer-old.d.ts.map +0 -1
- package/lib/dist/painter/framebuffer-old.js +0 -102
- package/lib/dist/painter/framebuffer.backup.d.ts +0 -39
- package/lib/dist/painter/framebuffer.backup.d.ts.map +0 -1
- package/lib/dist/painter/framebuffer.backup.js +0 -125
- package/lib/dist/painter/mesh/hull/hull.d.ts +0 -12
- package/lib/dist/painter/mesh/hull/hull.d.ts.map +0 -1
- package/lib/dist/painter/mesh/hull/hull.js +0 -11
- package/lib/dist/painter/node.d.ts +0 -32
- package/lib/dist/painter/node.d.ts.map +0 -1
- package/lib/dist/painter/node.js +0 -73
- package/lib/dist/ref-map.d.ts.map +0 -1
- package/lib/dist/ref-map.js +0 -48
- package/lib/dist/resource/index.d.ts +0 -5
- package/lib/dist/resource/index.d.ts.map +0 -1
- package/lib/dist/resource/index.js +0 -5
- package/lib/dist/resource/program.d.ts +0 -10
- package/lib/dist/resource/program.d.ts.map +0 -1
- package/lib/dist/resource/program.js +0 -20
- package/lib/dist/resource/resource.d.ts +0 -17
- package/lib/dist/resource/resource.d.ts.map +0 -1
- package/lib/dist/resource/resource.js +0 -48
- package/lib/dist/resource/texture2d.d.ts +0 -10
- package/lib/dist/resource/texture2d.d.ts.map +0 -1
- package/lib/dist/resource/texture2d.js +0 -20
- package/lib/dist/resource/textureCube.d.ts +0 -9
- package/lib/dist/resource/textureCube.d.ts.map +0 -1
- package/lib/dist/resource/textureCube.js +0 -17
- package/lib/dist/scene/scene-node.d.ts +0 -8
- package/lib/dist/scene/scene-node.d.ts.map +0 -1
- package/lib/dist/scene/scene-node.js +0 -13
- package/lib/dist/texture/textureCube.d.ts +0 -17
- package/lib/dist/texture/textureCube.d.ts.map +0 -1
- package/lib/dist/texture/textureCube.js +0 -87
- package/lib/dist/types/context.d.ts +0 -27
- package/lib/dist/types/context.d.ts.map +0 -1
- package/lib/dist/types/context.js +0 -2
- package/lib/dist/types/texture2d.d.ts +0 -36
- package/lib/dist/types/texture2d.d.ts.map +0 -1
- package/lib/dist/types/texture2d.js +0 -2
- package/lib/dist/types/textureCube.d.ts.map +0 -1
- package/lib/dist/types/textureCube.js +0 -2
- package/lib/dist/utils/ease-func/ease-func.d.ts.map +0 -1
- package/lib/dist/utils/ease-func/ease-func.js +0 -142
- package/lib/dist/utils/ease-func/index.d.ts +0 -2
- package/lib/dist/utils/ease-func/index.d.ts.map +0 -1
- package/lib/dist/utils/ease-func/index.js +0 -2
- package/lib/dist/utils/fetch/fetch.d.ts +0 -2
- package/lib/dist/utils/fetch/fetch.d.ts.map +0 -1
- package/lib/dist/utils/fetch/fetch.js +0 -5
- package/lib/dist/utils/fetch/index.d.ts +0 -2
- package/lib/dist/utils/fetch/index.d.ts.map +0 -1
- package/lib/dist/utils/fetch/index.js +0 -2
- package/lib/dist/utils/ref-map.d.ts.map +0 -1
- package/lib/dist/utils/ref-map.js +0 -48
package/lib/dist/math/math.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export class TgdMath {
|
|
2
|
-
static TAU = Math.PI * 2;
|
|
3
|
-
static INVERSE_TAU = 0.5 / Math.PI;
|
|
4
|
-
static INVERSE_PI = 1 / Math.PI;
|
|
5
|
-
static INVERSE_180 = 1 / 180;
|
|
6
|
-
static radiansToDegrees(radians) {
|
|
7
|
-
return radians * 180 * TgdMath.INVERSE_PI;
|
|
8
|
-
}
|
|
9
|
-
static degreesToRadians(degrees) {
|
|
10
|
-
return degrees * Math.PI * TgdMath.INVERSE_180;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYXRoL21hdGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLE9BQU87SUFDaEIsTUFBTSxDQUFVLEdBQUcsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQTtJQUVqQyxNQUFNLENBQVUsV0FBVyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFBO0lBRTNDLE1BQU0sQ0FBVSxVQUFVLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUE7SUFFeEMsTUFBTSxDQUFVLFdBQVcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFBO0lBRXJDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFlO1FBQ25DLE9BQU8sT0FBTyxHQUFHLEdBQUcsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFBO0lBQzdDLENBQUM7SUFFRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBZTtRQUNuQyxPQUFPLE9BQU8sR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUE7SUFDbEQsQ0FBQyJ9
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import { TgdPainter } from "./../painter.js";
|
|
2
|
-
import { TgdDataset } from "./../../dataset/index.js";
|
|
3
|
-
import { TgdVec4 } from "./../../math/index.js";
|
|
4
|
-
import VERT from "./axis.vert";
|
|
5
|
-
import FRAG from "./axis.frag";
|
|
6
|
-
export class TgdPainterAxis extends TgdPainter {
|
|
7
|
-
context;
|
|
8
|
-
vao;
|
|
9
|
-
prg;
|
|
10
|
-
translateAndScale;
|
|
11
|
-
constructor(context, { x = 0, y = 0, z = 0, scale = 1 } = {}) {
|
|
12
|
-
super();
|
|
13
|
-
this.context = context;
|
|
14
|
-
const prg = context.programs.create({
|
|
15
|
-
vert: VERT,
|
|
16
|
-
frag: FRAG,
|
|
17
|
-
});
|
|
18
|
-
this.prg = prg;
|
|
19
|
-
const dataset = new TgdDataset({
|
|
20
|
-
attPos: "vec3",
|
|
21
|
-
attColor: "vec4",
|
|
22
|
-
});
|
|
23
|
-
// prettier-ignore
|
|
24
|
-
dataset.set("attPos", new Float32Array([
|
|
25
|
-
0, 0, 0, +1, +0, +0,
|
|
26
|
-
0, 0, 0, +0, +1, +0,
|
|
27
|
-
0, 0, 0, +0, +0, +1,
|
|
28
|
-
0, 0, 0, -1, -0, -0,
|
|
29
|
-
0, 0, 0, -0, -1, -0,
|
|
30
|
-
0, 0, 0, -0, -0, -1,
|
|
31
|
-
]));
|
|
32
|
-
const a = 1;
|
|
33
|
-
const b = 0.25;
|
|
34
|
-
// prettier-ignore
|
|
35
|
-
dataset.set("attColor", new Float32Array([
|
|
36
|
-
a, 0, 0, 1, a, 0, 0, 1,
|
|
37
|
-
0, a, 0, 1, 0, a, 0, 1,
|
|
38
|
-
0, 0, a, 1, 0, 0, a, 1,
|
|
39
|
-
b, 0, 0, 1, b, 0, 0, 1,
|
|
40
|
-
0, b, 0, 1, 0, b, 0, 1,
|
|
41
|
-
0, 0, b, 1, 0, 0, b, 1,
|
|
42
|
-
]));
|
|
43
|
-
this.vao = context.createVAO(prg, [dataset]);
|
|
44
|
-
this.translateAndScale = new TgdVec4(x, y, z, scale);
|
|
45
|
-
}
|
|
46
|
-
get x() {
|
|
47
|
-
return this.translateAndScale.x;
|
|
48
|
-
}
|
|
49
|
-
set x(v) {
|
|
50
|
-
this.translateAndScale.x = v;
|
|
51
|
-
}
|
|
52
|
-
get y() {
|
|
53
|
-
return this.translateAndScale.y;
|
|
54
|
-
}
|
|
55
|
-
set y(v) {
|
|
56
|
-
this.translateAndScale.y = v;
|
|
57
|
-
}
|
|
58
|
-
get z() {
|
|
59
|
-
return this.translateAndScale.z;
|
|
60
|
-
}
|
|
61
|
-
set z(v) {
|
|
62
|
-
this.translateAndScale.z = v;
|
|
63
|
-
}
|
|
64
|
-
get scale() {
|
|
65
|
-
return this.translateAndScale.w;
|
|
66
|
-
}
|
|
67
|
-
set scale(v) {
|
|
68
|
-
this.translateAndScale.w = v;
|
|
69
|
-
}
|
|
70
|
-
delete() {
|
|
71
|
-
this.vao.delete();
|
|
72
|
-
}
|
|
73
|
-
paint() {
|
|
74
|
-
const { context, prg, vao, translateAndScale } = this;
|
|
75
|
-
const { gl, camera } = context;
|
|
76
|
-
prg.use();
|
|
77
|
-
prg.uniform4fv("uniTS", translateAndScale);
|
|
78
|
-
prg.uniformMatrix4fv("uniModelViewMatrix", camera.matrixModelView);
|
|
79
|
-
prg.uniformMatrix4fv("uniProjectionMatrix", camera.matrixProjection);
|
|
80
|
-
vao.bind();
|
|
81
|
-
gl.drawArrays(gl.LINES, 0, 12);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhpcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWludGVyL2F4aXMvYXhpcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV6QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBRW5DLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQTtBQUM5QixPQUFPLElBQUksTUFBTSxhQUFhLENBQUE7QUFTOUIsTUFBTSxPQUFPLGNBQWUsU0FBUSxVQUFVO0lBTXRCO0lBTEgsR0FBRyxDQUFnQjtJQUNuQixHQUFHLENBQVk7SUFDZixpQkFBaUIsQ0FBUztJQUUzQyxZQUNvQixPQUFtQixFQUNuQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxDQUFDLEtBQXFDLEVBQUU7UUFFdkUsS0FBSyxFQUFFLENBQUE7UUFIUyxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBSW5DLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQ2hDLElBQUksRUFBRSxJQUFJO1lBQ1YsSUFBSSxFQUFFLElBQUk7U0FDYixDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQTtRQUNkLE1BQU0sT0FBTyxHQUFHLElBQUksVUFBVSxDQUFDO1lBQzNCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsUUFBUSxFQUFFLE1BQU07U0FDbkIsQ0FBQyxDQUFBO1FBQ0Ysa0JBQWtCO1FBQ2xCLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLElBQUksWUFBWSxDQUFDO1lBQ25DLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENB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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/painter/axis/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { TgdContext } from "../context";
|
|
2
|
-
import { TgdTexture2D, TgdTexture2DOptions } from "../types";
|
|
3
|
-
import { TgdPainterGroup } from "./group";
|
|
4
|
-
export interface TgdPainterFramebufferOldOptions extends TgdTexture2DOptions {
|
|
5
|
-
/**
|
|
6
|
-
* Do we need a depth buffer?
|
|
7
|
-
*/
|
|
8
|
-
depthBuffer: boolean;
|
|
9
|
-
/**
|
|
10
|
-
* If defined, the framebuffer will automatically match the
|
|
11
|
-
* current viewport size multiplied by `viewportMatchingScale`.
|
|
12
|
-
*
|
|
13
|
-
* for instance, if `viewportMatchingScale === 0.5` and the viewport
|
|
14
|
-
* id (640, 480), then the framebuffer will have a size of
|
|
15
|
-
* (320, 240).
|
|
16
|
-
*/
|
|
17
|
-
viewportMatchingScale?: number;
|
|
18
|
-
}
|
|
19
|
-
export declare class TgdPainterFramebufferOld extends TgdPainterGroup {
|
|
20
|
-
private readonly context;
|
|
21
|
-
private readonly options;
|
|
22
|
-
private dirty;
|
|
23
|
-
private _width;
|
|
24
|
-
private _height;
|
|
25
|
-
private _texture;
|
|
26
|
-
private _framebuffer;
|
|
27
|
-
private _depthBuffer;
|
|
28
|
-
constructor(context: TgdContext, options: Partial<TgdPainterFramebufferOldOptions>);
|
|
29
|
-
get texture(): TgdTexture2D;
|
|
30
|
-
get width(): number;
|
|
31
|
-
set width(v: number);
|
|
32
|
-
get height(): number;
|
|
33
|
-
set height(v: number);
|
|
34
|
-
private createFramebufferIfNeeded;
|
|
35
|
-
paint(time: number, delay: number): void;
|
|
36
|
-
delete(): void;
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=framebuffer-old.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"framebuffer-old.d.ts","sourceRoot":"","sources":["../../src/painter/framebuffer-old.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzC,MAAM,WAAW,+BAAgC,SAAQ,mBAAmB;IACxE;;OAEG;IACH,WAAW,EAAE,OAAO,CAAA;IACpB;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;CACjC;AAED,qBAAa,wBAAyB,SAAQ,eAAe;IASrD,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT5B,OAAO,CAAC,KAAK,CAAO;IACpB,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,OAAO,CAAI;IACnB,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,YAAY,CAAgC;IACpD,OAAO,CAAC,YAAY,CAAiC;gBAGhC,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,OAAO,CAAC,+BAA+B,CAAC;IAOtE,IAAI,OAAO,IAAI,YAAY,CAK1B;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IACD,IAAI,KAAK,CAAC,CAAC,EAAE,MAAM,EAKlB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IACD,IAAI,MAAM,CAAC,CAAC,EAAE,MAAM,EAKnB;IAED,OAAO,CAAC,yBAAyB;IA+CjC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAcxC,MAAM;CAgBT"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import { TgdPainterGroup } from "./group.js";
|
|
2
|
-
export class TgdPainterFramebufferOld extends TgdPainterGroup {
|
|
3
|
-
context;
|
|
4
|
-
options;
|
|
5
|
-
dirty = true;
|
|
6
|
-
_width = 0;
|
|
7
|
-
_height = 0;
|
|
8
|
-
_texture = null;
|
|
9
|
-
_framebuffer = null;
|
|
10
|
-
_depthBuffer = null;
|
|
11
|
-
constructor(context, options) {
|
|
12
|
-
super();
|
|
13
|
-
this.context = context;
|
|
14
|
-
this.options = options;
|
|
15
|
-
this._width = options.width ?? 0;
|
|
16
|
-
this._height = options.height ?? 0;
|
|
17
|
-
}
|
|
18
|
-
get texture() {
|
|
19
|
-
if (!this._texture) {
|
|
20
|
-
this._texture = this.context.textures2D.getDefaultEmpty();
|
|
21
|
-
}
|
|
22
|
-
return this._texture;
|
|
23
|
-
}
|
|
24
|
-
get width() {
|
|
25
|
-
return this._width;
|
|
26
|
-
}
|
|
27
|
-
set width(v) {
|
|
28
|
-
if (this._width === v)
|
|
29
|
-
return;
|
|
30
|
-
this._width = v;
|
|
31
|
-
this.dirty = true;
|
|
32
|
-
}
|
|
33
|
-
get height() {
|
|
34
|
-
return this._height;
|
|
35
|
-
}
|
|
36
|
-
set height(v) {
|
|
37
|
-
if (this._height === v)
|
|
38
|
-
return;
|
|
39
|
-
this._height = v;
|
|
40
|
-
this.dirty = true;
|
|
41
|
-
}
|
|
42
|
-
createFramebufferIfNeeded() {
|
|
43
|
-
if (!this.dirty)
|
|
44
|
-
return;
|
|
45
|
-
const { context, width, height } = this;
|
|
46
|
-
const { gl } = context;
|
|
47
|
-
this.delete();
|
|
48
|
-
this._texture = context.textures2D.create({
|
|
49
|
-
width: Math.max(width, 1),
|
|
50
|
-
height: Math.max(height, 1),
|
|
51
|
-
internalFormat: "RGB",
|
|
52
|
-
generateMipMap: true,
|
|
53
|
-
});
|
|
54
|
-
this._framebuffer = context.createFramebuffer();
|
|
55
|
-
gl.bindFramebuffer(gl.FRAMEBUFFER, this._framebuffer);
|
|
56
|
-
gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, this._texture.glTexture, 0);
|
|
57
|
-
if (this.options.depthBuffer === true) {
|
|
58
|
-
// Create a Depth Buffer, because the default
|
|
59
|
-
// framebuffer has none.
|
|
60
|
-
const depthBuffer = gl.createRenderbuffer();
|
|
61
|
-
if (!depthBuffer)
|
|
62
|
-
throw Error("Unable to create WebGLRenderBuffer!");
|
|
63
|
-
this._depthBuffer = depthBuffer;
|
|
64
|
-
gl.bindRenderbuffer(gl.RENDERBUFFER, depthBuffer);
|
|
65
|
-
gl.renderbufferStorage(gl.RENDERBUFFER, gl.DEPTH_COMPONENT16, width, height);
|
|
66
|
-
gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.RENDERBUFFER, depthBuffer);
|
|
67
|
-
}
|
|
68
|
-
// const status = gl.checkFramebufferStatus(gl.FRAMEBUFFER)
|
|
69
|
-
// console.log("Framebuffer status:", context.lookupWebglConstant(status))
|
|
70
|
-
this.dirty = false;
|
|
71
|
-
}
|
|
72
|
-
paint(time, delay) {
|
|
73
|
-
const { context, options } = this;
|
|
74
|
-
const { gl } = context;
|
|
75
|
-
const { viewportMatchingScale } = options;
|
|
76
|
-
if (typeof viewportMatchingScale === "number") {
|
|
77
|
-
this.width = Math.round(context.width * viewportMatchingScale);
|
|
78
|
-
this.height = Math.round(context.height * viewportMatchingScale);
|
|
79
|
-
}
|
|
80
|
-
this.createFramebufferIfNeeded();
|
|
81
|
-
gl.bindFramebuffer(gl.FRAMEBUFFER, this._framebuffer);
|
|
82
|
-
super.paint(time, delay);
|
|
83
|
-
gl.bindFramebuffer(gl.FRAMEBUFFER, null);
|
|
84
|
-
}
|
|
85
|
-
delete() {
|
|
86
|
-
const { context, _texture, _framebuffer, _depthBuffer } = this;
|
|
87
|
-
const { gl } = context;
|
|
88
|
-
if (_texture) {
|
|
89
|
-
gl.deleteTexture(_texture.glTexture);
|
|
90
|
-
this._texture = null;
|
|
91
|
-
}
|
|
92
|
-
if (_framebuffer) {
|
|
93
|
-
gl.deleteFramebuffer(_framebuffer);
|
|
94
|
-
this._framebuffer = null;
|
|
95
|
-
}
|
|
96
|
-
if (_depthBuffer) {
|
|
97
|
-
gl.deleteRenderbuffer(_depthBuffer);
|
|
98
|
-
this._depthBuffer = null;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWVidWZmZXItb2xkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BhaW50ZXIvZnJhbWVidWZmZXItb2xkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxTQUFTLENBQUE7QUFrQnpDLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxlQUFlO0lBU3BDO0lBQ0E7SUFUYixLQUFLLEdBQUcsSUFBSSxDQUFBO0lBQ1osTUFBTSxHQUFHLENBQUMsQ0FBQTtJQUNWLE9BQU8sR0FBRyxDQUFDLENBQUE7SUFDWCxRQUFRLEdBQXdCLElBQUksQ0FBQTtJQUNwQyxZQUFZLEdBQTRCLElBQUksQ0FBQTtJQUM1QyxZQUFZLEdBQTZCLElBQUksQ0FBQTtJQUVyRCxZQUNxQixPQUFtQixFQUNuQixPQUFpRDtRQUVsRSxLQUFLLEVBQUUsQ0FBQTtRQUhVLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsWUFBTyxHQUFQLE9BQU8sQ0FBMEM7UUFHbEUsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQTtRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFBO0lBQ3RDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDUCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDN0QsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQTtJQUN4QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFBO0lBQ3RCLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxDQUFTO1FBQ2YsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUM7WUFBRSxPQUFN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
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { TgdContext } from "../context";
|
|
2
|
-
import { TgdTexture2D, TgdTexture2DOptions } from "../types";
|
|
3
|
-
import { TgdPainterGroup } from "./group";
|
|
4
|
-
export interface TgdPainterFramebufferOptions extends TgdTexture2DOptions {
|
|
5
|
-
/**
|
|
6
|
-
* Do we need a depth buffer?
|
|
7
|
-
*/
|
|
8
|
-
depthBuffer: boolean;
|
|
9
|
-
/**
|
|
10
|
-
* If defined, the framebuffer will automatically match the
|
|
11
|
-
* current viewport size multiplied by `viewportMatchingScale`.
|
|
12
|
-
*
|
|
13
|
-
* for instance, if `viewportMatchingScale === 0.5` and the viewport
|
|
14
|
-
* id (640, 480), then the framebuffer will have a size of
|
|
15
|
-
* (320, 240).
|
|
16
|
-
*/
|
|
17
|
-
viewportMatchingScale?: number;
|
|
18
|
-
name: string;
|
|
19
|
-
}
|
|
20
|
-
export declare class TgdPainterFramebuffer extends TgdPainterGroup {
|
|
21
|
-
private readonly context;
|
|
22
|
-
private readonly options;
|
|
23
|
-
readonly texture: TgdTexture2D;
|
|
24
|
-
readonly textureDepth: TgdTexture2D;
|
|
25
|
-
private framebuffer;
|
|
26
|
-
private depthbuffer;
|
|
27
|
-
private dirty;
|
|
28
|
-
private _width;
|
|
29
|
-
private _height;
|
|
30
|
-
constructor(context: TgdContext, options: Partial<TgdPainterFramebufferOptions>);
|
|
31
|
-
get width(): number;
|
|
32
|
-
set width(v: number);
|
|
33
|
-
get height(): number;
|
|
34
|
-
set height(v: number);
|
|
35
|
-
paint(time: number, delay: number): void;
|
|
36
|
-
delete(): void;
|
|
37
|
-
private createFramebufferIfNeeded;
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=framebuffer.backup.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"framebuffer.backup.d.ts","sourceRoot":"","sources":["../../src/painter/framebuffer.backup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzC,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACrE;;OAEG;IACH,WAAW,EAAE,OAAO,CAAA;IACpB;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,IAAI,EAAE,MAAM,CAAA;CACf;AAID,qBAAa,qBAAsB,SAAQ,eAAe;IAUlD,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAV5B,SAAgB,OAAO,EAAE,YAAY,CAAA;IACrC,SAAgB,YAAY,EAAE,YAAY,CAAA;IAC1C,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,OAAO,CAAI;gBAGE,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,OAAO,CAAC,4BAA4B,CAAC;IAuBnE,IAAI,KAAK,IAAI,MAAM,CAElB;IACD,IAAI,KAAK,CAAC,CAAC,EAAE,MAAM,EAKlB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IACD,IAAI,MAAM,CAAC,CAAC,EAAE,MAAM,EAKnB;IAED,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAuCxC,MAAM;IAUN,OAAO,CAAC,yBAAyB;CAqBpC"}
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import { TgdPainterGroup } from "./group.js";
|
|
2
|
-
const DEFAULT_TEXTURE_SIZE = 256;
|
|
3
|
-
export class TgdPainterFramebuffer extends TgdPainterGroup {
|
|
4
|
-
context;
|
|
5
|
-
options;
|
|
6
|
-
texture;
|
|
7
|
-
textureDepth;
|
|
8
|
-
framebuffer = null;
|
|
9
|
-
depthbuffer = null;
|
|
10
|
-
dirty = false;
|
|
11
|
-
_width = 0;
|
|
12
|
-
_height = 0;
|
|
13
|
-
constructor(context, options) {
|
|
14
|
-
super();
|
|
15
|
-
this.context = context;
|
|
16
|
-
this.options = options;
|
|
17
|
-
this._width = options.width ?? DEFAULT_TEXTURE_SIZE;
|
|
18
|
-
this._height = options.height ?? DEFAULT_TEXTURE_SIZE;
|
|
19
|
-
this.name = options.name ?? `Framebuffer/${this.name}`;
|
|
20
|
-
this.texture = context.textures2D.create({
|
|
21
|
-
width: Math.max(this.width, 1),
|
|
22
|
-
height: Math.max(this.height, 1),
|
|
23
|
-
internalFormat: "RGB",
|
|
24
|
-
generateMipMap: true,
|
|
25
|
-
});
|
|
26
|
-
this.textureDepth = context.textures2D.create({
|
|
27
|
-
width: options.depthBuffer ? this._width : 1,
|
|
28
|
-
height: options.depthBuffer ? this._height : 1,
|
|
29
|
-
generateMipMap: false,
|
|
30
|
-
internalFormat: "DEPTH_COMPONENT24",
|
|
31
|
-
format: "DEPTH_COMPONENT",
|
|
32
|
-
type: "UNSIGNED_INT",
|
|
33
|
-
});
|
|
34
|
-
this.dirty = true;
|
|
35
|
-
}
|
|
36
|
-
get width() {
|
|
37
|
-
return this._width;
|
|
38
|
-
}
|
|
39
|
-
set width(v) {
|
|
40
|
-
if (this._width === v)
|
|
41
|
-
return;
|
|
42
|
-
this._width = v;
|
|
43
|
-
this.dirty = true;
|
|
44
|
-
}
|
|
45
|
-
get height() {
|
|
46
|
-
return this._height;
|
|
47
|
-
}
|
|
48
|
-
set height(v) {
|
|
49
|
-
if (this._height === v)
|
|
50
|
-
return;
|
|
51
|
-
this._height = v;
|
|
52
|
-
this.dirty = true;
|
|
53
|
-
}
|
|
54
|
-
paint(time, delay) {
|
|
55
|
-
const { context, texture, options } = this;
|
|
56
|
-
const { gl } = context;
|
|
57
|
-
const { viewportMatchingScale } = options;
|
|
58
|
-
if (typeof viewportMatchingScale === "number") {
|
|
59
|
-
this.width = Math.max(1, Math.round(context.width * viewportMatchingScale));
|
|
60
|
-
this.height = Math.max(1, Math.round(context.height * viewportMatchingScale));
|
|
61
|
-
}
|
|
62
|
-
const currentFramebuffer = gl.getParameter(gl.FRAMEBUFFER_BINDING);
|
|
63
|
-
const [x, y, w, h] = gl.getParameter(gl.VIEWPORT);
|
|
64
|
-
this.createFramebufferIfNeeded();
|
|
65
|
-
gl.bindFramebuffer(gl.FRAMEBUFFER, this.framebuffer);
|
|
66
|
-
gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, texture.glTexture, 0);
|
|
67
|
-
gl.viewport(0, 0, this.width, this.height);
|
|
68
|
-
console.log("🚀 [framebuffer] w, h = ", w, h); // @FIXME: Remove this line written on 2024-08-20 at 16:42
|
|
69
|
-
console.log("🚀 [framebuffer] this.width, this.height = ", this.width, this.height); // @FIXME: Remove this line written on 2024-08-20 at 16:42
|
|
70
|
-
super.paint(time, delay);
|
|
71
|
-
gl.bindFramebuffer(gl.FRAMEBUFFER, currentFramebuffer);
|
|
72
|
-
gl.viewport(x, y, w, h);
|
|
73
|
-
}
|
|
74
|
-
delete() {
|
|
75
|
-
const { context, texture, textureDepth, framebuffer, depthbuffer } = this;
|
|
76
|
-
const { gl } = context;
|
|
77
|
-
context.textures2D.delete(texture);
|
|
78
|
-
context.textures2D.delete(textureDepth);
|
|
79
|
-
if (framebuffer)
|
|
80
|
-
gl.deleteFramebuffer(framebuffer);
|
|
81
|
-
if (depthbuffer)
|
|
82
|
-
gl.deleteRenderbuffer(depthbuffer);
|
|
83
|
-
}
|
|
84
|
-
createFramebufferIfNeeded() {
|
|
85
|
-
if (!this.dirty)
|
|
86
|
-
return;
|
|
87
|
-
const { context, width, height } = this;
|
|
88
|
-
if (this.framebuffer) {
|
|
89
|
-
console.log("Delete framebuffer!");
|
|
90
|
-
context.gl.deleteFramebuffer(this.framebuffer);
|
|
91
|
-
}
|
|
92
|
-
console.log("Create framebuffer!");
|
|
93
|
-
this.framebuffer = context.createFramebuffer();
|
|
94
|
-
this.texture.resize(width, height);
|
|
95
|
-
// @TODO: Generate depth buffer.
|
|
96
|
-
// if (this.options.depthBuffer === true) {
|
|
97
|
-
// // Create a Depth Buffer, because the default
|
|
98
|
-
// // framebuffer has none.
|
|
99
|
-
// const { gl } = context
|
|
100
|
-
// this.depthbuffer = createDepthTexture(gl, this.width, this.height)
|
|
101
|
-
// this.textureDepth.resize(width, height)
|
|
102
|
-
// }
|
|
103
|
-
this.dirty = false;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
function createDepthTexture(gl, width, height) {
|
|
107
|
-
const depthTexture = gl.createTexture();
|
|
108
|
-
gl.bindTexture(gl.TEXTURE_2D, depthTexture);
|
|
109
|
-
const level = 0;
|
|
110
|
-
const internalFormat = gl.DEPTH_COMPONENT24;
|
|
111
|
-
const border = 0;
|
|
112
|
-
const format = gl.DEPTH_COMPONENT;
|
|
113
|
-
const type = gl.UNSIGNED_INT;
|
|
114
|
-
const data = null;
|
|
115
|
-
gl.texImage2D(gl.TEXTURE_2D, level, internalFormat, width, height, border, format, type, data);
|
|
116
|
-
// set the filtering so we don't need mips
|
|
117
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);
|
|
118
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);
|
|
119
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
120
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
121
|
-
// attach the depth texture to the framebuffer
|
|
122
|
-
gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.TEXTURE_2D, depthTexture, level);
|
|
123
|
-
return depthTexture;
|
|
124
|
-
}
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWVidWZmZXIuYmFja3VwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BhaW50ZXIvZnJhbWVidWZmZXIuYmFja3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxTQUFTLENBQUE7QUFtQnpDLE1BQU0sb0JBQW9CLEdBQUcsR0FBRyxDQUFBO0FBRWhDLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxlQUFlO0lBVWpDO0lBQ0E7SUFWTCxPQUFPLENBQWM7SUFDckIsWUFBWSxDQUFjO0lBQ2xDLFdBQVcsR0FBNEIsSUFBSSxDQUFBO0lBQzNDLFdBQVcsR0FBNkIsSUFBSSxDQUFBO0lBQzVDLEtBQUssR0FBRyxLQUFLLENBQUE7SUFDYixNQUFNLEdBQUcsQ0FBQyxDQUFBO0lBQ1YsT0FBTyxHQUFHLENBQUMsQ0FBQTtJQUVuQixZQUNxQixPQUFtQixFQUNuQixPQUE4QztRQUUvRCxLQUFLLEVBQUUsQ0FBQTtRQUhVLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsWUFBTyxHQUFQLE9BQU8sQ0FBdUM7UUFHL0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsS0FBSyxJQUFJLG9CQUFvQixDQUFBO1FBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sSUFBSSxvQkFBb0IsQ0FBQTtRQUNyRCxJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksZUFBZSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7UUFDdEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztZQUNyQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUM5QixNQUFNLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztZ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
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { TgdGeometry } from "./../../../geometry/geometry";
|
|
2
|
-
import { TgdContext } from "../../../context";
|
|
3
|
-
import { TgdPainterMesh } from "../mesh";
|
|
4
|
-
import { ArrayNumber4 } from "../../../types";
|
|
5
|
-
export interface TgdPainterMeshHullOptions {
|
|
6
|
-
geometry: TgdGeometry;
|
|
7
|
-
color?: ArrayNumber4;
|
|
8
|
-
}
|
|
9
|
-
export declare class TgdPainterMeshHull extends TgdPainterMesh {
|
|
10
|
-
constructor(context: TgdContext, options: TgdPainterMeshHullOptions);
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=hull.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hull.d.ts","sourceRoot":"","sources":["../../../../src/painter/mesh/hull/hull.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAGzC,MAAM,WAAW,yBAAyB;IACtC,QAAQ,EAAE,WAAW,CAAA;IACrB,KAAK,CAAC,EAAE,YAAY,CAAA;CACvB;AAED,qBAAa,kBAAmB,SAAQ,cAAc;gBACtC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,yBAAyB;CAMtE"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { TgdPainterMesh } from "../mesh/index.js";
|
|
2
|
-
import { TgdMaterialSolid } from "./../../../material/index.js";
|
|
3
|
-
export class TgdPainterMeshHull extends TgdPainterMesh {
|
|
4
|
-
constructor(context, options) {
|
|
5
|
-
super(context, {
|
|
6
|
-
geometry: options.geometry,
|
|
7
|
-
material: new TgdMaterialSolid({ color: options.color }),
|
|
8
|
-
});
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHVsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWludGVyL21lc2gvaHVsbC9odWxsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUE7QUFFeEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBT2hELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxjQUFjO0lBQ2xELFlBQVksT0FBbUIsRUFBRSxPQUFrQztRQUMvRCxLQUFLLENBQUMsT0FBTyxFQUFFO1lBQ1gsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO1lBQzFCLFFBQVEsRUFBRSxJQUFJLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUMzRCxDQUFDLENBQUE7SUFDTixDQUFDO0NBQ0oifQ==
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { TgdMat4 } from "../math";
|
|
2
|
-
import { TgdPainter } from "./painter";
|
|
3
|
-
import { TgdTransfo } from "../math/transfo";
|
|
4
|
-
export interface TgdPainterNodeChild {
|
|
5
|
-
paint(time: number, delay: number): void;
|
|
6
|
-
delete(): void;
|
|
7
|
-
matrixTransfo: TgdMat4;
|
|
8
|
-
}
|
|
9
|
-
export interface TgdPainterNodeOptions {
|
|
10
|
-
children: Array<TgdPainterNode | TgdPainterNodeChild>;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* A Node can hold others Nodes or any object providing the
|
|
14
|
-
* TgdPainterNodeChild interface.
|
|
15
|
-
*
|
|
16
|
-
* Each Node is a local space for its children.
|
|
17
|
-
*/
|
|
18
|
-
export declare class TgdPainterNode extends TgdPainter {
|
|
19
|
-
parentTransfo: TgdTransfo;
|
|
20
|
-
readonly transfo: TgdTransfo;
|
|
21
|
-
private readonly matrixTransfo;
|
|
22
|
-
private parentUpdateCount;
|
|
23
|
-
private updateCount;
|
|
24
|
-
private readonly childrenNodes;
|
|
25
|
-
private readonly children;
|
|
26
|
-
constructor(options?: Partial<TgdPainterNodeOptions>);
|
|
27
|
-
delete(): void;
|
|
28
|
-
add(...children: Array<TgdPainterNode | TgdPainterNodeChild>): void;
|
|
29
|
-
remove(...children: Array<TgdPainterNode | TgdPainterNodeChild>): void;
|
|
30
|
-
paint(time: number, delay: number): void;
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=node.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/painter/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C,MAAM,WAAW,mBAAmB;IAChC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACxC,MAAM,IAAI,IAAI,CAAA;IACd,aAAa,EAAE,OAAO,CAAA;CACzB;AAED,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,KAAK,CAAC,cAAc,GAAG,mBAAmB,CAAC,CAAA;CACxD;AAED;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,UAAU;IACnC,aAAa,EAAE,UAAU,CAAmB;IACnD,SAAgB,OAAO,aAAmB;IAE1C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,iBAAiB,CAAI;IAC7B,OAAO,CAAC,WAAW,CAAI;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuB;IACrD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;gBAEzC,OAAO,GAAE,OAAO,CAAC,qBAAqB,CAAM;IAMxD,MAAM,IAAI,IAAI;IASd,GAAG,CAAC,GAAG,QAAQ,EAAE,KAAK,CAAC,cAAc,GAAG,mBAAmB,CAAC;IAU5D,MAAM,CAAC,GAAG,QAAQ,EAAE,KAAK,CAAC,cAAc,GAAG,mBAAmB,CAAC;IAY/D,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;CA2B3C"}
|
package/lib/dist/painter/node.js
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { TgdMat4 } from "./../math/index.js";
|
|
2
|
-
import { TgdPainter } from "./painter.js";
|
|
3
|
-
import { TgdTransfo } from "../math/transfo.js";
|
|
4
|
-
/**
|
|
5
|
-
* A Node can hold others Nodes or any object providing the
|
|
6
|
-
* TgdPainterNodeChild interface.
|
|
7
|
-
*
|
|
8
|
-
* Each Node is a local space for its children.
|
|
9
|
-
*/
|
|
10
|
-
export class TgdPainterNode extends TgdPainter {
|
|
11
|
-
parentTransfo = new TgdTransfo();
|
|
12
|
-
transfo = new TgdTransfo();
|
|
13
|
-
matrixTransfo = new TgdMat4();
|
|
14
|
-
parentUpdateCount = 0;
|
|
15
|
-
updateCount = 0;
|
|
16
|
-
childrenNodes = [];
|
|
17
|
-
children = [];
|
|
18
|
-
constructor(options = {}) {
|
|
19
|
-
super();
|
|
20
|
-
const { children = [] } = options;
|
|
21
|
-
children.forEach(child => this.add(child));
|
|
22
|
-
}
|
|
23
|
-
delete() {
|
|
24
|
-
for (const child of this.children) {
|
|
25
|
-
child.delete();
|
|
26
|
-
}
|
|
27
|
-
for (const child of this.childrenNodes) {
|
|
28
|
-
child.delete();
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
add(...children) {
|
|
32
|
-
for (const child of children) {
|
|
33
|
-
if (child instanceof TgdPainterNode) {
|
|
34
|
-
this.childrenNodes.push(child);
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
this.children.push(child);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
remove(...children) {
|
|
42
|
-
for (const child of children) {
|
|
43
|
-
if (child instanceof TgdPainterNode) {
|
|
44
|
-
const idxNode = this.childrenNodes.indexOf(child);
|
|
45
|
-
if (idxNode > -1)
|
|
46
|
-
this.childrenNodes.splice(idxNode, 1);
|
|
47
|
-
}
|
|
48
|
-
else {
|
|
49
|
-
const idx = this.children.indexOf(child);
|
|
50
|
-
if (idx > -1)
|
|
51
|
-
this.children.splice(idx, 1);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
paint(time, delay) {
|
|
56
|
-
const { transfo, parentTransfo, matrixTransfo, parentUpdateCount, updateCount, children, childrenNodes, } = this;
|
|
57
|
-
if (transfo.updateCount > updateCount ||
|
|
58
|
-
parentTransfo.updateCount > parentUpdateCount) {
|
|
59
|
-
this.updateCount = transfo.updateCount;
|
|
60
|
-
this.parentUpdateCount = parentTransfo.updateCount;
|
|
61
|
-
matrixTransfo.from(parentTransfo.matrix).multiply(transfo.matrix);
|
|
62
|
-
}
|
|
63
|
-
for (const child of children) {
|
|
64
|
-
child.matrixTransfo = matrixTransfo;
|
|
65
|
-
child.paint(time, delay);
|
|
66
|
-
}
|
|
67
|
-
for (const child of childrenNodes) {
|
|
68
|
-
child.parentTransfo.matrix = matrixTransfo;
|
|
69
|
-
child.paint(time, delay);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYWludGVyL25vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUNuQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQVk1Qzs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTyxjQUFlLFNBQVEsVUFBVTtJQUNuQyxhQUFhLEdBQWUsSUFBSSxVQUFVLEVBQUUsQ0FBQTtJQUNuQyxPQUFPLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQTtJQUV6QixhQUFhLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtJQUN0QyxpQkFBaUIsR0FBRyxDQUFDLENBQUE7SUFDckIsV0FBVyxHQUFHLENBQUMsQ0FBQTtJQUNOLGFBQWEsR0FBcUIsRUFBRSxDQUFBO0lBQ3BDLFFBQVEsR0FBMEIsRUFBRSxDQUFBO0lBRXJELFlBQVksVUFBMEMsRUFBRTtRQUNwRCxLQUFLLEVBQUUsQ0FBQTtRQUNQLE1BQU0sRUFBRSxRQUFRLEdBQUcsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFBO1FBQ2pDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7SUFDOUMsQ0FBQztJQUVELE1BQU07UUFDRixLQUFLLE1BQU0sS0FBSyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUE7UUFDbEIsQ0FBQztRQUNELEtBQUssTUFBTSxLQUFLLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3JDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQTtRQUNsQixDQUFDO0lBQ0wsQ0FBQztJQUVELEdBQUcsQ0FBQyxHQUFHLFFBQXFEO1FBQ3hELEtBQUssTUFBTSxLQUFLLElBQUksUUFBUSxFQUFFLENBQUM7WUFDM0IsSUFBSSxLQUFLLFlBQVksY0FBYyxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ2xDLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUM3QixDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsR0FBRyxRQUFxRDtRQUMzRCxLQUFLLE1BQU0sS0FBSyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzNCLElBQUksS0FBSyxZQUFZLGNBQWMsRUFBRSxDQUFDO2dCQUNsQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtnQkFDakQsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDO29CQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUMzRCxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBQ3hDLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztvQkFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUE7WUFDOUMsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLElBQVksRUFBRSxLQUFhO1FBQzdCLE1BQU0sRUFDRixPQUFPLEVBQ1AsYUFBYSxFQUNiLGFBQWEsRUFDYixpQkFBaUIsRUFDakIsV0FBVyxFQUNYLFFBQVEsRUFDUixhQUFhLEdBQ2hCLEdBQUcsSUFBSSxDQUFBO1FBQ1IsSUFDSSxPQUFPLENBQUMsV0FBVyxHQUFHLFdBQVc7WUFDakMsYUFBYSxDQUFDLFdBQVcsR0FBRyxpQkFBaUIsRUFDL0MsQ0FBQztZQUNDLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQTtZQUN0QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQTtZQUNsRCxhQUFhLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ3JFLENBQUM7UUFDRCxLQUFLLE1BQU0sS0FBSyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzNCLEtBQUssQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFBO1lBQ25DLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQzVCLENBQUM7UUFDRCxLQUFLLE1BQU0sS0FBSyxJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQ2hDLEtBQUssQ0FBQyxhQUFhLENBQUMsTUFBTSxHQUFHLGFBQWEsQ0FBQTtZQUMxQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQTtRQUM1QixDQUFDO0lBQ0wsQ0FBQztDQUNKIn0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ref-map.d.ts","sourceRoot":"","sources":["../src/ref-map.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,MAAM,CAAC,OAAO,EAAE,OAAO;IACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA8B;IAClD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA6B;IAEnD;;;;OAIG;IACH,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,GAAG,OAAO;IAelD;;;;;OAKG;IACH,MAAM,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS;CAe5C"}
|
package/lib/dist/ref-map.js
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A Reference Map counts how many time you want to insert the same key.
|
|
3
|
-
* And it tells you when you delete it as many times.
|
|
4
|
-
*/
|
|
5
|
-
export default class RefMap {
|
|
6
|
-
map = new Map();
|
|
7
|
-
count = new Map();
|
|
8
|
-
/**
|
|
9
|
-
* If `key` is already stored in the map,
|
|
10
|
-
* we add a reference to the mapped value and return it.
|
|
11
|
-
* If not, we create the mapped value by calling `factory()`.
|
|
12
|
-
*/
|
|
13
|
-
add(key, factory) {
|
|
14
|
-
const { map, count } = this;
|
|
15
|
-
if (count.has(key)) {
|
|
16
|
-
count.set(key, 1 + (count.get(key) ?? 0));
|
|
17
|
-
const curVal = map.get(key);
|
|
18
|
-
if (!curVal)
|
|
19
|
-
throw Error("[CountMap] Map should not be empty!");
|
|
20
|
-
return curVal;
|
|
21
|
-
}
|
|
22
|
-
const newVal = factory();
|
|
23
|
-
map.set(key, newVal);
|
|
24
|
-
count.set(key, 1);
|
|
25
|
-
return newVal;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Delete a reference to `key`.
|
|
29
|
-
* If the last reference has been removed,
|
|
30
|
-
* then return the mapped value, otherwise
|
|
31
|
-
* return `undefined`.
|
|
32
|
-
*/
|
|
33
|
-
delete(key) {
|
|
34
|
-
const { map, count } = this;
|
|
35
|
-
if (!map.has(key))
|
|
36
|
-
return;
|
|
37
|
-
const newCount = (count.get(key) ?? 0) - 1;
|
|
38
|
-
if (newCount > 0) {
|
|
39
|
-
count.set(key, newCount);
|
|
40
|
-
return;
|
|
41
|
-
}
|
|
42
|
-
const value = map.get(key);
|
|
43
|
-
map.delete(key);
|
|
44
|
-
count.delete(key);
|
|
45
|
-
return value;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmLW1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9yZWYtbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxPQUFPLE9BQU8sTUFBTTtJQUNOLEdBQUcsR0FBRyxJQUFJLEdBQUcsRUFBb0IsQ0FBQTtJQUNqQyxLQUFLLEdBQUcsSUFBSSxHQUFHLEVBQW1CLENBQUE7SUFFbkQ7Ozs7T0FJRztJQUNILEdBQUcsQ0FBQyxHQUFZLEVBQUUsT0FBc0I7UUFDcEMsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUE7UUFDM0IsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDakIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ3pDLE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7WUFDM0IsSUFBSSxDQUFDLE1BQU07Z0JBQUUsTUFBTSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQTtZQUMvRCxPQUFPLE1BQU0sQ0FBQTtRQUNqQixDQUFDO1FBRUQsTUFBTSxNQUFNLEdBQUcsT0FBTyxFQUFFLENBQUE7UUFDeEIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDcEIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDakIsT0FBTyxNQUFNLENBQUE7SUFDakIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLEdBQVk7UUFDZixNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQTtRQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUM7WUFBRSxPQUFNO1FBRXpCLE1BQU0sUUFBUSxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDMUMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDZixLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQTtZQUN4QixPQUFNO1FBQ1YsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDMUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNmLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDakIsT0FBTyxLQUFLLENBQUE7SUFDaEIsQ0FBQztDQUNKIn0=
|