@babylonjs/core 6.24.0 → 6.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Buffers/buffer.align.d.ts +25 -0
- package/Buffers/buffer.align.js +120 -0
- package/Buffers/buffer.align.js.map +1 -0
- package/Buffers/buffer.d.ts +15 -3
- package/Buffers/buffer.js +27 -7
- package/Buffers/buffer.js.map +1 -1
- package/Buffers/index.d.ts +1 -0
- package/Buffers/index.js +1 -0
- package/Buffers/index.js.map +1 -1
- package/Cameras/Inputs/BaseCameraPointersInput.js +0 -3
- package/Cameras/Inputs/BaseCameraPointersInput.js.map +1 -1
- package/Cameras/Inputs/flyCameraMouseInput.js +1 -4
- package/Cameras/Inputs/flyCameraMouseInput.js.map +1 -1
- package/Cameras/Inputs/freeCameraMouseInput.js +0 -6
- package/Cameras/Inputs/freeCameraMouseInput.js.map +1 -1
- package/Cameras/RigModes/index.d.ts +0 -1
- package/Cameras/RigModes/index.js +0 -1
- package/Cameras/RigModes/index.js.map +1 -1
- package/Cameras/RigModes/vrRigMode.js +1 -1
- package/Cameras/RigModes/vrRigMode.js.map +1 -1
- package/Cameras/VR/index.d.ts +0 -1
- package/Cameras/VR/index.js +0 -1
- package/Cameras/VR/index.js.map +1 -1
- package/Cameras/VR/vrExperienceHelper.d.ts +7 -66
- package/Cameras/VR/vrExperienceHelper.js +17 -702
- package/Cameras/VR/vrExperienceHelper.js.map +1 -1
- package/Cameras/camera.d.ts +15 -20
- package/Cameras/camera.js +41 -36
- package/Cameras/camera.js.map +1 -1
- package/Cameras/targetCamera.js +1 -1
- package/Cameras/targetCamera.js.map +1 -1
- package/Engines/Extensions/index.d.ts +0 -1
- package/Engines/Extensions/index.js +0 -1
- package/Engines/Extensions/index.js.map +1 -1
- package/Engines/WebGL/webGLRenderTargetWrapper.d.ts +4 -0
- package/Engines/WebGL/webGLRenderTargetWrapper.js +4 -0
- package/Engines/WebGL/webGLRenderTargetWrapper.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipeline.js +8 -7
- package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheSampler.js +1 -1
- package/Engines/WebGPU/webgpuCacheSampler.js.map +1 -1
- package/Engines/constants.d.ts +0 -4
- package/Engines/constants.js +0 -4
- package/Engines/constants.js.map +1 -1
- package/Engines/engine.d.ts +38 -258
- package/Engines/engine.js +0 -65
- package/Engines/engine.js.map +1 -1
- package/Engines/engineFactory.js +9 -14
- package/Engines/engineFactory.js.map +1 -1
- package/Engines/engineFeatures.d.ts +2 -0
- package/Engines/engineFeatures.js.map +1 -1
- package/Engines/nativeEngine.js +1 -0
- package/Engines/nativeEngine.js.map +1 -1
- package/Engines/nullEngine.js +1 -0
- package/Engines/nullEngine.js.map +1 -1
- package/Engines/thinEngine.d.ts +22 -5
- package/Engines/thinEngine.js +55 -22
- package/Engines/thinEngine.js.map +1 -1
- package/Engines/webgpuEngine.d.ts +1 -0
- package/Engines/webgpuEngine.js +4 -2
- package/Engines/webgpuEngine.js.map +1 -1
- package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.d.ts +9 -8
- package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.js +34 -16
- package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.d.ts +4 -3
- package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.js +14 -6
- package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.d.ts +19 -14
- package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.js +64 -27
- package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.d.ts +39 -41
- package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.js +152 -74
- package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.d.ts +12 -12
- package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.js +42 -21
- package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.d.ts +17 -14
- package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.js +62 -26
- package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.d.ts +13 -10
- package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.js +46 -18
- package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.d.ts +4 -1
- package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.js +6 -2
- package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.js +7 -2
- package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphConstantBlock.d.ts +5 -3
- package/FlowGraph/Blocks/Data/flowGraphConstantBlock.js +10 -5
- package/FlowGraph/Blocks/Data/flowGraphConstantBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.d.ts +4 -1
- package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.js +6 -2
- package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.js +7 -2
- package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.js +7 -2
- package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.d.ts +4 -1
- package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.js +6 -2
- package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.d.ts +6 -2
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js +12 -3
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.d.ts +5 -3
- package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js +11 -6
- package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.d.ts +1 -0
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js +7 -2
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.d.ts +1 -0
- package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.js +7 -2
- package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.js +8 -3
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.d.ts +6 -3
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.js +22 -16
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.d.ts +7 -4
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.js +15 -10
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.js +8 -3
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.d.ts +7 -4
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.js +14 -7
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.d.ts +5 -3
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.js +9 -4
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/flowGraphLogBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.js +8 -3
- package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js.map +1 -1
- package/FlowGraph/flowGraph.d.ts +41 -3
- package/FlowGraph/flowGraph.js +135 -0
- package/FlowGraph/flowGraph.js.map +1 -1
- package/FlowGraph/flowGraphAsyncExecutionBlock.d.ts +2 -1
- package/FlowGraph/flowGraphAsyncExecutionBlock.js +2 -2
- package/FlowGraph/flowGraphAsyncExecutionBlock.js.map +1 -1
- package/FlowGraph/flowGraphBlock.d.ts +15 -3
- package/FlowGraph/flowGraphBlock.js +50 -7
- package/FlowGraph/flowGraphBlock.js.map +1 -1
- package/FlowGraph/flowGraphConnection.d.ts +34 -4
- package/FlowGraph/flowGraphConnection.js +49 -3
- package/FlowGraph/flowGraphConnection.js.map +1 -1
- package/FlowGraph/flowGraphContext.d.ts +25 -5
- package/FlowGraph/flowGraphContext.js +86 -4
- package/FlowGraph/flowGraphContext.js.map +1 -1
- package/FlowGraph/flowGraphCoordinator.d.ts +7 -1
- package/FlowGraph/flowGraphCoordinator.js +18 -2
- package/FlowGraph/flowGraphCoordinator.js.map +1 -1
- package/FlowGraph/flowGraphDataConnection.d.ts +4 -11
- package/FlowGraph/flowGraphDataConnection.js +16 -14
- package/FlowGraph/flowGraphDataConnection.js.map +1 -1
- package/FlowGraph/flowGraphExecutionBlock.d.ts +8 -3
- package/FlowGraph/flowGraphExecutionBlock.js +37 -6
- package/FlowGraph/flowGraphExecutionBlock.js.map +1 -1
- package/FlowGraph/flowGraphRichTypes.d.ts +5 -9
- package/FlowGraph/flowGraphRichTypes.js +29 -44
- package/FlowGraph/flowGraphRichTypes.js.map +1 -1
- package/FlowGraph/flowGraphSignalConnection.js +2 -0
- package/FlowGraph/flowGraphSignalConnection.js.map +1 -1
- package/FlowGraph/flowGraphVariableDefinitions.d.ts +22 -2
- package/FlowGraph/flowGraphVariableDefinitions.js +29 -0
- package/FlowGraph/flowGraphVariableDefinitions.js.map +1 -1
- package/FlowGraph/flowGraphWithOnDoneExecutionBlock.d.ts +2 -1
- package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js +2 -2
- package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js.map +1 -1
- package/Gamepads/gamepadManager.js +0 -5
- package/Gamepads/gamepadManager.js.map +1 -1
- package/Gamepads/index.d.ts +0 -1
- package/Gamepads/index.js +0 -2
- package/Gamepads/index.js.map +1 -1
- package/Gizmos/gizmo.js +1 -4
- package/Gizmos/gizmo.js.map +1 -1
- package/Materials/GreasedLine/greasedLineMaterialDefaults.d.ts +24 -0
- package/Materials/GreasedLine/greasedLineMaterialDefaults.js +19 -0
- package/Materials/GreasedLine/greasedLineMaterialDefaults.js.map +1 -0
- package/Materials/GreasedLine/greasedLineMaterialInterfaces.d.ts +243 -0
- package/Materials/GreasedLine/greasedLineMaterialInterfaces.js +55 -0
- package/Materials/GreasedLine/greasedLineMaterialInterfaces.js.map +1 -0
- package/Materials/GreasedLine/greasedLinePluginMaterial.d.ts +253 -0
- package/Materials/{greasedLinePluginMaterial.js → GreasedLine/greasedLinePluginMaterial.js} +148 -205
- package/Materials/GreasedLine/greasedLinePluginMaterial.js.map +1 -0
- package/Materials/{greasedLineSimpleMaterial.d.ts → GreasedLine/greasedLineSimpleMaterial.d.ts} +20 -48
- package/Materials/{greasedLineSimpleMaterial.js → GreasedLine/greasedLineSimpleMaterial.js} +74 -91
- package/Materials/GreasedLine/greasedLineSimpleMaterial.js.map +1 -0
- package/Materials/Node/Blocks/Input/prePassTextureBlock.d.ts +1 -1
- package/Materials/Node/Blocks/Input/prePassTextureBlock.js.map +1 -1
- package/Materials/Textures/texture.js +1 -0
- package/Materials/Textures/texture.js.map +1 -1
- package/Materials/index.d.ts +4 -1
- package/Materials/index.js +4 -1
- package/Materials/index.js.map +1 -1
- package/Maths/math.vector.d.ts +32 -22
- package/Maths/math.vector.js +54 -43
- package/Maths/math.vector.js.map +1 -1
- package/Meshes/Builders/greasedLineBuilder.d.ts +7 -6
- package/Meshes/Builders/greasedLineBuilder.js +65 -31
- package/Meshes/Builders/greasedLineBuilder.js.map +1 -1
- package/Meshes/GreasedLine/greasedLineBaseMesh.d.ts +216 -0
- package/Meshes/GreasedLine/greasedLineBaseMesh.js +247 -0
- package/Meshes/GreasedLine/greasedLineBaseMesh.js.map +1 -0
- package/Meshes/GreasedLine/greasedLineMesh.d.ts +92 -0
- package/Meshes/{greasedLineMesh.js → GreasedLine/greasedLineMesh.js} +29 -223
- package/Meshes/GreasedLine/greasedLineMesh.js.map +1 -0
- package/Meshes/GreasedLine/greasedLineRibbonMesh.d.ts +107 -0
- package/Meshes/GreasedLine/greasedLineRibbonMesh.js +462 -0
- package/Meshes/GreasedLine/greasedLineRibbonMesh.js.map +1 -0
- package/Meshes/Node/Blocks/Sources/meshBlock.d.ts +9 -2
- package/Meshes/Node/Blocks/Sources/meshBlock.js +17 -5
- package/Meshes/Node/Blocks/Sources/meshBlock.js.map +1 -1
- package/Meshes/Node/Blocks/Textures/geometryTextureBlock.d.ts +15 -0
- package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js +50 -1
- package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js.map +1 -1
- package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js +5 -5
- package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js.map +1 -1
- package/Meshes/Node/nodeGeometry.d.ts +1 -2
- package/Meshes/Node/nodeGeometry.js +3 -4
- package/Meshes/Node/nodeGeometry.js.map +1 -1
- package/Meshes/Node/nodeGeometryBlock.d.ts +1 -2
- package/Meshes/Node/nodeGeometryBlock.js +1 -2
- package/Meshes/Node/nodeGeometryBlock.js.map +1 -1
- package/Meshes/geometry.js +6 -12
- package/Meshes/geometry.js.map +1 -1
- package/Meshes/index.d.ts +3 -1
- package/Meshes/index.js +3 -1
- package/Meshes/index.js.map +1 -1
- package/Meshes/mesh.d.ts +4 -0
- package/Meshes/mesh.js +7 -0
- package/Meshes/mesh.js.map +1 -1
- package/Misc/deepCopier.js +3 -0
- package/Misc/deepCopier.js.map +1 -1
- package/Misc/greasedLineTools.d.ts +52 -5
- package/Misc/greasedLineTools.js +180 -10
- package/Misc/greasedLineTools.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js +9 -2
- package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js.map +1 -1
- package/PostProcesses/motionBlurPostProcess.js +4 -1
- package/PostProcesses/motionBlurPostProcess.js.map +1 -1
- package/PostProcesses/postProcess.js +1 -6
- package/PostProcesses/postProcess.js.map +1 -1
- package/Rendering/geometryBufferRenderer.js +4 -0
- package/Rendering/geometryBufferRenderer.js.map +1 -1
- package/Shaders/greasedLine.fragment.js +2 -5
- package/Shaders/greasedLine.fragment.js.map +1 -1
- package/Shaders/greasedLine.vertex.js +15 -4
- package/Shaders/greasedLine.vertex.js.map +1 -1
- package/XR/webXRDefaultExperience.d.ts +1 -1
- package/XR/webXRDefaultExperience.js +1 -1
- package/XR/webXRDefaultExperience.js.map +1 -1
- package/package.json +1 -1
- package/scene.d.ts +17 -10
- package/scene.js +25 -30
- package/scene.js.map +1 -1
- package/Cameras/RigModes/webVRRigMode.d.ts +0 -5
- package/Cameras/RigModes/webVRRigMode.js +0 -34
- package/Cameras/RigModes/webVRRigMode.js.map +0 -1
- package/Cameras/VR/webVRCamera.d.ts +0 -316
- package/Cameras/VR/webVRCamera.js +0 -618
- package/Cameras/VR/webVRCamera.js.map +0 -1
- package/Engines/Extensions/engine.webVR.d.ts +0 -91
- package/Engines/Extensions/engine.webVR.js +0 -195
- package/Engines/Extensions/engine.webVR.js.map +0 -1
- package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.d.ts +0 -23
- package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.js +0 -18
- package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.js.map +0 -1
- package/Gamepads/Controllers/daydreamController.d.ts +0 -38
- package/Gamepads/Controllers/daydreamController.js +0 -70
- package/Gamepads/Controllers/daydreamController.js.map +0 -1
- package/Gamepads/Controllers/gearVRController.d.ts +0 -39
- package/Gamepads/Controllers/gearVRController.js +0 -79
- package/Gamepads/Controllers/gearVRController.js.map +0 -1
- package/Gamepads/Controllers/genericController.d.ts +0 -34
- package/Gamepads/Controllers/genericController.js +0 -48
- package/Gamepads/Controllers/genericController.js.map +0 -1
- package/Gamepads/Controllers/index.d.ts +0 -8
- package/Gamepads/Controllers/index.js +0 -9
- package/Gamepads/Controllers/index.js.map +0 -1
- package/Gamepads/Controllers/oculusTouchController.d.ts +0 -78
- package/Gamepads/Controllers/oculusTouchController.js +0 -196
- package/Gamepads/Controllers/oculusTouchController.js.map +0 -1
- package/Gamepads/Controllers/poseEnabledController.d.ts +0 -219
- package/Gamepads/Controllers/poseEnabledController.js +0 -293
- package/Gamepads/Controllers/poseEnabledController.js.map +0 -1
- package/Gamepads/Controllers/viveController.d.ts +0 -52
- package/Gamepads/Controllers/viveController.js +0 -115
- package/Gamepads/Controllers/viveController.js.map +0 -1
- package/Gamepads/Controllers/webVRController.d.ts +0 -85
- package/Gamepads/Controllers/webVRController.js +0 -122
- package/Gamepads/Controllers/webVRController.js.map +0 -1
- package/Gamepads/Controllers/windowsMotionController.d.ts +0 -212
- package/Gamepads/Controllers/windowsMotionController.js +0 -519
- package/Gamepads/Controllers/windowsMotionController.js.map +0 -1
- package/Materials/greasedLinePluginMaterial.d.ts +0 -496
- package/Materials/greasedLinePluginMaterial.js.map +0 -1
- package/Materials/greasedLineSimpleMaterial.js.map +0 -1
- package/Meshes/greasedLineMesh.d.ts +0 -204
- package/Meshes/greasedLineMesh.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowGraphVector3MathBlocks.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.ts"],"names":[],"mappings":"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","sourcesContent":["import { RichTypeMatrix, RichTypeNumber, RichTypeVector3 } from \"core/FlowGraph/flowGraphRichTypes\";\r\nimport { FlowGraphBinaryOperationBlock } from \"../flowGraphBinaryOperationBlock\";\r\nimport type { Matrix } from \"../../../../Maths/math.vector\";\r\nimport { Quaternion, Vector3 } from \"../../../../Maths/math.vector\";\r\nimport { FlowGraphUnaryOperationBlock } from \"../flowGraphUnaryOperationBlock\";\r\nimport { FlowGraphBlock } from \"../../../flowGraphBlock\";\r\nimport type { FlowGraphContext } from \"../../../flowGraphContext\";\r\nimport type { FlowGraphDataConnection } from \"../../../flowGraphDataConnection\";\r\n\r\n/**\r\n * Add two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphAddVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {\r\n constructor() {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.add(right));\r\n }\r\n}\r\n\r\n/**\r\n * Subtract two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphSubtractVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {\r\n constructor() {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.subtract(right));\r\n }\r\n}\r\n\r\n/**\r\n * Multiply two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphMultiplyVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {\r\n constructor() {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.multiply(right));\r\n }\r\n}\r\n\r\n/**\r\n * Divide two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphDivideVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {\r\n constructor() {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.divide(right));\r\n }\r\n}\r\n\r\n/**\r\n * Scale a vector by a number.\r\n * @experimental\r\n */\r\nexport class FlowGraphScaleVector3Block extends FlowGraphBinaryOperationBlock<Vector3, number, Vector3> {\r\n constructor() {\r\n super(RichTypeVector3, RichTypeNumber, RichTypeVector3, (left, right) => left.scale(right));\r\n }\r\n}\r\n\r\n/**\r\n * Get the length of a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphLengthVector3Block extends FlowGraphUnaryOperationBlock<Vector3, number> {\r\n constructor() {\r\n super(RichTypeVector3, RichTypeNumber, (value) => value.length());\r\n }\r\n}\r\n\r\n/**\r\n * Normalize a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphNormalizeVector3Block extends FlowGraphUnaryOperationBlock<Vector3, Vector3> {\r\n constructor() {\r\n super(RichTypeVector3, RichTypeVector3, (value) => value.normalizeToNew());\r\n }\r\n}\r\n\r\n/**\r\n * Get the dot product of two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphDotVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, number> {\r\n constructor() {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeNumber, (left, right) => Vector3.Dot(left, right));\r\n }\r\n}\r\n\r\n/**\r\n * Get the cross product of two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphCrossVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {\r\n constructor() {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => Vector3.Cross(left, right));\r\n }\r\n}\r\n\r\n/**\r\n * Create a vector from its components.\r\n * @experimental\r\n */\r\nexport class FlowGraphCreateVector3Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The z component of the vector.\r\n */\r\n public readonly z: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The created vector.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector3>;\r\n\r\n private _cachedVector: Vector3 = Vector3.Zero();\r\n\r\n constructor() {\r\n super();\r\n\r\n this.x = this._registerDataInput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataInput(\"y\", RichTypeNumber);\r\n this.z = this._registerDataInput(\"y\", RichTypeNumber);\r\n this.vector = this._registerDataOutput(\"vector\", RichTypeVector3);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n this._cachedVector.x = this.x.getValue(_context);\r\n this._cachedVector.y = this.y.getValue(_context);\r\n this._cachedVector.z = this.z.getValue(_context);\r\n this.vector.setValue(this._cachedVector, _context);\r\n }\r\n}\r\n\r\n/**\r\n * Split a vector into its components.\r\n * @experimental\r\n */\r\nexport class FlowGraphSplitVector3Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The vector to split.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector3>;\r\n /**\r\n * Output connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The z component of the vector.\r\n */\r\n public readonly z: FlowGraphDataConnection<number>;\r\n\r\n constructor() {\r\n super();\r\n\r\n this.vector = this._registerDataInput(\"vector\", RichTypeVector3);\r\n this.x = this._registerDataOutput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataOutput(\"y\", RichTypeNumber);\r\n this.z = this._registerDataOutput(\"z\", RichTypeNumber);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const vector = this.vector.getValue(_context);\r\n this.x.setValue(vector.x, _context);\r\n this.y.setValue(vector.y, _context);\r\n this.z.setValue(vector.z, _context);\r\n }\r\n}\r\n\r\n/**\r\n * Rotates a vector by a given angle.\r\n */\r\nexport class FlowGraphRotate3dVector3Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The vector to rotate.\r\n */\r\n public readonly input: FlowGraphDataConnection<Vector3>;\r\n /**\r\n * Input connection: The axis to rotate around.\r\n */\r\n public readonly axis: FlowGraphDataConnection<Vector3>;\r\n /**\r\n * Input connection: The angle to rotate by.\r\n */\r\n public readonly angle: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The rotated vector.\r\n */\r\n public readonly output: FlowGraphDataConnection<Vector3>;\r\n\r\n private _cachedQuaternion = new Quaternion();\r\n\r\n constructor() {\r\n super();\r\n this.input = this._registerDataInput(\"input\", RichTypeVector3);\r\n this.angle = this._registerDataInput(\"angle\", RichTypeNumber);\r\n this.output = this._registerDataOutput(\"output\", RichTypeVector3);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const rot = Quaternion.RotationAxisToRef(this.axis.getValue(_context), this.angle.getValue(_context), this._cachedQuaternion);\r\n const input = this.input.getValue(_context);\r\n const output = this.output.getValue(_context);\r\n input.applyRotationQuaternionToRef(rot, output);\r\n }\r\n}\r\n\r\n/**\r\n * Transforms a vector by a given matrix.\r\n * @experimental\r\n */\r\nexport class FlowGraphTransformVector3Block extends FlowGraphBinaryOperationBlock<Matrix, Vector3, Vector3> {\r\n private _cachedResult: Vector3 = Vector3.Zero();\r\n constructor() {\r\n super(RichTypeMatrix, RichTypeVector3, RichTypeVector3, (left, right) => Vector3.TransformCoordinatesToRef(right, left, this._cachedResult));\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"flowGraphVector3MathBlocks.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,uCAA0C;AACpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AAEjF,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAqC,MAAM,yBAAyB,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAI3D,MAAM,OAAO,GAAG,mBAAmB,CAAC;AACpC;;;GAGG;AACH,MAAM,OAAO,wBAAyB,SAAQ,6BAAwD;IAClG,YAAY,MAAqC;QAC7C,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAChH,CAAC;CACJ;AACD,aAAa,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;AAEjD,MAAM,OAAO,GAAG,wBAAwB,CAAC;AACzC;;;GAGG;AACH,MAAM,OAAO,6BAA8B,SAAQ,6BAAwD;IACvG,YAAY,MAAoC;QAC5C,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACrH,CAAC;CACJ;AACD,aAAa,CAAC,OAAO,EAAE,6BAA6B,CAAC,CAAC;AAEtD,MAAM,OAAO,GAAG,wBAAwB,CAAC;AACzC;;;GAGG;AACH,MAAM,OAAO,6BAA8B,SAAQ,6BAAwD;IACvG,YAAY,MAAoC;QAC5C,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACrH,CAAC;CACJ;AACD,aAAa,CAAC,OAAO,EAAE,6BAA6B,CAAC,CAAC;AAEtD,MAAM,OAAO,GAAG,sBAAsB,CAAC;AACvC;;;GAGG;AACH,MAAM,OAAO,2BAA4B,SAAQ,6BAAwD;IACrG,YAAY,MAAqC;QAC7C,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACnH,CAAC;CACJ;AACD,aAAa,CAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;AAEpD,MAAM,QAAQ,GAAG,qBAAqB,CAAC;AACvC;;;GAGG;AACH,MAAM,OAAO,0BAA2B,SAAQ,6BAAuD;IACnG,YAAY,MAAqC;QAC7C,KAAK,CAAC,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClH,CAAC;CACJ;AACD,aAAa,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CAAC;AAEpD,MAAM,OAAO,GAAG,sBAAsB,CAAC;AACvC;;;GAGG;AACH,MAAM,OAAO,2BAA4B,SAAQ,4BAA6C;IAC1F,YAAY,MAAqC;QAC7C,KAAK,CAAC,eAAe,EAAE,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACvF,CAAC;CACJ;AACD,aAAa,CAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;AAEpD,MAAM,QAAQ,GAAG,yBAAyB,CAAC;AAC3C;;;GAGG;AACH,MAAM,OAAO,8BAA+B,SAAQ,4BAA8C;IAC9F,YAAY,MAAqC;QAC7C,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACjG,CAAC;CACJ;AACD,aAAa,CAAC,QAAQ,EAAE,8BAA8B,CAAC,CAAC;AAExD,MAAM,OAAO,GAAG,mBAAmB,CAAC;AACpC;;;GAGG;AACH,MAAM,OAAO,wBAAyB,SAAQ,6BAAuD;IACjG,YAAY,MAAqC;QAC7C,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACxH,CAAC;CACJ;AACD,aAAa,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;AAEjD,MAAM,SAAS,GAAG,qBAAqB,CAAC;AACxC;;;GAGG;AACH,MAAM,OAAO,0BAA2B,SAAQ,6BAAwD;IACpG,YAAY,MAAqC;QAC7C,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC7H,CAAC;CACJ;AACD,aAAa,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;AAErD,MAAM,UAAU,GAAG,sBAAsB,CAAC;AAC1C;;;GAGG;AACH,MAAM,OAAO,2BAA4B,SAAQ,cAAc;IAoB3D,YAAY,MAAqC;QAC7C,KAAK,CAAC,MAAM,CAAC,CAAC;QAHV,kBAAa,GAAY,OAAO,CAAC,IAAI,EAAE,CAAC;QAK5C,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QACtD,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QACtD,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IACtE,CAAC;IAEM,cAAc,CAAC,QAA0B;QAC5C,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACvD,CAAC;IAEM,YAAY;QACf,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ;AACD,aAAa,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;AAEvD,MAAM,SAAS,GAAG,qBAAqB,CAAC;AACxC;;;GAGG;AACH,MAAM,OAAO,0BAA2B,SAAQ,cAAc;IAkB1D,YAAY,MAAqC;QAC7C,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QACjE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QACvD,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QACvD,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAC3D,CAAC;IAEM,cAAc,CAAC,QAA0B;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;IAEM,YAAY;QACf,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ;AACD,aAAa,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;AAErD,MAAM,UAAU,GAAG,sBAAsB,CAAC;AAC1C;;GAEG;AACH,MAAM,OAAO,6BAA8B,SAAQ,cAAc;IAoB7D,YAAY,MAAqC;QAC7C,KAAK,CAAC,MAAM,CAAC,CAAC;QAHV,sBAAiB,GAAG,IAAI,UAAU,EAAE,CAAC;QAIzC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IACtE,CAAC;IAEM,cAAc,CAAC,QAA0B;QAC5C,MAAM,GAAG,GAAG,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9H,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9C,KAAK,CAAC,4BAA4B,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC;IAEM,YAAY;QACf,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ;AACD,aAAa,CAAC,UAAU,EAAE,6BAA6B,CAAC,CAAC;AAEzD,MAAM,aAAa,GAAG,yBAAyB,CAAC;AAChD;;;GAGG;AACH,MAAM,OAAO,8BAA+B,SAAQ,6BAAuD;IAEvG,YAAY,MAAqC;QAC7C,KAAK,CAAC,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QAFhK,kBAAa,GAAY,OAAO,CAAC,IAAI,EAAE,CAAC;IAGhD,CAAC;CACJ;AACD,aAAa,CAAC,aAAa,EAAE,8BAA8B,CAAC,CAAC","sourcesContent":["import { RichTypeMatrix, RichTypeNumber, RichTypeVector3 } from \"core/FlowGraph/flowGraphRichTypes\";\r\nimport { FlowGraphBinaryOperationBlock } from \"../flowGraphBinaryOperationBlock\";\r\nimport type { Matrix } from \"../../../../Maths/math.vector\";\r\nimport { Quaternion, Vector3 } from \"../../../../Maths/math.vector\";\r\nimport { FlowGraphUnaryOperationBlock } from \"../flowGraphUnaryOperationBlock\";\r\nimport { FlowGraphBlock, type IFlowGraphBlockConfiguration } from \"../../../flowGraphBlock\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\nimport type { FlowGraphContext } from \"../../../flowGraphContext\";\r\nimport type { FlowGraphDataConnection } from \"../../../flowGraphDataConnection\";\r\n\r\nconst ADDNAME = \"FGAddVector3Block\";\r\n/**\r\n * Add two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphAddVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.add(right), ADDNAME, config);\r\n }\r\n}\r\nRegisterClass(ADDNAME, FlowGraphAddVector3Block);\r\n\r\nconst SUBNAME = \"FGSubtractVector3Block\";\r\n/**\r\n * Subtract two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphSubtractVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {\r\n constructor(config: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.subtract(right), SUBNAME, config);\r\n }\r\n}\r\nRegisterClass(SUBNAME, FlowGraphSubtractVector3Block);\r\n\r\nconst MULNAME = \"FGMultiplyVector3Block\";\r\n/**\r\n * Multiply two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphMultiplyVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {\r\n constructor(config: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.multiply(right), MULNAME, config);\r\n }\r\n}\r\nRegisterClass(MULNAME, FlowGraphMultiplyVector3Block);\r\n\r\nconst DIVNAME = \"FGDivideVector3Block\";\r\n/**\r\n * Divide two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphDivideVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.divide(right), DIVNAME, config);\r\n }\r\n}\r\nRegisterClass(DIVNAME, FlowGraphDivideVector3Block);\r\n\r\nconst SCALNAME = \"FGScaleVector3Block\";\r\n/**\r\n * Scale a vector by a number.\r\n * @experimental\r\n */\r\nexport class FlowGraphScaleVector3Block extends FlowGraphBinaryOperationBlock<Vector3, number, Vector3> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector3, RichTypeNumber, RichTypeVector3, (left, right) => left.scale(right), SCALNAME, config);\r\n }\r\n}\r\nRegisterClass(SCALNAME, FlowGraphScaleVector3Block);\r\n\r\nconst LENNAME = \"FGLengthVector3Block\";\r\n/**\r\n * Get the length of a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphLengthVector3Block extends FlowGraphUnaryOperationBlock<Vector3, number> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector3, RichTypeNumber, (value) => value.length(), LENNAME, config);\r\n }\r\n}\r\nRegisterClass(LENNAME, FlowGraphLengthVector3Block);\r\n\r\nconst NORMNAME = \"FGNormalizeVector3Block\";\r\n/**\r\n * Normalize a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphNormalizeVector3Block extends FlowGraphUnaryOperationBlock<Vector3, Vector3> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector3, RichTypeVector3, (value) => value.normalizeToNew(), NORMNAME, config);\r\n }\r\n}\r\nRegisterClass(NORMNAME, FlowGraphNormalizeVector3Block);\r\n\r\nconst DOTNAME = \"FGDotVector3Block\";\r\n/**\r\n * Get the dot product of two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphDotVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, number> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeNumber, (left, right) => Vector3.Dot(left, right), DOTNAME, config);\r\n }\r\n}\r\nRegisterClass(DOTNAME, FlowGraphDotVector3Block);\r\n\r\nconst CROSSNAME = \"FGCrossVector3Block\";\r\n/**\r\n * Get the cross product of two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphCrossVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => Vector3.Cross(left, right), CROSSNAME, config);\r\n }\r\n}\r\nRegisterClass(CROSSNAME, FlowGraphCrossVector3Block);\r\n\r\nconst CREATENAME = \"FGCreateVector3Block\";\r\n/**\r\n * Create a vector from its components.\r\n * @experimental\r\n */\r\nexport class FlowGraphCreateVector3Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The z component of the vector.\r\n */\r\n public readonly z: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The created vector.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector3>;\r\n\r\n private _cachedVector: Vector3 = Vector3.Zero();\r\n\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n\r\n this.x = this._registerDataInput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataInput(\"y\", RichTypeNumber);\r\n this.z = this._registerDataInput(\"y\", RichTypeNumber);\r\n this.vector = this._registerDataOutput(\"vector\", RichTypeVector3);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n this._cachedVector.x = this.x.getValue(_context);\r\n this._cachedVector.y = this.y.getValue(_context);\r\n this._cachedVector.z = this.z.getValue(_context);\r\n this.vector.setValue(this._cachedVector, _context);\r\n }\r\n\r\n public getClassName(): string {\r\n return CREATENAME;\r\n }\r\n}\r\nRegisterClass(CREATENAME, FlowGraphCreateVector3Block);\r\n\r\nconst SPLITNAME = \"FGSplitVector3Block\";\r\n/**\r\n * Split a vector into its components.\r\n * @experimental\r\n */\r\nexport class FlowGraphSplitVector3Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The vector to split.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector3>;\r\n /**\r\n * Output connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The z component of the vector.\r\n */\r\n public readonly z: FlowGraphDataConnection<number>;\r\n\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n\r\n this.vector = this._registerDataInput(\"vector\", RichTypeVector3);\r\n this.x = this._registerDataOutput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataOutput(\"y\", RichTypeNumber);\r\n this.z = this._registerDataOutput(\"z\", RichTypeNumber);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const vector = this.vector.getValue(_context);\r\n this.x.setValue(vector.x, _context);\r\n this.y.setValue(vector.y, _context);\r\n this.z.setValue(vector.z, _context);\r\n }\r\n\r\n public getClassName(): string {\r\n return SPLITNAME;\r\n }\r\n}\r\nRegisterClass(SPLITNAME, FlowGraphSplitVector3Block);\r\n\r\nconst ROTATENAME = \"FGRotateVector3Block\";\r\n/**\r\n * Rotates a vector by a given angle.\r\n */\r\nexport class FlowGraphRotate3dVector3Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The vector to rotate.\r\n */\r\n public readonly input: FlowGraphDataConnection<Vector3>;\r\n /**\r\n * Input connection: The axis to rotate around.\r\n */\r\n public readonly axis: FlowGraphDataConnection<Vector3>;\r\n /**\r\n * Input connection: The angle to rotate by.\r\n */\r\n public readonly angle: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The rotated vector.\r\n */\r\n public readonly output: FlowGraphDataConnection<Vector3>;\r\n\r\n private _cachedQuaternion = new Quaternion();\r\n\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n this.input = this._registerDataInput(\"input\", RichTypeVector3);\r\n this.angle = this._registerDataInput(\"angle\", RichTypeNumber);\r\n this.output = this._registerDataOutput(\"output\", RichTypeVector3);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const rot = Quaternion.RotationAxisToRef(this.axis.getValue(_context), this.angle.getValue(_context), this._cachedQuaternion);\r\n const input = this.input.getValue(_context);\r\n const output = this.output.getValue(_context);\r\n input.applyRotationQuaternionToRef(rot, output);\r\n }\r\n\r\n public getClassName(): string {\r\n return ROTATENAME;\r\n }\r\n}\r\nRegisterClass(ROTATENAME, FlowGraphRotate3dVector3Block);\r\n\r\nconst TRANSFORMNAME = \"FGTransformVector3Block\";\r\n/**\r\n * Transforms a vector by a given matrix.\r\n * @experimental\r\n */\r\nexport class FlowGraphTransformVector3Block extends FlowGraphBinaryOperationBlock<Matrix, Vector3, Vector3> {\r\n private _cachedResult: Vector3 = Vector3.Zero();\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeMatrix, RichTypeVector3, RichTypeVector3, (left, right) => Vector3.TransformCoordinatesToRef(right, left, this._cachedResult), TRANSFORMNAME, config);\r\n }\r\n}\r\nRegisterClass(TRANSFORMNAME, FlowGraphTransformVector3Block);\r\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock";
|
|
2
2
|
import { Vector4 } from "../../../../Maths/math.vector";
|
|
3
3
|
import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock";
|
|
4
|
-
import { FlowGraphBlock } from "../../../flowGraphBlock";
|
|
4
|
+
import { FlowGraphBlock, type IFlowGraphBlockConfiguration } from "../../../flowGraphBlock";
|
|
5
5
|
import type { FlowGraphContext } from "../../../flowGraphContext";
|
|
6
6
|
import type { FlowGraphDataConnection } from "../../../flowGraphDataConnection";
|
|
7
7
|
/**
|
|
@@ -9,49 +9,50 @@ import type { FlowGraphDataConnection } from "../../../flowGraphDataConnection";
|
|
|
9
9
|
* @experimental
|
|
10
10
|
*/
|
|
11
11
|
export declare class FlowGraphAddVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {
|
|
12
|
-
constructor();
|
|
12
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
13
13
|
}
|
|
14
14
|
/**
|
|
15
15
|
* Subtract two vectors.
|
|
16
16
|
* @experimental
|
|
17
17
|
*/
|
|
18
18
|
export declare class FlowGraphSubtractVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {
|
|
19
|
-
constructor();
|
|
19
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
20
20
|
}
|
|
21
21
|
/**
|
|
22
22
|
* Multiply two vectors together.
|
|
23
23
|
* @experimental
|
|
24
24
|
*/
|
|
25
25
|
export declare class FlowGraphMultiplyVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {
|
|
26
|
-
constructor();
|
|
26
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
29
|
* Divide two vectors.
|
|
30
30
|
* @experimental
|
|
31
31
|
*/
|
|
32
32
|
export declare class FlowGraphDivideVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {
|
|
33
|
-
constructor();
|
|
33
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
36
|
* Scale a vector by a number.
|
|
37
37
|
* @experimental
|
|
38
38
|
*/
|
|
39
39
|
export declare class FlowGraphScaleVector4Block extends FlowGraphBinaryOperationBlock<Vector4, number, Vector4> {
|
|
40
|
-
constructor();
|
|
40
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
41
41
|
}
|
|
42
42
|
/**
|
|
43
43
|
* Get the length of a vector.
|
|
44
44
|
* @experimental
|
|
45
45
|
*/
|
|
46
46
|
export declare class FlowGraphLengthVector4Block extends FlowGraphUnaryOperationBlock<Vector4, number> {
|
|
47
|
-
constructor();
|
|
47
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
48
48
|
}
|
|
49
49
|
/**
|
|
50
50
|
* Normalize a vector.
|
|
51
51
|
* @experimental
|
|
52
52
|
*/
|
|
53
53
|
export declare class FlowGraphNormalizeVector4Block extends FlowGraphUnaryOperationBlock<Vector4, Vector4> {
|
|
54
|
-
constructor();
|
|
54
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
55
|
+
getClassName(): string;
|
|
55
56
|
}
|
|
56
57
|
/**
|
|
57
58
|
* Create a vector from its components.
|
|
@@ -79,8 +80,9 @@ export declare class FlowGraphCreateVector4Block extends FlowGraphBlock {
|
|
|
79
80
|
*/
|
|
80
81
|
readonly vector: FlowGraphDataConnection<Vector4>;
|
|
81
82
|
private _cachedVector;
|
|
82
|
-
constructor();
|
|
83
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
83
84
|
_updateOutputs(_context: FlowGraphContext): void;
|
|
85
|
+
getClassName(): string;
|
|
84
86
|
}
|
|
85
87
|
/**
|
|
86
88
|
* Split a vector into its components.
|
|
@@ -107,6 +109,7 @@ export declare class FlowGraphSplitVector4Block extends FlowGraphBlock {
|
|
|
107
109
|
* Input connection: The w component of the vector.
|
|
108
110
|
*/
|
|
109
111
|
readonly w: FlowGraphDataConnection<number>;
|
|
110
|
-
constructor();
|
|
112
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
111
113
|
_updateOutputs(_context: FlowGraphContext): void;
|
|
114
|
+
getClassName(): string;
|
|
112
115
|
}
|
|
@@ -3,80 +3,99 @@ import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock.
|
|
|
3
3
|
import { Vector4 } from "../../../../Maths/math.vector.js";
|
|
4
4
|
import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock.js";
|
|
5
5
|
import { FlowGraphBlock } from "../../../flowGraphBlock.js";
|
|
6
|
+
import { RegisterClass } from "../../../../Misc/typeStore.js";
|
|
7
|
+
const ADDNAME = "FGAddVector4Block";
|
|
6
8
|
/**
|
|
7
9
|
* Add two vectors together.
|
|
8
10
|
* @experimental
|
|
9
11
|
*/
|
|
10
12
|
export class FlowGraphAddVector4Block extends FlowGraphBinaryOperationBlock {
|
|
11
|
-
constructor() {
|
|
12
|
-
super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.add(right));
|
|
13
|
+
constructor(config) {
|
|
14
|
+
super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.add(right), ADDNAME, config);
|
|
13
15
|
}
|
|
14
16
|
}
|
|
17
|
+
RegisterClass(ADDNAME, FlowGraphAddVector4Block);
|
|
18
|
+
const SUBNAME = "FGSubtractVector4Block";
|
|
15
19
|
/**
|
|
16
20
|
* Subtract two vectors.
|
|
17
21
|
* @experimental
|
|
18
22
|
*/
|
|
19
23
|
export class FlowGraphSubtractVector4Block extends FlowGraphBinaryOperationBlock {
|
|
20
|
-
constructor() {
|
|
21
|
-
super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.subtract(right));
|
|
24
|
+
constructor(config) {
|
|
25
|
+
super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.subtract(right), SUBNAME, config);
|
|
22
26
|
}
|
|
23
27
|
}
|
|
28
|
+
RegisterClass(SUBNAME, FlowGraphSubtractVector4Block);
|
|
29
|
+
const MULNAME = "FGMultiplyVector4Block";
|
|
24
30
|
/**
|
|
25
31
|
* Multiply two vectors together.
|
|
26
32
|
* @experimental
|
|
27
33
|
*/
|
|
28
34
|
export class FlowGraphMultiplyVector4Block extends FlowGraphBinaryOperationBlock {
|
|
29
|
-
constructor() {
|
|
30
|
-
super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.multiply(right));
|
|
35
|
+
constructor(config) {
|
|
36
|
+
super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.multiply(right), MULNAME, config);
|
|
31
37
|
}
|
|
32
38
|
}
|
|
39
|
+
RegisterClass(MULNAME, FlowGraphMultiplyVector4Block);
|
|
40
|
+
const DIVNAME = "FGDivideVector4Block";
|
|
33
41
|
/**
|
|
34
42
|
* Divide two vectors.
|
|
35
43
|
* @experimental
|
|
36
44
|
*/
|
|
37
45
|
export class FlowGraphDivideVector4Block extends FlowGraphBinaryOperationBlock {
|
|
38
|
-
constructor() {
|
|
39
|
-
super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.divide(right));
|
|
46
|
+
constructor(config) {
|
|
47
|
+
super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.divide(right), DIVNAME, config);
|
|
40
48
|
}
|
|
41
49
|
}
|
|
50
|
+
RegisterClass(DIVNAME, FlowGraphDivideVector4Block);
|
|
51
|
+
const SCALNAME = "FGScaleVector4Block";
|
|
42
52
|
/**
|
|
43
53
|
* Scale a vector by a number.
|
|
44
54
|
* @experimental
|
|
45
55
|
*/
|
|
46
56
|
export class FlowGraphScaleVector4Block extends FlowGraphBinaryOperationBlock {
|
|
47
|
-
constructor() {
|
|
48
|
-
super(RichTypeVector4, RichTypeNumber, RichTypeVector4, (left, right) => left.scale(right));
|
|
57
|
+
constructor(config) {
|
|
58
|
+
super(RichTypeVector4, RichTypeNumber, RichTypeVector4, (left, right) => left.scale(right), SCALNAME, config);
|
|
49
59
|
}
|
|
50
60
|
}
|
|
61
|
+
RegisterClass(SCALNAME, FlowGraphScaleVector4Block);
|
|
62
|
+
const LENGTHNAME = "FGLengthVector4Block";
|
|
51
63
|
/**
|
|
52
64
|
* Get the length of a vector.
|
|
53
65
|
* @experimental
|
|
54
66
|
*/
|
|
55
67
|
export class FlowGraphLengthVector4Block extends FlowGraphUnaryOperationBlock {
|
|
56
|
-
constructor() {
|
|
57
|
-
super(RichTypeVector4, RichTypeNumber, (value) => value.length());
|
|
68
|
+
constructor(config) {
|
|
69
|
+
super(RichTypeVector4, RichTypeNumber, (value) => value.length(), LENGTHNAME, config);
|
|
58
70
|
}
|
|
59
71
|
}
|
|
72
|
+
RegisterClass(LENGTHNAME, FlowGraphLengthVector4Block);
|
|
73
|
+
const NORMALIZENAME = "FGNormalizeVector4Block";
|
|
60
74
|
/**
|
|
61
75
|
* Normalize a vector.
|
|
62
76
|
* @experimental
|
|
63
77
|
*/
|
|
64
78
|
export class FlowGraphNormalizeVector4Block extends FlowGraphUnaryOperationBlock {
|
|
65
|
-
constructor() {
|
|
79
|
+
constructor(config) {
|
|
66
80
|
super(RichTypeVector4, RichTypeVector4, (value) => {
|
|
67
81
|
const clone = value.clone();
|
|
68
82
|
clone.normalize();
|
|
69
83
|
return clone;
|
|
70
|
-
});
|
|
84
|
+
}, NORMALIZENAME, config);
|
|
85
|
+
}
|
|
86
|
+
getClassName() {
|
|
87
|
+
return NORMALIZENAME;
|
|
71
88
|
}
|
|
72
89
|
}
|
|
90
|
+
RegisterClass(NORMALIZENAME, FlowGraphNormalizeVector4Block);
|
|
91
|
+
const CREATENAME = "FGCreateVector4Block";
|
|
73
92
|
/**
|
|
74
93
|
* Create a vector from its components.
|
|
75
94
|
* @experimental
|
|
76
95
|
*/
|
|
77
96
|
export class FlowGraphCreateVector4Block extends FlowGraphBlock {
|
|
78
|
-
constructor() {
|
|
79
|
-
super();
|
|
97
|
+
constructor(config) {
|
|
98
|
+
super(config);
|
|
80
99
|
this._cachedVector = Vector4.Zero();
|
|
81
100
|
this.x = this._registerDataInput("x", RichTypeNumber);
|
|
82
101
|
this.y = this._registerDataInput("y", RichTypeNumber);
|
|
@@ -91,14 +110,19 @@ export class FlowGraphCreateVector4Block extends FlowGraphBlock {
|
|
|
91
110
|
this._cachedVector.w = this.w.getValue(_context);
|
|
92
111
|
this.vector.setValue(this._cachedVector, _context);
|
|
93
112
|
}
|
|
113
|
+
getClassName() {
|
|
114
|
+
return CREATENAME;
|
|
115
|
+
}
|
|
94
116
|
}
|
|
117
|
+
RegisterClass(CREATENAME, FlowGraphCreateVector4Block);
|
|
118
|
+
const SPLITNAME = "FGSplitVector4Block";
|
|
95
119
|
/**
|
|
96
120
|
* Split a vector into its components.
|
|
97
121
|
* @experimental
|
|
98
122
|
*/
|
|
99
123
|
export class FlowGraphSplitVector4Block extends FlowGraphBlock {
|
|
100
|
-
constructor() {
|
|
101
|
-
super();
|
|
124
|
+
constructor(config) {
|
|
125
|
+
super(config);
|
|
102
126
|
this.vector = this._registerDataInput("vector", RichTypeVector4);
|
|
103
127
|
this.x = this._registerDataOutput("x", RichTypeNumber);
|
|
104
128
|
this.y = this._registerDataOutput("y", RichTypeNumber);
|
|
@@ -112,5 +136,9 @@ export class FlowGraphSplitVector4Block extends FlowGraphBlock {
|
|
|
112
136
|
this.z.setValue(vector.z, _context);
|
|
113
137
|
this.w.setValue(vector.w, _context);
|
|
114
138
|
}
|
|
139
|
+
getClassName() {
|
|
140
|
+
return SPLITNAME;
|
|
141
|
+
}
|
|
115
142
|
}
|
|
143
|
+
RegisterClass(SPLITNAME, FlowGraphSplitVector4Block);
|
|
116
144
|
//# sourceMappingURL=flowGraphVector4MathBlocks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowGraphVector4MathBlocks.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.ts"],"names":[],"mappings":"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","sourcesContent":["import { RichTypeNumber, RichTypeVector4 } from \"core/FlowGraph/flowGraphRichTypes\";\r\nimport { FlowGraphBinaryOperationBlock } from \"../flowGraphBinaryOperationBlock\";\r\nimport { Vector4 } from \"../../../../Maths/math.vector\";\r\nimport { FlowGraphUnaryOperationBlock } from \"../flowGraphUnaryOperationBlock\";\r\nimport { FlowGraphBlock } from \"../../../flowGraphBlock\";\r\nimport type { FlowGraphContext } from \"../../../flowGraphContext\";\r\nimport type { FlowGraphDataConnection } from \"../../../flowGraphDataConnection\";\r\n\r\n/**\r\n * Add two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphAddVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {\r\n constructor() {\r\n super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.add(right));\r\n }\r\n}\r\n\r\n/**\r\n * Subtract two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphSubtractVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {\r\n constructor() {\r\n super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.subtract(right));\r\n }\r\n}\r\n\r\n/**\r\n * Multiply two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphMultiplyVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {\r\n constructor() {\r\n super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.multiply(right));\r\n }\r\n}\r\n\r\n/**\r\n * Divide two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphDivideVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {\r\n constructor() {\r\n super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.divide(right));\r\n }\r\n}\r\n\r\n/**\r\n * Scale a vector by a number.\r\n * @experimental\r\n */\r\nexport class FlowGraphScaleVector4Block extends FlowGraphBinaryOperationBlock<Vector4, number, Vector4> {\r\n constructor() {\r\n super(RichTypeVector4, RichTypeNumber, RichTypeVector4, (left, right) => left.scale(right));\r\n }\r\n}\r\n\r\n/**\r\n * Get the length of a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphLengthVector4Block extends FlowGraphUnaryOperationBlock<Vector4, number> {\r\n constructor() {\r\n super(RichTypeVector4, RichTypeNumber, (value) => value.length());\r\n }\r\n}\r\n\r\n/**\r\n * Normalize a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphNormalizeVector4Block extends FlowGraphUnaryOperationBlock<Vector4, Vector4> {\r\n constructor() {\r\n super(RichTypeVector4, RichTypeVector4, (value: Vector4) => {\r\n const clone = value.clone();\r\n clone.normalize();\r\n return clone;\r\n });\r\n }\r\n}\r\n\r\n/**\r\n * Create a vector from its components.\r\n * @experimental\r\n */\r\nexport class FlowGraphCreateVector4Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The z component of the vector.\r\n */\r\n public readonly z: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The w component of the vector.\r\n */\r\n public readonly w: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The created vector.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector4>;\r\n\r\n private _cachedVector: Vector4 = Vector4.Zero();\r\n\r\n constructor() {\r\n super();\r\n\r\n this.x = this._registerDataInput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataInput(\"y\", RichTypeNumber);\r\n this.z = this._registerDataInput(\"y\", RichTypeNumber);\r\n this.w = this._registerDataInput(\"w\", RichTypeNumber);\r\n this.vector = this._registerDataOutput(\"vector\", RichTypeVector4);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n this._cachedVector.x = this.x.getValue(_context);\r\n this._cachedVector.y = this.y.getValue(_context);\r\n this._cachedVector.z = this.z.getValue(_context);\r\n this._cachedVector.w = this.w.getValue(_context);\r\n this.vector.setValue(this._cachedVector, _context);\r\n }\r\n}\r\n\r\n/**\r\n * Split a vector into its components.\r\n * @experimental\r\n */\r\nexport class FlowGraphSplitVector4Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The vector to split.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector4>;\r\n /**\r\n * Output connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The z component of the vector.\r\n */\r\n public readonly z: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The w component of the vector.\r\n */\r\n public readonly w: FlowGraphDataConnection<number>;\r\n\r\n constructor() {\r\n super();\r\n\r\n this.vector = this._registerDataInput(\"vector\", RichTypeVector4);\r\n this.x = this._registerDataOutput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataOutput(\"y\", RichTypeNumber);\r\n this.z = this._registerDataOutput(\"z\", RichTypeNumber);\r\n this.w = this._registerDataOutput(\"w\", RichTypeNumber);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const vector = this.vector.getValue(_context);\r\n this.x.setValue(vector.x, _context);\r\n this.y.setValue(vector.y, _context);\r\n this.z.setValue(vector.z, _context);\r\n this.w.setValue(vector.w, _context);\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"flowGraphVector4MathBlocks.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.ts"],"names":[],"mappings":"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","sourcesContent":["import { RichTypeNumber, RichTypeVector4 } from \"core/FlowGraph/flowGraphRichTypes\";\r\nimport { FlowGraphBinaryOperationBlock } from \"../flowGraphBinaryOperationBlock\";\r\nimport { Vector4 } from \"../../../../Maths/math.vector\";\r\nimport { FlowGraphUnaryOperationBlock } from \"../flowGraphUnaryOperationBlock\";\r\nimport { FlowGraphBlock, type IFlowGraphBlockConfiguration } from \"../../../flowGraphBlock\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\nimport type { FlowGraphContext } from \"../../../flowGraphContext\";\r\nimport type { FlowGraphDataConnection } from \"../../../flowGraphDataConnection\";\r\n\r\nconst ADDNAME = \"FGAddVector4Block\";\r\n/**\r\n * Add two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphAddVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.add(right), ADDNAME, config);\r\n }\r\n}\r\nRegisterClass(ADDNAME, FlowGraphAddVector4Block);\r\n\r\nconst SUBNAME = \"FGSubtractVector4Block\";\r\n/**\r\n * Subtract two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphSubtractVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.subtract(right), SUBNAME, config);\r\n }\r\n}\r\nRegisterClass(SUBNAME, FlowGraphSubtractVector4Block);\r\n\r\nconst MULNAME = \"FGMultiplyVector4Block\";\r\n/**\r\n * Multiply two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphMultiplyVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.multiply(right), MULNAME, config);\r\n }\r\n}\r\nRegisterClass(MULNAME, FlowGraphMultiplyVector4Block);\r\n\r\nconst DIVNAME = \"FGDivideVector4Block\";\r\n/**\r\n * Divide two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphDivideVector4Block extends FlowGraphBinaryOperationBlock<Vector4, Vector4, Vector4> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector4, RichTypeVector4, RichTypeVector4, (left, right) => left.divide(right), DIVNAME, config);\r\n }\r\n}\r\nRegisterClass(DIVNAME, FlowGraphDivideVector4Block);\r\n\r\nconst SCALNAME = \"FGScaleVector4Block\";\r\n/**\r\n * Scale a vector by a number.\r\n * @experimental\r\n */\r\nexport class FlowGraphScaleVector4Block extends FlowGraphBinaryOperationBlock<Vector4, number, Vector4> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector4, RichTypeNumber, RichTypeVector4, (left, right) => left.scale(right), SCALNAME, config);\r\n }\r\n}\r\nRegisterClass(SCALNAME, FlowGraphScaleVector4Block);\r\n\r\nconst LENGTHNAME = \"FGLengthVector4Block\";\r\n/**\r\n * Get the length of a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphLengthVector4Block extends FlowGraphUnaryOperationBlock<Vector4, number> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector4, RichTypeNumber, (value) => value.length(), LENGTHNAME, config);\r\n }\r\n}\r\nRegisterClass(LENGTHNAME, FlowGraphLengthVector4Block);\r\n\r\nconst NORMALIZENAME = \"FGNormalizeVector4Block\";\r\n/**\r\n * Normalize a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphNormalizeVector4Block extends FlowGraphUnaryOperationBlock<Vector4, Vector4> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(\r\n RichTypeVector4,\r\n RichTypeVector4,\r\n (value: Vector4) => {\r\n const clone = value.clone();\r\n clone.normalize();\r\n return clone;\r\n },\r\n NORMALIZENAME,\r\n config\r\n );\r\n }\r\n\r\n public getClassName(): string {\r\n return NORMALIZENAME;\r\n }\r\n}\r\nRegisterClass(NORMALIZENAME, FlowGraphNormalizeVector4Block);\r\n\r\nconst CREATENAME = \"FGCreateVector4Block\";\r\n/**\r\n * Create a vector from its components.\r\n * @experimental\r\n */\r\nexport class FlowGraphCreateVector4Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The z component of the vector.\r\n */\r\n public readonly z: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The w component of the vector.\r\n */\r\n public readonly w: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The created vector.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector4>;\r\n\r\n private _cachedVector: Vector4 = Vector4.Zero();\r\n\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n\r\n this.x = this._registerDataInput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataInput(\"y\", RichTypeNumber);\r\n this.z = this._registerDataInput(\"y\", RichTypeNumber);\r\n this.w = this._registerDataInput(\"w\", RichTypeNumber);\r\n this.vector = this._registerDataOutput(\"vector\", RichTypeVector4);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n this._cachedVector.x = this.x.getValue(_context);\r\n this._cachedVector.y = this.y.getValue(_context);\r\n this._cachedVector.z = this.z.getValue(_context);\r\n this._cachedVector.w = this.w.getValue(_context);\r\n this.vector.setValue(this._cachedVector, _context);\r\n }\r\n\r\n public getClassName(): string {\r\n return CREATENAME;\r\n }\r\n}\r\nRegisterClass(CREATENAME, FlowGraphCreateVector4Block);\r\n\r\nconst SPLITNAME = \"FGSplitVector4Block\";\r\n/**\r\n * Split a vector into its components.\r\n * @experimental\r\n */\r\nexport class FlowGraphSplitVector4Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The vector to split.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector4>;\r\n /**\r\n * Output connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The z component of the vector.\r\n */\r\n public readonly z: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The w component of the vector.\r\n */\r\n public readonly w: FlowGraphDataConnection<number>;\r\n\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n\r\n this.vector = this._registerDataInput(\"vector\", RichTypeVector4);\r\n this.x = this._registerDataOutput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataOutput(\"y\", RichTypeNumber);\r\n this.z = this._registerDataOutput(\"z\", RichTypeNumber);\r\n this.w = this._registerDataOutput(\"w\", RichTypeNumber);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const vector = this.vector.getValue(_context);\r\n this.x.setValue(vector.x, _context);\r\n this.y.setValue(vector.y, _context);\r\n this.z.setValue(vector.z, _context);\r\n this.w.setValue(vector.w, _context);\r\n }\r\n\r\n public getClassName(): string {\r\n return SPLITNAME;\r\n }\r\n}\r\nRegisterClass(SPLITNAME, FlowGraphSplitVector4Block);\r\n"]}
|
|
@@ -2,6 +2,7 @@ import type { FlowGraphDataConnection } from "../../flowGraphDataConnection";
|
|
|
2
2
|
import { FlowGraphBlock } from "../../flowGraphBlock";
|
|
3
3
|
import type { RichType } from "../../flowGraphRichTypes";
|
|
4
4
|
import type { FlowGraphContext } from "../../flowGraphContext";
|
|
5
|
+
import type { IFlowGraphBlockConfiguration } from "../../flowGraphBlock";
|
|
5
6
|
/**
|
|
6
7
|
* @experimental
|
|
7
8
|
* The base block for all binary operation blocks. Receives an input of type
|
|
@@ -9,9 +10,11 @@ import type { FlowGraphContext } from "../../flowGraphContext";
|
|
|
9
10
|
*/
|
|
10
11
|
export declare class FlowGraphBinaryOperationBlock<LeftT, RightT, ResultT> extends FlowGraphBlock {
|
|
11
12
|
private _operation;
|
|
13
|
+
private _className;
|
|
12
14
|
leftInput: FlowGraphDataConnection<LeftT>;
|
|
13
15
|
rightInput: FlowGraphDataConnection<RightT>;
|
|
14
16
|
output: FlowGraphDataConnection<ResultT>;
|
|
15
|
-
constructor(leftRichType: RichType<LeftT>, rightRichType: RichType<RightT>, resultRichType: RichType<ResultT>, _operation: (left: LeftT, right: RightT) => ResultT);
|
|
17
|
+
constructor(leftRichType: RichType<LeftT>, rightRichType: RichType<RightT>, resultRichType: RichType<ResultT>, _operation: (left: LeftT, right: RightT) => ResultT, _className: string, config?: IFlowGraphBlockConfiguration);
|
|
16
18
|
_updateOutputs(_context: FlowGraphContext): void;
|
|
19
|
+
getClassName(): string;
|
|
17
20
|
}
|
|
@@ -5,9 +5,10 @@ import { FlowGraphBlock } from "../../flowGraphBlock.js";
|
|
|
5
5
|
* LeftT, one of type RightT, and outputs a value of type ResultT.
|
|
6
6
|
*/
|
|
7
7
|
export class FlowGraphBinaryOperationBlock extends FlowGraphBlock {
|
|
8
|
-
constructor(leftRichType, rightRichType, resultRichType, _operation) {
|
|
9
|
-
super();
|
|
8
|
+
constructor(leftRichType, rightRichType, resultRichType, _operation, _className, config) {
|
|
9
|
+
super(config);
|
|
10
10
|
this._operation = _operation;
|
|
11
|
+
this._className = _className;
|
|
11
12
|
this.leftInput = this._registerDataInput("leftInput", leftRichType);
|
|
12
13
|
this.rightInput = this._registerDataInput("rightInput", rightRichType);
|
|
13
14
|
this.output = this._registerDataOutput("Output", resultRichType);
|
|
@@ -15,5 +16,8 @@ export class FlowGraphBinaryOperationBlock extends FlowGraphBlock {
|
|
|
15
16
|
_updateOutputs(_context) {
|
|
16
17
|
this.output.setValue(this._operation(this.leftInput.getValue(_context), this.rightInput.getValue(_context)), _context);
|
|
17
18
|
}
|
|
19
|
+
getClassName() {
|
|
20
|
+
return this._className;
|
|
21
|
+
}
|
|
18
22
|
}
|
|
19
23
|
//# sourceMappingURL=flowGraphBinaryOperationBlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowGraphBinaryOperationBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAItD;;;;GAIG;AACH,MAAM,OAAO,6BAAsD,SAAQ,cAAc;IAKrF,
|
|
1
|
+
{"version":3,"file":"flowGraphBinaryOperationBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAItD;;;;GAIG;AACH,MAAM,OAAO,6BAAsD,SAAQ,cAAc;IAKrF,YACI,YAA6B,EAC7B,aAA+B,EAC/B,cAAiC,EACzB,UAAmD,EACnD,UAAkB,EAC1B,MAAqC;QAErC,KAAK,CAAC,MAAM,CAAC,CAAC;QAJN,eAAU,GAAV,UAAU,CAAyC;QACnD,eAAU,GAAV,UAAU,CAAQ;QAI1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACpE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;QACvE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACrE,CAAC;IAEM,cAAc,CAAC,QAA0B;QAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC3H,CAAC;IAEM,YAAY;QACf,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;CACJ","sourcesContent":["import type { FlowGraphDataConnection } from \"../../flowGraphDataConnection\";\r\nimport { FlowGraphBlock } from \"../../flowGraphBlock\";\r\nimport type { RichType } from \"../../flowGraphRichTypes\";\r\nimport type { FlowGraphContext } from \"../../flowGraphContext\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../flowGraphBlock\";\r\n/**\r\n * @experimental\r\n * The base block for all binary operation blocks. Receives an input of type\r\n * LeftT, one of type RightT, and outputs a value of type ResultT.\r\n */\r\nexport class FlowGraphBinaryOperationBlock<LeftT, RightT, ResultT> extends FlowGraphBlock {\r\n leftInput: FlowGraphDataConnection<LeftT>;\r\n rightInput: FlowGraphDataConnection<RightT>;\r\n output: FlowGraphDataConnection<ResultT>;\r\n\r\n constructor(\r\n leftRichType: RichType<LeftT>,\r\n rightRichType: RichType<RightT>,\r\n resultRichType: RichType<ResultT>,\r\n private _operation: (left: LeftT, right: RightT) => ResultT,\r\n private _className: string,\r\n config?: IFlowGraphBlockConfiguration\r\n ) {\r\n super(config);\r\n this.leftInput = this._registerDataInput(\"leftInput\", leftRichType);\r\n this.rightInput = this._registerDataInput(\"rightInput\", rightRichType);\r\n this.output = this._registerDataOutput(\"Output\", resultRichType);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n this.output.setValue(this._operation(this.leftInput.getValue(_context), this.rightInput.getValue(_context)), _context);\r\n }\r\n\r\n public getClassName(): string {\r\n return this._className;\r\n }\r\n}\r\n"]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { FlowGraphContext } from "../../flowGraphContext";
|
|
2
2
|
import { FlowGraphBlock } from "../../flowGraphBlock";
|
|
3
3
|
import type { FlowGraphDataConnection } from "../../flowGraphDataConnection";
|
|
4
|
+
import type { IFlowGraphBlockConfiguration } from "../../flowGraphBlock";
|
|
4
5
|
/**
|
|
5
6
|
* @experimental
|
|
6
7
|
* Block that returns a value based on a condition.
|
|
@@ -22,9 +23,10 @@ export declare class FlowGraphConditionalDataBlock<T> extends FlowGraphBlock {
|
|
|
22
23
|
* Output connection: The value that was returned.
|
|
23
24
|
*/
|
|
24
25
|
readonly output: FlowGraphDataConnection<T>;
|
|
25
|
-
constructor();
|
|
26
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
26
27
|
/**
|
|
27
28
|
* @internal
|
|
28
29
|
*/
|
|
29
30
|
_updateOutputs(context: FlowGraphContext): void;
|
|
31
|
+
getClassName(): string;
|
|
30
32
|
}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { FlowGraphBlock } from "../../flowGraphBlock.js";
|
|
2
2
|
import { RichTypeBoolean, RichTypeAny } from "../../flowGraphRichTypes.js";
|
|
3
|
+
import { RegisterClass } from "../../../Misc/typeStore.js";
|
|
3
4
|
/**
|
|
4
5
|
* @experimental
|
|
5
6
|
* Block that returns a value based on a condition.
|
|
6
7
|
*/
|
|
7
8
|
export class FlowGraphConditionalDataBlock extends FlowGraphBlock {
|
|
8
|
-
constructor() {
|
|
9
|
-
super();
|
|
9
|
+
constructor(config) {
|
|
10
|
+
super(config);
|
|
10
11
|
this.condition = this._registerDataInput("condition", RichTypeBoolean);
|
|
11
12
|
this.trueValue = this._registerDataInput("trueValue", RichTypeAny);
|
|
12
13
|
this.falseValue = this._registerDataInput("falseValue", RichTypeAny);
|
|
@@ -18,5 +19,9 @@ export class FlowGraphConditionalDataBlock extends FlowGraphBlock {
|
|
|
18
19
|
_updateOutputs(context) {
|
|
19
20
|
this.output.setValue(this.condition.getValue(context) ? this.trueValue.getValue(context) : this.falseValue.getValue(context), context);
|
|
20
21
|
}
|
|
22
|
+
getClassName() {
|
|
23
|
+
return "FGConditionalDataBlock";
|
|
24
|
+
}
|
|
21
25
|
}
|
|
26
|
+
RegisterClass("FGConditionalDataBlock", FlowGraphConditionalDataBlock);
|
|
22
27
|
//# sourceMappingURL=flowGraphConditionalDataBlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowGraphConditionalDataBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAExE;;;GAGG;AACH,MAAM,OAAO,6BAAiC,SAAQ,cAAc;IAmBhE;
|
|
1
|
+
{"version":3,"file":"flowGraphConditionalDataBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;;GAGG;AACH,MAAM,OAAO,6BAAiC,SAAQ,cAAc;IAmBhE,YAAY,MAAqC;QAC7C,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QACvE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACnE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QAErE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACI,cAAc,CAAC,OAAyB;QAC3C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3I,CAAC;IAEM,YAAY;QACf,OAAO,wBAAwB,CAAC;IACpC,CAAC;CACJ;AACD,aAAa,CAAC,wBAAwB,EAAE,6BAA6B,CAAC,CAAC","sourcesContent":["import type { FlowGraphContext } from \"../../flowGraphContext\";\r\nimport { FlowGraphBlock } from \"../../flowGraphBlock\";\r\nimport type { FlowGraphDataConnection } from \"../../flowGraphDataConnection\";\r\nimport { RichTypeBoolean, RichTypeAny } from \"../../flowGraphRichTypes\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../flowGraphBlock\";\r\nimport { RegisterClass } from \"../../../Misc/typeStore\";\r\n/**\r\n * @experimental\r\n * Block that returns a value based on a condition.\r\n */\r\nexport class FlowGraphConditionalDataBlock<T> extends FlowGraphBlock {\r\n /**\r\n * Input connection: The condition to check.\r\n */\r\n public readonly condition: FlowGraphDataConnection<boolean>;\r\n /**\r\n * Input connection: The value to return if the condition is true.\r\n */\r\n public readonly trueValue: FlowGraphDataConnection<T>;\r\n /**\r\n * Input connection: The value to return if the condition is false.\r\n */\r\n public readonly falseValue: FlowGraphDataConnection<T>;\r\n\r\n /**\r\n * Output connection: The value that was returned.\r\n */\r\n public readonly output: FlowGraphDataConnection<T>;\r\n\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n\r\n this.condition = this._registerDataInput(\"condition\", RichTypeBoolean);\r\n this.trueValue = this._registerDataInput(\"trueValue\", RichTypeAny);\r\n this.falseValue = this._registerDataInput(\"falseValue\", RichTypeAny);\r\n\r\n this.output = this._registerDataOutput(\"output\", RichTypeAny);\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _updateOutputs(context: FlowGraphContext): void {\r\n this.output.setValue(this.condition.getValue(context) ? this.trueValue.getValue(context) : this.falseValue.getValue(context), context);\r\n }\r\n\r\n public getClassName(): string {\r\n return \"FGConditionalDataBlock\";\r\n }\r\n}\r\nRegisterClass(\"FGConditionalDataBlock\", FlowGraphConditionalDataBlock);\r\n"]}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { FlowGraphBlock } from "../../flowGraphBlock.js";
|
|
2
2
|
import type { FlowGraphContext } from "../../flowGraphContext.js";
|
|
3
3
|
import type { FlowGraphDataConnection } from "../../flowGraphDataConnection.js";
|
|
4
|
+
import type { IFlowGraphBlockConfiguration } from "../../flowGraphBlock";
|
|
4
5
|
/**
|
|
5
6
|
* @experimental
|
|
6
7
|
* Configuration for a constant block.
|
|
7
8
|
*/
|
|
8
|
-
export interface IFlowGraphConstantBlockConfiguration<T> {
|
|
9
|
+
export interface IFlowGraphConstantBlockConfiguration<T> extends IFlowGraphBlockConfiguration {
|
|
9
10
|
/**
|
|
10
11
|
* The value of the constant.
|
|
11
12
|
*/
|
|
@@ -16,11 +17,12 @@ export interface IFlowGraphConstantBlockConfiguration<T> {
|
|
|
16
17
|
* Block that returns a constant value.
|
|
17
18
|
*/
|
|
18
19
|
export declare class FlowGraphConstantBlock<T> extends FlowGraphBlock {
|
|
19
|
-
|
|
20
|
+
config: IFlowGraphConstantBlockConfiguration<T>;
|
|
20
21
|
/**
|
|
21
22
|
* Output connection: The constant value.
|
|
22
23
|
*/
|
|
23
24
|
readonly output: FlowGraphDataConnection<T>;
|
|
24
|
-
constructor(
|
|
25
|
+
constructor(config: IFlowGraphConstantBlockConfiguration<T>);
|
|
25
26
|
_updateOutputs(context: FlowGraphContext): void;
|
|
27
|
+
getClassName(): string;
|
|
26
28
|
}
|
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
import { FlowGraphBlock } from "../../flowGraphBlock.js";
|
|
2
2
|
import { getRichTypeFromValue } from "../../flowGraphRichTypes.js";
|
|
3
|
+
import { RegisterClass } from "../../../Misc/typeStore.js";
|
|
3
4
|
/**
|
|
4
5
|
* @experimental
|
|
5
6
|
* Block that returns a constant value.
|
|
6
7
|
*/
|
|
7
8
|
export class FlowGraphConstantBlock extends FlowGraphBlock {
|
|
8
|
-
constructor(
|
|
9
|
-
super();
|
|
10
|
-
this.
|
|
11
|
-
this.output = this._registerDataOutput("output", getRichTypeFromValue(
|
|
9
|
+
constructor(config) {
|
|
10
|
+
super(config);
|
|
11
|
+
this.config = config;
|
|
12
|
+
this.output = this._registerDataOutput("output", getRichTypeFromValue(config.value));
|
|
12
13
|
}
|
|
13
14
|
_updateOutputs(context) {
|
|
14
|
-
this.output.setValue(this.
|
|
15
|
+
this.output.setValue(this.config.value, context);
|
|
16
|
+
}
|
|
17
|
+
getClassName() {
|
|
18
|
+
return "FGConstantBlock";
|
|
15
19
|
}
|
|
16
20
|
}
|
|
21
|
+
RegisterClass("FGConstantBlock", FlowGraphConstantBlock);
|
|
17
22
|
//# sourceMappingURL=flowGraphConstantBlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowGraphConstantBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphConstantBlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gCAAsC;AAG/D,OAAO,EAAE,oBAAoB,EAAE,oCAA0C;
|
|
1
|
+
{"version":3,"file":"flowGraphConstantBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphConstantBlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gCAAsC;AAG/D,OAAO,EAAE,oBAAoB,EAAE,oCAA0C;AAEzE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAWxD;;;GAGG;AACH,MAAM,OAAO,sBAA0B,SAAQ,cAAc;IAMzD,YAAmB,MAA+C;QAC9D,KAAK,CAAC,MAAM,CAAC,CAAC;QADC,WAAM,GAAN,MAAM,CAAyC;QAG9D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACzF,CAAC;IAEM,cAAc,CAAC,OAAyB;QAC3C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAEM,YAAY;QACf,OAAO,iBAAiB,CAAC;IAC7B,CAAC;CACJ;AACD,aAAa,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,CAAC","sourcesContent":["import { FlowGraphBlock } from \"core/FlowGraph/flowGraphBlock\";\r\nimport type { FlowGraphContext } from \"core/FlowGraph/flowGraphContext\";\r\nimport type { FlowGraphDataConnection } from \"core/FlowGraph/flowGraphDataConnection\";\r\nimport { getRichTypeFromValue } from \"core/FlowGraph/flowGraphRichTypes\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../flowGraphBlock\";\r\nimport { RegisterClass } from \"../../../Misc/typeStore\";\r\n/**\r\n * @experimental\r\n * Configuration for a constant block.\r\n */\r\nexport interface IFlowGraphConstantBlockConfiguration<T> extends IFlowGraphBlockConfiguration {\r\n /**\r\n * The value of the constant.\r\n */\r\n value: T;\r\n}\r\n/**\r\n * @experimental\r\n * Block that returns a constant value.\r\n */\r\nexport class FlowGraphConstantBlock<T> extends FlowGraphBlock {\r\n /**\r\n * Output connection: The constant value.\r\n */\r\n public readonly output: FlowGraphDataConnection<T>;\r\n\r\n constructor(public config: IFlowGraphConstantBlockConfiguration<T>) {\r\n super(config);\r\n\r\n this.output = this._registerDataOutput(\"output\", getRichTypeFromValue(config.value));\r\n }\r\n\r\n public _updateOutputs(context: FlowGraphContext): void {\r\n this.output.setValue(this.config.value, context);\r\n }\r\n\r\n public getClassName(): string {\r\n return \"FGConstantBlock\";\r\n }\r\n}\r\nRegisterClass(\"FGConstantBlock\", FlowGraphConstantBlock);\r\n"]}
|
|
@@ -2,13 +2,16 @@ import type { FlowGraphContext } from "../../flowGraphContext";
|
|
|
2
2
|
import { FlowGraphBlock } from "../../flowGraphBlock";
|
|
3
3
|
import type { FlowGraphDataConnection } from "../../flowGraphDataConnection";
|
|
4
4
|
import type { RichType } from "../../flowGraphRichTypes";
|
|
5
|
+
import type { IFlowGraphBlockConfiguration } from "../../flowGraphBlock";
|
|
5
6
|
/**
|
|
6
7
|
* @experimental
|
|
7
8
|
* Block that outputs a value of type ResultT, resulting of an operation with no inputs.
|
|
8
9
|
*/
|
|
9
10
|
export declare class FlowGraphConstantOperationBlock<ResultT> extends FlowGraphBlock {
|
|
10
11
|
private _operation;
|
|
12
|
+
private _className;
|
|
11
13
|
output: FlowGraphDataConnection<ResultT>;
|
|
12
|
-
constructor(richType: RichType<ResultT>, _operation: () => ResultT);
|
|
14
|
+
constructor(richType: RichType<ResultT>, _operation: () => ResultT, _className: string, config?: IFlowGraphBlockConfiguration);
|
|
13
15
|
_updateOutputs(context: FlowGraphContext): void;
|
|
16
|
+
getClassName(): string;
|
|
14
17
|
}
|
|
@@ -4,13 +4,17 @@ import { FlowGraphBlock } from "../../flowGraphBlock.js";
|
|
|
4
4
|
* Block that outputs a value of type ResultT, resulting of an operation with no inputs.
|
|
5
5
|
*/
|
|
6
6
|
export class FlowGraphConstantOperationBlock extends FlowGraphBlock {
|
|
7
|
-
constructor(richType, _operation) {
|
|
8
|
-
super();
|
|
7
|
+
constructor(richType, _operation, _className, config) {
|
|
8
|
+
super(config);
|
|
9
9
|
this._operation = _operation;
|
|
10
|
+
this._className = _className;
|
|
10
11
|
this.output = this._registerDataOutput("output", richType);
|
|
11
12
|
}
|
|
12
13
|
_updateOutputs(context) {
|
|
13
14
|
this.output.setValue(this._operation(), context);
|
|
14
15
|
}
|
|
16
|
+
getClassName() {
|
|
17
|
+
return this._className;
|
|
18
|
+
}
|
|
15
19
|
}
|
|
16
20
|
//# sourceMappingURL=flowGraphConstantOperationBlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowGraphConstantOperationBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAItD;;;GAGG;AACH,MAAM,OAAO,+BAAyC,SAAQ,cAAc;IAGxE,YAAY,QAA2B,EAAU,UAAyB;
|
|
1
|
+
{"version":3,"file":"flowGraphConstantOperationBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAItD;;;GAGG;AACH,MAAM,OAAO,+BAAyC,SAAQ,cAAc;IAGxE,YAAY,QAA2B,EAAU,UAAyB,EAAU,UAAkB,EAAE,MAAqC;QACzI,KAAK,CAAC,MAAM,CAAC,CAAC;QAD+B,eAAU,GAAV,UAAU,CAAe;QAAU,eAAU,GAAV,UAAU,CAAQ;QAElG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAEM,cAAc,CAAC,OAAyB;QAC3C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAEM,YAAY;QACf,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;CACJ","sourcesContent":["import type { FlowGraphContext } from \"../../flowGraphContext\";\r\nimport { FlowGraphBlock } from \"../../flowGraphBlock\";\r\nimport type { FlowGraphDataConnection } from \"../../flowGraphDataConnection\";\r\nimport type { RichType } from \"../../flowGraphRichTypes\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../flowGraphBlock\";\r\n/**\r\n * @experimental\r\n * Block that outputs a value of type ResultT, resulting of an operation with no inputs.\r\n */\r\nexport class FlowGraphConstantOperationBlock<ResultT> extends FlowGraphBlock {\r\n public output: FlowGraphDataConnection<ResultT>;\r\n\r\n constructor(richType: RichType<ResultT>, private _operation: () => ResultT, private _className: string, config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n this.output = this._registerDataOutput(\"output\", richType);\r\n }\r\n\r\n public _updateOutputs(context: FlowGraphContext): void {\r\n this.output.setValue(this._operation(), context);\r\n }\r\n\r\n public getClassName(): string {\r\n return this._className;\r\n }\r\n}\r\n"]}
|