three-stdlib 2.22.10 → 2.23.1
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/dist/_polyfill/CompressedArrayTexture.cjs +12 -0
- package/dist/_polyfill/CompressedArrayTexture.js +6 -6
- package/dist/_polyfill/Data3DTexture.cjs +17 -0
- package/dist/_polyfill/Data3DTexture.js +8 -8
- package/dist/animation/{AnimationClipCreator.mjs → AnimationClipCreator.cjs} +18 -18
- package/dist/animation/AnimationClipCreator.js +18 -18
- package/dist/animation/{CCDIKSolver.mjs → CCDIKSolver.cjs} +32 -32
- package/dist/animation/CCDIKSolver.js +32 -32
- package/dist/animation/{MMDAnimationHelper.mjs → MMDAnimationHelper.cjs} +17 -17
- package/dist/animation/MMDAnimationHelper.js +17 -17
- package/dist/animation/{MMDPhysics.mjs → MMDPhysics.cjs} +25 -25
- package/dist/animation/MMDPhysics.js +25 -25
- package/dist/cameras/{CinematicCamera.mjs → CinematicCamera.cjs} +17 -17
- package/dist/cameras/CinematicCamera.js +17 -17
- package/dist/controls/{ArcballControls.mjs → ArcballControls.cjs} +102 -102
- package/dist/controls/ArcballControls.js +102 -102
- package/dist/controls/{DeviceOrientationControls.mjs → DeviceOrientationControls.cjs} +14 -14
- package/dist/controls/DeviceOrientationControls.js +14 -14
- package/dist/controls/{DragControls.mjs → DragControls.cjs} +12 -12
- package/dist/controls/DragControls.js +12 -12
- package/dist/controls/{FirstPersonControls.mjs → FirstPersonControls.cjs} +16 -16
- package/dist/controls/FirstPersonControls.js +16 -16
- package/dist/controls/{FlyControls.mjs → FlyControls.cjs} +10 -10
- package/dist/controls/FlyControls.js +10 -10
- package/dist/controls/{OrbitControls.mjs → OrbitControls.cjs} +52 -54
- package/dist/controls/OrbitControls.d.ts +4 -4
- package/dist/controls/OrbitControls.js +52 -54
- package/dist/controls/{PointerLockControls.mjs → PointerLockControls.cjs} +8 -8
- package/dist/controls/PointerLockControls.js +8 -8
- package/dist/controls/{TrackballControls.mjs → TrackballControls.cjs} +32 -32
- package/dist/controls/TrackballControls.d.ts +2 -2
- package/dist/controls/TrackballControls.js +32 -32
- package/dist/controls/{TransformControls.mjs → TransformControls.cjs} +169 -169
- package/dist/controls/TransformControls.js +169 -169
- package/dist/controls/experimental/{CameraControls.mjs → CameraControls.cjs} +59 -59
- package/dist/controls/experimental/CameraControls.js +59 -59
- package/dist/csm/{CSM.mjs → CSM.cjs} +17 -17
- package/dist/csm/CSM.js +17 -17
- package/dist/csm/{CSMFrustum.mjs → CSMFrustum.cjs} +7 -7
- package/dist/csm/CSMFrustum.js +7 -7
- package/dist/csm/{CSMHelper.mjs → CSMHelper.cjs} +14 -14
- package/dist/csm/CSMHelper.js +14 -14
- package/dist/csm/{CSMShader.mjs → CSMShader.cjs} +5 -5
- package/dist/csm/CSMShader.js +5 -5
- package/dist/curves/{CurveExtras.mjs → CurveExtras.cjs} +45 -45
- package/dist/curves/CurveExtras.js +45 -45
- package/dist/curves/{NURBSCurve.mjs → NURBSCurve.cjs} +11 -11
- package/dist/curves/NURBSCurve.js +11 -11
- package/dist/curves/{NURBSSurface.mjs → NURBSSurface.cjs} +7 -7
- package/dist/curves/NURBSSurface.js +7 -7
- package/dist/curves/{NURBSUtils.mjs → NURBSUtils.cjs} +17 -17
- package/dist/curves/NURBSUtils.js +17 -17
- package/dist/deprecated/{Geometry.mjs → Geometry.cjs} +51 -51
- package/dist/deprecated/Geometry.js +51 -51
- package/dist/effects/{AnaglyphEffect.mjs → AnaglyphEffect.cjs} +14 -14
- package/dist/effects/AnaglyphEffect.js +14 -14
- package/dist/effects/{AsciiEffect.mjs → AsciiEffect.cjs} +3 -3
- package/dist/effects/AsciiEffect.js +3 -3
- package/dist/effects/{OutlineEffect.mjs → OutlineEffect.cjs} +8 -8
- package/dist/effects/OutlineEffect.js +8 -8
- package/dist/effects/{ParallaxBarrierEffect.mjs → ParallaxBarrierEffect.cjs} +12 -12
- package/dist/effects/ParallaxBarrierEffect.js +12 -12
- package/dist/effects/{PeppersGhostEffect.mjs → PeppersGhostEffect.cjs} +11 -11
- package/dist/effects/PeppersGhostEffect.js +11 -11
- package/dist/effects/{StereoEffect.mjs → StereoEffect.cjs} +6 -6
- package/dist/effects/StereoEffect.js +6 -6
- package/dist/environments/RoomEnvironment.cjs +95 -0
- package/dist/environments/RoomEnvironment.js +23 -40
- package/dist/exporters/{ColladaExporter.mjs → ColladaExporter.cjs} +16 -16
- package/dist/exporters/ColladaExporter.js +16 -16
- package/dist/exporters/{DRACOExporter.mjs → DRACOExporter.cjs} +8 -8
- package/dist/exporters/DRACOExporter.js +8 -8
- package/dist/exporters/{GLTFExporter.mjs → GLTFExporter.cjs} +52 -49
- package/dist/exporters/GLTFExporter.js +52 -49
- package/dist/exporters/{MMDExporter.mjs → MMDExporter.cjs} +10 -10
- package/dist/exporters/MMDExporter.js +10 -10
- package/dist/exporters/{OBJExporter.mjs → OBJExporter.cjs} +13 -13
- package/dist/exporters/OBJExporter.js +13 -13
- package/dist/exporters/{PLYExporter.mjs → PLYExporter.cjs} +8 -8
- package/dist/exporters/PLYExporter.js +8 -8
- package/dist/exporters/{STLExporter.mjs → STLExporter.cjs} +12 -12
- package/dist/exporters/STLExporter.js +12 -12
- package/dist/exporters/{USDZExporter.mjs → USDZExporter.cjs} +10 -10
- package/dist/exporters/USDZExporter.js +10 -10
- package/dist/geometries/{BoxLineGeometry.mjs → BoxLineGeometry.cjs} +6 -6
- package/dist/geometries/BoxLineGeometry.js +6 -6
- package/dist/geometries/ConvexGeometry.cjs +26 -0
- package/dist/geometries/ConvexGeometry.js +9 -9
- package/dist/geometries/{DecalGeometry.mjs → DecalGeometry.cjs} +16 -16
- package/dist/geometries/DecalGeometry.js +16 -16
- package/dist/geometries/{LightningStrike.mjs → LightningStrike.cjs} +45 -45
- package/dist/geometries/LightningStrike.js +45 -45
- package/dist/geometries/{ParametricGeometries.mjs → ParametricGeometries.cjs} +11 -11
- package/dist/geometries/ParametricGeometries.js +11 -11
- package/dist/geometries/{ParametricGeometry.mjs → ParametricGeometry.cjs} +11 -11
- package/dist/geometries/ParametricGeometry.js +11 -11
- package/dist/geometries/{RoundedBoxGeometry.mjs → RoundedBoxGeometry.cjs} +10 -10
- package/dist/geometries/RoundedBoxGeometry.js +10 -10
- package/dist/geometries/{TeapotGeometry.mjs → TeapotGeometry.cjs} +21 -21
- package/dist/geometries/TeapotGeometry.js +21 -21
- package/dist/geometries/{TextGeometry.mjs → TextGeometry.cjs} +6 -6
- package/dist/geometries/TextGeometry.js +6 -6
- package/dist/helpers/{LightProbeHelper.mjs → LightProbeHelper.cjs} +7 -7
- package/dist/helpers/LightProbeHelper.js +7 -7
- package/dist/helpers/{PositionalAudioHelper.mjs → PositionalAudioHelper.cjs} +11 -11
- package/dist/helpers/PositionalAudioHelper.js +11 -11
- package/dist/helpers/{RectAreaLightHelper.mjs → RectAreaLightHelper.cjs} +11 -11
- package/dist/helpers/RectAreaLightHelper.js +11 -11
- package/dist/helpers/{VertexNormalsHelper.mjs → VertexNormalsHelper.cjs} +11 -11
- package/dist/helpers/VertexNormalsHelper.js +11 -11
- package/dist/helpers/{VertexTangentsHelper.mjs → VertexTangentsHelper.cjs} +10 -10
- package/dist/helpers/VertexTangentsHelper.js +10 -10
- package/dist/index.cjs +613 -0
- package/dist/index.js +613 -613
- package/dist/interactive/{HTMLMesh.mjs → HTMLMesh.cjs} +11 -11
- package/dist/interactive/HTMLMesh.js +11 -11
- package/dist/interactive/{InteractiveGroup.mjs → InteractiveGroup.cjs} +8 -8
- package/dist/interactive/InteractiveGroup.js +8 -8
- package/dist/interactive/{SelectionBox.mjs → SelectionBox.cjs} +21 -21
- package/dist/interactive/SelectionBox.js +21 -21
- package/dist/interactive/{SelectionHelper.mjs → SelectionHelper.cjs} +7 -7
- package/dist/interactive/SelectionHelper.js +7 -7
- package/dist/libs/{MeshoptDecoder.mjs → MeshoptDecoder.cjs} +3 -3
- package/dist/libs/MeshoptDecoder.js +3 -3
- package/dist/libs/{MotionControllers.mjs → MotionControllers.cjs} +6 -6
- package/dist/libs/MotionControllers.js +6 -6
- package/dist/lights/{LightProbeGenerator.mjs → LightProbeGenerator.cjs} +16 -16
- package/dist/lights/LightProbeGenerator.js +16 -16
- package/dist/lights/{RectAreaLightUniformsLib.mjs → RectAreaLightUniformsLib.cjs} +42 -42
- package/dist/lights/RectAreaLightUniformsLib.js +42 -42
- package/dist/lines/Line2.cjs +13 -0
- package/dist/lines/Line2.js +8 -8
- package/dist/lines/{LineGeometry.mjs → LineGeometry.cjs} +5 -5
- package/dist/lines/LineGeometry.js +5 -5
- package/dist/lines/{LineMaterial.mjs → LineMaterial.cjs} +10 -10
- package/dist/lines/LineMaterial.js +10 -10
- package/dist/lines/{LineSegments2.mjs → LineSegments2.cjs} +28 -28
- package/dist/lines/LineSegments2.js +28 -28
- package/dist/lines/{LineSegmentsGeometry.mjs → LineSegmentsGeometry.cjs} +18 -18
- package/dist/lines/LineSegmentsGeometry.js +18 -18
- package/dist/lines/Wireframe.cjs +32 -0
- package/dist/lines/Wireframe.js +13 -13
- package/dist/lines/WireframeGeometry2.cjs +13 -0
- package/dist/lines/WireframeGeometry2.js +7 -7
- package/dist/loaders/{3DMLoader.mjs → 3DMLoader.cjs} +37 -37
- package/dist/loaders/3DMLoader.js +37 -37
- package/dist/loaders/{3MFLoader.mjs → 3MFLoader.cjs} +53 -53
- package/dist/loaders/3MFLoader.js +53 -53
- package/dist/loaders/{AMFLoader.mjs → AMFLoader.cjs} +19 -19
- package/dist/loaders/AMFLoader.js +19 -19
- package/dist/loaders/{AssimpLoader.mjs → AssimpLoader.cjs} +41 -41
- package/dist/loaders/AssimpLoader.js +41 -41
- package/dist/loaders/{BVHLoader.mjs → BVHLoader.cjs} +18 -18
- package/dist/loaders/BVHLoader.js +18 -18
- package/dist/loaders/{BasisTextureLoader.mjs → BasisTextureLoader.cjs} +22 -22
- package/dist/loaders/BasisTextureLoader.js +22 -22
- package/dist/loaders/{ColladaLoader.mjs → ColladaLoader.cjs} +76 -76
- package/dist/loaders/ColladaLoader.js +76 -76
- package/dist/loaders/{DDSLoader.mjs → DDSLoader.cjs} +10 -10
- package/dist/loaders/DDSLoader.js +10 -10
- package/dist/loaders/{DRACOLoader.mjs → DRACOLoader.cjs} +12 -12
- package/dist/loaders/DRACOLoader.js +12 -12
- package/dist/loaders/{EXRLoader.mjs → EXRLoader.cjs} +23 -23
- package/dist/loaders/EXRLoader.js +23 -23
- package/dist/loaders/{FBXLoader.mjs → FBXLoader.cjs} +116 -116
- package/dist/loaders/FBXLoader.js +116 -116
- package/dist/loaders/{FontLoader.mjs → FontLoader.cjs} +9 -9
- package/dist/loaders/FontLoader.js +9 -9
- package/dist/loaders/{GCodeLoader.mjs → GCodeLoader.cjs} +13 -13
- package/dist/loaders/GCodeLoader.js +13 -13
- package/dist/loaders/{GLTFLoader.mjs → GLTFLoader.cjs} +112 -112
- package/dist/loaders/GLTFLoader.js +112 -112
- package/dist/loaders/{HDRCubeTextureLoader.mjs → HDRCubeTextureLoader.cjs} +15 -15
- package/dist/loaders/HDRCubeTextureLoader.js +15 -15
- package/dist/loaders/{KMZLoader.mjs → KMZLoader.cjs} +13 -13
- package/dist/loaders/KMZLoader.js +13 -13
- package/dist/loaders/{KTX2Loader.mjs → KTX2Loader.cjs} +65 -65
- package/dist/loaders/KTX2Loader.js +65 -65
- package/dist/loaders/{KTXLoader.mjs → KTXLoader.cjs} +5 -5
- package/dist/loaders/KTXLoader.js +5 -5
- package/dist/loaders/{LDrawLoader.mjs → LDrawLoader.cjs} +39 -39
- package/dist/loaders/LDrawLoader.js +39 -39
- package/dist/loaders/{LUT3dlLoader.mjs → LUT3dlLoader.cjs} +22 -22
- package/dist/loaders/LUT3dlLoader.js +22 -22
- package/dist/loaders/{LUTCubeLoader.mjs → LUTCubeLoader.cjs} +22 -22
- package/dist/loaders/LUTCubeLoader.js +22 -22
- package/dist/loaders/{LWOLoader.mjs → LWOLoader.cjs} +42 -42
- package/dist/loaders/LWOLoader.js +42 -42
- package/dist/loaders/{LottieLoader.mjs → LottieLoader.cjs} +8 -8
- package/dist/loaders/LottieLoader.js +8 -8
- package/dist/loaders/{MD2Loader.mjs → MD2Loader.cjs} +15 -15
- package/dist/loaders/MD2Loader.js +15 -15
- package/dist/loaders/{MDDLoader.mjs → MDDLoader.cjs} +9 -9
- package/dist/loaders/MDDLoader.js +9 -9
- package/dist/loaders/{MMDLoader.mjs → MMDLoader.cjs} +59 -59
- package/dist/loaders/MMDLoader.js +59 -59
- package/dist/loaders/{MTLLoader.mjs → MTLLoader.cjs} +17 -17
- package/dist/loaders/MTLLoader.js +17 -17
- package/dist/loaders/{NRRDLoader.mjs → NRRDLoader.cjs} +17 -17
- package/dist/loaders/NRRDLoader.js +17 -17
- package/dist/loaders/{OBJLoader.mjs → OBJLoader.cjs} +37 -37
- package/dist/loaders/OBJLoader.js +37 -37
- package/dist/loaders/{PCDLoader.mjs → PCDLoader.cjs} +13 -13
- package/dist/loaders/PCDLoader.js +13 -13
- package/dist/loaders/{PDBLoader.mjs → PDBLoader.cjs} +11 -11
- package/dist/loaders/PDBLoader.js +11 -11
- package/dist/loaders/{PLYLoader.mjs → PLYLoader.cjs} +13 -13
- package/dist/loaders/PLYLoader.js +13 -13
- package/dist/loaders/{PRWMLoader.mjs → PRWMLoader.cjs} +9 -9
- package/dist/loaders/PRWMLoader.js +9 -9
- package/dist/loaders/{PVRLoader.mjs → PVRLoader.cjs} +11 -11
- package/dist/loaders/PVRLoader.js +11 -11
- package/dist/loaders/{RGBELoader.mjs → RGBELoader.cjs} +18 -18
- package/dist/loaders/RGBELoader.js +18 -18
- package/dist/loaders/{RGBMLoader.mjs → RGBMLoader.cjs} +16 -16
- package/dist/loaders/RGBMLoader.js +16 -16
- package/dist/loaders/{STLLoader.mjs → STLLoader.cjs} +15 -15
- package/dist/loaders/STLLoader.js +15 -15
- package/dist/loaders/{SVGLoader.mjs → SVGLoader.cjs} +55 -55
- package/dist/loaders/SVGLoader.js +55 -55
- package/dist/loaders/{TDSLoader.mjs → TDSLoader.cjs} +20 -20
- package/dist/loaders/TDSLoader.js +20 -20
- package/dist/loaders/{TGALoader.mjs → TGALoader.cjs} +6 -6
- package/dist/loaders/TGALoader.js +6 -6
- package/dist/loaders/{TTFLoader.mjs → TTFLoader.cjs} +9 -9
- package/dist/loaders/TTFLoader.js +9 -9
- package/dist/loaders/{TiltLoader.mjs → TiltLoader.cjs} +26 -26
- package/dist/loaders/TiltLoader.js +26 -26
- package/dist/loaders/{VOXLoader.mjs → VOXLoader.cjs} +18 -18
- package/dist/loaders/VOXLoader.js +18 -18
- package/dist/loaders/{VRMLLoader.mjs → VRMLLoader.cjs} +125 -125
- package/dist/loaders/VRMLLoader.js +125 -125
- package/dist/loaders/{VRMLoader.mjs → VRMLoader.cjs} +7 -7
- package/dist/loaders/VRMLoader.js +7 -7
- package/dist/loaders/{VTKLoader.mjs → VTKLoader.cjs} +24 -24
- package/dist/loaders/VTKLoader.js +24 -24
- package/dist/loaders/{XLoader.mjs → XLoader.cjs} +42 -42
- package/dist/loaders/XLoader.js +42 -42
- package/dist/loaders/{XYZLoader.mjs → XYZLoader.cjs} +9 -9
- package/dist/loaders/XYZLoader.js +9 -9
- package/dist/loaders/lwo/{IFFParser.mjs → IFFParser.cjs} +7 -7
- package/dist/loaders/lwo/IFFParser.js +7 -7
- package/dist/loaders/lwo/{LWO2Parser.mjs → LWO2Parser.cjs} +3 -3
- package/dist/loaders/lwo/LWO2Parser.js +3 -3
- package/dist/loaders/lwo/{LWO3Parser.mjs → LWO3Parser.cjs} +3 -3
- package/dist/loaders/lwo/LWO3Parser.js +3 -3
- package/dist/math/{Capsule.mjs → Capsule.cjs} +8 -8
- package/dist/math/Capsule.js +8 -8
- package/dist/math/{ColorConverter.mjs → ColorConverter.cjs} +7 -7
- package/dist/math/ColorConverter.js +7 -7
- package/dist/math/{ConvexHull.mjs → ConvexHull.cjs} +18 -18
- package/dist/math/ConvexHull.js +18 -18
- package/dist/math/{ImprovedNoise.mjs → ImprovedNoise.cjs} +3 -3
- package/dist/math/ImprovedNoise.js +3 -3
- package/dist/math/{Lut.mjs → Lut.cjs} +14 -14
- package/dist/math/Lut.js +14 -14
- package/dist/math/{MeshSurfaceSampler.mjs → MeshSurfaceSampler.cjs} +6 -6
- package/dist/math/MeshSurfaceSampler.js +6 -6
- package/dist/math/{OBB.mjs → OBB.cjs} +21 -21
- package/dist/math/OBB.js +21 -21
- package/dist/math/{Octree.mjs → Octree.cjs} +19 -19
- package/dist/math/Octree.js +19 -19
- package/dist/math/{SimplexNoise.mjs → SimplexNoise.cjs} +3 -3
- package/dist/math/SimplexNoise.js +3 -3
- package/dist/misc/{ConvexObjectBreaker.mjs → ConvexObjectBreaker.cjs} +25 -25
- package/dist/misc/ConvexObjectBreaker.js +25 -25
- package/dist/misc/{GPUComputationRenderer.mjs → GPUComputationRenderer.cjs} +19 -19
- package/dist/misc/GPUComputationRenderer.js +19 -19
- package/dist/misc/{Gyroscope.mjs → Gyroscope.cjs} +11 -11
- package/dist/misc/Gyroscope.js +11 -11
- package/dist/misc/{MD2Character.mjs → MD2Character.cjs} +14 -14
- package/dist/misc/MD2Character.js +14 -14
- package/dist/misc/{MD2CharacterComplex.mjs → MD2CharacterComplex.cjs} +20 -20
- package/dist/misc/MD2CharacterComplex.js +20 -20
- package/dist/misc/{MorphAnimMesh.mjs → MorphAnimMesh.cjs} +8 -8
- package/dist/misc/MorphAnimMesh.js +8 -8
- package/dist/misc/{MorphBlendMesh.mjs → MorphBlendMesh.cjs} +6 -6
- package/dist/misc/MorphBlendMesh.js +6 -6
- package/dist/misc/{ProgressiveLightmap.mjs → ProgressiveLightmap.cjs} +17 -17
- package/dist/misc/ProgressiveLightmap.js +17 -17
- package/dist/misc/{RollerCoaster.mjs → RollerCoaster.cjs} +77 -77
- package/dist/misc/RollerCoaster.js +77 -77
- package/dist/misc/{Timer.mjs → Timer.cjs} +3 -3
- package/dist/misc/Timer.js +3 -3
- package/dist/misc/{TubePainter.mjs → TubePainter.cjs} +24 -24
- package/dist/misc/TubePainter.js +24 -24
- package/dist/misc/{Volume.mjs → Volume.cjs} +18 -18
- package/dist/misc/Volume.js +18 -18
- package/dist/misc/{VolumeSlice.mjs → VolumeSlice.cjs} +10 -10
- package/dist/misc/VolumeSlice.js +10 -10
- package/dist/misc/{WebGL.mjs → WebGL.cjs} +7 -7
- package/dist/misc/WebGL.js +7 -7
- package/dist/modifiers/{CurveModifier.mjs → CurveModifier.cjs} +17 -17
- package/dist/modifiers/CurveModifier.js +17 -17
- package/dist/modifiers/{EdgeSplitModifier.mjs → EdgeSplitModifier.cjs} +12 -13
- package/dist/modifiers/EdgeSplitModifier.js +13 -12
- package/dist/modifiers/{SimplifyModifier.mjs → SimplifyModifier.cjs} +12 -12
- package/dist/modifiers/SimplifyModifier.js +12 -12
- package/dist/modifiers/{TessellateModifier.mjs → TessellateModifier.cjs} +30 -30
- package/dist/modifiers/TessellateModifier.js +30 -30
- package/dist/objects/{GroundProjectedEnv.mjs → GroundProjectedEnv.cjs} +8 -8
- package/dist/objects/GroundProjectedEnv.js +8 -8
- package/dist/objects/{Lensflare.mjs → Lensflare.cjs} +37 -37
- package/dist/objects/Lensflare.js +37 -37
- package/dist/objects/{LightningStorm.mjs → LightningStorm.cjs} +17 -17
- package/dist/objects/LightningStorm.js +17 -17
- package/dist/objects/{MarchingCubes.mjs → MarchingCubes.cjs} +21 -21
- package/dist/objects/MarchingCubes.js +21 -21
- package/dist/objects/{Reflector.mjs → Reflector.cjs} +23 -23
- package/dist/objects/Reflector.js +23 -23
- package/dist/objects/{ReflectorForSSRPass.mjs → ReflectorForSSRPass.cjs} +33 -33
- package/dist/objects/ReflectorForSSRPass.js +33 -33
- package/dist/objects/ReflectorRTT.cjs +10 -0
- package/dist/objects/ReflectorRTT.js +5 -5
- package/dist/objects/{Refractor.mjs → Refractor.cjs} +26 -26
- package/dist/objects/Refractor.js +26 -26
- package/dist/objects/{ShadowMesh.mjs → ShadowMesh.cjs} +9 -9
- package/dist/objects/ShadowMesh.js +9 -9
- package/dist/objects/{Sky.mjs → Sky.cjs} +11 -11
- package/dist/objects/Sky.js +11 -11
- package/dist/objects/{Water.mjs → Water.cjs} +33 -33
- package/dist/objects/Water.js +33 -33
- package/dist/objects/{Water2.mjs → Water2.cjs} +20 -20
- package/dist/objects/Water2.js +20 -20
- package/dist/physics/{AmmoPhysics.mjs → AmmoPhysics.cjs} +3 -3
- package/dist/physics/AmmoPhysics.js +3 -3
- package/dist/postprocessing/{AdaptiveToneMappingPass.mjs → AdaptiveToneMappingPass.cjs} +32 -32
- package/dist/postprocessing/AdaptiveToneMappingPass.js +32 -32
- package/dist/postprocessing/{AfterimagePass.mjs → AfterimagePass.cjs} +21 -21
- package/dist/postprocessing/AfterimagePass.js +21 -21
- package/dist/postprocessing/{BloomPass.mjs → BloomPass.cjs} +20 -20
- package/dist/postprocessing/BloomPass.js +20 -20
- package/dist/postprocessing/{BokehPass.mjs → BokehPass.cjs} +19 -19
- package/dist/postprocessing/BokehPass.js +19 -19
- package/dist/postprocessing/{ClearPass.mjs → ClearPass.cjs} +7 -7
- package/dist/postprocessing/ClearPass.js +7 -7
- package/dist/postprocessing/{CubeTexturePass.mjs → CubeTexturePass.cjs} +14 -14
- package/dist/postprocessing/CubeTexturePass.js +14 -14
- package/dist/postprocessing/{DotScreenPass.mjs → DotScreenPass.cjs} +12 -12
- package/dist/postprocessing/DotScreenPass.js +12 -12
- package/dist/postprocessing/{EffectComposer.mjs → EffectComposer.cjs} +20 -20
- package/dist/postprocessing/EffectComposer.js +20 -20
- package/dist/postprocessing/{FilmPass.mjs → FilmPass.cjs} +12 -12
- package/dist/postprocessing/FilmPass.js +12 -12
- package/dist/postprocessing/{GlitchPass.mjs → GlitchPass.cjs} +26 -26
- package/dist/postprocessing/GlitchPass.js +26 -26
- package/dist/postprocessing/{HalftonePass.mjs → HalftonePass.cjs} +13 -13
- package/dist/postprocessing/HalftonePass.js +13 -13
- package/dist/postprocessing/{LUTPass.mjs → LUTPass.cjs} +5 -5
- package/dist/postprocessing/LUTPass.js +5 -5
- package/dist/postprocessing/{MaskPass.mjs → MaskPass.cjs} +7 -7
- package/dist/postprocessing/MaskPass.js +7 -7
- package/dist/postprocessing/{OutlinePass.mjs → OutlinePass.cjs} +45 -45
- package/dist/postprocessing/OutlinePass.js +45 -45
- package/dist/postprocessing/{Pass.mjs → Pass.cjs} +8 -8
- package/dist/postprocessing/Pass.js +8 -8
- package/dist/postprocessing/{RenderPass.mjs → RenderPass.cjs} +7 -7
- package/dist/postprocessing/RenderPass.js +7 -7
- package/dist/postprocessing/{RenderPixelatedPass.mjs → RenderPixelatedPass.cjs} +18 -18
- package/dist/postprocessing/RenderPixelatedPass.js +18 -18
- package/dist/postprocessing/{SAOPass.mjs → SAOPass.cjs} +69 -69
- package/dist/postprocessing/SAOPass.js +69 -69
- package/dist/postprocessing/{SMAAPass.mjs → SMAAPass.cjs} +30 -30
- package/dist/postprocessing/SMAAPass.js +30 -30
- package/dist/postprocessing/{SSAARenderPass.mjs → SSAARenderPass.cjs} +19 -19
- package/dist/postprocessing/SSAARenderPass.js +19 -19
- package/dist/postprocessing/{SSAOPass.mjs → SSAOPass.cjs} +63 -63
- package/dist/postprocessing/SSAOPass.js +63 -63
- package/dist/postprocessing/{SSRPass.mjs → SSRPass.cjs} +86 -86
- package/dist/postprocessing/SSRPass.js +86 -86
- package/dist/postprocessing/{SavePass.mjs → SavePass.cjs} +13 -13
- package/dist/postprocessing/SavePass.js +13 -13
- package/dist/postprocessing/{ShaderPass.mjs → ShaderPass.cjs} +10 -10
- package/dist/postprocessing/ShaderPass.js +10 -10
- package/dist/postprocessing/{TAARenderPass.mjs → TAARenderPass.cjs} +8 -8
- package/dist/postprocessing/TAARenderPass.js +8 -8
- package/dist/postprocessing/{TexturePass.mjs → TexturePass.cjs} +11 -11
- package/dist/postprocessing/TexturePass.js +11 -11
- package/dist/postprocessing/{UnrealBloomPass.mjs → UnrealBloomPass.cjs} +36 -36
- package/dist/postprocessing/UnrealBloomPass.js +36 -36
- package/dist/postprocessing/{WaterPass.mjs → WaterPass.cjs} +10 -10
- package/dist/postprocessing/WaterPass.js +10 -10
- package/dist/renderers/{CSS2DRenderer.mjs → CSS2DRenderer.cjs} +12 -12
- package/dist/renderers/CSS2DRenderer.js +12 -12
- package/dist/renderers/{CSS3DRenderer.mjs → CSS3DRenderer.cjs} +12 -12
- package/dist/renderers/CSS3DRenderer.js +12 -12
- package/dist/renderers/{Projector.mjs → Projector.cjs} +21 -21
- package/dist/renderers/Projector.js +21 -21
- package/dist/renderers/{SVGRenderer.mjs → SVGRenderer.cjs} +12 -12
- package/dist/renderers/SVGRenderer.js +12 -12
- package/dist/shaders/{ACESFilmicToneMappingShader.mjs → ACESFilmicToneMappingShader.cjs} +3 -3
- package/dist/shaders/ACESFilmicToneMappingShader.js +3 -3
- package/dist/shaders/{AfterimageShader.mjs → AfterimageShader.cjs} +3 -3
- package/dist/shaders/AfterimageShader.js +3 -3
- package/dist/shaders/{BasicShader.mjs → BasicShader.cjs} +3 -3
- package/dist/shaders/BasicShader.js +3 -3
- package/dist/shaders/{BleachBypassShader.mjs → BleachBypassShader.cjs} +3 -3
- package/dist/shaders/BleachBypassShader.js +3 -3
- package/dist/shaders/{BlendShader.mjs → BlendShader.cjs} +3 -3
- package/dist/shaders/BlendShader.js +3 -3
- package/dist/shaders/{BokehShader.mjs → BokehShader.cjs} +3 -3
- package/dist/shaders/BokehShader.js +3 -3
- package/dist/shaders/{BokehShader2.mjs → BokehShader2.cjs} +6 -6
- package/dist/shaders/BokehShader2.js +6 -6
- package/dist/shaders/{BrightnessContrastShader.mjs → BrightnessContrastShader.cjs} +3 -3
- package/dist/shaders/BrightnessContrastShader.js +3 -3
- package/dist/shaders/{ColorCorrectionShader.mjs → ColorCorrectionShader.cjs} +7 -7
- package/dist/shaders/ColorCorrectionShader.js +7 -7
- package/dist/shaders/{ColorifyShader.mjs → ColorifyShader.cjs} +5 -5
- package/dist/shaders/ColorifyShader.js +5 -5
- package/dist/shaders/{ConvolutionShader.mjs → ConvolutionShader.cjs} +5 -5
- package/dist/shaders/ConvolutionShader.js +5 -5
- package/dist/shaders/{CopyShader.mjs → CopyShader.cjs} +3 -3
- package/dist/shaders/CopyShader.js +3 -3
- package/dist/shaders/{DOFMipMapShader.mjs → DOFMipMapShader.cjs} +3 -3
- package/dist/shaders/DOFMipMapShader.js +3 -3
- package/dist/shaders/{DepthLimitedBlurShader.mjs → DepthLimitedBlurShader.cjs} +7 -7
- package/dist/shaders/DepthLimitedBlurShader.js +7 -7
- package/dist/shaders/{DigitalGlitch.mjs → DigitalGlitch.cjs} +3 -3
- package/dist/shaders/DigitalGlitch.js +3 -3
- package/dist/shaders/{DotScreenShader.mjs → DotScreenShader.cjs} +6 -6
- package/dist/shaders/DotScreenShader.js +6 -6
- package/dist/shaders/{FXAAShader.mjs → FXAAShader.cjs} +5 -5
- package/dist/shaders/FXAAShader.js +5 -5
- package/dist/shaders/{FilmShader.mjs → FilmShader.cjs} +3 -3
- package/dist/shaders/FilmShader.js +3 -3
- package/dist/shaders/{FocusShader.mjs → FocusShader.cjs} +3 -3
- package/dist/shaders/FocusShader.js +3 -3
- package/dist/shaders/{FreiChenShader.mjs → FreiChenShader.cjs} +5 -5
- package/dist/shaders/FreiChenShader.js +5 -5
- package/dist/shaders/{FresnelShader.mjs → FresnelShader.cjs} +3 -3
- package/dist/shaders/FresnelShader.js +3 -3
- package/dist/shaders/{GammaCorrectionShader.mjs → GammaCorrectionShader.cjs} +3 -3
- package/dist/shaders/GammaCorrectionShader.js +3 -3
- package/dist/shaders/{GodRaysShader.mjs → GodRaysShader.cjs} +11 -11
- package/dist/shaders/GodRaysShader.js +11 -11
- package/dist/shaders/{HalftoneShader.mjs → HalftoneShader.cjs} +3 -3
- package/dist/shaders/HalftoneShader.js +3 -3
- package/dist/shaders/{HorizontalBlurShader.mjs → HorizontalBlurShader.cjs} +3 -3
- package/dist/shaders/HorizontalBlurShader.js +3 -3
- package/dist/shaders/{HorizontalTiltShiftShader.mjs → HorizontalTiltShiftShader.cjs} +3 -3
- package/dist/shaders/HorizontalTiltShiftShader.js +3 -3
- package/dist/shaders/{HueSaturationShader.mjs → HueSaturationShader.cjs} +3 -3
- package/dist/shaders/HueSaturationShader.js +3 -3
- package/dist/shaders/{KaleidoShader.mjs → KaleidoShader.cjs} +3 -3
- package/dist/shaders/KaleidoShader.js +3 -3
- package/dist/shaders/{LuminosityHighPassShader.mjs → LuminosityHighPassShader.cjs} +5 -5
- package/dist/shaders/LuminosityHighPassShader.js +5 -5
- package/dist/shaders/{LuminosityShader.mjs → LuminosityShader.cjs} +3 -3
- package/dist/shaders/LuminosityShader.js +3 -3
- package/dist/shaders/{MirrorShader.mjs → MirrorShader.cjs} +3 -3
- package/dist/shaders/MirrorShader.js +3 -3
- package/dist/shaders/{NormalMapShader.mjs → NormalMapShader.cjs} +6 -6
- package/dist/shaders/NormalMapShader.js +6 -6
- package/dist/shaders/{ParallaxShader.mjs → ParallaxShader.cjs} +3 -3
- package/dist/shaders/ParallaxShader.js +3 -3
- package/dist/shaders/{PixelShader.mjs → PixelShader.cjs} +3 -3
- package/dist/shaders/PixelShader.js +3 -3
- package/dist/shaders/{RGBShiftShader.mjs → RGBShiftShader.cjs} +3 -3
- package/dist/shaders/RGBShiftShader.js +3 -3
- package/dist/shaders/{SAOShader.mjs → SAOShader.cjs} +7 -7
- package/dist/shaders/SAOShader.js +7 -7
- package/dist/shaders/{SMAAShader.mjs → SMAAShader.cjs} +9 -9
- package/dist/shaders/SMAAShader.js +9 -9
- package/dist/shaders/{SSAOShader.mjs → SSAOShader.cjs} +10 -10
- package/dist/shaders/SSAOShader.js +10 -10
- package/dist/shaders/{SSRShader.mjs → SSRShader.cjs} +10 -10
- package/dist/shaders/SSRShader.js +10 -10
- package/dist/shaders/{SepiaShader.mjs → SepiaShader.cjs} +3 -3
- package/dist/shaders/SepiaShader.js +3 -3
- package/dist/shaders/{SobelOperatorShader.mjs → SobelOperatorShader.cjs} +5 -5
- package/dist/shaders/SobelOperatorShader.js +5 -5
- package/dist/shaders/{SubsurfaceScatteringShader.mjs → SubsurfaceScatteringShader.cjs} +13 -13
- package/dist/shaders/SubsurfaceScatteringShader.js +13 -13
- package/dist/shaders/{TechnicolorShader.mjs → TechnicolorShader.cjs} +3 -3
- package/dist/shaders/TechnicolorShader.js +3 -3
- package/dist/shaders/{ToneMapShader.mjs → ToneMapShader.cjs} +3 -3
- package/dist/shaders/ToneMapShader.js +3 -3
- package/dist/shaders/{ToonShader.mjs → ToonShader.cjs} +32 -32
- package/dist/shaders/ToonShader.js +32 -32
- package/dist/shaders/{TriangleBlurShader.mjs → TriangleBlurShader.cjs} +5 -5
- package/dist/shaders/TriangleBlurShader.js +5 -5
- package/dist/shaders/{UnpackDepthRGBAShader.mjs → UnpackDepthRGBAShader.cjs} +3 -3
- package/dist/shaders/UnpackDepthRGBAShader.js +3 -3
- package/dist/shaders/{VerticalBlurShader.mjs → VerticalBlurShader.cjs} +3 -3
- package/dist/shaders/VerticalBlurShader.js +3 -3
- package/dist/shaders/{VerticalTiltShiftShader.mjs → VerticalTiltShiftShader.cjs} +3 -3
- package/dist/shaders/VerticalTiltShiftShader.js +3 -3
- package/dist/shaders/{VignetteShader.mjs → VignetteShader.cjs} +3 -3
- package/dist/shaders/VignetteShader.js +3 -3
- package/dist/shaders/{VolumeShader.mjs → VolumeShader.cjs} +6 -6
- package/dist/shaders/VolumeShader.js +6 -6
- package/dist/shaders/{WaterRefractionShader.mjs → WaterRefractionShader.cjs} +3 -3
- package/dist/shaders/WaterRefractionShader.js +3 -3
- package/dist/shaders/types.cjs +1 -0
- package/dist/shaders/types.js +1 -1
- package/dist/textures/{FlakesTexture.mjs → FlakesTexture.cjs} +3 -3
- package/dist/textures/FlakesTexture.js +3 -3
- package/dist/types/Loader.cjs +26 -0
- package/dist/types/Loader.js +5 -22
- package/dist/types/helpers.cjs +4 -0
- package/dist/types/helpers.js +3 -3
- package/dist/utils/{BufferGeometryUtils.mjs → BufferGeometryUtils.cjs} +41 -41
- package/dist/utils/BufferGeometryUtils.js +41 -41
- package/dist/utils/{GeometryCompressionUtils.mjs → GeometryCompressionUtils.cjs} +94 -94
- package/dist/utils/GeometryCompressionUtils.js +94 -94
- package/dist/utils/{GeometryUtils.mjs → GeometryUtils.cjs} +18 -18
- package/dist/utils/GeometryUtils.js +18 -18
- package/dist/utils/{RoughnessMipmapper.mjs → RoughnessMipmapper.cjs} +13 -13
- package/dist/utils/RoughnessMipmapper.js +13 -13
- package/dist/utils/{SceneUtils.mjs → SceneUtils.cjs} +8 -8
- package/dist/utils/SceneUtils.js +8 -8
- package/dist/utils/{ShadowMapViewer.mjs → ShadowMapViewer.cjs} +18 -18
- package/dist/utils/ShadowMapViewer.js +18 -18
- package/dist/utils/{SkeletonUtils.mjs → SkeletonUtils.cjs} +10 -10
- package/dist/utils/SkeletonUtils.js +10 -10
- package/dist/utils/{UVsDebug.mjs → UVsDebug.cjs} +7 -7
- package/dist/utils/UVsDebug.js +7 -7
- package/dist/utils/{WorkerPool.mjs → WorkerPool.cjs} +3 -3
- package/dist/utils/WorkerPool.js +3 -3
- package/dist/webxr/{ARButton.mjs → ARButton.cjs} +3 -3
- package/dist/webxr/ARButton.js +3 -3
- package/dist/webxr/{OculusHandModel.mjs → OculusHandModel.cjs} +9 -9
- package/dist/webxr/OculusHandModel.js +9 -9
- package/dist/webxr/{OculusHandPointerModel.mjs → OculusHandPointerModel.cjs} +41 -24
- package/dist/webxr/OculusHandPointerModel.js +24 -41
- package/dist/webxr/Text2D.cjs +48 -0
- package/dist/webxr/Text2D.js +9 -26
- package/dist/webxr/{VRButton.mjs → VRButton.cjs} +3 -3
- package/dist/webxr/VRButton.js +3 -3
- package/dist/webxr/{XRControllerModelFactory.mjs → XRControllerModelFactory.cjs} +18 -18
- package/dist/webxr/XRControllerModelFactory.js +18 -18
- package/dist/webxr/{XREstimatedLight.mjs → XREstimatedLight.cjs} +8 -8
- package/dist/webxr/XREstimatedLight.js +8 -8
- package/dist/webxr/{XRHandMeshModel.mjs → XRHandMeshModel.cjs} +5 -5
- package/dist/webxr/XRHandMeshModel.js +5 -5
- package/dist/webxr/{XRHandModelFactory.mjs → XRHandModelFactory.cjs} +10 -10
- package/dist/webxr/XRHandModelFactory.js +10 -10
- package/dist/webxr/{XRHandPrimitiveModel.mjs → XRHandPrimitiveModel.cjs} +11 -11
- package/dist/webxr/XRHandPrimitiveModel.js +11 -11
- package/package.json +3 -3
- package/dist/_polyfill/CompressedArrayTexture.mjs +0 -12
- package/dist/_polyfill/Data3DTexture.mjs +0 -17
- package/dist/environments/RoomEnvironment.mjs +0 -78
- package/dist/geometries/ConvexGeometry.mjs +0 -26
- package/dist/index.mjs +0 -613
- package/dist/lines/Line2.mjs +0 -13
- package/dist/lines/Wireframe.mjs +0 -32
- package/dist/lines/WireframeGeometry2.mjs +0 -13
- package/dist/objects/ReflectorRTT.mjs +0 -10
- package/dist/shaders/types.mjs +0 -1
- package/dist/types/Loader.mjs +0 -9
- package/dist/types/helpers.mjs +0 -4
- package/dist/webxr/Text2D.mjs +0 -31
package/dist/misc/TubePainter.js
CHANGED
|
@@ -1,23 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const THREE = require("three");
|
|
1
|
+
import { BufferAttribute, DynamicDrawUsage, BufferGeometry, MeshStandardMaterial, Mesh, Vector3, Color, Matrix4 } from "three";
|
|
4
2
|
function TubePainter() {
|
|
5
3
|
const BUFFER_SIZE = 1e6 * 3;
|
|
6
|
-
const positions = new
|
|
7
|
-
positions.usage =
|
|
8
|
-
const normals = new
|
|
9
|
-
normals.usage =
|
|
10
|
-
const colors = new
|
|
11
|
-
colors.usage =
|
|
12
|
-
const geometry = new
|
|
4
|
+
const positions = new BufferAttribute(new Float32Array(BUFFER_SIZE), 3);
|
|
5
|
+
positions.usage = DynamicDrawUsage;
|
|
6
|
+
const normals = new BufferAttribute(new Float32Array(BUFFER_SIZE), 3);
|
|
7
|
+
normals.usage = DynamicDrawUsage;
|
|
8
|
+
const colors = new BufferAttribute(new Float32Array(BUFFER_SIZE), 3);
|
|
9
|
+
colors.usage = DynamicDrawUsage;
|
|
10
|
+
const geometry = new BufferGeometry();
|
|
13
11
|
geometry.setAttribute("position", positions);
|
|
14
12
|
geometry.setAttribute("normal", normals);
|
|
15
13
|
geometry.setAttribute("color", colors);
|
|
16
14
|
geometry.drawRange.count = 0;
|
|
17
|
-
const material = new
|
|
15
|
+
const material = new MeshStandardMaterial({
|
|
18
16
|
vertexColors: true
|
|
19
17
|
});
|
|
20
|
-
const mesh = new
|
|
18
|
+
const mesh = new Mesh(geometry, material);
|
|
21
19
|
mesh.frustumCulled = false;
|
|
22
20
|
function getPoints(size2) {
|
|
23
21
|
const PI2 = Math.PI * 2;
|
|
@@ -26,15 +24,15 @@ function TubePainter() {
|
|
|
26
24
|
const radius = 0.01 * size2;
|
|
27
25
|
for (let i = 0; i < sides; i++) {
|
|
28
26
|
const angle = i / sides * PI2;
|
|
29
|
-
array.push(new
|
|
27
|
+
array.push(new Vector3(Math.sin(angle) * radius, Math.cos(angle) * radius, 0));
|
|
30
28
|
}
|
|
31
29
|
return array;
|
|
32
30
|
}
|
|
33
|
-
const vector1 = new
|
|
34
|
-
const vector2 = new
|
|
35
|
-
const vector3 = new
|
|
36
|
-
const vector4 = new
|
|
37
|
-
const color = new
|
|
31
|
+
const vector1 = new Vector3();
|
|
32
|
+
const vector2 = new Vector3();
|
|
33
|
+
const vector3 = new Vector3();
|
|
34
|
+
const vector4 = new Vector3();
|
|
35
|
+
const color = new Color(16777215);
|
|
38
36
|
let size = 1;
|
|
39
37
|
function stroke(position1, position2, matrix12, matrix22) {
|
|
40
38
|
if (position1.distanceToSquared(position2) === 0)
|
|
@@ -74,11 +72,11 @@ function TubePainter() {
|
|
|
74
72
|
}
|
|
75
73
|
geometry.drawRange.count = count2;
|
|
76
74
|
}
|
|
77
|
-
const up = new
|
|
78
|
-
const point1 = new
|
|
79
|
-
const point2 = new
|
|
80
|
-
const matrix1 = new
|
|
81
|
-
const matrix2 = new
|
|
75
|
+
const up = new Vector3(0, 1, 0);
|
|
76
|
+
const point1 = new Vector3();
|
|
77
|
+
const point2 = new Vector3();
|
|
78
|
+
const matrix1 = new Matrix4();
|
|
79
|
+
const matrix2 = new Matrix4();
|
|
82
80
|
function moveTo(position) {
|
|
83
81
|
point1.copy(position);
|
|
84
82
|
matrix1.lookAt(point2, point1, up);
|
|
@@ -120,4 +118,6 @@ function TubePainter() {
|
|
|
120
118
|
update
|
|
121
119
|
};
|
|
122
120
|
}
|
|
123
|
-
|
|
121
|
+
export {
|
|
122
|
+
TubePainter
|
|
123
|
+
};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const THREE = require("three");
|
|
4
|
+
const VolumeSlice = require("./VolumeSlice.cjs");
|
|
3
5
|
class Volume {
|
|
4
6
|
constructor(xLength, yLength, zLength, type, arrayBuffer) {
|
|
5
7
|
if (xLength !== void 0) {
|
|
@@ -85,7 +87,7 @@ class Volume {
|
|
|
85
87
|
}
|
|
86
88
|
this.spacing = [1, 1, 1];
|
|
87
89
|
this.offset = [0, 0, 0];
|
|
88
|
-
this.matrix = new Matrix3();
|
|
90
|
+
this.matrix = new THREE.Matrix3();
|
|
89
91
|
this.matrix.identity();
|
|
90
92
|
let lowerThreshold = -Infinity;
|
|
91
93
|
Object.defineProperty(this, "lowerThreshold", {
|
|
@@ -175,8 +177,8 @@ class Volume {
|
|
|
175
177
|
*/
|
|
176
178
|
extractPerpendicularPlane(axis, RASIndex) {
|
|
177
179
|
let firstSpacing, secondSpacing, positionOffset, IJKIndex;
|
|
178
|
-
const axisInIJK = new Vector3(), firstDirection = new Vector3(), secondDirection = new Vector3(), planeMatrix = new Matrix4().identity(), volume = this;
|
|
179
|
-
const dimensions = new Vector3(this.xLength, this.yLength, this.zLength);
|
|
180
|
+
const axisInIJK = new THREE.Vector3(), firstDirection = new THREE.Vector3(), secondDirection = new THREE.Vector3(), planeMatrix = new THREE.Matrix4().identity(), volume = this;
|
|
181
|
+
const dimensions = new THREE.Vector3(this.xLength, this.yLength, this.zLength);
|
|
180
182
|
switch (axis) {
|
|
181
183
|
case "x":
|
|
182
184
|
axisInIJK.set(1, 0, 0);
|
|
@@ -184,10 +186,10 @@ class Volume {
|
|
|
184
186
|
secondDirection.set(0, -1, 0);
|
|
185
187
|
firstSpacing = this.spacing[this.axisOrder.indexOf("z")];
|
|
186
188
|
secondSpacing = this.spacing[this.axisOrder.indexOf("y")];
|
|
187
|
-
IJKIndex = new Vector3(RASIndex, 0, 0);
|
|
188
|
-
planeMatrix.multiply(new Matrix4().makeRotationY(Math.PI / 2));
|
|
189
|
+
IJKIndex = new THREE.Vector3(RASIndex, 0, 0);
|
|
190
|
+
planeMatrix.multiply(new THREE.Matrix4().makeRotationY(Math.PI / 2));
|
|
189
191
|
positionOffset = (volume.RASDimensions[0] - 1) / 2;
|
|
190
|
-
planeMatrix.setPosition(new Vector3(RASIndex - positionOffset, 0, 0));
|
|
192
|
+
planeMatrix.setPosition(new THREE.Vector3(RASIndex - positionOffset, 0, 0));
|
|
191
193
|
break;
|
|
192
194
|
case "y":
|
|
193
195
|
axisInIJK.set(0, 1, 0);
|
|
@@ -195,10 +197,10 @@ class Volume {
|
|
|
195
197
|
secondDirection.set(0, 0, 1);
|
|
196
198
|
firstSpacing = this.spacing[this.axisOrder.indexOf("x")];
|
|
197
199
|
secondSpacing = this.spacing[this.axisOrder.indexOf("z")];
|
|
198
|
-
IJKIndex = new Vector3(0, RASIndex, 0);
|
|
199
|
-
planeMatrix.multiply(new Matrix4().makeRotationX(-Math.PI / 2));
|
|
200
|
+
IJKIndex = new THREE.Vector3(0, RASIndex, 0);
|
|
201
|
+
planeMatrix.multiply(new THREE.Matrix4().makeRotationX(-Math.PI / 2));
|
|
200
202
|
positionOffset = (volume.RASDimensions[1] - 1) / 2;
|
|
201
|
-
planeMatrix.setPosition(new Vector3(0, RASIndex - positionOffset, 0));
|
|
203
|
+
planeMatrix.setPosition(new THREE.Vector3(0, RASIndex - positionOffset, 0));
|
|
202
204
|
break;
|
|
203
205
|
case "z":
|
|
204
206
|
default:
|
|
@@ -207,9 +209,9 @@ class Volume {
|
|
|
207
209
|
secondDirection.set(0, -1, 0);
|
|
208
210
|
firstSpacing = this.spacing[this.axisOrder.indexOf("x")];
|
|
209
211
|
secondSpacing = this.spacing[this.axisOrder.indexOf("y")];
|
|
210
|
-
IJKIndex = new Vector3(0, 0, RASIndex);
|
|
212
|
+
IJKIndex = new THREE.Vector3(0, 0, RASIndex);
|
|
211
213
|
positionOffset = (volume.RASDimensions[2] - 1) / 2;
|
|
212
|
-
planeMatrix.setPosition(new Vector3(0, 0, RASIndex - positionOffset));
|
|
214
|
+
planeMatrix.setPosition(new THREE.Vector3(0, 0, RASIndex - positionOffset));
|
|
213
215
|
break;
|
|
214
216
|
}
|
|
215
217
|
let iLength, jLength;
|
|
@@ -225,7 +227,7 @@ class Volume {
|
|
|
225
227
|
const planeWidth = Math.abs(iLength * firstSpacing);
|
|
226
228
|
const planeHeight = Math.abs(jLength * secondSpacing);
|
|
227
229
|
IJKIndex = Math.abs(Math.round(IJKIndex.applyMatrix4(volume.inverseMatrix).dot(axisInIJK)));
|
|
228
|
-
const base = [new Vector3(1, 0, 0), new Vector3(0, 1, 0), new Vector3(0, 0, 1)];
|
|
230
|
+
const base = [new THREE.Vector3(1, 0, 0), new THREE.Vector3(0, 1, 0), new THREE.Vector3(0, 0, 1)];
|
|
229
231
|
const iDirection = [firstDirection, secondDirection, axisInIJK].find(function(x) {
|
|
230
232
|
return Math.abs(x.dot(base[0])) > 0.9;
|
|
231
233
|
});
|
|
@@ -262,7 +264,7 @@ class Volume {
|
|
|
262
264
|
* @returns {VolumeSlice} the extracted slice
|
|
263
265
|
*/
|
|
264
266
|
extractSlice(axis, index) {
|
|
265
|
-
const slice = new VolumeSlice(this, index, axis);
|
|
267
|
+
const slice = new VolumeSlice.VolumeSlice(this, index, axis);
|
|
266
268
|
this.sliceList.push(slice);
|
|
267
269
|
return slice;
|
|
268
270
|
}
|
|
@@ -300,6 +302,4 @@ class Volume {
|
|
|
300
302
|
return [min, max];
|
|
301
303
|
}
|
|
302
304
|
}
|
|
303
|
-
|
|
304
|
-
Volume
|
|
305
|
-
};
|
|
305
|
+
exports.Volume = Volume;
|
package/dist/misc/Volume.js
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const THREE = require("three");
|
|
4
|
-
const VolumeSlice = require("./VolumeSlice.js");
|
|
1
|
+
import { Matrix3, Vector3, Matrix4 } from "three";
|
|
2
|
+
import { VolumeSlice } from "./VolumeSlice.js";
|
|
5
3
|
class Volume {
|
|
6
4
|
constructor(xLength, yLength, zLength, type, arrayBuffer) {
|
|
7
5
|
if (xLength !== void 0) {
|
|
@@ -87,7 +85,7 @@ class Volume {
|
|
|
87
85
|
}
|
|
88
86
|
this.spacing = [1, 1, 1];
|
|
89
87
|
this.offset = [0, 0, 0];
|
|
90
|
-
this.matrix = new
|
|
88
|
+
this.matrix = new Matrix3();
|
|
91
89
|
this.matrix.identity();
|
|
92
90
|
let lowerThreshold = -Infinity;
|
|
93
91
|
Object.defineProperty(this, "lowerThreshold", {
|
|
@@ -177,8 +175,8 @@ class Volume {
|
|
|
177
175
|
*/
|
|
178
176
|
extractPerpendicularPlane(axis, RASIndex) {
|
|
179
177
|
let firstSpacing, secondSpacing, positionOffset, IJKIndex;
|
|
180
|
-
const axisInIJK = new
|
|
181
|
-
const dimensions = new
|
|
178
|
+
const axisInIJK = new Vector3(), firstDirection = new Vector3(), secondDirection = new Vector3(), planeMatrix = new Matrix4().identity(), volume = this;
|
|
179
|
+
const dimensions = new Vector3(this.xLength, this.yLength, this.zLength);
|
|
182
180
|
switch (axis) {
|
|
183
181
|
case "x":
|
|
184
182
|
axisInIJK.set(1, 0, 0);
|
|
@@ -186,10 +184,10 @@ class Volume {
|
|
|
186
184
|
secondDirection.set(0, -1, 0);
|
|
187
185
|
firstSpacing = this.spacing[this.axisOrder.indexOf("z")];
|
|
188
186
|
secondSpacing = this.spacing[this.axisOrder.indexOf("y")];
|
|
189
|
-
IJKIndex = new
|
|
190
|
-
planeMatrix.multiply(new
|
|
187
|
+
IJKIndex = new Vector3(RASIndex, 0, 0);
|
|
188
|
+
planeMatrix.multiply(new Matrix4().makeRotationY(Math.PI / 2));
|
|
191
189
|
positionOffset = (volume.RASDimensions[0] - 1) / 2;
|
|
192
|
-
planeMatrix.setPosition(new
|
|
190
|
+
planeMatrix.setPosition(new Vector3(RASIndex - positionOffset, 0, 0));
|
|
193
191
|
break;
|
|
194
192
|
case "y":
|
|
195
193
|
axisInIJK.set(0, 1, 0);
|
|
@@ -197,10 +195,10 @@ class Volume {
|
|
|
197
195
|
secondDirection.set(0, 0, 1);
|
|
198
196
|
firstSpacing = this.spacing[this.axisOrder.indexOf("x")];
|
|
199
197
|
secondSpacing = this.spacing[this.axisOrder.indexOf("z")];
|
|
200
|
-
IJKIndex = new
|
|
201
|
-
planeMatrix.multiply(new
|
|
198
|
+
IJKIndex = new Vector3(0, RASIndex, 0);
|
|
199
|
+
planeMatrix.multiply(new Matrix4().makeRotationX(-Math.PI / 2));
|
|
202
200
|
positionOffset = (volume.RASDimensions[1] - 1) / 2;
|
|
203
|
-
planeMatrix.setPosition(new
|
|
201
|
+
planeMatrix.setPosition(new Vector3(0, RASIndex - positionOffset, 0));
|
|
204
202
|
break;
|
|
205
203
|
case "z":
|
|
206
204
|
default:
|
|
@@ -209,9 +207,9 @@ class Volume {
|
|
|
209
207
|
secondDirection.set(0, -1, 0);
|
|
210
208
|
firstSpacing = this.spacing[this.axisOrder.indexOf("x")];
|
|
211
209
|
secondSpacing = this.spacing[this.axisOrder.indexOf("y")];
|
|
212
|
-
IJKIndex = new
|
|
210
|
+
IJKIndex = new Vector3(0, 0, RASIndex);
|
|
213
211
|
positionOffset = (volume.RASDimensions[2] - 1) / 2;
|
|
214
|
-
planeMatrix.setPosition(new
|
|
212
|
+
planeMatrix.setPosition(new Vector3(0, 0, RASIndex - positionOffset));
|
|
215
213
|
break;
|
|
216
214
|
}
|
|
217
215
|
let iLength, jLength;
|
|
@@ -227,7 +225,7 @@ class Volume {
|
|
|
227
225
|
const planeWidth = Math.abs(iLength * firstSpacing);
|
|
228
226
|
const planeHeight = Math.abs(jLength * secondSpacing);
|
|
229
227
|
IJKIndex = Math.abs(Math.round(IJKIndex.applyMatrix4(volume.inverseMatrix).dot(axisInIJK)));
|
|
230
|
-
const base = [new
|
|
228
|
+
const base = [new Vector3(1, 0, 0), new Vector3(0, 1, 0), new Vector3(0, 0, 1)];
|
|
231
229
|
const iDirection = [firstDirection, secondDirection, axisInIJK].find(function(x) {
|
|
232
230
|
return Math.abs(x.dot(base[0])) > 0.9;
|
|
233
231
|
});
|
|
@@ -264,7 +262,7 @@ class Volume {
|
|
|
264
262
|
* @returns {VolumeSlice} the extracted slice
|
|
265
263
|
*/
|
|
266
264
|
extractSlice(axis, index) {
|
|
267
|
-
const slice = new VolumeSlice
|
|
265
|
+
const slice = new VolumeSlice(this, index, axis);
|
|
268
266
|
this.sliceList.push(slice);
|
|
269
267
|
return slice;
|
|
270
268
|
}
|
|
@@ -302,4 +300,6 @@ class Volume {
|
|
|
302
300
|
return [min, max];
|
|
303
301
|
}
|
|
304
302
|
}
|
|
305
|
-
|
|
303
|
+
export {
|
|
304
|
+
Volume
|
|
305
|
+
};
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const THREE = require("three");
|
|
2
4
|
class VolumeSlice {
|
|
3
5
|
constructor(volume, index, axis) {
|
|
4
6
|
const slice = this;
|
|
@@ -18,15 +20,15 @@ class VolumeSlice {
|
|
|
18
20
|
this.canvas = document.createElement("canvas");
|
|
19
21
|
this.canvasBuffer = document.createElement("canvas");
|
|
20
22
|
this.updateGeometry();
|
|
21
|
-
const canvasMap = new Texture(this.canvas);
|
|
22
|
-
canvasMap.minFilter = LinearFilter;
|
|
23
|
-
canvasMap.wrapS = canvasMap.wrapT = ClampToEdgeWrapping;
|
|
23
|
+
const canvasMap = new THREE.Texture(this.canvas);
|
|
24
|
+
canvasMap.minFilter = THREE.LinearFilter;
|
|
25
|
+
canvasMap.wrapS = canvasMap.wrapT = THREE.ClampToEdgeWrapping;
|
|
24
26
|
if ("colorSpace" in canvasMap)
|
|
25
27
|
canvasMap.colorSpace = "srgb";
|
|
26
28
|
else
|
|
27
29
|
canvasMap.encoding = 3001;
|
|
28
|
-
const material = new MeshBasicMaterial({ map: canvasMap, side: DoubleSide, transparent: true });
|
|
29
|
-
this.mesh = new Mesh(this.geometry, material);
|
|
30
|
+
const material = new THREE.MeshBasicMaterial({ map: canvasMap, side: THREE.DoubleSide, transparent: true });
|
|
31
|
+
this.mesh = new THREE.Mesh(this.geometry, material);
|
|
30
32
|
this.mesh.matrixAutoUpdate = false;
|
|
31
33
|
this.geometryNeedsUpdate = true;
|
|
32
34
|
this.repaint();
|
|
@@ -100,7 +102,7 @@ class VolumeSlice {
|
|
|
100
102
|
this.ctxBuffer = this.canvasBuffer.getContext("2d");
|
|
101
103
|
if (this.geometry)
|
|
102
104
|
this.geometry.dispose();
|
|
103
|
-
this.geometry = new PlaneGeometry(extracted.planeWidth, extracted.planeHeight);
|
|
105
|
+
this.geometry = new THREE.PlaneGeometry(extracted.planeWidth, extracted.planeHeight);
|
|
104
106
|
if (this.mesh) {
|
|
105
107
|
this.mesh.geometry = this.geometry;
|
|
106
108
|
this.mesh.matrix.identity();
|
|
@@ -109,6 +111,4 @@ class VolumeSlice {
|
|
|
109
111
|
this.geometryNeedsUpdate = false;
|
|
110
112
|
}
|
|
111
113
|
}
|
|
112
|
-
|
|
113
|
-
VolumeSlice
|
|
114
|
-
};
|
|
114
|
+
exports.VolumeSlice = VolumeSlice;
|
package/dist/misc/VolumeSlice.js
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const THREE = require("three");
|
|
1
|
+
import { Texture, LinearFilter, ClampToEdgeWrapping, MeshBasicMaterial, DoubleSide, Mesh, PlaneGeometry } from "three";
|
|
4
2
|
class VolumeSlice {
|
|
5
3
|
constructor(volume, index, axis) {
|
|
6
4
|
const slice = this;
|
|
@@ -20,15 +18,15 @@ class VolumeSlice {
|
|
|
20
18
|
this.canvas = document.createElement("canvas");
|
|
21
19
|
this.canvasBuffer = document.createElement("canvas");
|
|
22
20
|
this.updateGeometry();
|
|
23
|
-
const canvasMap = new
|
|
24
|
-
canvasMap.minFilter =
|
|
25
|
-
canvasMap.wrapS = canvasMap.wrapT =
|
|
21
|
+
const canvasMap = new Texture(this.canvas);
|
|
22
|
+
canvasMap.minFilter = LinearFilter;
|
|
23
|
+
canvasMap.wrapS = canvasMap.wrapT = ClampToEdgeWrapping;
|
|
26
24
|
if ("colorSpace" in canvasMap)
|
|
27
25
|
canvasMap.colorSpace = "srgb";
|
|
28
26
|
else
|
|
29
27
|
canvasMap.encoding = 3001;
|
|
30
|
-
const material = new
|
|
31
|
-
this.mesh = new
|
|
28
|
+
const material = new MeshBasicMaterial({ map: canvasMap, side: DoubleSide, transparent: true });
|
|
29
|
+
this.mesh = new Mesh(this.geometry, material);
|
|
32
30
|
this.mesh.matrixAutoUpdate = false;
|
|
33
31
|
this.geometryNeedsUpdate = true;
|
|
34
32
|
this.repaint();
|
|
@@ -102,7 +100,7 @@ class VolumeSlice {
|
|
|
102
100
|
this.ctxBuffer = this.canvasBuffer.getContext("2d");
|
|
103
101
|
if (this.geometry)
|
|
104
102
|
this.geometry.dispose();
|
|
105
|
-
this.geometry = new
|
|
103
|
+
this.geometry = new PlaneGeometry(extracted.planeWidth, extracted.planeHeight);
|
|
106
104
|
if (this.mesh) {
|
|
107
105
|
this.mesh.geometry = this.geometry;
|
|
108
106
|
this.mesh.matrix.identity();
|
|
@@ -111,4 +109,6 @@ class VolumeSlice {
|
|
|
111
109
|
this.geometryNeedsUpdate = false;
|
|
112
110
|
}
|
|
113
111
|
}
|
|
114
|
-
|
|
112
|
+
export {
|
|
113
|
+
VolumeSlice
|
|
114
|
+
};
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
1
3
|
let webGLAvailable, webGL2Available;
|
|
2
4
|
function isWebGLAvailable() {
|
|
3
5
|
var _a;
|
|
@@ -65,10 +67,8 @@ function getErrorMessage(version) {
|
|
|
65
67
|
element.innerHTML = message;
|
|
66
68
|
return element;
|
|
67
69
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
isWebGLAvailable
|
|
74
|
-
};
|
|
70
|
+
exports.getErrorMessage = getErrorMessage;
|
|
71
|
+
exports.getWebGL2ErrorMessage = getWebGL2ErrorMessage;
|
|
72
|
+
exports.getWebGLErrorMessage = getWebGLErrorMessage;
|
|
73
|
+
exports.isWebGL2Available = isWebGL2Available;
|
|
74
|
+
exports.isWebGLAvailable = isWebGLAvailable;
|
package/dist/misc/WebGL.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
1
|
let webGLAvailable, webGL2Available;
|
|
4
2
|
function isWebGLAvailable() {
|
|
5
3
|
var _a;
|
|
@@ -67,8 +65,10 @@ function getErrorMessage(version) {
|
|
|
67
65
|
element.innerHTML = message;
|
|
68
66
|
return element;
|
|
69
67
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
68
|
+
export {
|
|
69
|
+
getErrorMessage,
|
|
70
|
+
getWebGL2ErrorMessage,
|
|
71
|
+
getWebGLErrorMessage,
|
|
72
|
+
isWebGL2Available,
|
|
73
|
+
isWebGLAvailable
|
|
74
|
+
};
|
|
@@ -1,19 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __defProp = Object.defineProperty;
|
|
2
3
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
4
|
var __publicField = (obj, key, value) => {
|
|
4
5
|
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
6
|
return value;
|
|
6
7
|
};
|
|
7
|
-
|
|
8
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
9
|
+
const THREE = require("three");
|
|
8
10
|
const CHANNELS = 4;
|
|
9
11
|
const TEXTURE_WIDTH = 1024;
|
|
10
12
|
const TEXTURE_HEIGHT = 4;
|
|
11
13
|
const initSplineTexture = (numberOfCurves = 1) => {
|
|
12
14
|
const dataArray = new Float32Array(TEXTURE_WIDTH * TEXTURE_HEIGHT * numberOfCurves * CHANNELS);
|
|
13
|
-
const dataTexture = new DataTexture(dataArray, TEXTURE_WIDTH, TEXTURE_HEIGHT * numberOfCurves, RGBAFormat, FloatType);
|
|
14
|
-
dataTexture.wrapS = RepeatWrapping;
|
|
15
|
-
dataTexture.wrapT = RepeatWrapping;
|
|
16
|
-
dataTexture.magFilter = NearestFilter;
|
|
15
|
+
const dataTexture = new THREE.DataTexture(dataArray, TEXTURE_WIDTH, TEXTURE_HEIGHT * numberOfCurves, THREE.RGBAFormat, THREE.FloatType);
|
|
16
|
+
dataTexture.wrapS = THREE.RepeatWrapping;
|
|
17
|
+
dataTexture.wrapT = THREE.RepeatWrapping;
|
|
18
|
+
dataTexture.magFilter = THREE.NearestFilter;
|
|
17
19
|
dataTexture.needsUpdate = true;
|
|
18
20
|
return dataTexture;
|
|
19
21
|
};
|
|
@@ -145,7 +147,7 @@ class Flow {
|
|
|
145
147
|
const splineTexure = initSplineTexture(numberOfCurves);
|
|
146
148
|
const uniforms = getUniforms(splineTexure);
|
|
147
149
|
obj3D.traverse((child) => {
|
|
148
|
-
if (child instanceof Mesh || child instanceof InstancedMesh) {
|
|
150
|
+
if (child instanceof THREE.Mesh || child instanceof THREE.InstancedMesh) {
|
|
149
151
|
child.material = child.material.clone();
|
|
150
152
|
modifyShader(child.material, uniforms, numberOfCurves);
|
|
151
153
|
}
|
|
@@ -169,7 +171,7 @@ class Flow {
|
|
|
169
171
|
this.uniforms.pathOffset.value += amount;
|
|
170
172
|
}
|
|
171
173
|
}
|
|
172
|
-
const matrix = /* @__PURE__ */ new Matrix4();
|
|
174
|
+
const matrix = /* @__PURE__ */ new THREE.Matrix4();
|
|
173
175
|
class InstancedFlow extends Flow {
|
|
174
176
|
/**
|
|
175
177
|
*
|
|
@@ -179,8 +181,8 @@ class InstancedFlow extends Flow {
|
|
|
179
181
|
* @param {Material} material The material to use for the instanced mesh
|
|
180
182
|
*/
|
|
181
183
|
constructor(count, curveCount, geometry, material) {
|
|
182
|
-
const mesh = new InstancedMesh(geometry, material, count);
|
|
183
|
-
mesh.instanceMatrix.setUsage(DynamicDrawUsage);
|
|
184
|
+
const mesh = new THREE.InstancedMesh(geometry, material, count);
|
|
185
|
+
mesh.instanceMatrix.setUsage(THREE.DynamicDrawUsage);
|
|
184
186
|
mesh.frustumCulled = false;
|
|
185
187
|
super(mesh, curveCount);
|
|
186
188
|
__publicField(this, "offsets");
|
|
@@ -222,11 +224,9 @@ class InstancedFlow extends Flow {
|
|
|
222
224
|
this.writeChanges(index);
|
|
223
225
|
}
|
|
224
226
|
}
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
updateSplineTexture
|
|
232
|
-
};
|
|
227
|
+
exports.Flow = Flow;
|
|
228
|
+
exports.InstancedFlow = InstancedFlow;
|
|
229
|
+
exports.getUniforms = getUniforms;
|
|
230
|
+
exports.initSplineTexture = initSplineTexture;
|
|
231
|
+
exports.modifyShader = modifyShader;
|
|
232
|
+
exports.updateSplineTexture = updateSplineTexture;
|
|
@@ -1,21 +1,19 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __defProp = Object.defineProperty;
|
|
3
2
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
4
3
|
var __publicField = (obj, key, value) => {
|
|
5
4
|
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
6
5
|
return value;
|
|
7
6
|
};
|
|
8
|
-
|
|
9
|
-
const THREE = require("three");
|
|
7
|
+
import { DataTexture, RGBAFormat, FloatType, RepeatWrapping, NearestFilter, Mesh, InstancedMesh, Matrix4, DynamicDrawUsage } from "three";
|
|
10
8
|
const CHANNELS = 4;
|
|
11
9
|
const TEXTURE_WIDTH = 1024;
|
|
12
10
|
const TEXTURE_HEIGHT = 4;
|
|
13
11
|
const initSplineTexture = (numberOfCurves = 1) => {
|
|
14
12
|
const dataArray = new Float32Array(TEXTURE_WIDTH * TEXTURE_HEIGHT * numberOfCurves * CHANNELS);
|
|
15
|
-
const dataTexture = new
|
|
16
|
-
dataTexture.wrapS =
|
|
17
|
-
dataTexture.wrapT =
|
|
18
|
-
dataTexture.magFilter =
|
|
13
|
+
const dataTexture = new DataTexture(dataArray, TEXTURE_WIDTH, TEXTURE_HEIGHT * numberOfCurves, RGBAFormat, FloatType);
|
|
14
|
+
dataTexture.wrapS = RepeatWrapping;
|
|
15
|
+
dataTexture.wrapT = RepeatWrapping;
|
|
16
|
+
dataTexture.magFilter = NearestFilter;
|
|
19
17
|
dataTexture.needsUpdate = true;
|
|
20
18
|
return dataTexture;
|
|
21
19
|
};
|
|
@@ -147,7 +145,7 @@ class Flow {
|
|
|
147
145
|
const splineTexure = initSplineTexture(numberOfCurves);
|
|
148
146
|
const uniforms = getUniforms(splineTexure);
|
|
149
147
|
obj3D.traverse((child) => {
|
|
150
|
-
if (child instanceof
|
|
148
|
+
if (child instanceof Mesh || child instanceof InstancedMesh) {
|
|
151
149
|
child.material = child.material.clone();
|
|
152
150
|
modifyShader(child.material, uniforms, numberOfCurves);
|
|
153
151
|
}
|
|
@@ -171,7 +169,7 @@ class Flow {
|
|
|
171
169
|
this.uniforms.pathOffset.value += amount;
|
|
172
170
|
}
|
|
173
171
|
}
|
|
174
|
-
const matrix = /* @__PURE__ */ new
|
|
172
|
+
const matrix = /* @__PURE__ */ new Matrix4();
|
|
175
173
|
class InstancedFlow extends Flow {
|
|
176
174
|
/**
|
|
177
175
|
*
|
|
@@ -181,8 +179,8 @@ class InstancedFlow extends Flow {
|
|
|
181
179
|
* @param {Material} material The material to use for the instanced mesh
|
|
182
180
|
*/
|
|
183
181
|
constructor(count, curveCount, geometry, material) {
|
|
184
|
-
const mesh = new
|
|
185
|
-
mesh.instanceMatrix.setUsage(
|
|
182
|
+
const mesh = new InstancedMesh(geometry, material, count);
|
|
183
|
+
mesh.instanceMatrix.setUsage(DynamicDrawUsage);
|
|
186
184
|
mesh.frustumCulled = false;
|
|
187
185
|
super(mesh, curveCount);
|
|
188
186
|
__publicField(this, "offsets");
|
|
@@ -224,9 +222,11 @@ class InstancedFlow extends Flow {
|
|
|
224
222
|
this.writeChanges(index);
|
|
225
223
|
}
|
|
226
224
|
}
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
225
|
+
export {
|
|
226
|
+
Flow,
|
|
227
|
+
InstancedFlow,
|
|
228
|
+
getUniforms,
|
|
229
|
+
initSplineTexture,
|
|
230
|
+
modifyShader,
|
|
231
|
+
updateSplineTexture
|
|
232
|
+
};
|
|
@@ -1,17 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __defProp = Object.defineProperty;
|
|
2
3
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
4
|
var __publicField = (obj, key, value) => {
|
|
4
5
|
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
6
|
return value;
|
|
6
7
|
};
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
9
|
+
const THREE = require("three");
|
|
10
|
+
const BufferGeometryUtils = require("../utils/BufferGeometryUtils.cjs");
|
|
10
11
|
class EdgeSplitModifier {
|
|
11
12
|
constructor() {
|
|
12
|
-
__publicField(this, "A", new Vector3());
|
|
13
|
-
__publicField(this, "B", new Vector3());
|
|
14
|
-
__publicField(this, "C", new Vector3());
|
|
13
|
+
__publicField(this, "A", new THREE.Vector3());
|
|
14
|
+
__publicField(this, "B", new THREE.Vector3());
|
|
15
|
+
__publicField(this, "C", new THREE.Vector3());
|
|
15
16
|
__publicField(this, "positions", []);
|
|
16
17
|
__publicField(this, "normals", new Float32Array());
|
|
17
18
|
__publicField(this, "indexes", []);
|
|
@@ -106,7 +107,7 @@ class EdgeSplitModifier {
|
|
|
106
107
|
if (BufferGeometryUtils === void 0) {
|
|
107
108
|
throw "THREE.EdgeSplitModifier relies on BufferGeometryUtils";
|
|
108
109
|
}
|
|
109
|
-
geometry = mergeVertices(geometry);
|
|
110
|
+
geometry = BufferGeometryUtils.mergeVertices(geometry);
|
|
110
111
|
}
|
|
111
112
|
this.indexes = geometry.index.array;
|
|
112
113
|
this.positions = geometry.getAttribute("position").array;
|
|
@@ -123,7 +124,7 @@ class EdgeSplitModifier {
|
|
|
123
124
|
(this.indexes.length + this.splitIndexes.length) * oldAttribute.itemSize
|
|
124
125
|
);
|
|
125
126
|
newArray.set(oldAttribute.array);
|
|
126
|
-
newAttributes[name] = new BufferAttribute(newArray, oldAttribute.itemSize, oldAttribute.normalized);
|
|
127
|
+
newAttributes[name] = new THREE.BufferAttribute(newArray, oldAttribute.itemSize, oldAttribute.normalized);
|
|
127
128
|
}
|
|
128
129
|
const newIndexes = new Uint32Array(this.indexes.length);
|
|
129
130
|
newIndexes.set(this.indexes);
|
|
@@ -139,8 +140,8 @@ class EdgeSplitModifier {
|
|
|
139
140
|
newIndexes[j] = this.indexes.length + i;
|
|
140
141
|
}
|
|
141
142
|
}
|
|
142
|
-
geometry = new BufferGeometry();
|
|
143
|
-
geometry.setIndex(new BufferAttribute(newIndexes, 1));
|
|
143
|
+
geometry = new THREE.BufferGeometry();
|
|
144
|
+
geometry.setIndex(new THREE.BufferAttribute(newIndexes, 1));
|
|
144
145
|
for (let name of Object.keys(newAttributes)) {
|
|
145
146
|
geometry.setAttribute(name, newAttributes[name]);
|
|
146
147
|
}
|
|
@@ -163,6 +164,4 @@ class EdgeSplitModifier {
|
|
|
163
164
|
});
|
|
164
165
|
}
|
|
165
166
|
}
|
|
166
|
-
|
|
167
|
-
EdgeSplitModifier
|
|
168
|
-
};
|
|
167
|
+
exports.EdgeSplitModifier = EdgeSplitModifier;
|