python-cad-tools 0.1.4.dev1__tar.gz → 0.1.6__tar.gz
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.
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/.github/workflows/ci.yml +2 -2
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/.github/workflows/release-candidate.yml +2 -2
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/CHANGELOG.md +28 -1
- {python_cad_tools-0.1.4.dev1/src/python_cad_tools.egg-info → python_cad_tools-0.1.6}/PKG-INFO +7 -3
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/README.md +7 -3
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/pyproject.toml +6 -1
- python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/asset-manifest.json +1 -0
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/animationGroup-CjhCwiIi.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/animationGroup-CkBwZBaC.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/bakedVertexAnimation-_xBvgBl7.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/bakedVertexAnimation-BRwXBaR8.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/basisTextureLoader-D5LtrhD-.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/basisTextureLoader-BRWOHjz-.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/brdfTextureTools-D9U08KSH.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/brdfTextureTools-_z9j6IDT.js +2 -2
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/bumpFragment-BkzgDMwt.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/bumpFragment-D1ib6sWk.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/bumpVertex-BXtiaDZI.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/bumpVertex-rRJFggby.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/bumpVertexDeclaration-CchYDl1F.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/bumpVertexDeclaration-DpYJme-Y.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/clipPlaneFragment-pIdOfJ_5.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/clipPlaneFragment-8V4Sc9NG.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/clipPlaneVertex-Kl_G8tpP.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/clipPlaneVertex-05ivX8eb.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/cubemapToSphericalPolynomial-CJ4cRmPh.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/cubemapToSphericalPolynomial-BOak-Hxf.js +1 -1
- python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/dds-Wp2qLmYy.js +1 -0
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/dds.pure-BoNGq59u.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/dds.pure-Ce-RwcPa.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/ddsTextureLoader-D8JRisWC.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/ddsTextureLoader-DmqLHZsO.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/default.fragment-D0gXI89M.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/default.fragment-skPC2PC5.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/default.vertex-BdO0XLk6.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/default.vertex-Bf7EZhGi.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/defaultUboDeclaration-BJ4b62qj.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/defaultUboDeclaration-DveD0pj_.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/dumpTools-B7F8Ed3A.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/dumpTools-E15xCOlX.js +2 -2
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/envTextureLoader-BnvTfKgF.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/envTextureLoader-Bw7xWacU.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/exrTextureLoader-C2D3Wx-p.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/exrTextureLoader-DdM34m4d.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphApplyForceBlock-C08kKLog.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphApplyForceBlock-C2CCzJfK.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphApplyImpulseBlock-GzK2l9nm.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphApplyImpulseBlock-DaQNBsAi.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphArrayIndexBlock-DkRHIuYC.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphArrayIndexBlock-Bm_uAgA1.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphBezierCurveEasingBlock-Csol8jUn.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphBezierCurveEasingBlock-BIRe7y9_.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphBinaryOperationBlock-C-xEeg-Z.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphBinaryOperationBlock-DMJBYgfr.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphBranchBlock-D7bstQqM.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphBranchBlock-QxXghWCp.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphCachedOperationBlock-C0pDPzaF.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphCachedOperationBlock-I8EAYjjd.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphCancelDelayBlock-VwnDZhN9.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphCancelDelayBlock-BzNEnhY9.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphCodeExecutionBlock-C5aa0K7t.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphCodeExecutionBlock-B7ItpxKe.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphConditionalDataBlock-B4vfaSDi.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphConditionalDataBlock-BhbDYfGS.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphConsoleLogBlock-CuLlYu4c.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphConsoleLogBlock-DXpJ7TNt.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphConstantBlock-DkyD6_YZ.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphConstantBlock-DNvjca7m.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphContextBlock-IKUbfY32.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphContextBlock-aSW2fQMB.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphCounterBlock-tP_5qAQn.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphCounterBlock-CQB87ocL.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphDataSwitchBlock-DiTgopj3.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphDataSwitchBlock-DuoW5gn_.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphDebounceBlock-FLUJTpdt.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphDebounceBlock-CKgVrKHO.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphDebugBlock-C0EH9zPP.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphDebugBlock-DoCK3CbK.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphDoNBlock-DiAdBjnD.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphDoNBlock-BGQscpK_.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphEasingBlock-CXlIILZe.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphEasingBlock-C8ByegaL.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphFlipFlopBlock-5XRf4KeD.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphFlipFlopBlock-DZZ6IZdT.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphForLoopBlock-RitJ6OS_.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphForLoopBlock-jnLx7y5R.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphFunctionReferenceBlock-DvVIlipg.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphFunctionReferenceBlock-DVCyAPqf.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphGLTFDataProvider-BxBUrprf.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphGLTFDataProvider-Co3We5bN.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphGetAngularVelocityBlock-CqBDBjqf.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphGetAngularVelocityBlock-6xyNjSA6.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphGetAssetBlock-Dk4qKn1w.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphGetAssetBlock-Cmz2b6ZC.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphGetLinearVelocityBlock-DNN6N9mt.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphGetLinearVelocityBlock-DAEGIqYD.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphGetPhysicsMassPropertiesBlock-CTsHqDvM.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphGetPhysicsMassPropertiesBlock-BjCZBRGe.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphGetPropertyBlock-CjX3cseU.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphGetPropertyBlock-1qAsVO8r.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphGetSoundVolumeBlock-DzWJtlM9.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphGetSoundVolumeBlock-CjzseaZ_.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphGetVariableBlock-uBq6vXOw.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphGetVariableBlock-BIHX5QMz.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphIndexOfBlock-MpANR6P1.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphIndexOfBlock-CiQsoigA.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphInterpolationBlock-BM2_pZfB.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphInterpolationBlock-Bw0KkJ0e.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphIsKeyPressedBlock-X1Q2SR0H.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphIsKeyPressedBlock-DndaXIf-.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphIsSoundPlayingBlock-C_ir8hba.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphIsSoundPlayingBlock-B6Qttnxj.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphJsonPointerParserBlock-I5tJhTaw.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphJsonPointerParserBlock-DNYimm79.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphKeyDownEventBlock-DSmmDXBR.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphKeyDownEventBlock-C4bd_Uk_.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphKeyUpEventBlock-BDViriRD.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphKeyUpEventBlock-BbiC-9yS.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphKeyboardEventBlock-B7EQjaZe.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphKeyboardEventBlock-8jNrKia4.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphMathBlocks-RIndR7Kr.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphMathBlocks-Bp9VLo95.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphMathCombineExtractBlocks-BEMkyBCM.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphMathCombineExtractBlocks-RBcvT17x.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphMatrixMathBlocks-BAV1wScN.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphMatrixMathBlocks-CDMmeteR.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphMeshPickEventBlock-CcNT5f0d.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphMeshPickEventBlock-BLD5qZLm.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphMultiGateBlock-DSEbX2Mj.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphMultiGateBlock-Bp_x5hf9.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphPauseAnimationBlock-Dfthx2s-.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphPauseAnimationBlock-BJEgts2P.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphPauseSoundBlock-DSu8v9Kr.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphPauseSoundBlock-mB4vOhyw.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphPhysicsCollisionEventBlock-jvE_54c8.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphPhysicsCollisionEventBlock-DHywozhh.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphPlayAnimationBlock-DK8Z5heh.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphPlayAnimationBlock-db7Y-Q7u.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphPlaySoundBlock-XiF7wfi1.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphPlaySoundBlock-CxsvloFb.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphPointerDownEventBlock-BOqQHgdZ.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphPointerDownEventBlock-CVZzeLa6.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphPointerMoveEventBlock-DggBfxkF.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphPointerMoveEventBlock-kgytqAo-.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphPointerOutEventBlock-DvZyyUF4.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphPointerOutEventBlock-DIiGO9Sz.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphPointerOverEventBlock-YLki8WEB.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphPointerOverEventBlock-yJsL04S3.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphPointerUpEventBlock-D1tqJ9jF.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphPointerUpEventBlock-oGalI3fw.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphReceiveCustomEventBlock-D3VAKTpt.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphReceiveCustomEventBlock-CGU30qtJ.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSceneReadyEventBlock-Dt8AsNSg.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSceneReadyEventBlock-CxumRn2U.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSceneTickEventBlock-BtuZ_Spn.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSceneTickEventBlock-_hKXW4nX.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSendCustomEventBlock-B8Dzycmf.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSendCustomEventBlock-BadQ6Fmt.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSequenceBlock-CQsb2okn.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSequenceBlock-ZX23Dn7h.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSetAngularVelocityBlock-C3zOq5X7.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSetAngularVelocityBlock-DaDY5MFY.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSetDelayBlock-DxyUb-8k.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSetDelayBlock-ClLunIUZ.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSetLinearVelocityBlock-DeNTJQ42.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSetLinearVelocityBlock-Cdu7nMQr.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSetPhysicsMotionTypeBlock-i233RoWe.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSetPhysicsMotionTypeBlock-BXRAhWUV.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSetPropertyBlock-Darrnz2o.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSetPropertyBlock-BzUyWEvj.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSetSoundVolumeBlock-KrTTGHr6.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSetSoundVolumeBlock-D_eRVaRX.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSetVariableBlock-8CdS1h8e.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSetVariableBlock-C48wCF3K.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSoundEndedEventBlock-Cuk8JjDG.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSoundEndedEventBlock-JilA8K68.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphStopAnimationBlock-DOsG4sc5.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphStopAnimationBlock-DVVhNH2l.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphStopSoundBlock-C5IaCPpa.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphStopSoundBlock-MkvXT-pz.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphSwitchBlock-ClqiypjM.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphSwitchBlock-BA1OpeUq.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphThrottleBlock-C7hhfNo2.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphThrottleBlock-aR7ATriv.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphTransformCoordinatesSystemBlock-BksU6sPJ.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphTransformCoordinatesSystemBlock-_Z_XQ1KU.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphTypeToTypeBlocks-DJi_CBW-.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphTypeToTypeBlocks-CbmOuO1Y.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphUnaryOperationBlock-U15mYQbJ.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphUnaryOperationBlock-BMYbqqlw.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphVectorMathBlocks-D4QAvgsk.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphVectorMathBlocks-IvfUhMXD.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphWaitAllBlock-UV6LDk1r.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphWaitAllBlock-XXcp6Uu_.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/flowGraphWhileLoopBlock-DPpNHwZP.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/flowGraphWhileLoopBlock-CiCB0FD8.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/fogFragment-pKchdx3M.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/fogFragment-Dzpo6VdR.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/gaussianSplatting-oRLzV71m.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/gaussianSplatting-DyyJ3SmK.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/gaussianSplatting-DgjcxjKa.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/gaussianSplatting-eKQ5MVB9.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.fragment-NCxeyHg7.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.fragment-BA9M7qMm.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.fragment-BKYuCXf7.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.fragment-BL60TTsE.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.vertex-zmXoP8p9.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.vertex-Bo6VgkDg.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.vertex-CW0PXB4s.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.vertex-CKsJZAkY.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.fragment-CgX-XH5m.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.fragment-BKNvofx9.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.fragment--IDQcS1p.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.fragment-CwwM4G1X.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.vertex-DzuuyEGB.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.vertex-CRzxSOuN.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.vertex-YB1C1Muy.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.vertex-CzPcN15t.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/geometry.fragment-DuBDWlLB.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/geometry.fragment-D6FSJnnh.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/geometry.fragment-EEbMy57o.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/geometry.fragment-D7dB1cPB.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/geometry.vertex-B--XA-QK.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/geometry.vertex-B30SEDfq.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/geometry.vertex-3cVZEKxJ.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/geometry.vertex-CEqGE1RP.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/glowBlurPostProcess.fragment-UNz8njEJ.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/glowBlurPostProcess.fragment-qbxgPsfh.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/glowMapGeneration.fragment-CsSqgq6c.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/glowMapGeneration.fragment-pr52K7ES.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/glowMapGeneration.vertex-DOMHadFA.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/glowMapGeneration.vertex-Bu7wD6_v.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/glowMapMerge.fragment-DXi2v5pz.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/glowMapMerge.fragment-DQIuOzG_.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/glowMapMerge.vertex-DgBSWFHP.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/glowMapMerge.vertex--Gv__zWj.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/harmonicsFunctions-BkifmnNV.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/harmonicsFunctions-KdJGOHc6.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/helperFunctions-Bx8RYYvi.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/helperFunctions-DgEuNo6U.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/iesTextureLoader-Dj5K0vc1.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/iesTextureLoader-CtVX46fM.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/index-JRwY7p9T.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/index-BlqB2_Pr.js +153 -151
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/kernelBlur.fragment-BRdwtDs7.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/kernelBlur.fragment-BX7Lt7ea.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/kernelBlur.fragment-B9YDiI_M.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/kernelBlur.fragment-DYsyjXaA.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/kernelBlur.vertex-CWlIunB6.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/kernelBlur.vertex-ClVvwFB7.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/kernelBlur.vertex-A7OpqdrG.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/kernelBlur.vertex-DPBXY9JC.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/kernelBlurVaryingDeclaration-PE5ICZNw.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/kernelBlurVaryingDeclaration-BYwqlIXx.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/kernelBlurVaryingDeclaration-YMenN7Se.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/kernelBlurVaryingDeclaration-Dug6rT1B.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/ktxTextureLoader-uG9TUdGM.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/ktxTextureLoader-BIXHU16K.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/lightFragment-CDLhoaId.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/lightFragment-DHmrE5GX.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/logDepthDeclaration-BOlhc3aa.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/logDepthDeclaration-DYQ6buM5.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/logDepthVertex-BIA9Xrid.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/logDepthVertex-N8cjnWeq.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/mainUVVaryingDeclaration-PmIDYGIz.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/mainUVVaryingDeclaration-04-YeMcZ.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/meshUboDeclaration-BfPhZsyr.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/meshUboDeclaration-Cxie7MAJ.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/oitFragment-DpKfMtsk.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/oitFragment-Yqa_2p-U.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/openpbr.fragment-BmgNfxS4.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/openpbr.fragment-B-ILUybs.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/openpbr.fragment-BAOdoy3Z.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/openpbr.fragment-CYJW19wI.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/openpbr.vertex-D-IjPutK.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/openpbr.vertex-6zrdkvEg.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/openpbr.vertex-BpB-7aXl.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/openpbr.vertex-CZ4PwccK.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/openpbrMaterial.pure-C6V2SeQx.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/openpbrMaterial.pure-BsEUy5d2.js +3 -3
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/openpbrMaterialLoadingAdapter-CbcwuEwB.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/openpbrMaterialLoadingAdapter-BqYCxfaV.js +2 -2
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/openpbrTransmissionLayerData-1U_DHNWK.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/openpbrTransmissionLayerData-Bi8t7k_g.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/openpbrTransmissionLayerData-BClMu_zp.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/openpbrTransmissionLayerData-DlDoA2Eg.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/openpbrUboDeclaration-DLujw3YH.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/openpbrUboDeclaration-Cq9kCjmQ.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/openpbrUboDeclaration-piwBvKOi.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/openpbrUboDeclaration-SB6Z4wg9.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/packingFunctions-BD5WZtBT.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/packingFunctions-BPDUaRnj.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/packingFunctions-D3gaUkUa.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/packingFunctions-BPvmjixW.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/pass.fragment-CzZpaqYk.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/pass.fragment-CGW86Knk.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/passCube.fragment-DwRJ1H1s.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/passCube.fragment-BXLbB-Q5.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/passCube.fragment-Bso78Amo.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/passCube.fragment-CagZgpfr.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/pbr.fragment-sZ-foSaO.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/pbr.fragment-CMmf0u9q.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/pbr.vertex-PBjkpyNN.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/pbr.vertex-SKsjk5Pj.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/pbrBRDFFunctions-Dv8-Akv1.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/pbrBRDFFunctions-DNsUN6qQ.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/pbrDebug-5RaK38tC.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/pbrDebug-Dw9FHwdO.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/pbrIBLFunctions-D_X-tzpO.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/pbrIBLFunctions-ynQ9EJMa.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/pbrMaterial.pure-RJ6tVczH.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/pbrMaterial.pure-DD-Qp64W.js +2 -2
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/pbrMaterialLoadingAdapter-BqlfZ1xs.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/pbrMaterialLoadingAdapter-BbrOLlOF.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/pbrUboDeclaration-BqNgF1qB.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/pbrUboDeclaration-Bqvz9xQU.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/postprocess.vertex-9J4kRI6V.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/postprocess.vertex-BMFYhnff.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/procedural.vertex-Bq_A-zE0.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/procedural.vertex-BfaBXzj0.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/procedural.vertex-DzkBufoo.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/procedural.vertex-pqGGkP1-.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/reflectionFunction-n0dvho3A.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/reflectionFunction-BCniWKEL.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/rgbdDecode.fragment-0BuGamw5.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/rgbdDecode.fragment-DCuzC7q7.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/rgbdEncode.fragment-DiiD2NE-.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/rgbdEncode.fragment-BAhasmlV.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/rgbdEncode.fragment-BBGe9kwu.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/rgbdEncode.fragment-b49hhC5d.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/sceneUboDeclaration-BmpwedcW.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/sceneUboDeclaration-DPddq9hQ.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/textureProcessor.fragment-CwNRejEe.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/textureProcessor.fragment-C5g8djMT.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/textureProcessor.fragment-CyBHPXX2.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/textureProcessor.fragment-CbjSik1W.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/tgaTextureLoader-ClB6SRY9.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/tgaTextureLoader-DqTGNNaJ.js +1 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/vertexColorMixing-f4wQRwGI.js → python_cad_tools-0.1.6/src/python_cad_tools/_viewer_static/assets/vertexColorMixing-Bp9_JGdC.js +1 -1
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_viewer_static/index.html +1 -1
- python_cad_tools-0.1.6/src/python_cad_tools/build-info.json +1 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6/src/python_cad_tools.egg-info}/PKG-INFO +7 -3
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools.egg-info/SOURCES.txt +167 -167
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools.egg-info/scm_file_list.json +167 -167
- python_cad_tools-0.1.6/src/python_cad_tools.egg-info/scm_version.json +8 -0
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/asset-manifest.json +0 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/_viewer_static/assets/dds-YsWo1VVF.js +0 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools/build-info.json +0 -1
- python_cad_tools-0.1.4.dev1/src/python_cad_tools.egg-info/scm_version.json +0 -8
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/.gitattributes +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/.githooks/pre-push +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/.github/workflows/downstream-compatibility.yml +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/.github/workflows/release.yml +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/.gitignore +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/.opencode/commands/autocommit.md +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/.opencode/tools/specrepo-autocommit.js +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/.opencode/tools/specrepo-autocommit.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/AGENTS.md +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/CLAUDE.md +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/LICENSE +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/MANIFEST.in +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/docs/build-semantics.md +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/docs/drawing-extensions.md +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/docs/manifests.md +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/docs/project-configuration.md +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/docs/public-api.md +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/docs/spikes/format-feasibility.md +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/docs/viewer-delivery.md +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/setup.cfg +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/__init__.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/__main__.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_locking.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_project_loader.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_project_state.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_scaffold.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_transaction.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_viewer_static/app.webmanifest +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_viewer_static/assets/hdrTextureLoader-BGQvgh0h.js +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_viewer_static/assets/index-DcTTrc-8.css +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_viewer_static/assets/mesh.vertexData.functions-ayNlGC5K.js +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_viewer_static/favicon.svg +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/_viewer_static/sw.js +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/artifacts.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/build.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/cli.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/context.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/determinism.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/drawings/__init__.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/drawings/_catalog.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/drawings/_validation.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/elements.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exceptions.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/__init__.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/base.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/drawings/__init__.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/drawings/annotations.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/drawings/dxf.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/drawings/model.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/drawings/pdf.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/drawings/primitives.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/drawings/projection.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/drawings/svg.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/glb.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/ifc.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/quantities.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/exporters/step.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/geometry.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/manifests.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/project_config.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/py.typed +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/runtime_sync.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/schemas/build-manifest-1.json +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/schemas/design-manifest-1.json +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/schemas/download-manifest-2.json +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/schemas/drawing-annotations-1.json +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/schemas/glb-manifest-1.json +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/schemas/ifc-validation-1.json +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/schemas/quantities-1.json +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/schemas/run-metadata-1.json +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/schemas/site-metadata-1.json +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/schemas/step-validation-1.json +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/site.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/templates/project/.gitignore +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/templates/project/README.md +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/templates/project/config.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/templates/project/drawing_annotations.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/templates/project/generated/.gitkeep +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/templates/project/model.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/templates/project/pyproject.toml +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/units.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools/validation.py +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools.egg-info/dependency_links.txt +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools.egg-info/entry_points.txt +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools.egg-info/requires.txt +0 -0
- {python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/src/python_cad_tools.egg-info/top_level.txt +0 -0
|
@@ -23,7 +23,7 @@ jobs:
|
|
|
23
23
|
- run: pip install -e '.[dev]'
|
|
24
24
|
- run: ruff check src tests
|
|
25
25
|
- run: mypy
|
|
26
|
-
- run: pytest -q
|
|
26
|
+
- run: pytest tests/unit tests/typing -q
|
|
27
27
|
|
|
28
28
|
exporter-integration:
|
|
29
29
|
name: Exporter integration
|
|
@@ -310,4 +310,4 @@ jobs:
|
|
|
310
310
|
with:
|
|
311
311
|
base64-subjects: ${{ needs.build-publish.outputs.hashes }}
|
|
312
312
|
upload-assets: true
|
|
313
|
-
private-repository: true
|
|
313
|
+
private-repository: true
|
{python_cad_tools-0.1.4.dev1 → python_cad_tools-0.1.6}/.github/workflows/release-candidate.yml
RENAMED
|
@@ -30,7 +30,7 @@ jobs:
|
|
|
30
30
|
- run: pip install -e '.[dev]'
|
|
31
31
|
- run: ruff check src tests
|
|
32
32
|
- run: mypy
|
|
33
|
-
- run: pytest -q
|
|
33
|
+
- run: pytest tests/unit tests/typing -q
|
|
34
34
|
- name: Build wheel and sdist
|
|
35
35
|
run: python -m build --wheel --sdist --outdir dist .
|
|
36
36
|
- name: Twine check
|
|
@@ -89,4 +89,4 @@ jobs:
|
|
|
89
89
|
/tmp/candidate-venv/bin/pip install dist/*.whl
|
|
90
90
|
/tmp/candidate-venv/bin/python-cad --version
|
|
91
91
|
- name: Run packaging tests
|
|
92
|
-
run: pytest tests/packaging -q
|
|
92
|
+
run: pytest tests/packaging -q
|
|
@@ -7,7 +7,32 @@ stable release is published.
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.1.6] - 2026-07-21
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
- Made US customary units the viewer default while retaining the Metric option.
|
|
14
|
+
- Made plain `pytest -q` run the fast unit suite, kept slower suites as explicit
|
|
15
|
+
CI release gates, and reused built CAD fixtures in site-delivery tests.
|
|
16
|
+
|
|
17
|
+
### Fixed
|
|
18
|
+
- Made one-finger Pan mode work on iPhone browsers that report touch pointer
|
|
19
|
+
events without a mouse-button value.
|
|
20
|
+
- Made failed viewer-server test startup report immediately instead of waiting
|
|
21
|
+
through a long polling timeout.
|
|
22
|
+
|
|
23
|
+
## [0.1.5] - 2026-07-21
|
|
24
|
+
|
|
25
|
+
### Fixed
|
|
26
|
+
- Made the viewer's Pan mode respond to an unmodified primary-button drag in
|
|
27
|
+
Chrome on macOS.
|
|
28
|
+
- Kept trackpad pinch gestures over the 3D canvas scoped to model zoom instead
|
|
29
|
+
of allowing Chrome to zoom the entire page.
|
|
30
|
+
|
|
31
|
+
## [0.1.4] - 2026-07-21
|
|
32
|
+
|
|
10
33
|
### Added
|
|
34
|
+
- Explicit Orbit and Pan camera modes in the packaged 3D viewer, allowing a
|
|
35
|
+
primary-button drag in Pan mode to move the orbit center.
|
|
11
36
|
- Continuous delivery: every green push to `main` auto-publishes to PyPI.
|
|
12
37
|
- Version derived from git tags via `setuptools-scm` (tag `v0.1.0` → stable
|
|
13
38
|
release `0.1.0`; untagged commits → dev releases).
|
|
@@ -18,6 +43,8 @@ stable release is published.
|
|
|
18
43
|
artifact location, enabling the offline viewer to resolve the GLB path.
|
|
19
44
|
|
|
20
45
|
### Changed
|
|
46
|
+
- Updated the 3D viewer navigation hint and accessible canvas description to
|
|
47
|
+
explain how to move the orbit center with mouse or touch controls.
|
|
21
48
|
- CI publish job gates on all prior jobs passing before uploading to PyPI.
|
|
22
49
|
- Updated `actions/checkout` to v7.0.0 and `actions/setup-python` to v6.3.0
|
|
23
50
|
(Node.js 24 runtime).
|
|
@@ -71,4 +98,4 @@ stable release is published.
|
|
|
71
98
|
|
|
72
99
|
### Notes
|
|
73
100
|
- Preserved backup-only AI workflow files (`.back_agents/`, `back_AGENTS.md`,
|
|
74
|
-
`back_opencode.jsonc`) are excluded from packages and active policy.
|
|
101
|
+
`back_opencode.jsonc`) are excluded from packages and active policy.
|
{python_cad_tools-0.1.4.dev1/src/python_cad_tools.egg-info → python_cad_tools-0.1.6}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-cad-tools
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.6
|
|
4
4
|
Summary: Typed, headless Python tooling for CAD/BIM models and artifacts
|
|
5
5
|
Author: Brandon Benge
|
|
6
6
|
License: AGPL-3.0-only
|
|
@@ -130,12 +130,16 @@ before artifact hashes are recorded.
|
|
|
130
130
|
```bash
|
|
131
131
|
.venv/bin/ruff check .
|
|
132
132
|
.venv/bin/mypy
|
|
133
|
-
.venv/bin/pytest
|
|
133
|
+
.venv/bin/pytest -q
|
|
134
|
+
.venv/bin/pytest tests/integration -q
|
|
135
|
+
.venv/bin/pytest tests/packaging -q
|
|
136
|
+
.venv/bin/pytest tests/typing -q
|
|
134
137
|
.venv/bin/python -m build --wheel --sdist --outdir dist .
|
|
135
138
|
.venv/bin/python -m twine check dist/*
|
|
136
139
|
```
|
|
137
140
|
|
|
138
|
-
|
|
141
|
+
The default pytest command runs the fast unit suite. Integration, packaging,
|
|
142
|
+
and external typing suites are explicit release gates. Packaging tests inspect wheel and sdist inventories, install the wheel
|
|
139
143
|
non-editably into an isolated environment outside the checkout, prove the
|
|
140
144
|
import resolves from that environment's `site-packages`, and run
|
|
141
145
|
`python-cad --version`.
|
|
@@ -93,12 +93,16 @@ before artifact hashes are recorded.
|
|
|
93
93
|
```bash
|
|
94
94
|
.venv/bin/ruff check .
|
|
95
95
|
.venv/bin/mypy
|
|
96
|
-
.venv/bin/pytest
|
|
96
|
+
.venv/bin/pytest -q
|
|
97
|
+
.venv/bin/pytest tests/integration -q
|
|
98
|
+
.venv/bin/pytest tests/packaging -q
|
|
99
|
+
.venv/bin/pytest tests/typing -q
|
|
97
100
|
.venv/bin/python -m build --wheel --sdist --outdir dist .
|
|
98
101
|
.venv/bin/python -m twine check dist/*
|
|
99
102
|
```
|
|
100
103
|
|
|
101
|
-
|
|
104
|
+
The default pytest command runs the fast unit suite. Integration, packaging,
|
|
105
|
+
and external typing suites are explicit release gates. Packaging tests inspect wheel and sdist inventories, install the wheel
|
|
102
106
|
non-editably into an isolated environment outside the checkout, prove the
|
|
103
107
|
import resolves from that environment's `site-packages`, and run
|
|
104
108
|
`python-cad --version`.
|
|
@@ -109,4 +113,4 @@ model-free production shell is included in the wheel. See
|
|
|
109
113
|
[`docs/manifests.md`](docs/manifests.md),
|
|
110
114
|
[`docs/project-configuration.md`](docs/project-configuration.md),
|
|
111
115
|
[`docs/public-api.md`](docs/public-api.md), and
|
|
112
|
-
[`docs/viewer-delivery.md`](docs/viewer-delivery.md) for detailed reference.
|
|
116
|
+
[`docs/viewer-delivery.md`](docs/viewer-delivery.md) for detailed reference.
|
|
@@ -72,8 +72,13 @@ python_cad_tools = [
|
|
|
72
72
|
]
|
|
73
73
|
|
|
74
74
|
[tool.pytest.ini_options]
|
|
75
|
-
testpaths = ["tests"]
|
|
75
|
+
testpaths = ["tests/unit"]
|
|
76
76
|
addopts = "-ra"
|
|
77
|
+
markers = [
|
|
78
|
+
"integration: CAD, subprocess, and HTTP integration tests",
|
|
79
|
+
"packaging: wheel, sdist, and clean-install tests",
|
|
80
|
+
"typing: external consumer typing tests",
|
|
81
|
+
]
|
|
77
82
|
|
|
78
83
|
[tool.ruff]
|
|
79
84
|
target-version = "py312"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"entries":[{"media_type":"application/manifest+json","path":"app.webmanifest","sha256":"ff0be0e037de542f53f0d7866966c41db3d75ed1a8849fc1434595d07428ee12","size":401},{"media_type":"text/javascript; charset=utf-8","path":"assets/animationGroup-CkBwZBaC.js","sha256":"de9f21c340fb355bd7545b7af67e9ea497af0301d2ed35b19d2c83bafc7c947f","size":35489},{"media_type":"text/javascript; charset=utf-8","path":"assets/bakedVertexAnimation-BRwXBaR8.js","sha256":"315d8b85c6c2cccf7ead9c4bdbad53632a3724ef12d45fbeab38a789f0add421","size":15843},{"media_type":"text/javascript; charset=utf-8","path":"assets/basisTextureLoader-BRWOHjz-.js","sha256":"f95b189d7b66007e68cbc6910ba1878460ccc7d70cc48e6ffef782e39041fc52","size":7961},{"media_type":"text/javascript; charset=utf-8","path":"assets/brdfTextureTools-_z9j6IDT.js","sha256":"dc3ce263a37cbaf143039c6c854b861eba43251c7f4f98044cd85feaa8528949","size":61224},{"media_type":"text/javascript; charset=utf-8","path":"assets/bumpFragment-D1ib6sWk.js","sha256":"f99e2b7f1b4217dd42b216a8143669b0b4e687bcc20336d2eef76b96231acbaf","size":8075},{"media_type":"text/javascript; charset=utf-8","path":"assets/bumpVertex-rRJFggby.js","sha256":"a4351289799323161880ef28cd9944d4764fc6abf4fcdbe3ec9ffe66608ee25f","size":698},{"media_type":"text/javascript; charset=utf-8","path":"assets/bumpVertexDeclaration-DpYJme-Y.js","sha256":"510a650e2013756886a3677dc6ecb2115a2d799a1d94fbf6180e32f47ad0bf1a","size":393},{"media_type":"text/javascript; charset=utf-8","path":"assets/clipPlaneFragment-8V4Sc9NG.js","sha256":"9489edbe6ae505f10dab278f5440f54b6e88696320e8194b6a3398551bc109dd","size":1275},{"media_type":"text/javascript; charset=utf-8","path":"assets/clipPlaneVertex-05ivX8eb.js","sha256":"19ea138753e54c57251b507c2fec0a2ece24c5bc3fb64ce25cb4c2bdc8d088e6","size":1356},{"media_type":"text/javascript; charset=utf-8","path":"assets/cubemapToSphericalPolynomial-BOak-Hxf.js","sha256":"f2edcdfb72a9f792b533fff3a67e20aaeb15a768f7af56c9028532a156ca9690","size":3667},{"media_type":"text/javascript; charset=utf-8","path":"assets/dds-Wp2qLmYy.js","sha256":"2861bf9dcb12cd21b50a098ae2d113e4ba47040d6db0ed1b5d461be16af786da","size":161},{"media_type":"text/javascript; charset=utf-8","path":"assets/dds.pure-Ce-RwcPa.js","sha256":"eb027d836f8e81fdd831cad4d7ba32aff297bb44fc528e26cf5a10b15e60548d","size":7046},{"media_type":"text/javascript; charset=utf-8","path":"assets/ddsTextureLoader-DmqLHZsO.js","sha256":"a3f6516b43b0d8817556677f5238ef1879a8e400179415b72e0d5ffe2e27140f","size":1310},{"media_type":"text/javascript; charset=utf-8","path":"assets/default.fragment-skPC2PC5.js","sha256":"a78167e160db36f28b87c24055025880965bf642511c4ade797153be797107d2","size":25362},{"media_type":"text/javascript; charset=utf-8","path":"assets/default.vertex-Bf7EZhGi.js","sha256":"3437e4d7c4488d66b588b949bd273a74ee1c7c28e1e3173bb1c0e2e6c1401f62","size":9451},{"media_type":"text/javascript; charset=utf-8","path":"assets/defaultUboDeclaration-DveD0pj_.js","sha256":"748b971c45f69825fcb661e985353bd05183f26754af56471495a0e5e570653b","size":1624},{"media_type":"text/javascript; charset=utf-8","path":"assets/dumpTools-E15xCOlX.js","sha256":"b58efb448096cc3d35e78527a8e582a0ef1bfe699e47a04fa241e77e292a1278","size":3597},{"media_type":"text/javascript; charset=utf-8","path":"assets/envTextureLoader-Bw7xWacU.js","sha256":"d6862062b0574ec4805e2adb7b38a43c6c5bc03ab752850e93b5f48239b4098a","size":1649},{"media_type":"text/javascript; charset=utf-8","path":"assets/exrTextureLoader-DdM34m4d.js","sha256":"7b02e859b46dd8f96cd551c822fc33f4fe5456144e326583808974633319e42b","size":14187},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphApplyForceBlock-C2CCzJfK.js","sha256":"0b3096c6e22eb01c6552a4850de58b36f86b9970f48e62f4ce78b44c47876b99","size":675},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphApplyImpulseBlock-DaQNBsAi.js","sha256":"1ca577de1f304f721106c661fdc005cddb4396b03653abafcec9ff49c73e7ed4","size":691},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphArrayIndexBlock-Bm_uAgA1.js","sha256":"0877ee84e0084185db6e5785958c4bdf78a58c15b1906a2a15bc1ce2e3f15a85","size":649},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphBezierCurveEasingBlock-BIRe7y9_.js","sha256":"7b3f69c9169a2443cfa10001de0be01610fc917f21dfb03f6b25de5f1f2a3d6e","size":938},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphBinaryOperationBlock-DMJBYgfr.js","sha256":"c1d05de27fa9ac6a74713477f022a269cbb418a39f58c1240cc9c9c56f3e7612","size":375},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphBranchBlock-QxXghWCp.js","sha256":"fe3e9574655431f93e45c8ed91c08411e9566b4f9b256fb562430f50e75b73fc","size":529},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphCachedOperationBlock-I8EAYjjd.js","sha256":"f67de6798617d7e143d3825fc22d138dce7c09f91cf8f2bd0c8f63181ea893db","size":688},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphCancelDelayBlock-BzNEnhY9.js","sha256":"b772bf807f450c4f98e82406a663b6c5334fc77e37146908c557e38d8b98bcae","size":592},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphCodeExecutionBlock-B7ItpxKe.js","sha256":"ce9e6ad8f211e843883c5bb8286505303cceeb176d2523ae572e139a4189e481","size":470},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphConditionalDataBlock-BhbDYfGS.js","sha256":"de466da53145e33cc3b84043bacfd726c0e29fc536d7c6b87aaa9c9091f7973c","size":634},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphConsoleLogBlock-DXpJ7TNt.js","sha256":"38bc89fec012c457589848f67ec8e47facfe313e327a5dc06a538b5cf7e6f153","size":1416},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphConstantBlock-DNvjca7m.js","sha256":"95bbc623bd9fd694e563bcea3e79c3e47cd9d65c64f86d4f8c44c393ddad05af","size":497},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphContextBlock-aSW2fQMB.js","sha256":"95be17f6a6f05c7b6200ae656791be593f2b620d81c644b765558d0cdc71ba95","size":540},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphCounterBlock-CQB87ocL.js","sha256":"3f039765908ce863c99c54a416fb1f2f398f860d7c219c07edbe9ff68a3aaacc","size":630},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphDataSwitchBlock-DuoW5gn_.js","sha256":"9d18d68797a6372d832fc84917d3522108cb1317e86bd2c429fde8a8992bdf4b","size":904},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphDebounceBlock-CKgVrKHO.js","sha256":"b6d73a4da39863877ded154e7c08c01ad41541d3c89e4084a5784acfe95ed109","size":768},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphDebugBlock-DoCK3CbK.js","sha256":"9510a3a70a25978791734f051a6827100574a0f13fbb837a3437d96c10d85537","size":1450},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphDoNBlock-BGQscpK_.js","sha256":"66db02064518c36f47616824baddb89a9319f4afbe1317e181dbb8c0b21411d4","size":770},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphEasingBlock-C8ByegaL.js","sha256":"540465e8a3930fadf6db6e4c25dc1b73fe3970c59ed3ed0bc6c6c9601b4fa3f8","size":1627},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphFlipFlopBlock-DZZ6IZdT.js","sha256":"2f9954dccf4d124c4d89b976e67f8d62b07eb85137142d7ed62671f3822d5f1b","size":678},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphForLoopBlock-jnLx7y5R.js","sha256":"f42a5122e507e4a66c6ce1a3f614e482a19dd7aa08d957410400c482fd7ade9e","size":1108},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphFunctionReferenceBlock-DVCyAPqf.js","sha256":"f417808cf5260dfb81d6084cbeee1774d03007da1facab5bce66a9c44eee57c4","size":714},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGLTFDataProvider-Co3We5bN.js","sha256":"346d99b0f81bee0e52e21f0622074d776857bac2474f4fc418ee9c9c8d07a5f3","size":418},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetAngularVelocityBlock-6xyNjSA6.js","sha256":"2e12bcbd96eb4bc2705006a594fe66cee726500afb4284294be1fe8a99adbbca","size":657},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetAssetBlock-Cmz2b6ZC.js","sha256":"af7a3401010a574d0de00a202138bccb4e7577f904093400bf041113c325d0ca","size":638},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetLinearVelocityBlock-DAEGIqYD.js","sha256":"4618d63c4323eb4ad01d76cc2976bd1690cff1be37568292d95585e9ca94e4a5","size":652},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetPhysicsMassPropertiesBlock-BjCZBRGe.js","sha256":"c83a3430d1355edd2c4ed61b4fa101236235158bb1ba192eb0613e4e9416da93","size":801},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetPropertyBlock-1qAsVO8r.js","sha256":"81ba316249c65a9c4a07f7af37c60515f4d4461018061c4b47155482109523b5","size":930},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetSoundVolumeBlock-CjzseaZ_.js","sha256":"f558bc3c27a1c74ad8a8b6d60456662d0468926e9f7097b5c469ac1cf2383391","size":485},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetVariableBlock-BIHX5QMz.js","sha256":"6c3fb4274d19737ab18a12252b936df1038b532a803ec515e5ca0b59f8aab21d","size":545},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphIndexOfBlock-CiQsoigA.js","sha256":"e4653763665ec254a3a5a2fa8f1e4b5e088b35043c1c5baad17584b5fd59ed12","size":607},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphInterpolationBlock-Bw0KkJ0e.js","sha256":"b9ff94e57df08cb19f626b0f5b9b7509eda661e757d84f9d688097ba9e3a1653","size":2089},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphIsKeyPressedBlock-DndaXIf-.js","sha256":"eb9ab0c224b31b18e4f0c65580c6a96cb8a708d55d277d1e3f44a0d8b07a8551","size":1162},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphIsSoundPlayingBlock-B6Qttnxj.js","sha256":"1387a19c7e6ad076596b008f807ec5f09a85d0bcc301364b34f587fc19d3a43b","size":501},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphJsonPointerParserBlock-DNYimm79.js","sha256":"2e2d08a9a5399dcf876cd82f3640e545a7d1a2cd45a0cbe67dc4d0d758efb696","size":3027},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphKeyDownEventBlock-C4bd_Uk_.js","sha256":"6b11b223668650115b1fa7c5c12bd83cfffeec1640c0e5ea82535aff24f50c66","size":489},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphKeyUpEventBlock-BbiC-9yS.js","sha256":"5551e7177ce5a3f71a634a11c2f1e4257e1d47ef71b1df8ad842a27f6d01bb9e","size":282},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphKeyboardEventBlock-8jNrKia4.js","sha256":"f9cff667c3985a0f5af9ad740948af5efdb58ed511a5a5f73492d41de0c482ed","size":962},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphMathBlocks-Bp9VLo95.js","sha256":"e0d7f4ab9e76b67e117119533b0930ccc24e2d640ba31e4cdf1f6a426c5154c9","size":18510},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphMathCombineExtractBlocks-RBcvT17x.js","sha256":"b61bbd769d85f59d79d7fe0eb5bbc3698b25cac281a2528d8ea53b6c8358d0b0","size":7966},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphMatrixMathBlocks-CDMmeteR.js","sha256":"180dda5df97005577cc52a2a93393402d19da8b95c3498d4bef200198425753b","size":3570},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphMeshPickEventBlock-BLD5qZLm.js","sha256":"8200d3d1c5ea7673a8783185d0122b58a53f9f2a01e7985fde8156c961288eb6","size":1394},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphMultiGateBlock-Bp_x5hf9.js","sha256":"d426f1c43519221bcfb366a719f941e357e113df4c042be3717740a7c9a9994f","size":1660},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPauseAnimationBlock-BJEgts2P.js","sha256":"d0b52c6c8e27d5eb4c51674da408d3eb9d6c4f2e083095b4e73a05dadced4193","size":455},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPauseSoundBlock-mB4vOhyw.js","sha256":"505403eff86a11fec3d834ebae45e54feaa1e013879fa5682c3cb52c98db4b7c","size":552},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPhysicsCollisionEventBlock-DHywozhh.js","sha256":"79969f550378a7c60c75f85b8bb989826de4ea0a203ef0fceb1db60a8532c2ad","size":1678},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPlayAnimationBlock-db7Y-Q7u.js","sha256":"eeb10da3348b2167038aed69e047f4f3d236acf067addf27fbf1b1687d8ee552","size":3736},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPlaySoundBlock-CxsvloFb.js","sha256":"070ba14ea9e948defc361d62732bf121c42af2002e6d763f213266fa1dd72908","size":782},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPointerDownEventBlock-CVZzeLa6.js","sha256":"ae81f8ce126a02ea4d72c8496304c7fef0fa6162c5204a2d86f7a65f1c1c6974","size":940},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPointerMoveEventBlock-kgytqAo-.js","sha256":"135961f1cd0cdc63d3c8b75456ee2ae02513fc37601512f5a959bb3fbc736fcd","size":958},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPointerOutEventBlock-DIiGO9Sz.js","sha256":"81309963b6e69c2a9aee4f229922f618243f8639853509210b7d6cac653709c5","size":831},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPointerOverEventBlock-yJsL04S3.js","sha256":"cb46c7c2d79a0e4513dba4ce397c0dd94381a0a7f022a90cb12235759ab64272","size":842},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPointerUpEventBlock-oGalI3fw.js","sha256":"181cef41021bd28b84c341c7fa27338a1b01999559bd583aaee2fa9a67f3f0bf","size":930},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphReceiveCustomEventBlock-CGU30qtJ.js","sha256":"30176b9f59ddca505afa82c0457b6041ab5c5eb2de0130b0080841b8516e966c","size":1530},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSceneReadyEventBlock-CxumRn2U.js","sha256":"39823d28de8043cf6288fb8f6797b02bfb33d6cf35c155f9b7fb3bd58f0fccf5","size":452},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSceneTickEventBlock-_hKXW4nX.js","sha256":"3468eead7775c47455b71716f1cb3ec8f76d5f0ac6de92c8256fbee228393bc0","size":635},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSendCustomEventBlock-BadQ6Fmt.js","sha256":"7e39f822c23785fbdb20d2744cdfd3167dcadf1e5f58519b523b5b4f91db8f91","size":926},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSequenceBlock-ZX23Dn7h.js","sha256":"4ba6dc9a14f44c82b716af62131a4c0610fed536403e9e2d142055c9066b689c","size":777},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetAngularVelocityBlock-DaDY5MFY.js","sha256":"79dc47ea657b209d08584b29a58b4d84fc5a9690b7168e85e231cf5d347a8c49","size":633},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetDelayBlock-ClLunIUZ.js","sha256":"8f6acc6f922212263ab8b523bba894bcdaabf9aaf47e380b573e67e638a0550f","size":4183},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetLinearVelocityBlock-Cdu7nMQr.js","sha256":"57400130f2f323b900829560b11e86ae855706f8849168036e8cca549287c10f","size":628},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetPhysicsMotionTypeBlock-BXRAhWUV.js","sha256":"c7866d75bc20eb6236a1553966f01edef928c7942961b98ff0b9cea17f77fe27","size":644},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetPropertyBlock-BzUyWEvj.js","sha256":"f82ffd90553e6ae43d259e1256ee432f14b931ad1610d9e8e6503b23d1bcfacc","size":1408},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetSoundVolumeBlock-D_eRVaRX.js","sha256":"55d8a2934efb08622ca5694780309c2a2012d25e309a3b59a3312630ed521985","size":601},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetVariableBlock-C48wCF3K.js","sha256":"44fdf4c3c6dbdd249d60015a48452a762ce3d7122669fa63391539d092db2f6d","size":1228},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSoundEndedEventBlock-JilA8K68.js","sha256":"1123eb3d58733251bc5c669eb5ffc40ef6bb64fb0faf41c6310bff268088cf0e","size":967},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphStopAnimationBlock-DVVhNH2l.js","sha256":"34000349476f50980cfaa7cc4393ff44f6b91d7869449261e50e4d577684aa05","size":1889},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphStopSoundBlock-MkvXT-pz.js","sha256":"bd89767ade371e48310711b6ca36271e87cb997b26960ec5354f3346a015a2f0","size":496},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSwitchBlock-BA1OpeUq.js","sha256":"77c092b67d9fd33d3749fd80457ff5c159f206382ac0f73473d744041d750630","size":1134},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphThrottleBlock-aR7ATriv.js","sha256":"c07fe5d92b3a9a0727aecf8032d7f424e0a1bf49166e600f2eeb4a77520433b8","size":1363},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphTransformCoordinatesSystemBlock-_Z_XQ1KU.js","sha256":"b390afd46a79855c26f79e547895b5e03c7fa1b847dc0b993b3cd043c781b760","size":968},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphTypeToTypeBlocks-CbmOuO1Y.js","sha256":"06ac52993cbcbbb75c4ef305900ecdea18e85b71b9fe7106baa05f7573ea0b4d","size":1281},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphUnaryOperationBlock-BMYbqqlw.js","sha256":"729c01bbe4a5a3f08e12248b4a1a2e4f46eb12b9458d3ec6ed45ca51b2a0c165","size":303},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphVectorMathBlocks-IvfUhMXD.js","sha256":"0e6361a3a702898de7f7fc62e88e5eb1d20a2aa39b1c6f3a3d88aad815b6f7da","size":4726},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphWaitAllBlock-XXcp6Uu_.js","sha256":"9740a0de33690dba5d9f202116add0a536afdba85d95fb0746abcd79decb8b76","size":1531},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphWhileLoopBlock-CiCB0FD8.js","sha256":"63fea6b5f71059cc073986441e4e3d9cd6430557a23bdec0cdf372154e81a901","size":863},{"media_type":"text/javascript; charset=utf-8","path":"assets/fogFragment-Dzpo6VdR.js","sha256":"244780a559ccbc4e51ad08c064eaf98ba066ba87dc56fe20e429ec7573e31298","size":1471},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting-DyyJ3SmK.js","sha256":"b818a6079816c6a73b7eb93be3061930590177be6123a760d198b76bd817e753","size":14395},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting-eKQ5MVB9.js","sha256":"8421a494b1d3911052e38f6f40bf6b6f3f02c1d00443c9d6341af24a8b468dd1","size":14631},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting.fragment-BA9M7qMm.js","sha256":"925e428e5ee739ee32522c24ba17c4929d3eb87d76a3bc5f919a27164469d9bd","size":1812},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting.fragment-BL60TTsE.js","sha256":"85369e234caae8f7961321e0b39d9259a8dcf3887ec0b6c6c6358b8ff9bb9e8f","size":1541},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting.vertex-Bo6VgkDg.js","sha256":"7c9a2027fac547b1c854892a59150dd967de137d1fba491d99ceaab95609dec8","size":4904},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting.vertex-CKsJZAkY.js","sha256":"076723a472a70f9bb04a2bfa9018ba4d41bcc8b4794f4a78ef91966a7bb1524f","size":3748},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplattingVoxel.fragment-BKNvofx9.js","sha256":"f4d2f96e8428f920c38ccfefca09b6b60ab7d857574b2849d21a37244eae8aed","size":1488},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplattingVoxel.fragment-CwwM4G1X.js","sha256":"137f58106346a9143bebfeef0400262e13ada3b7147a149d7b7226709b4c9462","size":1984},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplattingVoxel.vertex-CRzxSOuN.js","sha256":"8cc37deb925e708bcadd92b2e8434714185ace0a99dd56d1ce43dcc0ba1bcc96","size":2611},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplattingVoxel.vertex-CzPcN15t.js","sha256":"e2c2f610472e2c2126f7e5246aea9884c39c5ff85ffcad0072d2e6bdff37bf95","size":1802},{"media_type":"text/javascript; charset=utf-8","path":"assets/geometry.fragment-D6FSJnnh.js","sha256":"11f2c06b5bddc04629dd370ee18b89d40a5d71b7b9e6405ea774e4cb24247313","size":10410},{"media_type":"text/javascript; charset=utf-8","path":"assets/geometry.fragment-D7dB1cPB.js","sha256":"fc473abbb88b0e5257f7896e13faaf087c318c0362a2cdd4b2424bb91313f221","size":8171},{"media_type":"text/javascript; charset=utf-8","path":"assets/geometry.vertex-B30SEDfq.js","sha256":"73ff3c776372ea3c59042321354003d56a358cb3a4bb52600130f73ef39bf62c","size":9012},{"media_type":"text/javascript; charset=utf-8","path":"assets/geometry.vertex-CEqGE1RP.js","sha256":"0ae61215aa1cbcd570453a5211e5d700dd63a477d3ad8e1003e541f4a715109b","size":7601},{"media_type":"text/javascript; charset=utf-8","path":"assets/glowBlurPostProcess.fragment-qbxgPsfh.js","sha256":"466adbd821fa5e23b640fc43e426d10a863b199e89795765d026cf360899fbdc","size":1409},{"media_type":"text/javascript; charset=utf-8","path":"assets/glowMapGeneration.fragment-pr52K7ES.js","sha256":"37d32f50fa28b4bc659d5f1ba31382a6e3b0782264c1a259bf469fedb834a737","size":2530},{"media_type":"text/javascript; charset=utf-8","path":"assets/glowMapGeneration.vertex-Bu7wD6_v.js","sha256":"c670e7b820c72aa524c89f82f20520eea0c9dfd6bf0a8952b16613260348a0c5","size":2798},{"media_type":"text/javascript; charset=utf-8","path":"assets/glowMapMerge.fragment-DQIuOzG_.js","sha256":"cc8acb13aad74330f4a64373455cf09574ef85e23d067c57d084e24126d511ea","size":1059},{"media_type":"text/javascript; charset=utf-8","path":"assets/glowMapMerge.vertex--Gv__zWj.js","sha256":"c4b911b0498cbd2472ca0ded40798ebd83a2f43ba69ae38fb8140f86154ce359","size":545},{"media_type":"text/javascript; charset=utf-8","path":"assets/harmonicsFunctions-KdJGOHc6.js","sha256":"bc8d052a03a23897b3e0b6ed211d1a5dd78df4b68a1ac8ae4e395f3008c8ad5f","size":1420},{"media_type":"text/javascript; charset=utf-8","path":"assets/hdrTextureLoader-BGQvgh0h.js","sha256":"3cca41d849d41bf1df7aef34b4f8b5ef30440e716d894158207bd12b97236953","size":2391},{"media_type":"text/javascript; charset=utf-8","path":"assets/helperFunctions-DgEuNo6U.js","sha256":"627338d20cd1e296ad0906f709f7b43338c60ba14523ac8ed7fce6057a60e603","size":6488},{"media_type":"text/javascript; charset=utf-8","path":"assets/iesTextureLoader-CtVX46fM.js","sha256":"85e81b90a8ffc39c1632de6f7aa663766976d23c19bfd7a0427318769ce3ea77","size":2701},{"media_type":"text/javascript; charset=utf-8","path":"assets/index-BlqB2_Pr.js","sha256":"d932606a4b8c271f232383836a5cb6a6e02eff00f29059b8886c66b66409505b","size":2298631},{"media_type":"text/css; charset=utf-8","path":"assets/index-DcTTrc-8.css","sha256":"c7ca6d6d72937413e23f12b0307554534382c8099ab41fa9ebeb77d3ef1a1eb0","size":12857},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlur.fragment-BX7Lt7ea.js","sha256":"782a24541090793536d071b80fb2328a0a162d29cffae1ef8fa62d6ed27ba02f","size":2851},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlur.fragment-DYsyjXaA.js","sha256":"c169e81bbda3360597fac1a06914343596100fd82156247dad83087d69634b4d","size":2311},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlur.vertex-ClVvwFB7.js","sha256":"de1e83dbbd2e8f0f867ca71d0eae763ec92f3161426862eba66078e407d2df4b","size":1064},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlur.vertex-DPBXY9JC.js","sha256":"74da24c0b55c91aaeab96cd3c3713ed0fe7398703768421b89cd964c8c5c5dbe","size":899},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlurVaryingDeclaration-BYwqlIXx.js","sha256":"dc0d27a213bc7ebf0ce6acc35455638cd0ff16fd5596f789b4f8b23f4994a78f","size":221},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlurVaryingDeclaration-Dug6rT1B.js","sha256":"4dd402abf394ffaa254bf0c076bb17a15e9df8f8e2ac9224cc858a8883c1cc55","size":211},{"media_type":"text/javascript; charset=utf-8","path":"assets/ktxTextureLoader-BIXHU16K.js","sha256":"1a5ba81e849984206370f755de798cd46e22e9d415301e8c3fd29de5256d3503","size":14979},{"media_type":"text/javascript; charset=utf-8","path":"assets/lightFragment-DHmrE5GX.js","sha256":"8cb25ea3aa185a81393db5f316edd0262e6ccb4986a7d877d14da1ba2f53a9ad","size":22605},{"media_type":"text/javascript; charset=utf-8","path":"assets/logDepthDeclaration-DYQ6buM5.js","sha256":"be1ee14c41359f4e53c67633a5cf69a4dd09a35711783eed673ff5a06c68cd25","size":280},{"media_type":"text/javascript; charset=utf-8","path":"assets/logDepthVertex-N8cjnWeq.js","sha256":"0bd5218fb1d563d98b038975a8955aca0550a1a93e0160b1e40b56b9faeae495","size":826},{"media_type":"text/javascript; charset=utf-8","path":"assets/mainUVVaryingDeclaration-04-YeMcZ.js","sha256":"bfbb45c773cb598e16c131d840b4c54b079d50ce3bc3ba8dd0a78e10be5c32c7","size":238},{"media_type":"text/javascript; charset=utf-8","path":"assets/mesh.vertexData.functions-ayNlGC5K.js","sha256":"109b0c291f78ec6b98053b23c7a9ce01eb8bcee909a0964ce337a68a9b4bc61e","size":960},{"media_type":"text/javascript; charset=utf-8","path":"assets/meshUboDeclaration-Cxie7MAJ.js","sha256":"656daddbfcb8905ea34651648e9e695748c249a1569a096e75997992aeb31c75","size":278},{"media_type":"text/javascript; charset=utf-8","path":"assets/oitFragment-Yqa_2p-U.js","sha256":"0f2f84a9985be8c58955ee4b0797fcc3e1544044166017c9b53252d58ea231c2","size":52427},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbr.fragment-B-ILUybs.js","sha256":"11e2cb1dee0531464a3c3ba85b1f9abedd0d864f30373421db56bba4adf4da41","size":86994},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbr.fragment-CYJW19wI.js","sha256":"305daeebf03815c9d1790c3526d32022b14fff2976b374973b2c7c2bbc6e8770","size":89838},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbr.vertex-6zrdkvEg.js","sha256":"c75365b4ef75f22b83a4e436169cbdf77cc4848065de41382434f285631cd9ba","size":20214},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbr.vertex-CZ4PwccK.js","sha256":"d3f35bd5be20f4615293f70ec52a3aeb467e2e6fb2280eb5540e03269a12ed87","size":17340},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrMaterial.pure-BsEUy5d2.js","sha256":"0b9d1d845d47bf449e12af447c34bd6a33fe79aaed2805c73bbc0425a0356641","size":134158},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrMaterialLoadingAdapter-BqYCxfaV.js","sha256":"778f626145facab2cace5085b14032ee56ac2eb990012f076704ba0cd3857aaa","size":33220},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrTransmissionLayerData-Bi8t7k_g.js","sha256":"905d046d57875dc109bbcc11f56217d63282207b90eca366c0f5eefc02057520","size":17708},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrTransmissionLayerData-DlDoA2Eg.js","sha256":"850d1d9eb2712d2553c5dca0dabe1cb0944feb1d10f1b1a08b357b5a02ff5914","size":17043},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrUboDeclaration-Cq9kCjmQ.js","sha256":"894d6298b19c0b3552159e478e35cf069f582243dab491277628386e853ddff0","size":3791},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrUboDeclaration-SB6Z4wg9.js","sha256":"4201c418f9c20fdc7564dce2859eddbe609f38515eea5f07e3294739c67b2d0b","size":5221},{"media_type":"text/javascript; charset=utf-8","path":"assets/packingFunctions-BPDUaRnj.js","sha256":"5d64d2562e9af108bf5eb837db096d6f036e60281689343eebd56d9255b83f86","size":528},{"media_type":"text/javascript; charset=utf-8","path":"assets/packingFunctions-BPvmjixW.js","sha256":"adad2688f1dc5707817dd14ab645a5410b6ba28982c01042f95fcf02407183aa","size":562},{"media_type":"text/javascript; charset=utf-8","path":"assets/pass.fragment-CGW86Knk.js","sha256":"97062c2106d5dd3b59162d86ab2e5109784c25789e4c3faa61d66d85818bad60","size":451},{"media_type":"text/javascript; charset=utf-8","path":"assets/passCube.fragment-BXLbB-Q5.js","sha256":"6e1e5b04e4ce4d9cfcf2435335ccf832c914c2fa83e104abfc00a4f2730f5141","size":1131},{"media_type":"text/javascript; charset=utf-8","path":"assets/passCube.fragment-CagZgpfr.js","sha256":"ff60f33c2be9b53ab0d317ca66b90bc5e87a60549fafeb17a5e68dbe0ae629ea","size":822},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbr.fragment-CMmf0u9q.js","sha256":"66217749d75815c6b0124f659e363f01b816cde83798490681c09d43fd83a2b5","size":93721},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbr.vertex-SKsjk5Pj.js","sha256":"3f661ad64fe41ada5bffee28236fe1280321966d7bcdbe4aaa4d0b3edd4e7e2c","size":14451},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrBRDFFunctions-DNsUN6qQ.js","sha256":"cd913713ae5bdfba86be716fd2115d9c49088a96c89efea6a2209fca2eadfb88","size":12760},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrDebug-Dw9FHwdO.js","sha256":"29f9a296a1486a99a36b827a6b92b8512916425867a850170d8225c754f54a20","size":43522},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrIBLFunctions-ynQ9EJMa.js","sha256":"7cb00a0da7f2ba05d41035f10bc27836ed2a67f7c100380fdb7efe5ce2e862fa","size":2720},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrMaterial.pure-DD-Qp64W.js","sha256":"2be99ae8047ac043566490507574bab64207c198ab89b2456ee0b51abbfe8be1","size":134889},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrMaterialLoadingAdapter-BbrOLlOF.js","sha256":"4a73f3375e884a70ebae257b84cf9a69e6dddda45d622d6c46d5655d202e4ed6","size":12426},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrUboDeclaration-Bqvz9xQU.js","sha256":"63f58b9eb4880d79ad51e35f15db84d8461c25bfd90c364605028eb3dd094176","size":2398},{"media_type":"text/javascript; charset=utf-8","path":"assets/postprocess.vertex-BMFYhnff.js","sha256":"518147b3457842a186b21e6a28c32fcf98d033ff094c2a618445ab3e51f18dab","size":583},{"media_type":"text/javascript; charset=utf-8","path":"assets/procedural.vertex-BfaBXzj0.js","sha256":"7e2eae48265052f64eecce4409fd74d9688e2b032c7f5a19b334bde3647c27f4","size":612},{"media_type":"text/javascript; charset=utf-8","path":"assets/procedural.vertex-pqGGkP1-.js","sha256":"8a7b7ba6b4008ac2b9c63fe3139a920d7badafb4bbf5495ad683c14ad3c666f8","size":472},{"media_type":"text/javascript; charset=utf-8","path":"assets/reflectionFunction-BCniWKEL.js","sha256":"fac40f5d552bc3bc310ccf3f802776e988516c327a2db8f700909779b71789ea","size":5231},{"media_type":"text/javascript; charset=utf-8","path":"assets/rgbdDecode.fragment-DCuzC7q7.js","sha256":"7e2d5128a5f52cb3e939804ea5a7d48dcdc72f1277cd71f31883d8bf8b151456","size":671},{"media_type":"text/javascript; charset=utf-8","path":"assets/rgbdEncode.fragment-BAhasmlV.js","sha256":"a9f0d17b151c28a10af1322e205402d16d1794d5f86b635ee3be4555e4ce42d7","size":477},{"media_type":"text/javascript; charset=utf-8","path":"assets/rgbdEncode.fragment-b49hhC5d.js","sha256":"dfdb9b438ae780c849e9d9ae8aea177703fe1c1afbd6ed3e27e097855aa2db38","size":662},{"media_type":"text/javascript; charset=utf-8","path":"assets/sceneUboDeclaration-DPddq9hQ.js","sha256":"f79ad9f8530aeefcc6342848d1fa6eea5de20e38c0a852204bda856fe5520b84","size":435},{"media_type":"text/javascript; charset=utf-8","path":"assets/textureProcessor.fragment-C5g8djMT.js","sha256":"2ede83ecaa3f964351068b261c4a395ff9e85295a43835c4e20f16af85c06f5b","size":3490},{"media_type":"text/javascript; charset=utf-8","path":"assets/textureProcessor.fragment-CbjSik1W.js","sha256":"a44859bfec6078077accd21737abf487856b225edb75b96a48ae5569be1f4eaf","size":4377},{"media_type":"text/javascript; charset=utf-8","path":"assets/tgaTextureLoader-DqTGNNaJ.js","sha256":"48cb9cdf5d1e427c92102d721c98648420dd8fd6d670bceac24810f73c67e366","size":3527},{"media_type":"text/javascript; charset=utf-8","path":"assets/vertexColorMixing-Bp9_JGdC.js","sha256":"b4c8107b7586e33432738232fd273122d8823ce9c67c3d5b24cc55794ec44162","size":22140},{"media_type":"image/svg+xml","path":"favicon.svg","sha256":"546022cfc08c84149ba3e3fc311fc66ffa29f2227e19ee138525b391c040cd07","size":640},{"media_type":"text/html; charset=utf-8","path":"index.html","sha256":"289bbe03fec794b58be314a72382b8fdc3dac53cd8c7abea7a9111ad14dbc726","size":742},{"media_type":"text/javascript; charset=utf-8","path":"sw.js","sha256":"d7d37cb0c5668dae70e28af0908686d4776f16d11321d3e55dcbe62ab85a75b8","size":2629}],"schema_id":"urn:python-cad-tools:schema:viewer-assets:1","schema_version":1}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a$ as A,M as F,b0 as B,b1 as C,b2 as k,b3 as D,b4 as W,b5 as K,b6 as U,az as P,a0 as T,Q as S,V as Y,b7 as z,b8 as H,aP as G,b9 as w,ba as X,bb as J,bc as q}from"./index-JRwY7p9T.js";class Q{get currentFrame(){return this._currentFrame}get weight(){return this._weight}get currentValue(){return this._currentValue}get targetPath(){return this._targetPath}get target(){return this._currentActiveTarget}get isAdditive(){return this._host&&this._host.isAdditive}constructor(e,t,i,n){if(this._events=new Array,this._currentFrame=0,this._originalValue=new Array,this._originalBlendValue=null,this._offsetsCache={},this._highLimitsCache={},this._stopped=!1,this._blendingFactor=0,this._currentValue=null,this._currentActiveTarget=null,this._directTarget=null,this._targetPath="",this._weight=1,this._absoluteFrameOffset=0,this._previousElapsedTime=0,this._yoyoDirection=1,this._previousAbsoluteFrame=0,this._targetIsArray=!1,this._coreRuntimeAnimation=null,this._animation=t,this._target=e,this._scene=i,this._host=n,this._activeTargets=[],t._runtimeAnimations.push(this),this._animationState={key:0,repeatCount:0,loopMode:this._getCorrectLoopMode()},this._animation.dataType===A.ANIMATIONTYPE_MATRIX&&(this._animationState.workValue=F.Zero()),this._keys=this._animation.getKeys(),this._minFrame=this._keys[0].frame,this._maxFrame=this._keys[this._keys.length-1].frame,this._minFrame!==0){const a={frame:0,value:this._keys[0].value};this._keys.splice(0,0,a)}if(this._target instanceof Array){let a=0;for(const l of this._target)this._preparePath(l,a),this._getOriginalValues(a),a++;this._targetIsArray=!0}else this._preparePath(this._target),this._getOriginalValues(),this._targetIsArray=!1,this._directTarget=this._activeTargets[0];const s=t.getEvents();if(s&&s.length>0)for(const a of s)this._events.push(a._clone());this._enableBlending=e&&e.animationPropertiesOverride?e.animationPropertiesOverride.enableBlending:this._animation.enableBlending}_preparePath(e,t=0){const i=this._animation.targetPropertyPath;if(i.length>1){let n=e;for(let s=0;s<i.length-1;s++){const a=i[s];if(n=n[a],n===void 0)throw new Error(`Invalid property (${a}) in property path (${i.join(".")})`)}this._targetPath=i[i.length-1],this._activeTargets[t]=n}else this._targetPath=i[0],this._activeTargets[t]=e;if(this._activeTargets[t][this._targetPath]===void 0)throw new Error(`Invalid property (${this._targetPath}) in property path (${i.join(".")})`)}get animation(){return this._animation}reset(e=!1){if(e)if(this._target instanceof Array){let t=0;for(const i of this._target)this._originalValue[t]!==void 0&&this._setValue(i,this._activeTargets[t],this._originalValue[t],-1,t),t++}else this._originalValue[0]!==void 0&&this._setValue(this._target,this._directTarget,this._originalValue[0],-1,0);this._offsetsCache={},this._highLimitsCache={},this._currentFrame=0,this._blendingFactor=0;for(let t=0;t<this._events.length;t++)this._events[t].isDone=!1}isStopped(){return this._stopped}dispose(){const e=this._animation.runtimeAnimations.indexOf(this);e>-1&&this._animation.runtimeAnimations.splice(e,1)}setValue(e,t){if(this._targetIsArray){for(let i=0;i<this._target.length;i++){const n=this._target[i];this._setValue(n,this._activeTargets[i],e,t,i)}return}this._setValue(this._target,this._directTarget,e,t,0)}_getOriginalValues(e=0){let t;const i=this._activeTargets[e];if(A.InheritOriginalValueFromActiveAnimations){const n=this._scene._activeAnimatables;for(let s=0;s<n.length;s++){const a=n[s]._runtimeAnimations;for(let l=0;l<a.length;l++){const r=a[l];if(r!==this&&r._targetPath===this._targetPath){for(let h=0;h<r._activeTargets.length;h++)if(r._activeTargets[h]===i&&r._originalValue[h]!==void 0){r._originalValue[h]&&r._originalValue[h].clone?this._originalValue[e]=r._originalValue[h].clone():this._originalValue[e]=r._originalValue[h];return}}}}}i.getLocalMatrix&&this._targetPath==="_matrix"?t=i.getLocalMatrix():t=i[this._targetPath],t&&t.clone?this._originalValue[e]=t.clone():this._originalValue[e]=t}_registerTargetForLateAnimationBinding(e,t){const i=e.target;this._scene._registeredForLateAnimationBindings.pushNoDuplicate(i),i._lateAnimationHolders||(i._lateAnimationHolders={}),i._lateAnimationHolders[e.targetPath]||(i._lateAnimationHolders[e.targetPath]={totalWeight:0,totalAdditiveWeight:0,animations:[],additiveAnimations:[],originalValue:t}),e.isAdditive?(i._lateAnimationHolders[e.targetPath].additiveAnimations.push(e),i._lateAnimationHolders[e.targetPath].totalAdditiveWeight+=e.weight):(i._lateAnimationHolders[e.targetPath].animations.push(e),i._lateAnimationHolders[e.targetPath].totalWeight+=e.weight)}_setValue(e,t,i,n,s){if(this._currentActiveTarget=t,this._weight=n,this._enableBlending&&this._blendingFactor<=1){if(!this._originalBlendValue){const l=t[this._targetPath];l.clone?this._originalBlendValue=l.clone():this._originalBlendValue=l}this._originalBlendValue.m?A.AllowMatrixDecomposeForInterpolation?this._currentValue?F.DecomposeLerpToRef(this._originalBlendValue,i,this._blendingFactor,this._currentValue):this._currentValue=F.DecomposeLerp(this._originalBlendValue,i,this._blendingFactor):this._currentValue?F.LerpToRef(this._originalBlendValue,i,this._blendingFactor,this._currentValue):this._currentValue=F.Lerp(this._originalBlendValue,i,this._blendingFactor):this._currentValue=A._UniversalLerp(this._originalBlendValue,i,this._blendingFactor);const a=e&&e.animationPropertiesOverride?e.animationPropertiesOverride.blendingSpeed:this._animation.blendingSpeed;this._blendingFactor+=a}else this._currentValue?this._currentValue.copyFrom?this._currentValue.copyFrom(i):this._currentValue=i:i?.clone?this._currentValue=i.clone():this._currentValue=i;n!==-1?this._registerTargetForLateAnimationBinding(this,this._originalValue[s]):this._animationState.loopMode===A.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT?this._currentValue.addToRef?this._currentValue.addToRef(this._originalValue[s],t[this._targetPath]):t[this._targetPath]=this._originalValue[s]+this._currentValue:t[this._targetPath]=this._currentValue,e.markAsDirty&&e.markAsDirty(this._animation.targetProperty)}_getCorrectLoopMode(){return this._target&&this._target.animationPropertiesOverride?this._target.getClassName?.()==="MorphTarget"&&this._target._animationPropertiesOverride==null?this._animation.loopMode:this._target.animationPropertiesOverride.loopMode:this._animation.loopMode}goToFrame(e,t=-1){const i=this._animation.getKeys();e<i[0].frame?e=i[0].frame:e>i[i.length-1].frame&&(e=i[i.length-1].frame);const n=this._events;if(n.length)for(let a=0;a<n.length;a++)n[a].onlyOnce||(n[a].isDone=n[a].frame<e);this._currentFrame=e;const s=this._animation._interpolate(e,this._animationState);this.setValue(s,t)}_prepareForSpeedRatioChange(e){const t=this._previousElapsedTime*(this._animation.framePerSecond*e)/1e3;this._absoluteFrameOffset=this._previousAbsoluteFrame-t}animate(e,t,i,n,s,a=-1){const l=this._animation,r=l.targetPropertyPath;if(!r||r.length<1)return this._stopped=!0,!1;let h=!0,g;const u=this._events;let c;if(this._coreRuntimeAnimation)c=i-t,g=this._coreRuntimeAnimation.currentFrame,this._currentFrame=g,this._animationState.repeatCount=this._coreRuntimeAnimation._animationState.repeatCount,this._animationState.highLimitValue=this._coreRuntimeAnimation._animationState.highLimitValue,this._animationState.offsetValue=this._coreRuntimeAnimation._animationState.offsetValue;else{(t<this._minFrame||t>this._maxFrame)&&(t=this._minFrame),(i<this._minFrame||i>this._maxFrame)&&(i=this._maxFrame),c=i-t;let _,m=e*(l.framePerSecond*s)/1e3+this._absoluteFrameOffset,b=0,V=!1;const O=n&&this._animationState.loopMode===A.ANIMATIONLOOPMODE_YOYO;if(O){const d=(m-t)/c,p=Math.sin(d*Math.PI);m=Math.abs(p)*c+t;const L=p>=0?1:-1;this._yoyoDirection!==L&&(V=!0),this._yoyoDirection=L}if(this._previousElapsedTime=e,this._previousAbsoluteFrame=m,!n&&i>=t&&(m>=c&&s>0||m<=0&&s<0))h=!1,b=l.evaluate(i);else if(!n&&t>=i&&(m<=c&&s<0||m>=0&&s>0))h=!1,b=l.evaluate(t);else if(this._animationState.loopMode!==A.ANIMATIONLOOPMODE_CYCLE){const d=i.toString()+t.toString();if(!this._offsetsCache[d]){this._animationState.repeatCount=0,this._animationState.loopMode=A.ANIMATIONLOOPMODE_CYCLE;const p=l._interpolate(t,this._animationState),y=l._interpolate(i,this._animationState);switch(this._animationState.loopMode=this._getCorrectLoopMode(),l.dataType){case A.ANIMATIONTYPE_FLOAT:this._offsetsCache[d]=y-p;break;case A.ANIMATIONTYPE_QUATERNION:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_VECTOR3:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_VECTOR2:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_SIZE:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_COLOR3:this._offsetsCache[d]=y.subtract(p);break}this._highLimitsCache[d]=y}b=this._highLimitsCache[d],_=this._offsetsCache[d]}if(_===void 0)switch(l.dataType){case A.ANIMATIONTYPE_FLOAT:_=0;break;case A.ANIMATIONTYPE_QUATERNION:_=K;break;case A.ANIMATIONTYPE_VECTOR3:_=W;break;case A.ANIMATIONTYPE_VECTOR2:_=D;break;case A.ANIMATIONTYPE_SIZE:_=k;break;case A.ANIMATIONTYPE_COLOR3:_=C;break;case A.ANIMATIONTYPE_COLOR4:_=B;break}if(this._host&&this._host.syncRoot){const d=this._host.syncRoot,p=(d.masterFrame-d.fromFrame)/(d.toFrame-d.fromFrame);g=t+c*p}else m>0&&t>i||m<0&&t<i?g=h&&c!==0?i+m%c:t:g=h&&c!==0?t+m%c:i;if(!O&&(s>0&&this.currentFrame>g||s<0&&this.currentFrame<g)||O&&V){this._onLoop();for(let d=0;d<u.length;d++)u[d].onlyOnce||(u[d].isDone=!1);this._animationState.key=s>0?0:l.getKeys().length-1}this._currentFrame=g,this._animationState.repeatCount=c===0?0:m/c>>0,this._animationState.highLimitValue=b,this._animationState.offsetValue=_}const f=l._interpolate(g,this._animationState);if(this.setValue(f,a),u.length){for(let _=0;_<u.length;_++)if(c>=0&&g>=u[_].frame&&u[_].frame>=t||c<0&&g<=u[_].frame&&u[_].frame<=t){const m=u[_];m.isDone||(m.onlyOnce&&(u.splice(_,1),_--),m.isDone=!0,m.action(g))}}return h||(this._stopped=!0),h}}class I{get syncRoot(){return this._syncRoot}get masterFrame(){return this._runtimeAnimations.length===0?0:this._runtimeAnimations[0].currentFrame}get weight(){return this._weight}set weight(e){if(e===-1){this._weight=-1;return}this._weight=Math.min(Math.max(e,0),1)}get speedRatio(){return this._speedRatio}set speedRatio(e){for(let t=0;t<this._runtimeAnimations.length;t++)this._runtimeAnimations[t]._prepareForSpeedRatioChange(e);this._speedRatio=e,this._goToFrame!==null&&this.goToFrame(this._goToFrame)}get elapsedTime(){return this._localDelayOffset===null?0:this._scene._animationTime-this._localDelayOffset}constructor(e,t,i=0,n=100,s=!1,a=1,l,r,h,g=!1,u=0){this.target=t,this.fromFrame=i,this.toFrame=n,this.loopAnimation=s,this.onAnimationEnd=l,this.onAnimationLoop=h,this.isAdditive=g,this.playOrder=u,this._localDelayOffset=null,this._pausedDelay=null,this._manualJumpDelay=null,this._runtimeAnimations=new Array,this._paused=!1,this._speedRatio=1,this._weight=-1,this._previousWeight=-1,this._syncRoot=null,this._frameToSyncFromJump=null,this._goToFrame=null,this.disposeOnEnd=!0,this.animationStarted=!1,this.onAnimationEndObservable=new P,this.onAnimationLoopObservable=new P,this._scene=e,r&&this.appendAnimations(t,r),this._speedRatio=a,e._activeAnimatables.push(this)}syncWith(e){if(this._syncRoot=e,e){const t=this._scene._activeAnimatables.indexOf(this);t>-1&&(this._scene._activeAnimatables.splice(t,1),this._scene._activeAnimatables.push(this))}return this}getAnimations(){return this._runtimeAnimations}appendAnimations(e,t){for(let i=0;i<t.length;i++){const n=t[i],s=new Q(e,n,this._scene,this);s._onLoop=()=>{this.onAnimationLoopObservable.notifyObservers(this),this.onAnimationLoop&&this.onAnimationLoop()},this._runtimeAnimations.push(s)}}getAnimationByTargetProperty(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)if(t[i].animation.targetProperty===e)return t[i].animation;return null}getRuntimeAnimationByTargetProperty(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)if(t[i].animation.targetProperty===e)return t[i];return null}reset(){const e=this._runtimeAnimations;for(let t=0;t<e.length;t++)e[t].reset(!0);this._localDelayOffset=null,this._pausedDelay=null}enableBlending(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)t[i].animation.enableBlending=!0,t[i].animation.blendingSpeed=e}disableBlending(){const e=this._runtimeAnimations;for(let t=0;t<e.length;t++)e[t].animation.enableBlending=!1}goToFrame(e,t=!1){const i=this._runtimeAnimations;if(i[0]){const n=i[0].animation.framePerSecond;this._frameToSyncFromJump=this._frameToSyncFromJump??i[0].currentFrame;const s=this.speedRatio===0?0:(e-this._frameToSyncFromJump)/n*1e3/this.speedRatio;this._manualJumpDelay=-s}for(let n=0;n<i.length;n++)i[n].goToFrame(e,t?this._weight:-1);this._goToFrame=e}get paused(){return this._paused}pause(){this._paused||(this._paused=!0)}restart(){this._paused=!1}_raiseOnAnimationEnd(){this.onAnimationEnd&&this.onAnimationEnd(),this.onAnimationEndObservable.notifyObservers(this)}stop(e,t,i=!1,n=!1){if(e||t){const s=this._scene._activeAnimatables.indexOf(this);if(s>-1){const a=this._runtimeAnimations;for(let l=a.length-1;l>=0;l--){const r=a[l];e&&r.animation.name!=e||t&&!t(r.target)||(r.dispose(),a.splice(l,1))}a.length==0&&(i||this._scene._activeAnimatables.splice(s,1),n||this._raiseOnAnimationEnd())}}else{const s=this._scene._activeAnimatables.indexOf(this);if(s>-1){i||this._scene._activeAnimatables.splice(s,1);const a=this._runtimeAnimations;for(let l=0;l<a.length;l++)a[l].dispose();this._runtimeAnimations.length=0,n||this._raiseOnAnimationEnd()}}}async waitAsync(){return await new Promise(e=>{this.onAnimationEndObservable.add(()=>{e(this)},void 0,void 0,this,!0)})}_animate(e){if(this._paused)return this.animationStarted=!1,this._pausedDelay===null&&(this._pausedDelay=e),!0;if(this._localDelayOffset===null?(this._localDelayOffset=e,this._pausedDelay=null):this._pausedDelay!==null&&(this._localDelayOffset+=e-this._pausedDelay,this._pausedDelay=null),this._manualJumpDelay!==null&&(this._localDelayOffset+=this.speedRatio<0?-this._manualJumpDelay:this._manualJumpDelay,this._manualJumpDelay=null,this._frameToSyncFromJump=null),this._goToFrame=null,!I.ProcessPausedAnimatables&&this._weight===0&&this._previousWeight===0)return!0;this._previousWeight=this._weight;let t=!1;const i=this._runtimeAnimations;let n;for(n=0;n<i.length;n++){const a=i[n].animate(e-this._localDelayOffset,this.fromFrame,this.toFrame,this.loopAnimation,this._speedRatio,this._weight);t=t||a}if(this.animationStarted=t,!t){if(this.disposeOnEnd)for(n=this._scene._activeAnimatables.indexOf(this),this._scene._activeAnimatables.splice(n,1),n=0;n<i.length;n++)i[n].dispose();this._raiseOnAnimationEnd(),this.disposeOnEnd&&(this.onAnimationEnd=null,this.onAnimationLoop=null,this.onAnimationLoopObservable.clear(),this.onAnimationEndObservable.clear())}return t}}I.ProcessPausedAnimatables=!1;function $(o){if(o.totalWeight===0&&o.totalAdditiveWeight===0)return o.originalValue;let e=1;const t=T.Vector3[0],i=T.Vector3[1],n=T.Quaternion[0];let s=0;const a=o.animations[0],l=o.originalValue;let r,h=!1;if(o.totalWeight<1)r=1-o.totalWeight,l.decompose(i,n,t);else{if(s=1,e=o.totalWeight,r=a.weight/e,r==1)if(o.totalAdditiveWeight)h=!0;else return a.currentValue;a.currentValue.decompose(i,n,t)}if(!h){i.scaleInPlace(r),t.scaleInPlace(r),n.scaleInPlace(r);for(let u=s;u<o.animations.length;u++){const c=o.animations[u];if(c.weight===0)continue;r=c.weight/e;const f=T.Vector3[2],_=T.Vector3[3],m=T.Quaternion[1];c.currentValue.decompose(_,m,f),_.scaleAndAddToRef(r,i),m.scaleAndAddToRef(S.Dot(n,m)>0?r:-r,n),f.scaleAndAddToRef(r,t)}n.normalize()}for(let u=0;u<o.additiveAnimations.length;u++){const c=o.additiveAnimations[u];if(c.weight===0)continue;const f=T.Vector3[2],_=T.Vector3[3],m=T.Quaternion[1];c.currentValue.decompose(_,m,f),_.multiplyToRef(i,_),Y.LerpToRef(i,_,c.weight,i),n.multiplyToRef(m,m),S.SlerpToRef(n,m,c.weight,n),f.scaleAndAddToRef(c.weight,t)}const g=a?a._animationState.workValue:T.Matrix[0].clone();return F.ComposeToRef(i,n,t,g),g}function j(o,e){if(o.totalWeight===0&&o.totalAdditiveWeight===0)return e;const t=o.animations[0],i=o.originalValue;let n=e;if(o.totalWeight===0&&o.totalAdditiveWeight>0)n.copyFrom(i);else if(o.animations.length===1){if(S.SlerpToRef(i,t.currentValue,Math.min(1,o.totalWeight),n),o.totalAdditiveWeight===0)return n}else if(o.animations.length>1){let s=1,a,l;if(o.totalWeight<1){const h=1-o.totalWeight;a=[],l=[],a.push(i),l.push(h)}else{if(o.animations.length===2&&(S.SlerpToRef(o.animations[0].currentValue,o.animations[1].currentValue,o.animations[1].weight/o.totalWeight,e),o.totalAdditiveWeight===0))return e;a=[],l=[],s=o.totalWeight}for(let h=0;h<o.animations.length;h++){const g=o.animations[h];a.push(g.currentValue),l.push(g.weight/s)}let r=0;for(let h=0;h<a.length;){if(!h){S.SlerpToRef(a[h],a[h+1],l[h+1]/(l[h]+l[h+1]),e),n=e,r=l[h]+l[h+1],h+=2;continue}r+=l[h],S.SlerpToRef(n,a[h],l[h]/r,n),h++}}for(let s=0;s<o.additiveAnimations.length;s++){const a=o.additiveAnimations[s];a.weight!==0&&(n.multiplyToRef(a.currentValue,T.Quaternion[0]),S.SlerpToRef(n,T.Quaternion[0],a.weight,n))}return n}function Z(o){if(o._registeredForLateAnimationBindings.length){for(let e=0;e<o._registeredForLateAnimationBindings.length;e++){const t=o._registeredForLateAnimationBindings.data[e];for(const i in t._lateAnimationHolders){const n=t._lateAnimationHolders[i],s=n.animations[0],a=n.originalValue;if(a==null)continue;const l=A.AllowMatrixDecomposeForInterpolation&&a.m;let r=t[i];if(l)r=$(n);else if(a.w!==void 0)r=j(n,r||S.Identity());else{let g=0,u=1;const c=s&&s._animationState.loopMode===A.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT;if(n.totalWeight<1)c?r=a.clone?a.clone():a:s&&a.scale?r=a.scale(1-n.totalWeight):s?r=a*(1-n.totalWeight):a.clone?r=a.clone():r=a;else if(s){u=n.totalWeight;const f=s.weight/u;f!==1?s.currentValue.scale?r=s.currentValue.scale(f):r=s.currentValue*f:r=s.currentValue,c&&(r.addToRef?r.addToRef(a,r):r+=a),g=1}for(let f=g;f<n.animations.length;f++){const _=n.animations[f],m=_.weight/u;if(m)_.currentValue.scaleAndAddToRef?_.currentValue.scaleAndAddToRef(m,r):r+=_.currentValue*m;else continue}for(let f=0;f<n.additiveAnimations.length;f++){const _=n.additiveAnimations[f],m=_.weight;if(m)_.currentValue.scaleAndAddToRef?_.currentValue.scaleAndAddToRef(m,r):r+=_.currentValue*m;else continue}}t[i]=r}t._lateAnimationHolders={}}o._registeredForLateAnimationBindings.reset()}}function tt(o,e){e&&(e.prototype.copyAnimationRange=function(t,i,n,s=!1,a=null){this.animations.length===0&&(this.animations.push(new A(this.name,"_matrix",t.animations[0].framePerSecond,A.ANIMATIONTYPE_MATRIX,0)),this.animations[0].setKeys([]));const l=t.animations[0].getRange(i);if(!l)return!1;const r=l.from,h=l.to,g=t.animations[0].getKeys(),u=t.length,c=t.getParent(),f=this.getParent(),_=s&&c&&u&&this.length&&u!==this.length,m=_&&f&&c?f.length/c.length:1,b=s&&!f&&a&&(a.x!==1||a.y!==1||a.z!==1),V=this.animations[0].getKeys();let O,d,p;for(let y=0,L=g.length;y<L;y++)O=g[y],O.frame>=r&&O.frame<=h&&(s?(p=O.value.clone(),_?(d=p.getTranslation(),p.setTranslation(d.scaleInPlace(m))):b&&a?(d=p.getTranslation(),p.setTranslation(d.multiplyInPlace(a))):p=O.value):p=O.value,V.push({frame:O.frame+n,value:p}));return this.animations[0].createRange(i,r+n,h+n),!0}),o&&(o.prototype._animate=function(t){if(!this.animationsEnabled)return;const i=U.Now;if(!this._animationTimeLast){if(this._pendingData.length>0)return;this._animationTimeLast=i}this.deltaTime=t!==void 0?t:this.useConstantAnimationDeltaTime?16:(i-this._animationTimeLast)*this.animationTimeScale,this._animationTimeLast=i;const n=this._activeAnimatables;if(n.length===0)return;this._animationTime+=this.deltaTime;const s=this._animationTime;for(let a=0;a<n.length;a++){const l=n[a];!l._animate(s)&&l.disposeOnEnd&&a--}Z(this)},o.prototype.sortActiveAnimatables=function(){this._activeAnimatables.sort((t,i)=>t.playOrder-i.playOrder)},o.prototype.beginWeightedAnimation=function(t,i,n,s=1,a,l=1,r,h,g,u,c=!1){const f=this.beginAnimation(t,i,n,a,l,r,h,!1,g,u,c);return f.weight=s,f},o.prototype.beginAnimation=function(t,i,n,s,a=1,l,r,h=!0,g,u,c=!1){if(a<0){const _=i;i=n,n=_,a=-a}i>n&&(a=-a),h&&this.stopAnimation(t,void 0,g),r||(r=new I(this,t,i,n,s,a,l,void 0,u,c));const f=g?g(t):!0;if(t.animations&&f&&r.appendAnimations(t,t.animations),t.getAnimatables){const _=t.getAnimatables();for(let m=0;m<_.length;m++)this.beginAnimation(_[m],i,n,s,a,l,r,h,g,u)}return r.reset(),r},o.prototype.beginHierarchyAnimation=function(t,i,n,s,a,l=1,r,h,g=!0,u,c,f=!1){const _=t.getDescendants(i),m=[];m.push(this.beginAnimation(t,n,s,a,l,r,h,g,u,void 0,f));for(const b of _)m.push(this.beginAnimation(b,n,s,a,l,r,h,g,u,void 0,f));return m},o.prototype.beginDirectAnimation=function(t,i,n,s,a,l=1,r,h,g=!1){if(l<0){const c=n;n=s,s=c,l=-l}return n>s&&(l=-l),new I(this,t,n,s,a,l,r,i,h,g)},o.prototype.beginDirectHierarchyAnimation=function(t,i,n,s,a,l,r,h,g,u=!1){const c=t.getDescendants(i),f=[];f.push(this.beginDirectAnimation(t,n,s,a,l,r,h,g,u));for(const _ of c)f.push(this.beginDirectAnimation(_,n,s,a,l,r,h,g,u));return f},o.prototype.getAnimatableByTarget=function(t){for(let i=0;i<this._activeAnimatables.length;i++)if(this._activeAnimatables[i].target===t)return this._activeAnimatables[i];return null},o.prototype.getAllAnimatablesByTarget=function(t){const i=[];for(let n=0;n<this._activeAnimatables.length;n++)this._activeAnimatables[n].target===t&&i.push(this._activeAnimatables[n]);return i},o.prototype.stopAnimation=function(t,i,n){const s=this.getAllAnimatablesByTarget(t);for(const a of s)a.stop(i,n)},o.prototype.stopAllAnimations=function(){if(this._activeAnimatables){for(let t=0;t<this._activeAnimatables.length;t++)this._activeAnimatables[t].stop(void 0,void 0,!0);this._activeAnimatables.length=0}for(const t of this.animationGroups)t.stop()})}let x=!1;function et(){x||(x=!0,tt(H,z))}class it{getClassName(){return"TargetedAnimation"}constructor(e){this.parent=e,this.uniqueId=q.UniqueId}serialize(){const e={};return e.animation=this.animation.serialize(),e.targetId=this.target.id,e.targetUniqueId=this.target.uniqueId,e}}class v{get mask(){return this._mask}set mask(e){this._mask!==e&&(this._mask=e,this.syncWithMask(!0))}syncWithMask(e=!1){if(!this.mask&&!e){this._numActiveAnimatables=this._targetedAnimations.length;return}this._numActiveAnimatables=0;for(let t=0;t<this._animatables.length;++t){const i=this._animatables[t];!this.mask||this.mask.disabled||this.mask.retainsTarget(i.target.name)?(this._numActiveAnimatables++,i.paused&&i.restart()):i.paused||i.pause()}}removeUnmaskedAnimations(){if(!(!this.mask||this.mask.disabled)){for(let e=0;e<this._animatables.length;++e){const t=this._animatables[e];this.mask.retainsTarget(t.target.name)||(t.stop(),this._animatables.splice(e,1),--e)}for(let e=0;e<this._targetedAnimations.length;e++){const t=this._targetedAnimations[e];this.mask.retainsTarget(t.target.name)||(this._targetedAnimations.splice(e,1),--e)}}}get from(){return this._from}set from(e){if(this._from!==e){this._from=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.fromFrame=this._from}}}get to(){return this._to}set to(e){if(this._to!==e){this._to=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.toFrame=this._to}}}get isStarted(){return this._isStarted}get isPlaying(){return this._isStarted&&!this._isPaused}get speedRatio(){return this._speedRatio}set speedRatio(e){if(this._speedRatio!==e){this._speedRatio=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.speedRatio=this._speedRatio}}}get loopAnimation(){return this._loopAnimation}set loopAnimation(e){if(this._loopAnimation!==e){this._loopAnimation=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.loopAnimation=this._loopAnimation}}}get isAdditive(){return this._isAdditive}set isAdditive(e){if(this._isAdditive!==e){this._isAdditive=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.isAdditive=this._isAdditive}}}get weight(){return this._weight}set weight(e){this._weight!==e&&(this._weight=e,this.setWeightForAllAnimatables(this._weight))}get targetedAnimations(){return this._targetedAnimations}get animatables(){return this._animatables}get children(){return this._targetedAnimations}get playOrder(){return this._playOrder}set playOrder(e){if(this._playOrder!==e&&(this._playOrder=e,this._animatables.length>0)){for(let t=0;t<this._animatables.length;t++)this._animatables[t].playOrder=this._playOrder;this._scene.sortActiveAnimatables()}}get enableBlending(){return this._enableBlending}set enableBlending(e){if(this._enableBlending!==e&&(this._enableBlending=e,e!==null))for(let t=0;t<this._targetedAnimations.length;++t)this._targetedAnimations[t].animation.enableBlending=e}get blendingSpeed(){return this._blendingSpeed}set blendingSpeed(e){if(this._blendingSpeed!==e&&(this._blendingSpeed=e,e!==null))for(let t=0;t<this._targetedAnimations.length;++t)this._targetedAnimations[t].animation.blendingSpeed=e}getLength(e,t){e=e??this._from,t=t??this._to;const i=this.targetedAnimations[0].animation.framePerSecond*this._speedRatio;return(t-e)/i}getScene(){return this._scene}constructor(e,t=null,i=-1,n=0){this.name=e,this._targetedAnimations=new Array,this._animatables=new Array,this._from=Number.MAX_VALUE,this._to=-Number.MAX_VALUE,this._speedRatio=1,this._loopAnimation=!1,this._isAdditive=!1,this._weight=-1,this._playOrder=0,this._enableBlending=null,this._blendingSpeed=null,this._numActiveAnimatables=0,this._shouldStart=!0,this._parentContainer=null,this.onAnimationEndObservable=new P,this.onAnimationLoopObservable=new P,this.onAnimationGroupLoopObservable=new P,this.onAnimationGroupEndObservable=new P,this.onAnimationGroupPauseObservable=new P,this.onAnimationGroupPlayObservable=new P,this.metadata=null,this._mask=null,this._animationLoopFlags=[],this._scene=t||G.LastCreatedScene,this._weight=i,this._playOrder=n,this.uniqueId=this._scene.getUniqueId(),et(),this._scene.addAnimationGroup(this)}addTargetedAnimation(e,t){const i=new it(this);i.animation=e,i.target=t;const n=e.getKeys();return this._from>n[0].frame&&(this._from=n[0].frame),this._to<n[n.length-1].frame&&(this._to=n[n.length-1].frame),this._enableBlending!==null&&(e.enableBlending=this._enableBlending),this._blendingSpeed!==null&&(e.blendingSpeed=this._blendingSpeed),this._targetedAnimations.push(i),this._shouldStart=!0,i}removeTargetedAnimation(e){for(let t=this._targetedAnimations.length-1;t>-1;t--)this._targetedAnimations[t].animation===e&&this._targetedAnimations.splice(t,1)}normalize(e=null,t=null){e==null&&(e=this._from),t==null&&(t=this._to);for(let i=0;i<this._targetedAnimations.length;i++){const s=this._targetedAnimations[i].animation.getKeys(),a=s[0],l=s[s.length-1];if(a.frame>e){const r={frame:e,value:a.value,inTangent:a.inTangent,outTangent:a.outTangent,interpolation:a.interpolation};s.splice(0,0,r)}if(l.frame<t){const r={frame:t,value:l.value,inTangent:l.inTangent,outTangent:l.outTangent,interpolation:l.interpolation};s.push(r)}}return this._from=e,this._to=t,this}_processLoop(e,t,i){e.onAnimationLoop=()=>{this.onAnimationLoopObservable.notifyObservers(t),!this._animationLoopFlags[i]&&(this._animationLoopFlags[i]=!0,this._animationLoopCount++,this._animationLoopCount===this._numActiveAnimatables&&(this.onAnimationGroupLoopObservable.notifyObservers(this),this._animationLoopCount=0,this._animationLoopFlags.length=0))}}start(e=!1,t=1,i,n,s){if(this._isStarted||this._targetedAnimations.length===0)return this;this._loopAnimation=e,this._shouldStart=!1,this._animationLoopCount=0,this._animationLoopFlags.length=0;for(let a=0;a<this._targetedAnimations.length;a++){const l=this._targetedAnimations[a],r=this._scene.beginDirectAnimation(l.target,[l.animation],i!==void 0?i:this._from,n!==void 0?n:this._to,e,t,void 0,void 0,s!==void 0?s:this._isAdditive);r.weight=this._weight,r.playOrder=this._playOrder,r.onAnimationEnd=()=>{this.onAnimationEndObservable.notifyObservers(l),this._checkAnimationGroupEnded(r)},this._processLoop(r,l,a),this._animatables.push(r)}return this.syncWithMask(),this._scene.sortActiveAnimatables(),this._speedRatio=t,this._isStarted=!0,this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}pause(){if(!this._isStarted)return this;this._isPaused=!0;for(let e=0;e<this._animatables.length;e++)this._animatables[e].pause();return this.onAnimationGroupPauseObservable.notifyObservers(this),this}play(e){return this.isStarted&&this._animatables.length&&!this._shouldStart?(e!==void 0&&(this.loopAnimation=e),this.restart()):(this.stop(),this.start(e,this._speedRatio)),this}reset(){if(!this._isStarted)return this.play(),this.goToFrame(0),this.stop(!0),this;for(let e=0;e<this._animatables.length;e++)this._animatables[e].reset();return this}restart(){if(!this._isStarted)return this;for(let e=0;e<this._animatables.length;e++)this._animatables[e].restart();return this.syncWithMask(),this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}stop(e=!1){if(!this._isStarted)return this;const t=this._animatables.slice();for(let n=0;n<t.length;n++)t[n].stop(void 0,void 0,!0,e);let i=0;for(let n=0;n<this._scene._activeAnimatables.length;n++){const s=this._scene._activeAnimatables[n];s._runtimeAnimations.length>0?this._scene._activeAnimatables[i++]=s:e&&this._checkAnimationGroupEnded(s,e)}return this._scene._activeAnimatables.length=i,this._isStarted=!1,this}setWeightForAllAnimatables(e){for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.weight=e}return this}syncAllAnimationsWith(e){for(let t=0;t<this._animatables.length;t++)this._animatables[t].syncWith(e);return this}goToFrame(e,t=!1){if(!this._isStarted)return this;for(let i=0;i<this._animatables.length;i++)this._animatables[i].goToFrame(e,t);return this}getCurrentFrame(){return this.animatables[0]?.masterFrame||0}dispose(){if(this.isStarted&&this.stop(),this._targetedAnimations.length=0,this._animatables.length=0,this._scene.removeAnimationGroup(this),this._parentContainer){const e=this._parentContainer.animationGroups.indexOf(this);e>-1&&this._parentContainer.animationGroups.splice(e,1),this._parentContainer=null}this.onAnimationEndObservable.clear(),this.onAnimationGroupEndObservable.clear(),this.onAnimationGroupPauseObservable.clear(),this.onAnimationGroupPlayObservable.clear(),this.onAnimationLoopObservable.clear(),this.onAnimationGroupLoopObservable.clear()}_checkAnimationGroupEnded(e,t=!1){const i=this._animatables.indexOf(e);i>-1&&this._animatables.splice(i,1),this._animatables.length===this._targetedAnimations.length-this._numActiveAnimatables&&(this._isStarted=!1,t||this.onAnimationGroupEndObservable.notifyObservers(this),this._animatables.length=0)}clone(e,t,i=!1,n=!1){const s=new v(e||this.name,this._scene,this._weight,this._playOrder);s._from=this.from,s._to=this.to,s._speedRatio=this.speedRatio,s._loopAnimation=this.loopAnimation,s._isAdditive=this.isAdditive,s._enableBlending=this.enableBlending,s._blendingSpeed=this.blendingSpeed,s.metadata=this.metadata,s.mask=this.mask;for(const a of this._targetedAnimations)s.addTargetedAnimation(i?a.animation.clone(n):a.animation,t?t(a.target):a.target);return s}serialize(){const e={};e.name=this.name,e.from=this.from,e.to=this.to,e.speedRatio=this.speedRatio,e.loopAnimation=this.loopAnimation,e.isAdditive=this.isAdditive,e.weight=this.weight,e.playOrder=this.playOrder,e.enableBlending=this.enableBlending,e.blendingSpeed=this.blendingSpeed,e.targetedAnimations=[];for(let t=0;t<this.targetedAnimations.length;t++){const i=this.targetedAnimations[t];e.targetedAnimations[t]=i.serialize()}return w&&w.HasTags(this)&&(e.tags=w.GetTags(this)),this.metadata&&(e.metadata=this.metadata),e}getClassName(){return"AnimationGroup"}toString(e){let t="Name: "+this.name;return t+=", type: "+this.getClassName(),e&&(t+=", from: "+this._from,t+=", to: "+this._to,t+=", isStarted: "+this._isStarted,t+=", speedRatio: "+this._speedRatio,t+=", targetedAnimations length: "+this._targetedAnimations.length,t+=", animatables length: "+this._animatables.length),t}}function nt(o,e=!0,t=!1,i){if(o.length===0)return null;i=i??o[0].weight;let n=Number.MAX_VALUE,s=-Number.MAX_VALUE;if(t)for(const l of o)l.from<n&&(n=l.from),l.to>s&&(s=l.to);const a=new v(o[0].name+"_merged",o[0].getScene(),i);for(const l of o){t&&l.normalize(n,s);for(const r of l.targetedAnimations)a.addTargetedAnimation(r.animation,r.target);e&&l.dispose()}return a}function at(o,e,t){const i=new v(o.name,e,o.weight,o.playOrder),n=i;for(let s=0;s<o.targetedAnimations.length;s++){const a=o.targetedAnimations[s],l=J(a.animation),r=t?t(a):a.animation.property==="influence"?e.getMorphTargetById(a.targetId):e.getNodeById(a.targetId);r&&i.addTargetedAnimation(l,r)}return w&&w.AddTagsTo(i,o.tags),o.from!==null&&o.to!==null&&i.normalize(o.from,o.to),o.speedRatio!==void 0&&(n._speedRatio=o.speedRatio),o.loopAnimation!==void 0&&(n._loopAnimation=o.loopAnimation),o.isAdditive!==void 0&&(n._isAdditive=o.isAdditive),o.weight!==void 0&&(n._weight=o.weight),o.playOrder!==void 0&&(n._playOrder=o.playOrder),o.enableBlending!==void 0&&(n._enableBlending=o.enableBlending),o.blendingSpeed!==void 0&&(n._blendingSpeed=o.blendingSpeed),o.metadata!==void 0&&(i.metadata=o.metadata),i}function st(o,e,t,i=!1,n){let s;typeof e=="object"?s=e:s={referenceFrame:e,range:t,cloneOriginalAnimationGroup:i,clonedAnimationName:n};let a=o;s.cloneOriginalAnimationGroup&&(a=o.clone(s.clonedAnimationGroupName||a.name));const l=a.targetedAnimations;for(let r=0;r<l.length;r++){const h=l[r];h.animation=X(h.animation,s)}if(a.isAdditive=!0,s.clipKeys){let r=Number.MAX_VALUE,h=-Number.MAX_VALUE;const g=a.targetedAnimations;for(let c=0;c<g.length;c++){const m=g[c].animation.getKeys();r>m[0].frame&&(r=m[0].frame),h<m[m.length-1].frame&&(h=m[m.length-1].frame)}const u=a;u._from=r,u._to=h}return a}function ot(o,e,t,i,n){const s=o.clone(i||o.name);return E(s,e,t,n)}function E(o,e,t,i){return R(o,e,t,i,!1)}function rt(o,e,t,i,n){const s=o.clone(i||o.name);return N(s,e,t,n)}function N(o,e,t,i){return R(o,e,t,i,!0)}function R(o,e,t,i,n=!1){let s=Number.MAX_VALUE,a=-Number.MAX_VALUE;const l=o.targetedAnimations;for(let h=0;h<l.length;h++){const g=l[h],u=i?g.animation:g.animation.clone();n&&(u.createKeyForFrame(e),u.createKeyForFrame(t));const c=u.getKeys(),f=[];let _=Number.MAX_VALUE;for(let m=0;m<c.length;m++){const b=c[m];if(!n&&m>=e&&m<=t||n&&b.frame>=e&&b.frame<=t){const V={frame:b.frame,value:b.value.clone?b.value.clone():b.value,inTangent:b.inTangent,outTangent:b.outTangent,interpolation:b.interpolation,lockedTangent:b.lockedTangent};_===Number.MAX_VALUE&&(_=V.frame),V.frame-=_,f.push(V)}}if(f.length===0){l.splice(h,1),h--;continue}s>f[0].frame&&(s=f[0].frame),a<f[f.length-1].frame&&(a=f[f.length-1].frame),u.setKeys(f,!0),g.animation=u}const r=o;return r._from=s,r._to=a,o}let M=!1;function lt(){M||(M=!0,v.MergeAnimationGroups=nt,v.Parse=at,v.MakeAnimationAdditive=st,v.ClipKeys=ot,v.ClipKeysInPlace=E,v.ClipFrames=rt,v.ClipFramesInPlace=N,v.ClipInPlace=R)}lt();export{v as AnimationGroup,rt as AnimationGroupClipFrames,N as AnimationGroupClipFramesInPlace,R as AnimationGroupClipInPlace,ot as AnimationGroupClipKeys,E as AnimationGroupClipKeysInPlace,st as AnimationGroupMakeAnimationAdditive,nt as AnimationGroupMergeAnimationGroups,at as AnimationGroupParse,lt as RegisterAnimationGroup,it as TargetedAnimation};
|
|
1
|
+
import{a$ as A,M as F,b0 as B,b1 as C,b2 as k,b3 as D,b4 as W,b5 as K,b6 as U,az as P,a0 as T,Q as S,V as Y,b7 as z,b8 as H,aP as G,b9 as w,ba as X,bb as J,bc as q}from"./index-BlqB2_Pr.js";class Q{get currentFrame(){return this._currentFrame}get weight(){return this._weight}get currentValue(){return this._currentValue}get targetPath(){return this._targetPath}get target(){return this._currentActiveTarget}get isAdditive(){return this._host&&this._host.isAdditive}constructor(e,t,i,n){if(this._events=new Array,this._currentFrame=0,this._originalValue=new Array,this._originalBlendValue=null,this._offsetsCache={},this._highLimitsCache={},this._stopped=!1,this._blendingFactor=0,this._currentValue=null,this._currentActiveTarget=null,this._directTarget=null,this._targetPath="",this._weight=1,this._absoluteFrameOffset=0,this._previousElapsedTime=0,this._yoyoDirection=1,this._previousAbsoluteFrame=0,this._targetIsArray=!1,this._coreRuntimeAnimation=null,this._animation=t,this._target=e,this._scene=i,this._host=n,this._activeTargets=[],t._runtimeAnimations.push(this),this._animationState={key:0,repeatCount:0,loopMode:this._getCorrectLoopMode()},this._animation.dataType===A.ANIMATIONTYPE_MATRIX&&(this._animationState.workValue=F.Zero()),this._keys=this._animation.getKeys(),this._minFrame=this._keys[0].frame,this._maxFrame=this._keys[this._keys.length-1].frame,this._minFrame!==0){const a={frame:0,value:this._keys[0].value};this._keys.splice(0,0,a)}if(this._target instanceof Array){let a=0;for(const l of this._target)this._preparePath(l,a),this._getOriginalValues(a),a++;this._targetIsArray=!0}else this._preparePath(this._target),this._getOriginalValues(),this._targetIsArray=!1,this._directTarget=this._activeTargets[0];const s=t.getEvents();if(s&&s.length>0)for(const a of s)this._events.push(a._clone());this._enableBlending=e&&e.animationPropertiesOverride?e.animationPropertiesOverride.enableBlending:this._animation.enableBlending}_preparePath(e,t=0){const i=this._animation.targetPropertyPath;if(i.length>1){let n=e;for(let s=0;s<i.length-1;s++){const a=i[s];if(n=n[a],n===void 0)throw new Error(`Invalid property (${a}) in property path (${i.join(".")})`)}this._targetPath=i[i.length-1],this._activeTargets[t]=n}else this._targetPath=i[0],this._activeTargets[t]=e;if(this._activeTargets[t][this._targetPath]===void 0)throw new Error(`Invalid property (${this._targetPath}) in property path (${i.join(".")})`)}get animation(){return this._animation}reset(e=!1){if(e)if(this._target instanceof Array){let t=0;for(const i of this._target)this._originalValue[t]!==void 0&&this._setValue(i,this._activeTargets[t],this._originalValue[t],-1,t),t++}else this._originalValue[0]!==void 0&&this._setValue(this._target,this._directTarget,this._originalValue[0],-1,0);this._offsetsCache={},this._highLimitsCache={},this._currentFrame=0,this._blendingFactor=0;for(let t=0;t<this._events.length;t++)this._events[t].isDone=!1}isStopped(){return this._stopped}dispose(){const e=this._animation.runtimeAnimations.indexOf(this);e>-1&&this._animation.runtimeAnimations.splice(e,1)}setValue(e,t){if(this._targetIsArray){for(let i=0;i<this._target.length;i++){const n=this._target[i];this._setValue(n,this._activeTargets[i],e,t,i)}return}this._setValue(this._target,this._directTarget,e,t,0)}_getOriginalValues(e=0){let t;const i=this._activeTargets[e];if(A.InheritOriginalValueFromActiveAnimations){const n=this._scene._activeAnimatables;for(let s=0;s<n.length;s++){const a=n[s]._runtimeAnimations;for(let l=0;l<a.length;l++){const r=a[l];if(r!==this&&r._targetPath===this._targetPath){for(let h=0;h<r._activeTargets.length;h++)if(r._activeTargets[h]===i&&r._originalValue[h]!==void 0){r._originalValue[h]&&r._originalValue[h].clone?this._originalValue[e]=r._originalValue[h].clone():this._originalValue[e]=r._originalValue[h];return}}}}}i.getLocalMatrix&&this._targetPath==="_matrix"?t=i.getLocalMatrix():t=i[this._targetPath],t&&t.clone?this._originalValue[e]=t.clone():this._originalValue[e]=t}_registerTargetForLateAnimationBinding(e,t){const i=e.target;this._scene._registeredForLateAnimationBindings.pushNoDuplicate(i),i._lateAnimationHolders||(i._lateAnimationHolders={}),i._lateAnimationHolders[e.targetPath]||(i._lateAnimationHolders[e.targetPath]={totalWeight:0,totalAdditiveWeight:0,animations:[],additiveAnimations:[],originalValue:t}),e.isAdditive?(i._lateAnimationHolders[e.targetPath].additiveAnimations.push(e),i._lateAnimationHolders[e.targetPath].totalAdditiveWeight+=e.weight):(i._lateAnimationHolders[e.targetPath].animations.push(e),i._lateAnimationHolders[e.targetPath].totalWeight+=e.weight)}_setValue(e,t,i,n,s){if(this._currentActiveTarget=t,this._weight=n,this._enableBlending&&this._blendingFactor<=1){if(!this._originalBlendValue){const l=t[this._targetPath];l.clone?this._originalBlendValue=l.clone():this._originalBlendValue=l}this._originalBlendValue.m?A.AllowMatrixDecomposeForInterpolation?this._currentValue?F.DecomposeLerpToRef(this._originalBlendValue,i,this._blendingFactor,this._currentValue):this._currentValue=F.DecomposeLerp(this._originalBlendValue,i,this._blendingFactor):this._currentValue?F.LerpToRef(this._originalBlendValue,i,this._blendingFactor,this._currentValue):this._currentValue=F.Lerp(this._originalBlendValue,i,this._blendingFactor):this._currentValue=A._UniversalLerp(this._originalBlendValue,i,this._blendingFactor);const a=e&&e.animationPropertiesOverride?e.animationPropertiesOverride.blendingSpeed:this._animation.blendingSpeed;this._blendingFactor+=a}else this._currentValue?this._currentValue.copyFrom?this._currentValue.copyFrom(i):this._currentValue=i:i?.clone?this._currentValue=i.clone():this._currentValue=i;n!==-1?this._registerTargetForLateAnimationBinding(this,this._originalValue[s]):this._animationState.loopMode===A.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT?this._currentValue.addToRef?this._currentValue.addToRef(this._originalValue[s],t[this._targetPath]):t[this._targetPath]=this._originalValue[s]+this._currentValue:t[this._targetPath]=this._currentValue,e.markAsDirty&&e.markAsDirty(this._animation.targetProperty)}_getCorrectLoopMode(){return this._target&&this._target.animationPropertiesOverride?this._target.getClassName?.()==="MorphTarget"&&this._target._animationPropertiesOverride==null?this._animation.loopMode:this._target.animationPropertiesOverride.loopMode:this._animation.loopMode}goToFrame(e,t=-1){const i=this._animation.getKeys();e<i[0].frame?e=i[0].frame:e>i[i.length-1].frame&&(e=i[i.length-1].frame);const n=this._events;if(n.length)for(let a=0;a<n.length;a++)n[a].onlyOnce||(n[a].isDone=n[a].frame<e);this._currentFrame=e;const s=this._animation._interpolate(e,this._animationState);this.setValue(s,t)}_prepareForSpeedRatioChange(e){const t=this._previousElapsedTime*(this._animation.framePerSecond*e)/1e3;this._absoluteFrameOffset=this._previousAbsoluteFrame-t}animate(e,t,i,n,s,a=-1){const l=this._animation,r=l.targetPropertyPath;if(!r||r.length<1)return this._stopped=!0,!1;let h=!0,g;const u=this._events;let c;if(this._coreRuntimeAnimation)c=i-t,g=this._coreRuntimeAnimation.currentFrame,this._currentFrame=g,this._animationState.repeatCount=this._coreRuntimeAnimation._animationState.repeatCount,this._animationState.highLimitValue=this._coreRuntimeAnimation._animationState.highLimitValue,this._animationState.offsetValue=this._coreRuntimeAnimation._animationState.offsetValue;else{(t<this._minFrame||t>this._maxFrame)&&(t=this._minFrame),(i<this._minFrame||i>this._maxFrame)&&(i=this._maxFrame),c=i-t;let _,m=e*(l.framePerSecond*s)/1e3+this._absoluteFrameOffset,b=0,V=!1;const O=n&&this._animationState.loopMode===A.ANIMATIONLOOPMODE_YOYO;if(O){const d=(m-t)/c,p=Math.sin(d*Math.PI);m=Math.abs(p)*c+t;const L=p>=0?1:-1;this._yoyoDirection!==L&&(V=!0),this._yoyoDirection=L}if(this._previousElapsedTime=e,this._previousAbsoluteFrame=m,!n&&i>=t&&(m>=c&&s>0||m<=0&&s<0))h=!1,b=l.evaluate(i);else if(!n&&t>=i&&(m<=c&&s<0||m>=0&&s>0))h=!1,b=l.evaluate(t);else if(this._animationState.loopMode!==A.ANIMATIONLOOPMODE_CYCLE){const d=i.toString()+t.toString();if(!this._offsetsCache[d]){this._animationState.repeatCount=0,this._animationState.loopMode=A.ANIMATIONLOOPMODE_CYCLE;const p=l._interpolate(t,this._animationState),y=l._interpolate(i,this._animationState);switch(this._animationState.loopMode=this._getCorrectLoopMode(),l.dataType){case A.ANIMATIONTYPE_FLOAT:this._offsetsCache[d]=y-p;break;case A.ANIMATIONTYPE_QUATERNION:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_VECTOR3:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_VECTOR2:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_SIZE:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_COLOR3:this._offsetsCache[d]=y.subtract(p);break}this._highLimitsCache[d]=y}b=this._highLimitsCache[d],_=this._offsetsCache[d]}if(_===void 0)switch(l.dataType){case A.ANIMATIONTYPE_FLOAT:_=0;break;case A.ANIMATIONTYPE_QUATERNION:_=K;break;case A.ANIMATIONTYPE_VECTOR3:_=W;break;case A.ANIMATIONTYPE_VECTOR2:_=D;break;case A.ANIMATIONTYPE_SIZE:_=k;break;case A.ANIMATIONTYPE_COLOR3:_=C;break;case A.ANIMATIONTYPE_COLOR4:_=B;break}if(this._host&&this._host.syncRoot){const d=this._host.syncRoot,p=(d.masterFrame-d.fromFrame)/(d.toFrame-d.fromFrame);g=t+c*p}else m>0&&t>i||m<0&&t<i?g=h&&c!==0?i+m%c:t:g=h&&c!==0?t+m%c:i;if(!O&&(s>0&&this.currentFrame>g||s<0&&this.currentFrame<g)||O&&V){this._onLoop();for(let d=0;d<u.length;d++)u[d].onlyOnce||(u[d].isDone=!1);this._animationState.key=s>0?0:l.getKeys().length-1}this._currentFrame=g,this._animationState.repeatCount=c===0?0:m/c>>0,this._animationState.highLimitValue=b,this._animationState.offsetValue=_}const f=l._interpolate(g,this._animationState);if(this.setValue(f,a),u.length){for(let _=0;_<u.length;_++)if(c>=0&&g>=u[_].frame&&u[_].frame>=t||c<0&&g<=u[_].frame&&u[_].frame<=t){const m=u[_];m.isDone||(m.onlyOnce&&(u.splice(_,1),_--),m.isDone=!0,m.action(g))}}return h||(this._stopped=!0),h}}class I{get syncRoot(){return this._syncRoot}get masterFrame(){return this._runtimeAnimations.length===0?0:this._runtimeAnimations[0].currentFrame}get weight(){return this._weight}set weight(e){if(e===-1){this._weight=-1;return}this._weight=Math.min(Math.max(e,0),1)}get speedRatio(){return this._speedRatio}set speedRatio(e){for(let t=0;t<this._runtimeAnimations.length;t++)this._runtimeAnimations[t]._prepareForSpeedRatioChange(e);this._speedRatio=e,this._goToFrame!==null&&this.goToFrame(this._goToFrame)}get elapsedTime(){return this._localDelayOffset===null?0:this._scene._animationTime-this._localDelayOffset}constructor(e,t,i=0,n=100,s=!1,a=1,l,r,h,g=!1,u=0){this.target=t,this.fromFrame=i,this.toFrame=n,this.loopAnimation=s,this.onAnimationEnd=l,this.onAnimationLoop=h,this.isAdditive=g,this.playOrder=u,this._localDelayOffset=null,this._pausedDelay=null,this._manualJumpDelay=null,this._runtimeAnimations=new Array,this._paused=!1,this._speedRatio=1,this._weight=-1,this._previousWeight=-1,this._syncRoot=null,this._frameToSyncFromJump=null,this._goToFrame=null,this.disposeOnEnd=!0,this.animationStarted=!1,this.onAnimationEndObservable=new P,this.onAnimationLoopObservable=new P,this._scene=e,r&&this.appendAnimations(t,r),this._speedRatio=a,e._activeAnimatables.push(this)}syncWith(e){if(this._syncRoot=e,e){const t=this._scene._activeAnimatables.indexOf(this);t>-1&&(this._scene._activeAnimatables.splice(t,1),this._scene._activeAnimatables.push(this))}return this}getAnimations(){return this._runtimeAnimations}appendAnimations(e,t){for(let i=0;i<t.length;i++){const n=t[i],s=new Q(e,n,this._scene,this);s._onLoop=()=>{this.onAnimationLoopObservable.notifyObservers(this),this.onAnimationLoop&&this.onAnimationLoop()},this._runtimeAnimations.push(s)}}getAnimationByTargetProperty(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)if(t[i].animation.targetProperty===e)return t[i].animation;return null}getRuntimeAnimationByTargetProperty(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)if(t[i].animation.targetProperty===e)return t[i];return null}reset(){const e=this._runtimeAnimations;for(let t=0;t<e.length;t++)e[t].reset(!0);this._localDelayOffset=null,this._pausedDelay=null}enableBlending(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)t[i].animation.enableBlending=!0,t[i].animation.blendingSpeed=e}disableBlending(){const e=this._runtimeAnimations;for(let t=0;t<e.length;t++)e[t].animation.enableBlending=!1}goToFrame(e,t=!1){const i=this._runtimeAnimations;if(i[0]){const n=i[0].animation.framePerSecond;this._frameToSyncFromJump=this._frameToSyncFromJump??i[0].currentFrame;const s=this.speedRatio===0?0:(e-this._frameToSyncFromJump)/n*1e3/this.speedRatio;this._manualJumpDelay=-s}for(let n=0;n<i.length;n++)i[n].goToFrame(e,t?this._weight:-1);this._goToFrame=e}get paused(){return this._paused}pause(){this._paused||(this._paused=!0)}restart(){this._paused=!1}_raiseOnAnimationEnd(){this.onAnimationEnd&&this.onAnimationEnd(),this.onAnimationEndObservable.notifyObservers(this)}stop(e,t,i=!1,n=!1){if(e||t){const s=this._scene._activeAnimatables.indexOf(this);if(s>-1){const a=this._runtimeAnimations;for(let l=a.length-1;l>=0;l--){const r=a[l];e&&r.animation.name!=e||t&&!t(r.target)||(r.dispose(),a.splice(l,1))}a.length==0&&(i||this._scene._activeAnimatables.splice(s,1),n||this._raiseOnAnimationEnd())}}else{const s=this._scene._activeAnimatables.indexOf(this);if(s>-1){i||this._scene._activeAnimatables.splice(s,1);const a=this._runtimeAnimations;for(let l=0;l<a.length;l++)a[l].dispose();this._runtimeAnimations.length=0,n||this._raiseOnAnimationEnd()}}}async waitAsync(){return await new Promise(e=>{this.onAnimationEndObservable.add(()=>{e(this)},void 0,void 0,this,!0)})}_animate(e){if(this._paused)return this.animationStarted=!1,this._pausedDelay===null&&(this._pausedDelay=e),!0;if(this._localDelayOffset===null?(this._localDelayOffset=e,this._pausedDelay=null):this._pausedDelay!==null&&(this._localDelayOffset+=e-this._pausedDelay,this._pausedDelay=null),this._manualJumpDelay!==null&&(this._localDelayOffset+=this.speedRatio<0?-this._manualJumpDelay:this._manualJumpDelay,this._manualJumpDelay=null,this._frameToSyncFromJump=null),this._goToFrame=null,!I.ProcessPausedAnimatables&&this._weight===0&&this._previousWeight===0)return!0;this._previousWeight=this._weight;let t=!1;const i=this._runtimeAnimations;let n;for(n=0;n<i.length;n++){const a=i[n].animate(e-this._localDelayOffset,this.fromFrame,this.toFrame,this.loopAnimation,this._speedRatio,this._weight);t=t||a}if(this.animationStarted=t,!t){if(this.disposeOnEnd)for(n=this._scene._activeAnimatables.indexOf(this),this._scene._activeAnimatables.splice(n,1),n=0;n<i.length;n++)i[n].dispose();this._raiseOnAnimationEnd(),this.disposeOnEnd&&(this.onAnimationEnd=null,this.onAnimationLoop=null,this.onAnimationLoopObservable.clear(),this.onAnimationEndObservable.clear())}return t}}I.ProcessPausedAnimatables=!1;function $(o){if(o.totalWeight===0&&o.totalAdditiveWeight===0)return o.originalValue;let e=1;const t=T.Vector3[0],i=T.Vector3[1],n=T.Quaternion[0];let s=0;const a=o.animations[0],l=o.originalValue;let r,h=!1;if(o.totalWeight<1)r=1-o.totalWeight,l.decompose(i,n,t);else{if(s=1,e=o.totalWeight,r=a.weight/e,r==1)if(o.totalAdditiveWeight)h=!0;else return a.currentValue;a.currentValue.decompose(i,n,t)}if(!h){i.scaleInPlace(r),t.scaleInPlace(r),n.scaleInPlace(r);for(let u=s;u<o.animations.length;u++){const c=o.animations[u];if(c.weight===0)continue;r=c.weight/e;const f=T.Vector3[2],_=T.Vector3[3],m=T.Quaternion[1];c.currentValue.decompose(_,m,f),_.scaleAndAddToRef(r,i),m.scaleAndAddToRef(S.Dot(n,m)>0?r:-r,n),f.scaleAndAddToRef(r,t)}n.normalize()}for(let u=0;u<o.additiveAnimations.length;u++){const c=o.additiveAnimations[u];if(c.weight===0)continue;const f=T.Vector3[2],_=T.Vector3[3],m=T.Quaternion[1];c.currentValue.decompose(_,m,f),_.multiplyToRef(i,_),Y.LerpToRef(i,_,c.weight,i),n.multiplyToRef(m,m),S.SlerpToRef(n,m,c.weight,n),f.scaleAndAddToRef(c.weight,t)}const g=a?a._animationState.workValue:T.Matrix[0].clone();return F.ComposeToRef(i,n,t,g),g}function j(o,e){if(o.totalWeight===0&&o.totalAdditiveWeight===0)return e;const t=o.animations[0],i=o.originalValue;let n=e;if(o.totalWeight===0&&o.totalAdditiveWeight>0)n.copyFrom(i);else if(o.animations.length===1){if(S.SlerpToRef(i,t.currentValue,Math.min(1,o.totalWeight),n),o.totalAdditiveWeight===0)return n}else if(o.animations.length>1){let s=1,a,l;if(o.totalWeight<1){const h=1-o.totalWeight;a=[],l=[],a.push(i),l.push(h)}else{if(o.animations.length===2&&(S.SlerpToRef(o.animations[0].currentValue,o.animations[1].currentValue,o.animations[1].weight/o.totalWeight,e),o.totalAdditiveWeight===0))return e;a=[],l=[],s=o.totalWeight}for(let h=0;h<o.animations.length;h++){const g=o.animations[h];a.push(g.currentValue),l.push(g.weight/s)}let r=0;for(let h=0;h<a.length;){if(!h){S.SlerpToRef(a[h],a[h+1],l[h+1]/(l[h]+l[h+1]),e),n=e,r=l[h]+l[h+1],h+=2;continue}r+=l[h],S.SlerpToRef(n,a[h],l[h]/r,n),h++}}for(let s=0;s<o.additiveAnimations.length;s++){const a=o.additiveAnimations[s];a.weight!==0&&(n.multiplyToRef(a.currentValue,T.Quaternion[0]),S.SlerpToRef(n,T.Quaternion[0],a.weight,n))}return n}function Z(o){if(o._registeredForLateAnimationBindings.length){for(let e=0;e<o._registeredForLateAnimationBindings.length;e++){const t=o._registeredForLateAnimationBindings.data[e];for(const i in t._lateAnimationHolders){const n=t._lateAnimationHolders[i],s=n.animations[0],a=n.originalValue;if(a==null)continue;const l=A.AllowMatrixDecomposeForInterpolation&&a.m;let r=t[i];if(l)r=$(n);else if(a.w!==void 0)r=j(n,r||S.Identity());else{let g=0,u=1;const c=s&&s._animationState.loopMode===A.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT;if(n.totalWeight<1)c?r=a.clone?a.clone():a:s&&a.scale?r=a.scale(1-n.totalWeight):s?r=a*(1-n.totalWeight):a.clone?r=a.clone():r=a;else if(s){u=n.totalWeight;const f=s.weight/u;f!==1?s.currentValue.scale?r=s.currentValue.scale(f):r=s.currentValue*f:r=s.currentValue,c&&(r.addToRef?r.addToRef(a,r):r+=a),g=1}for(let f=g;f<n.animations.length;f++){const _=n.animations[f],m=_.weight/u;if(m)_.currentValue.scaleAndAddToRef?_.currentValue.scaleAndAddToRef(m,r):r+=_.currentValue*m;else continue}for(let f=0;f<n.additiveAnimations.length;f++){const _=n.additiveAnimations[f],m=_.weight;if(m)_.currentValue.scaleAndAddToRef?_.currentValue.scaleAndAddToRef(m,r):r+=_.currentValue*m;else continue}}t[i]=r}t._lateAnimationHolders={}}o._registeredForLateAnimationBindings.reset()}}function tt(o,e){e&&(e.prototype.copyAnimationRange=function(t,i,n,s=!1,a=null){this.animations.length===0&&(this.animations.push(new A(this.name,"_matrix",t.animations[0].framePerSecond,A.ANIMATIONTYPE_MATRIX,0)),this.animations[0].setKeys([]));const l=t.animations[0].getRange(i);if(!l)return!1;const r=l.from,h=l.to,g=t.animations[0].getKeys(),u=t.length,c=t.getParent(),f=this.getParent(),_=s&&c&&u&&this.length&&u!==this.length,m=_&&f&&c?f.length/c.length:1,b=s&&!f&&a&&(a.x!==1||a.y!==1||a.z!==1),V=this.animations[0].getKeys();let O,d,p;for(let y=0,L=g.length;y<L;y++)O=g[y],O.frame>=r&&O.frame<=h&&(s?(p=O.value.clone(),_?(d=p.getTranslation(),p.setTranslation(d.scaleInPlace(m))):b&&a?(d=p.getTranslation(),p.setTranslation(d.multiplyInPlace(a))):p=O.value):p=O.value,V.push({frame:O.frame+n,value:p}));return this.animations[0].createRange(i,r+n,h+n),!0}),o&&(o.prototype._animate=function(t){if(!this.animationsEnabled)return;const i=U.Now;if(!this._animationTimeLast){if(this._pendingData.length>0)return;this._animationTimeLast=i}this.deltaTime=t!==void 0?t:this.useConstantAnimationDeltaTime?16:(i-this._animationTimeLast)*this.animationTimeScale,this._animationTimeLast=i;const n=this._activeAnimatables;if(n.length===0)return;this._animationTime+=this.deltaTime;const s=this._animationTime;for(let a=0;a<n.length;a++){const l=n[a];!l._animate(s)&&l.disposeOnEnd&&a--}Z(this)},o.prototype.sortActiveAnimatables=function(){this._activeAnimatables.sort((t,i)=>t.playOrder-i.playOrder)},o.prototype.beginWeightedAnimation=function(t,i,n,s=1,a,l=1,r,h,g,u,c=!1){const f=this.beginAnimation(t,i,n,a,l,r,h,!1,g,u,c);return f.weight=s,f},o.prototype.beginAnimation=function(t,i,n,s,a=1,l,r,h=!0,g,u,c=!1){if(a<0){const _=i;i=n,n=_,a=-a}i>n&&(a=-a),h&&this.stopAnimation(t,void 0,g),r||(r=new I(this,t,i,n,s,a,l,void 0,u,c));const f=g?g(t):!0;if(t.animations&&f&&r.appendAnimations(t,t.animations),t.getAnimatables){const _=t.getAnimatables();for(let m=0;m<_.length;m++)this.beginAnimation(_[m],i,n,s,a,l,r,h,g,u)}return r.reset(),r},o.prototype.beginHierarchyAnimation=function(t,i,n,s,a,l=1,r,h,g=!0,u,c,f=!1){const _=t.getDescendants(i),m=[];m.push(this.beginAnimation(t,n,s,a,l,r,h,g,u,void 0,f));for(const b of _)m.push(this.beginAnimation(b,n,s,a,l,r,h,g,u,void 0,f));return m},o.prototype.beginDirectAnimation=function(t,i,n,s,a,l=1,r,h,g=!1){if(l<0){const c=n;n=s,s=c,l=-l}return n>s&&(l=-l),new I(this,t,n,s,a,l,r,i,h,g)},o.prototype.beginDirectHierarchyAnimation=function(t,i,n,s,a,l,r,h,g,u=!1){const c=t.getDescendants(i),f=[];f.push(this.beginDirectAnimation(t,n,s,a,l,r,h,g,u));for(const _ of c)f.push(this.beginDirectAnimation(_,n,s,a,l,r,h,g,u));return f},o.prototype.getAnimatableByTarget=function(t){for(let i=0;i<this._activeAnimatables.length;i++)if(this._activeAnimatables[i].target===t)return this._activeAnimatables[i];return null},o.prototype.getAllAnimatablesByTarget=function(t){const i=[];for(let n=0;n<this._activeAnimatables.length;n++)this._activeAnimatables[n].target===t&&i.push(this._activeAnimatables[n]);return i},o.prototype.stopAnimation=function(t,i,n){const s=this.getAllAnimatablesByTarget(t);for(const a of s)a.stop(i,n)},o.prototype.stopAllAnimations=function(){if(this._activeAnimatables){for(let t=0;t<this._activeAnimatables.length;t++)this._activeAnimatables[t].stop(void 0,void 0,!0);this._activeAnimatables.length=0}for(const t of this.animationGroups)t.stop()})}let x=!1;function et(){x||(x=!0,tt(H,z))}class it{getClassName(){return"TargetedAnimation"}constructor(e){this.parent=e,this.uniqueId=q.UniqueId}serialize(){const e={};return e.animation=this.animation.serialize(),e.targetId=this.target.id,e.targetUniqueId=this.target.uniqueId,e}}class v{get mask(){return this._mask}set mask(e){this._mask!==e&&(this._mask=e,this.syncWithMask(!0))}syncWithMask(e=!1){if(!this.mask&&!e){this._numActiveAnimatables=this._targetedAnimations.length;return}this._numActiveAnimatables=0;for(let t=0;t<this._animatables.length;++t){const i=this._animatables[t];!this.mask||this.mask.disabled||this.mask.retainsTarget(i.target.name)?(this._numActiveAnimatables++,i.paused&&i.restart()):i.paused||i.pause()}}removeUnmaskedAnimations(){if(!(!this.mask||this.mask.disabled)){for(let e=0;e<this._animatables.length;++e){const t=this._animatables[e];this.mask.retainsTarget(t.target.name)||(t.stop(),this._animatables.splice(e,1),--e)}for(let e=0;e<this._targetedAnimations.length;e++){const t=this._targetedAnimations[e];this.mask.retainsTarget(t.target.name)||(this._targetedAnimations.splice(e,1),--e)}}}get from(){return this._from}set from(e){if(this._from!==e){this._from=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.fromFrame=this._from}}}get to(){return this._to}set to(e){if(this._to!==e){this._to=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.toFrame=this._to}}}get isStarted(){return this._isStarted}get isPlaying(){return this._isStarted&&!this._isPaused}get speedRatio(){return this._speedRatio}set speedRatio(e){if(this._speedRatio!==e){this._speedRatio=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.speedRatio=this._speedRatio}}}get loopAnimation(){return this._loopAnimation}set loopAnimation(e){if(this._loopAnimation!==e){this._loopAnimation=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.loopAnimation=this._loopAnimation}}}get isAdditive(){return this._isAdditive}set isAdditive(e){if(this._isAdditive!==e){this._isAdditive=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.isAdditive=this._isAdditive}}}get weight(){return this._weight}set weight(e){this._weight!==e&&(this._weight=e,this.setWeightForAllAnimatables(this._weight))}get targetedAnimations(){return this._targetedAnimations}get animatables(){return this._animatables}get children(){return this._targetedAnimations}get playOrder(){return this._playOrder}set playOrder(e){if(this._playOrder!==e&&(this._playOrder=e,this._animatables.length>0)){for(let t=0;t<this._animatables.length;t++)this._animatables[t].playOrder=this._playOrder;this._scene.sortActiveAnimatables()}}get enableBlending(){return this._enableBlending}set enableBlending(e){if(this._enableBlending!==e&&(this._enableBlending=e,e!==null))for(let t=0;t<this._targetedAnimations.length;++t)this._targetedAnimations[t].animation.enableBlending=e}get blendingSpeed(){return this._blendingSpeed}set blendingSpeed(e){if(this._blendingSpeed!==e&&(this._blendingSpeed=e,e!==null))for(let t=0;t<this._targetedAnimations.length;++t)this._targetedAnimations[t].animation.blendingSpeed=e}getLength(e,t){e=e??this._from,t=t??this._to;const i=this.targetedAnimations[0].animation.framePerSecond*this._speedRatio;return(t-e)/i}getScene(){return this._scene}constructor(e,t=null,i=-1,n=0){this.name=e,this._targetedAnimations=new Array,this._animatables=new Array,this._from=Number.MAX_VALUE,this._to=-Number.MAX_VALUE,this._speedRatio=1,this._loopAnimation=!1,this._isAdditive=!1,this._weight=-1,this._playOrder=0,this._enableBlending=null,this._blendingSpeed=null,this._numActiveAnimatables=0,this._shouldStart=!0,this._parentContainer=null,this.onAnimationEndObservable=new P,this.onAnimationLoopObservable=new P,this.onAnimationGroupLoopObservable=new P,this.onAnimationGroupEndObservable=new P,this.onAnimationGroupPauseObservable=new P,this.onAnimationGroupPlayObservable=new P,this.metadata=null,this._mask=null,this._animationLoopFlags=[],this._scene=t||G.LastCreatedScene,this._weight=i,this._playOrder=n,this.uniqueId=this._scene.getUniqueId(),et(),this._scene.addAnimationGroup(this)}addTargetedAnimation(e,t){const i=new it(this);i.animation=e,i.target=t;const n=e.getKeys();return this._from>n[0].frame&&(this._from=n[0].frame),this._to<n[n.length-1].frame&&(this._to=n[n.length-1].frame),this._enableBlending!==null&&(e.enableBlending=this._enableBlending),this._blendingSpeed!==null&&(e.blendingSpeed=this._blendingSpeed),this._targetedAnimations.push(i),this._shouldStart=!0,i}removeTargetedAnimation(e){for(let t=this._targetedAnimations.length-1;t>-1;t--)this._targetedAnimations[t].animation===e&&this._targetedAnimations.splice(t,1)}normalize(e=null,t=null){e==null&&(e=this._from),t==null&&(t=this._to);for(let i=0;i<this._targetedAnimations.length;i++){const s=this._targetedAnimations[i].animation.getKeys(),a=s[0],l=s[s.length-1];if(a.frame>e){const r={frame:e,value:a.value,inTangent:a.inTangent,outTangent:a.outTangent,interpolation:a.interpolation};s.splice(0,0,r)}if(l.frame<t){const r={frame:t,value:l.value,inTangent:l.inTangent,outTangent:l.outTangent,interpolation:l.interpolation};s.push(r)}}return this._from=e,this._to=t,this}_processLoop(e,t,i){e.onAnimationLoop=()=>{this.onAnimationLoopObservable.notifyObservers(t),!this._animationLoopFlags[i]&&(this._animationLoopFlags[i]=!0,this._animationLoopCount++,this._animationLoopCount===this._numActiveAnimatables&&(this.onAnimationGroupLoopObservable.notifyObservers(this),this._animationLoopCount=0,this._animationLoopFlags.length=0))}}start(e=!1,t=1,i,n,s){if(this._isStarted||this._targetedAnimations.length===0)return this;this._loopAnimation=e,this._shouldStart=!1,this._animationLoopCount=0,this._animationLoopFlags.length=0;for(let a=0;a<this._targetedAnimations.length;a++){const l=this._targetedAnimations[a],r=this._scene.beginDirectAnimation(l.target,[l.animation],i!==void 0?i:this._from,n!==void 0?n:this._to,e,t,void 0,void 0,s!==void 0?s:this._isAdditive);r.weight=this._weight,r.playOrder=this._playOrder,r.onAnimationEnd=()=>{this.onAnimationEndObservable.notifyObservers(l),this._checkAnimationGroupEnded(r)},this._processLoop(r,l,a),this._animatables.push(r)}return this.syncWithMask(),this._scene.sortActiveAnimatables(),this._speedRatio=t,this._isStarted=!0,this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}pause(){if(!this._isStarted)return this;this._isPaused=!0;for(let e=0;e<this._animatables.length;e++)this._animatables[e].pause();return this.onAnimationGroupPauseObservable.notifyObservers(this),this}play(e){return this.isStarted&&this._animatables.length&&!this._shouldStart?(e!==void 0&&(this.loopAnimation=e),this.restart()):(this.stop(),this.start(e,this._speedRatio)),this}reset(){if(!this._isStarted)return this.play(),this.goToFrame(0),this.stop(!0),this;for(let e=0;e<this._animatables.length;e++)this._animatables[e].reset();return this}restart(){if(!this._isStarted)return this;for(let e=0;e<this._animatables.length;e++)this._animatables[e].restart();return this.syncWithMask(),this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}stop(e=!1){if(!this._isStarted)return this;const t=this._animatables.slice();for(let n=0;n<t.length;n++)t[n].stop(void 0,void 0,!0,e);let i=0;for(let n=0;n<this._scene._activeAnimatables.length;n++){const s=this._scene._activeAnimatables[n];s._runtimeAnimations.length>0?this._scene._activeAnimatables[i++]=s:e&&this._checkAnimationGroupEnded(s,e)}return this._scene._activeAnimatables.length=i,this._isStarted=!1,this}setWeightForAllAnimatables(e){for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.weight=e}return this}syncAllAnimationsWith(e){for(let t=0;t<this._animatables.length;t++)this._animatables[t].syncWith(e);return this}goToFrame(e,t=!1){if(!this._isStarted)return this;for(let i=0;i<this._animatables.length;i++)this._animatables[i].goToFrame(e,t);return this}getCurrentFrame(){return this.animatables[0]?.masterFrame||0}dispose(){if(this.isStarted&&this.stop(),this._targetedAnimations.length=0,this._animatables.length=0,this._scene.removeAnimationGroup(this),this._parentContainer){const e=this._parentContainer.animationGroups.indexOf(this);e>-1&&this._parentContainer.animationGroups.splice(e,1),this._parentContainer=null}this.onAnimationEndObservable.clear(),this.onAnimationGroupEndObservable.clear(),this.onAnimationGroupPauseObservable.clear(),this.onAnimationGroupPlayObservable.clear(),this.onAnimationLoopObservable.clear(),this.onAnimationGroupLoopObservable.clear()}_checkAnimationGroupEnded(e,t=!1){const i=this._animatables.indexOf(e);i>-1&&this._animatables.splice(i,1),this._animatables.length===this._targetedAnimations.length-this._numActiveAnimatables&&(this._isStarted=!1,t||this.onAnimationGroupEndObservable.notifyObservers(this),this._animatables.length=0)}clone(e,t,i=!1,n=!1){const s=new v(e||this.name,this._scene,this._weight,this._playOrder);s._from=this.from,s._to=this.to,s._speedRatio=this.speedRatio,s._loopAnimation=this.loopAnimation,s._isAdditive=this.isAdditive,s._enableBlending=this.enableBlending,s._blendingSpeed=this.blendingSpeed,s.metadata=this.metadata,s.mask=this.mask;for(const a of this._targetedAnimations)s.addTargetedAnimation(i?a.animation.clone(n):a.animation,t?t(a.target):a.target);return s}serialize(){const e={};e.name=this.name,e.from=this.from,e.to=this.to,e.speedRatio=this.speedRatio,e.loopAnimation=this.loopAnimation,e.isAdditive=this.isAdditive,e.weight=this.weight,e.playOrder=this.playOrder,e.enableBlending=this.enableBlending,e.blendingSpeed=this.blendingSpeed,e.targetedAnimations=[];for(let t=0;t<this.targetedAnimations.length;t++){const i=this.targetedAnimations[t];e.targetedAnimations[t]=i.serialize()}return w&&w.HasTags(this)&&(e.tags=w.GetTags(this)),this.metadata&&(e.metadata=this.metadata),e}getClassName(){return"AnimationGroup"}toString(e){let t="Name: "+this.name;return t+=", type: "+this.getClassName(),e&&(t+=", from: "+this._from,t+=", to: "+this._to,t+=", isStarted: "+this._isStarted,t+=", speedRatio: "+this._speedRatio,t+=", targetedAnimations length: "+this._targetedAnimations.length,t+=", animatables length: "+this._animatables.length),t}}function nt(o,e=!0,t=!1,i){if(o.length===0)return null;i=i??o[0].weight;let n=Number.MAX_VALUE,s=-Number.MAX_VALUE;if(t)for(const l of o)l.from<n&&(n=l.from),l.to>s&&(s=l.to);const a=new v(o[0].name+"_merged",o[0].getScene(),i);for(const l of o){t&&l.normalize(n,s);for(const r of l.targetedAnimations)a.addTargetedAnimation(r.animation,r.target);e&&l.dispose()}return a}function at(o,e,t){const i=new v(o.name,e,o.weight,o.playOrder),n=i;for(let s=0;s<o.targetedAnimations.length;s++){const a=o.targetedAnimations[s],l=J(a.animation),r=t?t(a):a.animation.property==="influence"?e.getMorphTargetById(a.targetId):e.getNodeById(a.targetId);r&&i.addTargetedAnimation(l,r)}return w&&w.AddTagsTo(i,o.tags),o.from!==null&&o.to!==null&&i.normalize(o.from,o.to),o.speedRatio!==void 0&&(n._speedRatio=o.speedRatio),o.loopAnimation!==void 0&&(n._loopAnimation=o.loopAnimation),o.isAdditive!==void 0&&(n._isAdditive=o.isAdditive),o.weight!==void 0&&(n._weight=o.weight),o.playOrder!==void 0&&(n._playOrder=o.playOrder),o.enableBlending!==void 0&&(n._enableBlending=o.enableBlending),o.blendingSpeed!==void 0&&(n._blendingSpeed=o.blendingSpeed),o.metadata!==void 0&&(i.metadata=o.metadata),i}function st(o,e,t,i=!1,n){let s;typeof e=="object"?s=e:s={referenceFrame:e,range:t,cloneOriginalAnimationGroup:i,clonedAnimationName:n};let a=o;s.cloneOriginalAnimationGroup&&(a=o.clone(s.clonedAnimationGroupName||a.name));const l=a.targetedAnimations;for(let r=0;r<l.length;r++){const h=l[r];h.animation=X(h.animation,s)}if(a.isAdditive=!0,s.clipKeys){let r=Number.MAX_VALUE,h=-Number.MAX_VALUE;const g=a.targetedAnimations;for(let c=0;c<g.length;c++){const m=g[c].animation.getKeys();r>m[0].frame&&(r=m[0].frame),h<m[m.length-1].frame&&(h=m[m.length-1].frame)}const u=a;u._from=r,u._to=h}return a}function ot(o,e,t,i,n){const s=o.clone(i||o.name);return E(s,e,t,n)}function E(o,e,t,i){return R(o,e,t,i,!1)}function rt(o,e,t,i,n){const s=o.clone(i||o.name);return N(s,e,t,n)}function N(o,e,t,i){return R(o,e,t,i,!0)}function R(o,e,t,i,n=!1){let s=Number.MAX_VALUE,a=-Number.MAX_VALUE;const l=o.targetedAnimations;for(let h=0;h<l.length;h++){const g=l[h],u=i?g.animation:g.animation.clone();n&&(u.createKeyForFrame(e),u.createKeyForFrame(t));const c=u.getKeys(),f=[];let _=Number.MAX_VALUE;for(let m=0;m<c.length;m++){const b=c[m];if(!n&&m>=e&&m<=t||n&&b.frame>=e&&b.frame<=t){const V={frame:b.frame,value:b.value.clone?b.value.clone():b.value,inTangent:b.inTangent,outTangent:b.outTangent,interpolation:b.interpolation,lockedTangent:b.lockedTangent};_===Number.MAX_VALUE&&(_=V.frame),V.frame-=_,f.push(V)}}if(f.length===0){l.splice(h,1),h--;continue}s>f[0].frame&&(s=f[0].frame),a<f[f.length-1].frame&&(a=f[f.length-1].frame),u.setKeys(f,!0),g.animation=u}const r=o;return r._from=s,r._to=a,o}let M=!1;function lt(){M||(M=!0,v.MergeAnimationGroups=nt,v.Parse=at,v.MakeAnimationAdditive=st,v.ClipKeys=ot,v.ClipKeysInPlace=E,v.ClipFrames=rt,v.ClipFramesInPlace=N,v.ClipInPlace=R)}lt();export{v as AnimationGroup,rt as AnimationGroupClipFrames,N as AnimationGroupClipFramesInPlace,R as AnimationGroupClipInPlace,ot as AnimationGroupClipKeys,E as AnimationGroupClipKeysInPlace,st as AnimationGroupMakeAnimationAdditive,nt as AnimationGroupMergeAnimationGroups,at as AnimationGroupParse,lt as RegisterAnimationGroup,it as TargetedAnimation};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{S as e}from"./index-
|
|
1
|
+
import{S as e}from"./index-BlqB2_Pr.js";const t="bonesDeclaration",u=`#if NUM_BONE_INFLUENCERS>0
|
|
2
2
|
#ifndef USE_VERTEX_PULLING
|
|
3
3
|
attribute matricesIndices : vec4f;attribute matricesWeights : vec4f;
|
|
4
4
|
#if NUM_BONE_INFLUENCERS>4
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{au as F,av as U,L as D,aw as P}from"./index-
|
|
1
|
+
import{au as F,av as U,L as D,aw as P}from"./index-BlqB2_Pr.js";function R(){const e={cTFETC1:0,cTFETC2:1,cTFBC1:2,cTFBC3:3,cTFBC7:6,cTFPVRTC1_4_RGB:8,cTFPVRTC1_4_RGBA:9,cTFASTC_4x4:10,cTFRGB565:14};let n=null;onmessage=s=>{if(s.data.action==="init"){if(s.data.url)try{importScripts(s.data.url)}catch(o){postMessage({action:"error",error:o})}n||(n=BASIS({wasmBinary:s.data.wasmBinary})),n!==null&&n.then(o=>{BASIS=o,o.initializeBasis(),postMessage({action:"init"})})}else if(s.data.action==="transcode"){const o=s.data.config,a=s.data.imageData,d=new BASIS.BasisFile(a),r=l(d);let f=s.data.ignoreSupportedFormats?null:t(s.data.config,r),p=!1;f===null&&(p=!0,f=r.hasAlpha?e.cTFBC3:e.cTFBC1);let g=!0;d.startTranscoding()||(g=!1);const T=[];for(let m=0;m<r.images.length&&g;m++){const u=r.images[m];if(o.loadSingleImage===void 0||o.loadSingleImage===m){let b=u.levels.length;o.loadMipmapLevels===!1&&(b=1);for(let C=0;C<b;C++){const w=u.levels[C],B=i(d,m,C,f,p);if(!B){g=!1;break}w.transcodedPixels=B,T.push(w.transcodedPixels.buffer)}}}d.close(),d.delete(),p&&(f=-1),g?postMessage({action:"transcode",success:g,id:s.data.id,fileInfo:r,format:f},T):postMessage({action:"transcode",success:g,id:s.data.id})}};function t(s,o){let a=null;return s.supportedCompressionFormats&&(s.supportedCompressionFormats.astc?a=e.cTFASTC_4x4:s.supportedCompressionFormats.bc7?a=e.cTFBC7:s.supportedCompressionFormats.s3tc?a=o.hasAlpha?e.cTFBC3:e.cTFBC1:s.supportedCompressionFormats.pvrtc?a=o.hasAlpha?e.cTFPVRTC1_4_RGBA:e.cTFPVRTC1_4_RGB:s.supportedCompressionFormats.etc2?a=e.cTFETC2:s.supportedCompressionFormats.etc1?a=e.cTFETC1:a=e.cTFRGB565),a}function l(s){const o=s.getHasAlpha(),a=s.getNumImages(),d=[];for(let f=0;f<a;f++){const p={levels:[]},g=s.getNumLevels(f);for(let T=0;T<g;T++){const m={width:s.getImageWidth(f,T),height:s.getImageHeight(f,T)};p.levels.push(m)}d.push(p)}return{hasAlpha:o,images:d}}function i(s,o,a,d,r){const f=s.getImageTranscodedSizeInBytes(o,a,d);let p=new Uint8Array(f);if(!s.transcodeImage(p,o,a,d,1,0))return null;if(r){const g=s.getImageWidth(o,a)+3&-4,T=s.getImageHeight(o,a)+3&-4;p=c(p,0,g,T)}return p}function c(s,o,a,d){const r=new Uint16Array(4),f=new Uint16Array(a*d),p=a/4,g=d/4;for(let T=0;T<g;T++)for(let m=0;m<p;m++){const u=o+8*(T*p+m);r[0]=s[u]|s[u+1]<<8,r[1]=s[u+2]|s[u+3]<<8,r[2]=(2*(r[0]&31)+1*(r[1]&31))/3|(2*(r[0]&2016)+1*(r[1]&2016))/3&2016|(2*(r[0]&63488)+1*(r[1]&63488))/3&63488,r[3]=(2*(r[1]&31)+1*(r[0]&31))/3|(2*(r[1]&2016)+1*(r[0]&2016))/3&2016|(2*(r[1]&63488)+1*(r[0]&63488))/3&63488;for(let b=0;b<4;b++){const C=s[u+4+b];let w=(T*4+b)*a+m*4;f[w++]=r[C&3],f[w++]=r[C>>2&3],f[w++]=r[C>>4&3],f[w]=r[C>>6&3]}}return f}}async function W(e,n,t){return await new Promise((l,i)=>{const c=s=>{s.data.action==="init"?(e.removeEventListener("message",c),l(e)):s.data.action==="error"&&i(s.data.error||"error initializing worker")};e.addEventListener("message",c),e.postMessage({action:"init",url:t?F.GetBabylonScriptURL(t):void 0,wasmBinary:n},[n])})}var h;(function(e){e[e.cTFETC1=0]="cTFETC1",e[e.cTFETC2=1]="cTFETC2",e[e.cTFBC1=2]="cTFBC1",e[e.cTFBC3=3]="cTFBC3",e[e.cTFBC4=4]="cTFBC4",e[e.cTFBC5=5]="cTFBC5",e[e.cTFBC7=6]="cTFBC7",e[e.cTFPVRTC1_4_RGB=8]="cTFPVRTC1_4_RGB",e[e.cTFPVRTC1_4_RGBA=9]="cTFPVRTC1_4_RGBA",e[e.cTFASTC_4x4=10]="cTFASTC_4x4",e[e.cTFATC_RGB=11]="cTFATC_RGB",e[e.cTFATC_RGBA_INTERPOLATED_ALPHA=12]="cTFATC_RGBA_INTERPOLATED_ALPHA",e[e.cTFRGBA32=13]="cTFRGBA32",e[e.cTFRGB565=14]="cTFRGB565",e[e.cTFBGR565=15]="cTFBGR565",e[e.cTFRGBA4444=16]="cTFRGBA4444",e[e.cTFFXT1_RGB=17]="cTFFXT1_RGB",e[e.cTFPVRTC2_4_RGB=18]="cTFPVRTC2_4_RGB",e[e.cTFPVRTC2_4_RGBA=19]="cTFPVRTC2_4_RGBA",e[e.cTFETC2_EAC_R11=20]="cTFETC2_EAC_R11",e[e.cTFETC2_EAC_RG11=21]="cTFETC2_EAC_RG11"})(h||(h={}));const L={JSModuleURL:`${F._DefaultCdnUrl}/basisTranscoder/1/basis_transcoder.js`,WasmModuleURL:`${F._DefaultCdnUrl}/basisTranscoder/1/basis_transcoder.wasm`},V=(e,n)=>{let t;switch(e){case h.cTFETC1:t=36196;break;case h.cTFBC1:t=33776;break;case h.cTFBC4:t=33779;break;case h.cTFASTC_4x4:t=37808;break;case h.cTFETC2:t=37496;break;case h.cTFBC7:t=36492;break}if(t===void 0)throw"The chosen Basis transcoder format is not currently supported";return t};let G=null,y=null,k=0;const H=!1,x=async()=>(G||(G=new Promise((e,n)=>{y?e(y):F.LoadFileAsync(F.GetBabylonScriptURL(L.WasmModuleURL)).then(t=>{if(typeof URL!="function")return n("Basis transcoder requires an environment with a URL constructor");const l=URL.createObjectURL(new Blob([`(${R})()`],{type:"application/javascript"}));y=new Worker(l),W(y,t,L.JSModuleURL).then(e,n)}).catch(n)})),await G),_=async(e,n)=>{const t=e instanceof ArrayBuffer?new Uint8Array(e):e;return await new Promise((l,i)=>{x().then(()=>{const c=k++,s=a=>{a.data.action==="transcode"&&a.data.id===c&&(y.removeEventListener("message",s),a.data.success?l(a.data):i("Transcode is not supported on this device"))};y.addEventListener("message",s);const o=new Uint8Array(t.byteLength);o.set(new Uint8Array(t.buffer,t.byteOffset,t.byteLength)),y.postMessage({action:"transcode",id:c,imageData:o,config:n,ignoreSupportedFormats:H},[o.buffer])},c=>{i(c)})})},E=(e,n)=>{let t=n._gl?.TEXTURE_2D;e.isCube&&(t=n._gl?.TEXTURE_CUBE_MAP),n._bindTextureDirectly(t,e,!0)},v=(e,n)=>{const t=e.getEngine();for(let l=0;l<n.fileInfo.images.length;l++){const i=n.fileInfo.images[l].levels[0];if(e._invertVScale=e.invertY,n.format===-1||n.format===h.cTFRGB565)if(e.type=10,e.format=4,t._features.basisNeedsPOT&&(Math.log2(i.width)%1!==0||Math.log2(i.height)%1!==0)){const c=new U(t,2);e._invertVScale=e.invertY,c.type=10,c.format=4,c.width=i.width+3&-4,c.height=i.height+3&-4,E(c,t),t._uploadDataToTextureDirectly(c,new Uint16Array(i.transcodedPixels.buffer),l,0,4,!0),t._rescaleTexture(c,e,t.scenes[0],t._getInternalFormat(4),()=>{t._releaseTexture(c),E(e,t)})}else e._invertVScale=!e.invertY,e.width=i.width+3&-4,e.height=i.height+3&-4,e.samplingMode=2,E(e,t),t._uploadDataToTextureDirectly(e,new Uint16Array(i.transcodedPixels.buffer),l,0,4,!0);else{e.width=i.width,e.height=i.height,e.generateMipMaps=n.fileInfo.images[l].levels.length>1;const c=N.GetInternalFormatFromBasisFormat(n.format,t);e.format=c,E(e,t);const s=n.fileInfo.images[l].levels;for(let o=0;o<s.length;o++){const a=s[o];t._uploadCompressedDataToTextureDirectly(e,c,a.width,a.height,a.transcodedPixels,l,o)}t._features.basisNeedsPOT&&(Math.log2(e.width)%1!==0||Math.log2(e.height)%1!==0)&&(D.Warn("Loaded .basis texture width and height are not a power of two. Texture wrapping will be set to Texture.CLAMP_ADDRESSMODE as other modes are not supported with non power of two dimensions in webGL 1."),e._cachedWrapU=P.CLAMP_ADDRESSMODE,e._cachedWrapV=P.CLAMP_ADDRESSMODE)}}},N={JSModuleURL:L.JSModuleURL,WasmModuleURL:L.WasmModuleURL,GetInternalFormatFromBasisFormat:V,TranscodeAsync:_,LoadTextureFromTranscodeResult:v};class X{constructor(){this.supportCascades=!1}loadCubeData(n,t,l,i,c){if(Array.isArray(n))return;const s=t.getEngine().getCaps(),o={supportedCompressionFormats:{etc1:!!s.etc1,s3tc:!!s.s3tc,pvrtc:!!s.pvrtc,etc2:!!s.etc2,astc:!!s.astc,bc7:!!s.bptc}};_(n,o).then(a=>{const d=a.fileInfo.images[0].levels.length>1&&t.generateMipMaps;v(t,a),t.getEngine()._setCubeMapTextureParams(t,d),t.isReady=!0,t.onLoadedObservable.notifyObservers(t),t.onLoadedObservable.clear(),i&&i()}).catch(a=>{F.Warn("Failed to transcode Basis file, transcoding may not be supported on this device"),t.isReady=!0,c&&c(a)})}loadData(n,t,l){const i=t.getEngine().getCaps(),c={supportedCompressionFormats:{etc1:!!i.etc1,s3tc:!!i.s3tc,pvrtc:!!i.pvrtc,etc2:!!i.etc2,astc:!!i.astc,bc7:!!i.bptc}};_(n,c).then(s=>{const o=s.fileInfo.images[0].levels[0],a=s.fileInfo.images[0].levels.length>1&&t.generateMipMaps;l(o.width,o.height,a,s.format!==-1,()=>{v(t,s)})}).catch(s=>{F.Warn("Failed to transcode Basis file, transcoding may not be supported on this device"),F.Warn(`Failed to transcode Basis file: ${s}`),l(0,0,!1,!1,()=>{},!0)})}}export{X as _BasisTextureLoader};
|