@react-three/drei 9.52.5 → 9.53.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.
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../core/shaderMaterial.cjs.js");require("three");const r=e.shaderMaterial({},"void main() { }","void main() { discard; }");exports.DiscardMaterial=r;
@@ -0,0 +1,3 @@
1
+ export declare const DiscardMaterial: typeof import("three").ShaderMaterial & {
2
+ key: string;
3
+ };
@@ -0,0 +1,5 @@
1
+ import { shaderMaterial } from '../core/shaderMaterial.js';
2
+
3
+ const DiscardMaterial = shaderMaterial({}, 'void main() { }', 'void main() { discard; }');
4
+
5
+ export { DiscardMaterial };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../core/Billboard.cjs.js"),r=require("../core/ScreenSpace.cjs.js"),s=require("../core/QuadraticBezierLine.cjs.js"),o=require("../core/CubicBezierLine.cjs.js"),t=require("../core/CatmullRomLine.cjs.js"),i=require("../core/Line.cjs.js"),c=require("../core/PositionalAudio.cjs.js"),u=require("../core/Text.cjs.js"),a=require("../core/Text3D.cjs.js"),n=require("../core/Effects.cjs.js"),j=require("../core/GradientTexture.cjs.js"),p=require("../core/Image.cjs.js"),x=require("../core/Edges.cjs.js"),l=require("../core/Trail.cjs.js"),d=require("../core/Sampler.cjs.js"),q=require("../core/ComputedAttribute.cjs.js"),m=require("../core/Clone.cjs.js"),h=require("../core/MarchingCubes.cjs.js"),C=require("../core/Decal.cjs.js"),M=require("../core/Svg.cjs.js"),S=require("../core/Gltf.cjs.js"),T=require("../core/AsciiRenderer.cjs.js"),f=require("../core/OrthographicCamera.cjs.js"),P=require("../core/PerspectiveCamera.cjs.js"),b=require("../core/CubeCamera.cjs.js"),B=require("../core/DeviceOrientationControls.cjs.js"),g=require("../core/FlyControls.cjs.js"),v=require("../core/MapControls.cjs.js"),A=require("../core/OrbitControls.cjs.js"),L=require("../core/TrackballControls.cjs.js"),k=require("../core/ArcballControls.cjs.js"),G=require("../core/TransformControls.cjs.js"),R=require("../core/PointerLockControls.cjs.js"),D=require("../core/FirstPersonControls.cjs.js"),E=require("../core/GizmoHelper.cjs.js"),w=require("../core/GizmoViewcube.cjs.js"),z=require("../core/GizmoViewport.cjs.js"),F=require("../core/Grid.cjs.js"),O=require("../core/useCubeTexture.cjs.js"),I=require("../core/useFBX.cjs.js"),H=require("../core/useGLTF.cjs.js"),V=require("../core/useKTX2.cjs.js"),y=require("../core/useProgress.cjs.js"),Q=require("../core/useTexture.cjs.js"),X=require("../core/useVideoTexture.cjs.js"),K=require("../core/Stats.cjs.js"),W=require("../core/useDepthBuffer.cjs.js"),N=require("../core/useAspect.cjs.js"),U=require("../core/useCamera.cjs.js"),_=require("../core/useDetectGPU.cjs.js"),J=require("../core/useHelper.cjs.js"),Y=require("../core/useBVH.cjs.js"),Z=require("../core/useContextBridge.cjs.js"),$=require("../core/useAnimations.cjs.js"),ee=require("../core/useFBO.cjs.js"),re=require("../core/useIntersect.cjs.js"),se=require("../core/useBoxProjectedEnv.cjs.js"),oe=require("../core/BBAnchor.cjs.js"),te=require("../core/useTrailTexture.cjs.js"),ie=require("../core/CurveModifier.cjs.js"),ce=require("../core/MeshDistortMaterial.cjs.js"),ue=require("../core/MeshWobbleMaterial.cjs.js"),ae=require("../core/MeshReflectorMaterial.cjs.js"),ne=require("../core/MeshRefractionMaterial.cjs.js"),je=require("../core/MeshTransmissionMaterial.cjs.js"),pe=require("../core/PointMaterial.cjs.js"),xe=require("../core/shaderMaterial.cjs.js"),le=require("../core/softShadows.cjs.js"),de=require("../core/shapes.cjs.js"),qe=require("../core/RoundedBox.cjs.js"),me=require("../core/ScreenQuad.cjs.js"),he=require("../core/Center.cjs.js"),Ce=require("../core/Bounds.cjs.js"),Me=require("../core/CameraShake.cjs.js"),Se=require("../core/Float.cjs.js"),Te=require("../core/Stage.cjs.js"),fe=require("../core/Backdrop.cjs.js"),Pe=require("../core/Shadow.cjs.js"),be=require("../core/Caustics.cjs.js"),Be=require("../core/ContactShadows.cjs.js"),ge=require("../core/AccumulativeShadows.cjs.js"),ve=require("../core/Reflector.cjs.js"),Ae=require("../core/SpotLight.cjs.js"),Le=require("../core/Environment.cjs.js"),ke=require("../core/Lightformer.cjs.js"),Ge=require("../core/Sky.cjs.js"),Re=require("../core/Stars.cjs.js"),De=require("../core/Cloud.cjs.js"),Ee=require("../core/Sparkles.cjs.js"),we=require("../core/useMatcapTexture.cjs.js"),ze=require("../core/useNormalTexture.cjs.js"),Fe=require("../core/Points.cjs.js"),Oe=require("../core/Instances.cjs.js"),Ie=require("../core/Segments.cjs.js"),He=require("../core/Detailed.cjs.js"),Ve=require("../core/Preload.cjs.js"),ye=require("../core/BakeShadows.cjs.js"),Qe=require("../core/meshBounds.cjs.js"),Xe=require("../core/AdaptiveDpr.cjs.js"),Ke=require("../core/AdaptiveEvents.cjs.js"),We=require("../core/PerformanceMonitor.cjs.js"),Ne=require("../core/RenderTexture.cjs.js"),Ue=require("../core/Mask.cjs.js"),_e=require("../core/Hud.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("@react-three/fiber"),require("react-merge-refs"),require("three"),require("three-stdlib"),require("troika-three-text"),require("suspend-react"),require("meshline"),require("lodash.pick"),require("lodash.omit"),require("zustand"),require("stats.js"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("three-mesh-bvh"),require("../materials/BlurPass.cjs.js"),require("../materials/ConvolutionMaterial.cjs.js"),require("../materials/MeshReflectorMaterial.cjs.js"),require("../materials/MeshRefractionMaterial.cjs.js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.ScreenSpace=r.ScreenSpace,exports.QuadraticBezierLine=s.QuadraticBezierLine,exports.CubicBezierLine=o.CubicBezierLine,exports.CatmullRomLine=t.CatmullRomLine,exports.Line=i.Line,exports.PositionalAudio=c.PositionalAudio,exports.Text=u.Text,exports.Text3D=a.Text3D,exports.Effects=n.Effects,exports.isWebGL2Available=n.isWebGL2Available,exports.GradientTexture=j.GradientTexture,exports.Image=p.Image,exports.Edges=x.Edges,exports.Trail=l.Trail,exports.useTrail=l.useTrail,exports.Sampler=d.Sampler,exports.useSurfaceSampler=d.useSurfaceSampler,exports.ComputedAttribute=q.ComputedAttribute,exports.Clone=m.Clone,exports.MarchingCube=h.MarchingCube,exports.MarchingCubes=h.MarchingCubes,exports.MarchingPlane=h.MarchingPlane,exports.Decal=C.Decal,exports.Svg=M.Svg,exports.Gltf=S.Gltf,exports.AsciiRenderer=T.AsciiRenderer,exports.OrthographicCamera=f.OrthographicCamera,exports.PerspectiveCamera=P.PerspectiveCamera,exports.CubeCamera=b.CubeCamera,exports.DeviceOrientationControls=B.DeviceOrientationControls,exports.FlyControls=g.FlyControls,exports.MapControls=v.MapControls,exports.OrbitControls=A.OrbitControls,exports.TrackballControls=L.TrackballControls,exports.ArcballControls=k.ArcballControls,exports.TransformControls=G.TransformControls,exports.PointerLockControls=R.PointerLockControls,exports.FirstPersonControls=D.FirstPersonControls,exports.GizmoHelper=E.GizmoHelper,exports.useGizmoContext=E.useGizmoContext,exports.GizmoViewcube=w.GizmoViewcube,exports.GizmoViewport=z.GizmoViewport,exports.Grid=F.Grid,exports.useCubeTexture=O.useCubeTexture,exports.useFBX=I.useFBX,exports.useGLTF=H.useGLTF,exports.useKTX2=V.useKTX2,exports.useProgress=y.useProgress,exports.IsObject=Q.IsObject,exports.useTexture=Q.useTexture,exports.useVideoTexture=X.useVideoTexture,exports.Stats=K.Stats,exports.useDepthBuffer=W.useDepthBuffer,exports.useAspect=N.useAspect,exports.useCamera=U.useCamera,exports.useDetectGPU=_.useDetectGPU,exports.useHelper=J.useHelper,exports.useBVH=Y.useBVH,exports.useContextBridge=Z.useContextBridge,exports.useAnimations=$.useAnimations,exports.useFBO=ee.useFBO,exports.useIntersect=re.useIntersect,exports.useBoxProjectedEnv=se.useBoxProjectedEnv,exports.BBAnchor=oe.BBAnchor,exports.useTrailTexture=te.useTrailTexture,exports.CurveModifier=ie.CurveModifier,exports.MeshDistortMaterial=ce.MeshDistortMaterial,exports.MeshWobbleMaterial=ue.MeshWobbleMaterial,exports.MeshReflectorMaterial=ae.MeshReflectorMaterial,exports.MeshRefractionMaterial=ne.MeshRefractionMaterial,exports.MeshTransmissionMaterial=je.MeshTransmissionMaterial,exports.PointMaterial=pe.PointMaterial,exports.PointMaterialImpl=pe.PointMaterialImpl,exports.shaderMaterial=xe.shaderMaterial,exports.SoftShadows=le.SoftShadows,exports.softShadows=le.softShadows,exports.Box=de.Box,exports.Capsule=de.Capsule,exports.Circle=de.Circle,exports.Cone=de.Cone,exports.Cylinder=de.Cylinder,exports.Dodecahedron=de.Dodecahedron,exports.Extrude=de.Extrude,exports.Icosahedron=de.Icosahedron,exports.Lathe=de.Lathe,exports.Octahedron=de.Octahedron,exports.Plane=de.Plane,exports.Polyhedron=de.Polyhedron,exports.Ring=de.Ring,exports.Sphere=de.Sphere,exports.Tetrahedron=de.Tetrahedron,exports.Torus=de.Torus,exports.TorusKnot=de.TorusKnot,exports.Tube=de.Tube,exports.RoundedBox=qe.RoundedBox,exports.ScreenQuad=me.ScreenQuad,exports.Center=he.Center,exports.Bounds=Ce.Bounds,exports.useBounds=Ce.useBounds,exports.CameraShake=Me.CameraShake,exports.Float=Se.Float,exports.Stage=Te.Stage,exports.Backdrop=fe.Backdrop,exports.Shadow=Pe.Shadow,exports.Caustics=be.Caustics,exports.ContactShadows=Be.ContactShadows,exports.AccumulativeShadows=ge.AccumulativeShadows,exports.RandomizedLight=ge.RandomizedLight,exports.accumulativeContext=ge.accumulativeContext,exports.Reflector=ve.Reflector,exports.SpotLight=Ae.SpotLight,exports.SpotLightShadow=Ae.SpotLightShadow,exports.Environment=Le.Environment,exports.EnvironmentCube=Le.EnvironmentCube,exports.EnvironmentMap=Le.EnvironmentMap,exports.EnvironmentPortal=Le.EnvironmentPortal,exports.useEnvironment=Le.useEnvironment,exports.Lightformer=ke.Lightformer,exports.Sky=Ge.Sky,exports.calcPosFromAngles=Ge.calcPosFromAngles,exports.Stars=Re.Stars,exports.Cloud=De.Cloud,exports.Sparkles=Ee.Sparkles,exports.useMatcapTexture=we.useMatcapTexture,exports.useNormalTexture=ze.useNormalTexture,exports.Point=Fe.Point,exports.Points=Fe.Points,exports.PointsBuffer=Fe.PointsBuffer,exports.PositionPoint=Fe.PositionPoint,exports.Instance=Oe.Instance,exports.Instances=Oe.Instances,exports.Merged=Oe.Merged,exports.Segment=Ie.Segment,exports.SegmentObject=Ie.SegmentObject,exports.Segments=Ie.Segments,exports.Detailed=He.Detailed,exports.Preload=Ve.Preload,exports.BakeShadows=ye.BakeShadows,exports.meshBounds=Qe.meshBounds,exports.AdaptiveDpr=Xe.AdaptiveDpr,exports.AdaptiveEvents=Ke.AdaptiveEvents,exports.PerformanceMonitor=We.PerformanceMonitor,exports.usePerformanceMonitor=We.usePerformanceMonitor,exports.RenderTexture=Ne.RenderTexture,exports.Mask=Ue.Mask,exports.useMask=Ue.useMask,exports.Hud=_e.Hud;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../core/Billboard.cjs.js"),r=require("../core/ScreenSpace.cjs.js"),s=require("../core/QuadraticBezierLine.cjs.js"),o=require("../core/CubicBezierLine.cjs.js"),t=require("../core/CatmullRomLine.cjs.js"),i=require("../core/Line.cjs.js"),c=require("../core/PositionalAudio.cjs.js"),u=require("../core/Text.cjs.js"),a=require("../core/Text3D.cjs.js"),n=require("../core/Effects.cjs.js"),j=require("../core/GradientTexture.cjs.js"),p=require("../core/Image.cjs.js"),x=require("../core/Edges.cjs.js"),l=require("../core/Trail.cjs.js"),d=require("../core/Sampler.cjs.js"),q=require("../core/ComputedAttribute.cjs.js"),m=require("../core/Clone.cjs.js"),h=require("../core/MarchingCubes.cjs.js"),C=require("../core/Decal.cjs.js"),M=require("../core/Svg.cjs.js"),S=require("../core/Gltf.cjs.js"),T=require("../core/AsciiRenderer.cjs.js"),f=require("../core/OrthographicCamera.cjs.js"),P=require("../core/PerspectiveCamera.cjs.js"),b=require("../core/CubeCamera.cjs.js"),B=require("../core/DeviceOrientationControls.cjs.js"),g=require("../core/FlyControls.cjs.js"),v=require("../core/MapControls.cjs.js"),A=require("../core/OrbitControls.cjs.js"),L=require("../core/TrackballControls.cjs.js"),k=require("../core/ArcballControls.cjs.js"),G=require("../core/TransformControls.cjs.js"),D=require("../core/PointerLockControls.cjs.js"),R=require("../core/FirstPersonControls.cjs.js"),E=require("../core/GizmoHelper.cjs.js"),w=require("../core/GizmoViewcube.cjs.js"),z=require("../core/GizmoViewport.cjs.js"),F=require("../core/Grid.cjs.js"),O=require("../core/useCubeTexture.cjs.js"),I=require("../core/useFBX.cjs.js"),H=require("../core/useGLTF.cjs.js"),V=require("../core/useKTX2.cjs.js"),y=require("../core/useProgress.cjs.js"),Q=require("../core/useTexture.cjs.js"),X=require("../core/useVideoTexture.cjs.js"),K=require("../core/Stats.cjs.js"),W=require("../core/useDepthBuffer.cjs.js"),N=require("../core/useAspect.cjs.js"),U=require("../core/useCamera.cjs.js"),_=require("../core/useDetectGPU.cjs.js"),J=require("../core/useHelper.cjs.js"),Y=require("../core/useBVH.cjs.js"),Z=require("../core/useContextBridge.cjs.js"),$=require("../core/useAnimations.cjs.js"),ee=require("../core/useFBO.cjs.js"),re=require("../core/useIntersect.cjs.js"),se=require("../core/useBoxProjectedEnv.cjs.js"),oe=require("../core/BBAnchor.cjs.js"),te=require("../core/useTrailTexture.cjs.js"),ie=require("../core/CurveModifier.cjs.js"),ce=require("../core/MeshDistortMaterial.cjs.js"),ue=require("../core/MeshWobbleMaterial.cjs.js"),ae=require("../core/MeshReflectorMaterial.cjs.js"),ne=require("../core/MeshRefractionMaterial.cjs.js"),je=require("../core/MeshTransmissionMaterial.cjs.js"),pe=require("../core/PointMaterial.cjs.js"),xe=require("../core/shaderMaterial.cjs.js"),le=require("../core/softShadows.cjs.js"),de=require("../core/shapes.cjs.js"),qe=require("../core/RoundedBox.cjs.js"),me=require("../core/ScreenQuad.cjs.js"),he=require("../core/Center.cjs.js"),Ce=require("../core/Bounds.cjs.js"),Me=require("../core/CameraShake.cjs.js"),Se=require("../core/Float.cjs.js"),Te=require("../core/Stage.cjs.js"),fe=require("../core/Backdrop.cjs.js"),Pe=require("../core/Shadow.cjs.js"),be=require("../core/Caustics.cjs.js"),Be=require("../core/ContactShadows.cjs.js"),ge=require("../core/AccumulativeShadows.cjs.js"),ve=require("../core/Reflector.cjs.js"),Ae=require("../core/SpotLight.cjs.js"),Le=require("../core/Environment.cjs.js"),ke=require("../core/Lightformer.cjs.js"),Ge=require("../core/Sky.cjs.js"),De=require("../core/Stars.cjs.js"),Re=require("../core/Cloud.cjs.js"),Ee=require("../core/Sparkles.cjs.js"),we=require("../core/useMatcapTexture.cjs.js"),ze=require("../core/useNormalTexture.cjs.js"),Fe=require("../core/Points.cjs.js"),Oe=require("../core/Instances.cjs.js"),Ie=require("../core/Segments.cjs.js"),He=require("../core/Detailed.cjs.js"),Ve=require("../core/Preload.cjs.js"),ye=require("../core/BakeShadows.cjs.js"),Qe=require("../core/meshBounds.cjs.js"),Xe=require("../core/AdaptiveDpr.cjs.js"),Ke=require("../core/AdaptiveEvents.cjs.js"),We=require("../core/PerformanceMonitor.cjs.js"),Ne=require("../core/RenderTexture.cjs.js"),Ue=require("../core/Mask.cjs.js"),_e=require("../core/Hud.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("@react-three/fiber"),require("react-merge-refs"),require("three"),require("three-stdlib"),require("troika-three-text"),require("suspend-react"),require("meshline"),require("lodash.pick"),require("lodash.omit"),require("zustand"),require("stats.js"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("three-mesh-bvh"),require("../materials/BlurPass.cjs.js"),require("../materials/ConvolutionMaterial.cjs.js"),require("../materials/MeshReflectorMaterial.cjs.js"),require("../materials/MeshRefractionMaterial.cjs.js"),require("../materials/DiscardMaterial.cjs.js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.ScreenSpace=r.ScreenSpace,exports.QuadraticBezierLine=s.QuadraticBezierLine,exports.CubicBezierLine=o.CubicBezierLine,exports.CatmullRomLine=t.CatmullRomLine,exports.Line=i.Line,exports.PositionalAudio=c.PositionalAudio,exports.Text=u.Text,exports.Text3D=a.Text3D,exports.Effects=n.Effects,exports.isWebGL2Available=n.isWebGL2Available,exports.GradientTexture=j.GradientTexture,exports.Image=p.Image,exports.Edges=x.Edges,exports.Trail=l.Trail,exports.useTrail=l.useTrail,exports.Sampler=d.Sampler,exports.useSurfaceSampler=d.useSurfaceSampler,exports.ComputedAttribute=q.ComputedAttribute,exports.Clone=m.Clone,exports.MarchingCube=h.MarchingCube,exports.MarchingCubes=h.MarchingCubes,exports.MarchingPlane=h.MarchingPlane,exports.Decal=C.Decal,exports.Svg=M.Svg,exports.Gltf=S.Gltf,exports.AsciiRenderer=T.AsciiRenderer,exports.OrthographicCamera=f.OrthographicCamera,exports.PerspectiveCamera=P.PerspectiveCamera,exports.CubeCamera=b.CubeCamera,exports.DeviceOrientationControls=B.DeviceOrientationControls,exports.FlyControls=g.FlyControls,exports.MapControls=v.MapControls,exports.OrbitControls=A.OrbitControls,exports.TrackballControls=L.TrackballControls,exports.ArcballControls=k.ArcballControls,exports.TransformControls=G.TransformControls,exports.PointerLockControls=D.PointerLockControls,exports.FirstPersonControls=R.FirstPersonControls,exports.GizmoHelper=E.GizmoHelper,exports.useGizmoContext=E.useGizmoContext,exports.GizmoViewcube=w.GizmoViewcube,exports.GizmoViewport=z.GizmoViewport,exports.Grid=F.Grid,exports.useCubeTexture=O.useCubeTexture,exports.useFBX=I.useFBX,exports.useGLTF=H.useGLTF,exports.useKTX2=V.useKTX2,exports.useProgress=y.useProgress,exports.IsObject=Q.IsObject,exports.useTexture=Q.useTexture,exports.useVideoTexture=X.useVideoTexture,exports.Stats=K.Stats,exports.useDepthBuffer=W.useDepthBuffer,exports.useAspect=N.useAspect,exports.useCamera=U.useCamera,exports.useDetectGPU=_.useDetectGPU,exports.useHelper=J.useHelper,exports.useBVH=Y.useBVH,exports.useContextBridge=Z.useContextBridge,exports.useAnimations=$.useAnimations,exports.useFBO=ee.useFBO,exports.useIntersect=re.useIntersect,exports.useBoxProjectedEnv=se.useBoxProjectedEnv,exports.BBAnchor=oe.BBAnchor,exports.useTrailTexture=te.useTrailTexture,exports.CurveModifier=ie.CurveModifier,exports.MeshDistortMaterial=ce.MeshDistortMaterial,exports.MeshWobbleMaterial=ue.MeshWobbleMaterial,exports.MeshReflectorMaterial=ae.MeshReflectorMaterial,exports.MeshRefractionMaterial=ne.MeshRefractionMaterial,exports.MeshTransmissionMaterial=je.MeshTransmissionMaterial,exports.PointMaterial=pe.PointMaterial,exports.PointMaterialImpl=pe.PointMaterialImpl,exports.shaderMaterial=xe.shaderMaterial,exports.SoftShadows=le.SoftShadows,exports.softShadows=le.softShadows,exports.Box=de.Box,exports.Capsule=de.Capsule,exports.Circle=de.Circle,exports.Cone=de.Cone,exports.Cylinder=de.Cylinder,exports.Dodecahedron=de.Dodecahedron,exports.Extrude=de.Extrude,exports.Icosahedron=de.Icosahedron,exports.Lathe=de.Lathe,exports.Octahedron=de.Octahedron,exports.Plane=de.Plane,exports.Polyhedron=de.Polyhedron,exports.Ring=de.Ring,exports.Sphere=de.Sphere,exports.Tetrahedron=de.Tetrahedron,exports.Torus=de.Torus,exports.TorusKnot=de.TorusKnot,exports.Tube=de.Tube,exports.RoundedBox=qe.RoundedBox,exports.ScreenQuad=me.ScreenQuad,exports.Center=he.Center,exports.Bounds=Ce.Bounds,exports.useBounds=Ce.useBounds,exports.CameraShake=Me.CameraShake,exports.Float=Se.Float,exports.Stage=Te.Stage,exports.Backdrop=fe.Backdrop,exports.Shadow=Pe.Shadow,exports.Caustics=be.Caustics,exports.ContactShadows=Be.ContactShadows,exports.AccumulativeShadows=ge.AccumulativeShadows,exports.RandomizedLight=ge.RandomizedLight,exports.accumulativeContext=ge.accumulativeContext,exports.Reflector=ve.Reflector,exports.SpotLight=Ae.SpotLight,exports.SpotLightShadow=Ae.SpotLightShadow,exports.Environment=Le.Environment,exports.EnvironmentCube=Le.EnvironmentCube,exports.EnvironmentMap=Le.EnvironmentMap,exports.EnvironmentPortal=Le.EnvironmentPortal,exports.useEnvironment=Le.useEnvironment,exports.Lightformer=ke.Lightformer,exports.Sky=Ge.Sky,exports.calcPosFromAngles=Ge.calcPosFromAngles,exports.Stars=De.Stars,exports.Cloud=Re.Cloud,exports.Sparkles=Ee.Sparkles,exports.useMatcapTexture=we.useMatcapTexture,exports.useNormalTexture=ze.useNormalTexture,exports.Point=Fe.Point,exports.Points=Fe.Points,exports.PointsBuffer=Fe.PointsBuffer,exports.PositionPoint=Fe.PositionPoint,exports.Instance=Oe.Instance,exports.Instances=Oe.Instances,exports.Merged=Oe.Merged,exports.Segment=Ie.Segment,exports.SegmentObject=Ie.SegmentObject,exports.Segments=Ie.Segments,exports.Detailed=He.Detailed,exports.Preload=Ve.Preload,exports.BakeShadows=ye.BakeShadows,exports.meshBounds=Qe.meshBounds,exports.AdaptiveDpr=Xe.AdaptiveDpr,exports.AdaptiveEvents=Ke.AdaptiveEvents,exports.PerformanceMonitor=We.PerformanceMonitor,exports.usePerformanceMonitor=We.usePerformanceMonitor,exports.RenderTexture=Ne.RenderTexture,exports.Mask=Ue.Mask,exports.useMask=Ue.useMask,exports.Hud=_e.Hud;
package/native/index.js CHANGED
@@ -122,6 +122,7 @@ import '../materials/BlurPass.js';
122
122
  import '../materials/ConvolutionMaterial.js';
123
123
  import '../materials/MeshReflectorMaterial.js';
124
124
  import '../materials/MeshRefractionMaterial.js';
125
+ import '../materials/DiscardMaterial.js';
125
126
  import '../helpers/environment-assets.js';
126
127
  import '../materials/SpotLightMaterial.js';
127
128
  import 'react-composer';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-three/drei",
3
- "version": "9.52.5",
3
+ "version": "9.53.0",
4
4
  "private": false,
5
5
  "description": "useful add-ons for react-three-fiber",
6
6
  "keywords": [
package/web/index.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Html.cjs.js"),r=require("./CycleRaycast.cjs.js"),s=require("./useCursor.cjs.js"),o=require("./Loader.cjs.js"),t=require("./ScrollControls.cjs.js"),i=require("./PresentationControls.cjs.js"),c=require("./KeyboardControls.cjs.js"),u=require("./Select.cjs.js"),a=require("./View.cjs.js"),n=require("./pivotControls/index.cjs.js"),j=require("../core/Billboard.cjs.js"),p=require("../core/ScreenSpace.cjs.js"),l=require("../core/QuadraticBezierLine.cjs.js"),x=require("../core/CubicBezierLine.cjs.js"),q=require("../core/CatmullRomLine.cjs.js"),d=require("../core/Line.cjs.js"),C=require("../core/PositionalAudio.cjs.js"),m=require("../core/Text.cjs.js"),h=require("../core/Text3D.cjs.js"),S=require("../core/Effects.cjs.js"),M=require("../core/GradientTexture.cjs.js"),P=require("../core/Image.cjs.js"),b=require("../core/Edges.cjs.js"),T=require("../core/Trail.cjs.js"),f=require("../core/Sampler.cjs.js"),g=require("../core/ComputedAttribute.cjs.js"),B=require("../core/Clone.cjs.js"),v=require("../core/MarchingCubes.cjs.js"),A=require("../core/Decal.cjs.js"),L=require("../core/Svg.cjs.js"),w=require("../core/Gltf.cjs.js"),R=require("../core/AsciiRenderer.cjs.js"),k=require("../core/OrthographicCamera.cjs.js"),G=require("../core/PerspectiveCamera.cjs.js"),D=require("../core/CubeCamera.cjs.js"),E=require("../core/DeviceOrientationControls.cjs.js"),y=require("../core/FlyControls.cjs.js"),z=require("../core/MapControls.cjs.js"),F=require("../core/OrbitControls.cjs.js"),O=require("../core/TrackballControls.cjs.js"),I=require("../core/ArcballControls.cjs.js"),H=require("../core/TransformControls.cjs.js"),V=require("../core/PointerLockControls.cjs.js"),K=require("../core/FirstPersonControls.cjs.js"),Q=require("../core/GizmoHelper.cjs.js"),X=require("../core/GizmoViewcube.cjs.js"),W=require("../core/GizmoViewport.cjs.js"),N=require("../core/Grid.cjs.js"),U=require("../core/useCubeTexture.cjs.js"),_=require("../core/useFBX.cjs.js"),J=require("../core/useGLTF.cjs.js"),Y=require("../core/useKTX2.cjs.js"),Z=require("../core/useProgress.cjs.js"),$=require("../core/useTexture.cjs.js"),ee=require("../core/useVideoTexture.cjs.js"),re=require("../core/Stats.cjs.js"),se=require("../core/useDepthBuffer.cjs.js"),oe=require("../core/useAspect.cjs.js"),te=require("../core/useCamera.cjs.js"),ie=require("../core/useDetectGPU.cjs.js"),ce=require("../core/useHelper.cjs.js"),ue=require("../core/useBVH.cjs.js"),ae=require("../core/useContextBridge.cjs.js"),ne=require("../core/useAnimations.cjs.js"),je=require("../core/useFBO.cjs.js"),pe=require("../core/useIntersect.cjs.js"),le=require("../core/useBoxProjectedEnv.cjs.js"),xe=require("../core/BBAnchor.cjs.js"),qe=require("../core/useTrailTexture.cjs.js"),de=require("../core/CurveModifier.cjs.js"),Ce=require("../core/MeshDistortMaterial.cjs.js"),me=require("../core/MeshWobbleMaterial.cjs.js"),he=require("../core/MeshReflectorMaterial.cjs.js"),Se=require("../core/MeshRefractionMaterial.cjs.js"),Me=require("../core/MeshTransmissionMaterial.cjs.js"),Pe=require("../core/PointMaterial.cjs.js"),be=require("../core/shaderMaterial.cjs.js"),Te=require("../core/softShadows.cjs.js"),fe=require("../core/shapes.cjs.js"),ge=require("../core/RoundedBox.cjs.js"),Be=require("../core/ScreenQuad.cjs.js"),ve=require("../core/Center.cjs.js"),Ae=require("../core/Bounds.cjs.js"),Le=require("../core/CameraShake.cjs.js"),we=require("../core/Float.cjs.js"),Re=require("../core/Stage.cjs.js"),ke=require("../core/Backdrop.cjs.js"),Ge=require("../core/Shadow.cjs.js"),De=require("../core/Caustics.cjs.js"),Ee=require("../core/ContactShadows.cjs.js"),ye=require("../core/AccumulativeShadows.cjs.js"),ze=require("../core/Reflector.cjs.js"),Fe=require("../core/SpotLight.cjs.js"),Oe=require("../core/Environment.cjs.js"),Ie=require("../core/Lightformer.cjs.js"),He=require("../core/Sky.cjs.js"),Ve=require("../core/Stars.cjs.js"),Ke=require("../core/Cloud.cjs.js"),Qe=require("../core/Sparkles.cjs.js"),Xe=require("../core/useMatcapTexture.cjs.js"),We=require("../core/useNormalTexture.cjs.js"),Ne=require("../core/Points.cjs.js"),Ue=require("../core/Instances.cjs.js"),_e=require("../core/Segments.cjs.js"),Je=require("../core/Detailed.cjs.js"),Ye=require("../core/Preload.cjs.js"),Ze=require("../core/BakeShadows.cjs.js"),$e=require("../core/meshBounds.cjs.js"),er=require("../core/AdaptiveDpr.cjs.js"),rr=require("../core/AdaptiveEvents.cjs.js"),sr=require("../core/PerformanceMonitor.cjs.js"),or=require("../core/RenderTexture.cjs.js"),tr=require("../core/Mask.cjs.js"),ir=require("../core/Hud.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("react-dom/client"),require("three"),require("@react-three/fiber"),require("zustand"),require("react-merge-refs"),require("maath"),require("@react-spring/three"),require("@use-gesture/react"),require("zustand/middleware"),require("three-stdlib"),require("zustand/shallow"),require("./pivotControls/AxisArrow.cjs.js"),require("./pivotControls/context.cjs.js"),require("./pivotControls/PlaneSlider.cjs.js"),require("./pivotControls/AxisRotator.cjs.js"),require("lodash.clamp"),require("troika-three-text"),require("suspend-react"),require("meshline"),require("lodash.pick"),require("lodash.omit"),require("stats.js"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("three-mesh-bvh"),require("../materials/BlurPass.cjs.js"),require("../materials/ConvolutionMaterial.cjs.js"),require("../materials/MeshReflectorMaterial.cjs.js"),require("../materials/MeshRefractionMaterial.cjs.js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("react-composer"),exports.Html=e.Html,exports.CycleRaycast=r.CycleRaycast,exports.useCursor=s.useCursor,exports.Loader=o.Loader,exports.Scroll=t.Scroll,exports.ScrollControls=t.ScrollControls,exports.useScroll=t.useScroll,exports.PresentationControls=i.PresentationControls,exports.KeyboardControls=c.KeyboardControls,exports.useKeyboardControls=c.useKeyboardControls,exports.Select=u.Select,exports.useSelect=u.useSelect,exports.View=a.View,exports.PivotControls=n.PivotControls,exports.calculateScaleFactor=n.calculateScaleFactor,exports.Billboard=j.Billboard,exports.ScreenSpace=p.ScreenSpace,exports.QuadraticBezierLine=l.QuadraticBezierLine,exports.CubicBezierLine=x.CubicBezierLine,exports.CatmullRomLine=q.CatmullRomLine,exports.Line=d.Line,exports.PositionalAudio=C.PositionalAudio,exports.Text=m.Text,exports.Text3D=h.Text3D,exports.Effects=S.Effects,exports.isWebGL2Available=S.isWebGL2Available,exports.GradientTexture=M.GradientTexture,exports.Image=P.Image,exports.Edges=b.Edges,exports.Trail=T.Trail,exports.useTrail=T.useTrail,exports.Sampler=f.Sampler,exports.useSurfaceSampler=f.useSurfaceSampler,exports.ComputedAttribute=g.ComputedAttribute,exports.Clone=B.Clone,exports.MarchingCube=v.MarchingCube,exports.MarchingCubes=v.MarchingCubes,exports.MarchingPlane=v.MarchingPlane,exports.Decal=A.Decal,exports.Svg=L.Svg,exports.Gltf=w.Gltf,exports.AsciiRenderer=R.AsciiRenderer,exports.OrthographicCamera=k.OrthographicCamera,exports.PerspectiveCamera=G.PerspectiveCamera,exports.CubeCamera=D.CubeCamera,exports.DeviceOrientationControls=E.DeviceOrientationControls,exports.FlyControls=y.FlyControls,exports.MapControls=z.MapControls,exports.OrbitControls=F.OrbitControls,exports.TrackballControls=O.TrackballControls,exports.ArcballControls=I.ArcballControls,exports.TransformControls=H.TransformControls,exports.PointerLockControls=V.PointerLockControls,exports.FirstPersonControls=K.FirstPersonControls,exports.GizmoHelper=Q.GizmoHelper,exports.useGizmoContext=Q.useGizmoContext,exports.GizmoViewcube=X.GizmoViewcube,exports.GizmoViewport=W.GizmoViewport,exports.Grid=N.Grid,exports.useCubeTexture=U.useCubeTexture,exports.useFBX=_.useFBX,exports.useGLTF=J.useGLTF,exports.useKTX2=Y.useKTX2,exports.useProgress=Z.useProgress,exports.IsObject=$.IsObject,exports.useTexture=$.useTexture,exports.useVideoTexture=ee.useVideoTexture,exports.Stats=re.Stats,exports.useDepthBuffer=se.useDepthBuffer,exports.useAspect=oe.useAspect,exports.useCamera=te.useCamera,exports.useDetectGPU=ie.useDetectGPU,exports.useHelper=ce.useHelper,exports.useBVH=ue.useBVH,exports.useContextBridge=ae.useContextBridge,exports.useAnimations=ne.useAnimations,exports.useFBO=je.useFBO,exports.useIntersect=pe.useIntersect,exports.useBoxProjectedEnv=le.useBoxProjectedEnv,exports.BBAnchor=xe.BBAnchor,exports.useTrailTexture=qe.useTrailTexture,exports.CurveModifier=de.CurveModifier,exports.MeshDistortMaterial=Ce.MeshDistortMaterial,exports.MeshWobbleMaterial=me.MeshWobbleMaterial,exports.MeshReflectorMaterial=he.MeshReflectorMaterial,exports.MeshRefractionMaterial=Se.MeshRefractionMaterial,exports.MeshTransmissionMaterial=Me.MeshTransmissionMaterial,exports.PointMaterial=Pe.PointMaterial,exports.PointMaterialImpl=Pe.PointMaterialImpl,exports.shaderMaterial=be.shaderMaterial,exports.SoftShadows=Te.SoftShadows,exports.softShadows=Te.softShadows,exports.Box=fe.Box,exports.Capsule=fe.Capsule,exports.Circle=fe.Circle,exports.Cone=fe.Cone,exports.Cylinder=fe.Cylinder,exports.Dodecahedron=fe.Dodecahedron,exports.Extrude=fe.Extrude,exports.Icosahedron=fe.Icosahedron,exports.Lathe=fe.Lathe,exports.Octahedron=fe.Octahedron,exports.Plane=fe.Plane,exports.Polyhedron=fe.Polyhedron,exports.Ring=fe.Ring,exports.Sphere=fe.Sphere,exports.Tetrahedron=fe.Tetrahedron,exports.Torus=fe.Torus,exports.TorusKnot=fe.TorusKnot,exports.Tube=fe.Tube,exports.RoundedBox=ge.RoundedBox,exports.ScreenQuad=Be.ScreenQuad,exports.Center=ve.Center,exports.Bounds=Ae.Bounds,exports.useBounds=Ae.useBounds,exports.CameraShake=Le.CameraShake,exports.Float=we.Float,exports.Stage=Re.Stage,exports.Backdrop=ke.Backdrop,exports.Shadow=Ge.Shadow,exports.Caustics=De.Caustics,exports.ContactShadows=Ee.ContactShadows,exports.AccumulativeShadows=ye.AccumulativeShadows,exports.RandomizedLight=ye.RandomizedLight,exports.accumulativeContext=ye.accumulativeContext,exports.Reflector=ze.Reflector,exports.SpotLight=Fe.SpotLight,exports.SpotLightShadow=Fe.SpotLightShadow,exports.Environment=Oe.Environment,exports.EnvironmentCube=Oe.EnvironmentCube,exports.EnvironmentMap=Oe.EnvironmentMap,exports.EnvironmentPortal=Oe.EnvironmentPortal,exports.useEnvironment=Oe.useEnvironment,exports.Lightformer=Ie.Lightformer,exports.Sky=He.Sky,exports.calcPosFromAngles=He.calcPosFromAngles,exports.Stars=Ve.Stars,exports.Cloud=Ke.Cloud,exports.Sparkles=Qe.Sparkles,exports.useMatcapTexture=Xe.useMatcapTexture,exports.useNormalTexture=We.useNormalTexture,exports.Point=Ne.Point,exports.Points=Ne.Points,exports.PointsBuffer=Ne.PointsBuffer,exports.PositionPoint=Ne.PositionPoint,exports.Instance=Ue.Instance,exports.Instances=Ue.Instances,exports.Merged=Ue.Merged,exports.Segment=_e.Segment,exports.SegmentObject=_e.SegmentObject,exports.Segments=_e.Segments,exports.Detailed=Je.Detailed,exports.Preload=Ye.Preload,exports.BakeShadows=Ze.BakeShadows,exports.meshBounds=$e.meshBounds,exports.AdaptiveDpr=er.AdaptiveDpr,exports.AdaptiveEvents=rr.AdaptiveEvents,exports.PerformanceMonitor=sr.PerformanceMonitor,exports.usePerformanceMonitor=sr.usePerformanceMonitor,exports.RenderTexture=or.RenderTexture,exports.Mask=tr.Mask,exports.useMask=tr.useMask,exports.Hud=ir.Hud;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Html.cjs.js"),r=require("./CycleRaycast.cjs.js"),s=require("./useCursor.cjs.js"),o=require("./Loader.cjs.js"),t=require("./ScrollControls.cjs.js"),i=require("./PresentationControls.cjs.js"),c=require("./KeyboardControls.cjs.js"),u=require("./Select.cjs.js"),a=require("./View.cjs.js"),n=require("./pivotControls/index.cjs.js"),j=require("../core/Billboard.cjs.js"),p=require("../core/ScreenSpace.cjs.js"),l=require("../core/QuadraticBezierLine.cjs.js"),x=require("../core/CubicBezierLine.cjs.js"),q=require("../core/CatmullRomLine.cjs.js"),d=require("../core/Line.cjs.js"),C=require("../core/PositionalAudio.cjs.js"),m=require("../core/Text.cjs.js"),h=require("../core/Text3D.cjs.js"),S=require("../core/Effects.cjs.js"),M=require("../core/GradientTexture.cjs.js"),P=require("../core/Image.cjs.js"),b=require("../core/Edges.cjs.js"),T=require("../core/Trail.cjs.js"),f=require("../core/Sampler.cjs.js"),g=require("../core/ComputedAttribute.cjs.js"),B=require("../core/Clone.cjs.js"),v=require("../core/MarchingCubes.cjs.js"),A=require("../core/Decal.cjs.js"),L=require("../core/Svg.cjs.js"),w=require("../core/Gltf.cjs.js"),R=require("../core/AsciiRenderer.cjs.js"),k=require("../core/OrthographicCamera.cjs.js"),G=require("../core/PerspectiveCamera.cjs.js"),D=require("../core/CubeCamera.cjs.js"),E=require("../core/DeviceOrientationControls.cjs.js"),y=require("../core/FlyControls.cjs.js"),z=require("../core/MapControls.cjs.js"),F=require("../core/OrbitControls.cjs.js"),O=require("../core/TrackballControls.cjs.js"),I=require("../core/ArcballControls.cjs.js"),H=require("../core/TransformControls.cjs.js"),V=require("../core/PointerLockControls.cjs.js"),K=require("../core/FirstPersonControls.cjs.js"),Q=require("../core/GizmoHelper.cjs.js"),X=require("../core/GizmoViewcube.cjs.js"),W=require("../core/GizmoViewport.cjs.js"),N=require("../core/Grid.cjs.js"),U=require("../core/useCubeTexture.cjs.js"),_=require("../core/useFBX.cjs.js"),J=require("../core/useGLTF.cjs.js"),Y=require("../core/useKTX2.cjs.js"),Z=require("../core/useProgress.cjs.js"),$=require("../core/useTexture.cjs.js"),ee=require("../core/useVideoTexture.cjs.js"),re=require("../core/Stats.cjs.js"),se=require("../core/useDepthBuffer.cjs.js"),oe=require("../core/useAspect.cjs.js"),te=require("../core/useCamera.cjs.js"),ie=require("../core/useDetectGPU.cjs.js"),ce=require("../core/useHelper.cjs.js"),ue=require("../core/useBVH.cjs.js"),ae=require("../core/useContextBridge.cjs.js"),ne=require("../core/useAnimations.cjs.js"),je=require("../core/useFBO.cjs.js"),pe=require("../core/useIntersect.cjs.js"),le=require("../core/useBoxProjectedEnv.cjs.js"),xe=require("../core/BBAnchor.cjs.js"),qe=require("../core/useTrailTexture.cjs.js"),de=require("../core/CurveModifier.cjs.js"),Ce=require("../core/MeshDistortMaterial.cjs.js"),me=require("../core/MeshWobbleMaterial.cjs.js"),he=require("../core/MeshReflectorMaterial.cjs.js"),Se=require("../core/MeshRefractionMaterial.cjs.js"),Me=require("../core/MeshTransmissionMaterial.cjs.js"),Pe=require("../core/PointMaterial.cjs.js"),be=require("../core/shaderMaterial.cjs.js"),Te=require("../core/softShadows.cjs.js"),fe=require("../core/shapes.cjs.js"),ge=require("../core/RoundedBox.cjs.js"),Be=require("../core/ScreenQuad.cjs.js"),ve=require("../core/Center.cjs.js"),Ae=require("../core/Bounds.cjs.js"),Le=require("../core/CameraShake.cjs.js"),we=require("../core/Float.cjs.js"),Re=require("../core/Stage.cjs.js"),ke=require("../core/Backdrop.cjs.js"),Ge=require("../core/Shadow.cjs.js"),De=require("../core/Caustics.cjs.js"),Ee=require("../core/ContactShadows.cjs.js"),ye=require("../core/AccumulativeShadows.cjs.js"),ze=require("../core/Reflector.cjs.js"),Fe=require("../core/SpotLight.cjs.js"),Oe=require("../core/Environment.cjs.js"),Ie=require("../core/Lightformer.cjs.js"),He=require("../core/Sky.cjs.js"),Ve=require("../core/Stars.cjs.js"),Ke=require("../core/Cloud.cjs.js"),Qe=require("../core/Sparkles.cjs.js"),Xe=require("../core/useMatcapTexture.cjs.js"),We=require("../core/useNormalTexture.cjs.js"),Ne=require("../core/Points.cjs.js"),Ue=require("../core/Instances.cjs.js"),_e=require("../core/Segments.cjs.js"),Je=require("../core/Detailed.cjs.js"),Ye=require("../core/Preload.cjs.js"),Ze=require("../core/BakeShadows.cjs.js"),$e=require("../core/meshBounds.cjs.js"),er=require("../core/AdaptiveDpr.cjs.js"),rr=require("../core/AdaptiveEvents.cjs.js"),sr=require("../core/PerformanceMonitor.cjs.js"),or=require("../core/RenderTexture.cjs.js"),tr=require("../core/Mask.cjs.js"),ir=require("../core/Hud.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("react-dom/client"),require("three"),require("@react-three/fiber"),require("zustand"),require("react-merge-refs"),require("maath"),require("@react-spring/three"),require("@use-gesture/react"),require("zustand/middleware"),require("three-stdlib"),require("zustand/shallow"),require("./pivotControls/AxisArrow.cjs.js"),require("./pivotControls/context.cjs.js"),require("./pivotControls/PlaneSlider.cjs.js"),require("./pivotControls/AxisRotator.cjs.js"),require("lodash.clamp"),require("troika-three-text"),require("suspend-react"),require("meshline"),require("lodash.pick"),require("lodash.omit"),require("stats.js"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("three-mesh-bvh"),require("../materials/BlurPass.cjs.js"),require("../materials/ConvolutionMaterial.cjs.js"),require("../materials/MeshReflectorMaterial.cjs.js"),require("../materials/MeshRefractionMaterial.cjs.js"),require("../materials/DiscardMaterial.cjs.js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("react-composer"),exports.Html=e.Html,exports.CycleRaycast=r.CycleRaycast,exports.useCursor=s.useCursor,exports.Loader=o.Loader,exports.Scroll=t.Scroll,exports.ScrollControls=t.ScrollControls,exports.useScroll=t.useScroll,exports.PresentationControls=i.PresentationControls,exports.KeyboardControls=c.KeyboardControls,exports.useKeyboardControls=c.useKeyboardControls,exports.Select=u.Select,exports.useSelect=u.useSelect,exports.View=a.View,exports.PivotControls=n.PivotControls,exports.calculateScaleFactor=n.calculateScaleFactor,exports.Billboard=j.Billboard,exports.ScreenSpace=p.ScreenSpace,exports.QuadraticBezierLine=l.QuadraticBezierLine,exports.CubicBezierLine=x.CubicBezierLine,exports.CatmullRomLine=q.CatmullRomLine,exports.Line=d.Line,exports.PositionalAudio=C.PositionalAudio,exports.Text=m.Text,exports.Text3D=h.Text3D,exports.Effects=S.Effects,exports.isWebGL2Available=S.isWebGL2Available,exports.GradientTexture=M.GradientTexture,exports.Image=P.Image,exports.Edges=b.Edges,exports.Trail=T.Trail,exports.useTrail=T.useTrail,exports.Sampler=f.Sampler,exports.useSurfaceSampler=f.useSurfaceSampler,exports.ComputedAttribute=g.ComputedAttribute,exports.Clone=B.Clone,exports.MarchingCube=v.MarchingCube,exports.MarchingCubes=v.MarchingCubes,exports.MarchingPlane=v.MarchingPlane,exports.Decal=A.Decal,exports.Svg=L.Svg,exports.Gltf=w.Gltf,exports.AsciiRenderer=R.AsciiRenderer,exports.OrthographicCamera=k.OrthographicCamera,exports.PerspectiveCamera=G.PerspectiveCamera,exports.CubeCamera=D.CubeCamera,exports.DeviceOrientationControls=E.DeviceOrientationControls,exports.FlyControls=y.FlyControls,exports.MapControls=z.MapControls,exports.OrbitControls=F.OrbitControls,exports.TrackballControls=O.TrackballControls,exports.ArcballControls=I.ArcballControls,exports.TransformControls=H.TransformControls,exports.PointerLockControls=V.PointerLockControls,exports.FirstPersonControls=K.FirstPersonControls,exports.GizmoHelper=Q.GizmoHelper,exports.useGizmoContext=Q.useGizmoContext,exports.GizmoViewcube=X.GizmoViewcube,exports.GizmoViewport=W.GizmoViewport,exports.Grid=N.Grid,exports.useCubeTexture=U.useCubeTexture,exports.useFBX=_.useFBX,exports.useGLTF=J.useGLTF,exports.useKTX2=Y.useKTX2,exports.useProgress=Z.useProgress,exports.IsObject=$.IsObject,exports.useTexture=$.useTexture,exports.useVideoTexture=ee.useVideoTexture,exports.Stats=re.Stats,exports.useDepthBuffer=se.useDepthBuffer,exports.useAspect=oe.useAspect,exports.useCamera=te.useCamera,exports.useDetectGPU=ie.useDetectGPU,exports.useHelper=ce.useHelper,exports.useBVH=ue.useBVH,exports.useContextBridge=ae.useContextBridge,exports.useAnimations=ne.useAnimations,exports.useFBO=je.useFBO,exports.useIntersect=pe.useIntersect,exports.useBoxProjectedEnv=le.useBoxProjectedEnv,exports.BBAnchor=xe.BBAnchor,exports.useTrailTexture=qe.useTrailTexture,exports.CurveModifier=de.CurveModifier,exports.MeshDistortMaterial=Ce.MeshDistortMaterial,exports.MeshWobbleMaterial=me.MeshWobbleMaterial,exports.MeshReflectorMaterial=he.MeshReflectorMaterial,exports.MeshRefractionMaterial=Se.MeshRefractionMaterial,exports.MeshTransmissionMaterial=Me.MeshTransmissionMaterial,exports.PointMaterial=Pe.PointMaterial,exports.PointMaterialImpl=Pe.PointMaterialImpl,exports.shaderMaterial=be.shaderMaterial,exports.SoftShadows=Te.SoftShadows,exports.softShadows=Te.softShadows,exports.Box=fe.Box,exports.Capsule=fe.Capsule,exports.Circle=fe.Circle,exports.Cone=fe.Cone,exports.Cylinder=fe.Cylinder,exports.Dodecahedron=fe.Dodecahedron,exports.Extrude=fe.Extrude,exports.Icosahedron=fe.Icosahedron,exports.Lathe=fe.Lathe,exports.Octahedron=fe.Octahedron,exports.Plane=fe.Plane,exports.Polyhedron=fe.Polyhedron,exports.Ring=fe.Ring,exports.Sphere=fe.Sphere,exports.Tetrahedron=fe.Tetrahedron,exports.Torus=fe.Torus,exports.TorusKnot=fe.TorusKnot,exports.Tube=fe.Tube,exports.RoundedBox=ge.RoundedBox,exports.ScreenQuad=Be.ScreenQuad,exports.Center=ve.Center,exports.Bounds=Ae.Bounds,exports.useBounds=Ae.useBounds,exports.CameraShake=Le.CameraShake,exports.Float=we.Float,exports.Stage=Re.Stage,exports.Backdrop=ke.Backdrop,exports.Shadow=Ge.Shadow,exports.Caustics=De.Caustics,exports.ContactShadows=Ee.ContactShadows,exports.AccumulativeShadows=ye.AccumulativeShadows,exports.RandomizedLight=ye.RandomizedLight,exports.accumulativeContext=ye.accumulativeContext,exports.Reflector=ze.Reflector,exports.SpotLight=Fe.SpotLight,exports.SpotLightShadow=Fe.SpotLightShadow,exports.Environment=Oe.Environment,exports.EnvironmentCube=Oe.EnvironmentCube,exports.EnvironmentMap=Oe.EnvironmentMap,exports.EnvironmentPortal=Oe.EnvironmentPortal,exports.useEnvironment=Oe.useEnvironment,exports.Lightformer=Ie.Lightformer,exports.Sky=He.Sky,exports.calcPosFromAngles=He.calcPosFromAngles,exports.Stars=Ve.Stars,exports.Cloud=Ke.Cloud,exports.Sparkles=Qe.Sparkles,exports.useMatcapTexture=Xe.useMatcapTexture,exports.useNormalTexture=We.useNormalTexture,exports.Point=Ne.Point,exports.Points=Ne.Points,exports.PointsBuffer=Ne.PointsBuffer,exports.PositionPoint=Ne.PositionPoint,exports.Instance=Ue.Instance,exports.Instances=Ue.Instances,exports.Merged=Ue.Merged,exports.Segment=_e.Segment,exports.SegmentObject=_e.SegmentObject,exports.Segments=_e.Segments,exports.Detailed=Je.Detailed,exports.Preload=Ye.Preload,exports.BakeShadows=Ze.BakeShadows,exports.meshBounds=$e.meshBounds,exports.AdaptiveDpr=er.AdaptiveDpr,exports.AdaptiveEvents=rr.AdaptiveEvents,exports.PerformanceMonitor=sr.PerformanceMonitor,exports.usePerformanceMonitor=sr.usePerformanceMonitor,exports.RenderTexture=or.RenderTexture,exports.Mask=tr.Mask,exports.useMask=tr.useMask,exports.Hud=ir.Hud;
package/web/index.js CHANGED
@@ -143,6 +143,7 @@ import '../materials/BlurPass.js';
143
143
  import '../materials/ConvolutionMaterial.js';
144
144
  import '../materials/MeshReflectorMaterial.js';
145
145
  import '../materials/MeshRefractionMaterial.js';
146
+ import '../materials/DiscardMaterial.js';
146
147
  import '../helpers/environment-assets.js';
147
148
  import '../materials/SpotLightMaterial.js';
148
149
  import 'react-composer';
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("three"),r=require("@react-three/fiber"),n=require("../../core/Line.cjs.js"),o=require("../Html.cjs.js"),a=require("./context.cjs.js");function i(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}require("@babel/runtime/helpers/extends"),require("three-stdlib"),require("react-dom/client");var c=i(e),l=i(t);const s=new l.Vector3,u=new l.Vector3,d=(e,t,r,n)=>{const o=t.dot(t),a=t.dot(e)-t.dot(r),i=t.dot(n);if(0===i)return-a/o;s.copy(n).multiplyScalar(o/i).sub(t),u.copy(n).multiplyScalar(a/i).add(r).sub(e);return-s.dot(u)/s.dot(s)},p=new l.Vector3(0,1,0),m=new l.Matrix4;exports.AxisArrow=({direction:e,axis:t})=>{const{translation:i,translationLimits:s,annotationsClass:u,depthTest:y,scale:x,lineWidth:f,fixed:g,axisColors:h,hoveredColor:b,displayValues:P,opacity:w,onDragStart:O,onDrag:v,onDragEnd:j,userData:E}=c.useContext(a.context),M=r.useThree((e=>e.controls)),k=c.useRef(null),C=c.useRef(null),q=c.useRef(null),L=c.useRef(0),[D,F]=c.useState(!1),R=c.useCallback((r=>{P&&(k.current.innerText=`${i.current[t].toFixed(2)}`,k.current.style.display="block"),r.stopPropagation();const n=(new l.Matrix4).extractRotation(C.current.matrixWorld),o=r.point.clone(),a=(new l.Vector3).setFromMatrixPosition(C.current.matrixWorld),c=e.clone().applyMatrix4(n).normalize();q.current={clickPoint:o,dir:c},L.current=i.current[t],O({component:"Arrow",axis:t,origin:a,directions:[c]}),M&&(M.enabled=!1),r.target.setPointerCapture(r.pointerId)}),[e,M,O,i,t]),T=c.useCallback((e=>{if(e.stopPropagation(),D||F(!0),q.current){const{clickPoint:r,dir:n}=q.current,[o,a]=(null==s?void 0:s[t])||[void 0,void 0];let c=d(r,n,e.ray.origin,e.ray.direction);void 0!==o&&(c=Math.max(c,o-L.current)),void 0!==a&&(c=Math.min(c,a-L.current)),i.current[t]=L.current+c,P&&(k.current.innerText=`${i.current[t].toFixed(2)}`),m.makeTranslation(n.x*c,n.y*c,n.z*c),v(m)}}),[v,D,i,s,t]),V=c.useCallback((e=>{P&&(k.current.style.display="none"),e.stopPropagation(),q.current=null,j(),M&&(M.enabled=!0),e.target.releasePointerCapture(e.pointerId)}),[M,j]),W=c.useCallback((e=>{e.stopPropagation(),F(!1)}),[]),{cylinderLength:S,coneWidth:z,coneLength:A,matrixL:_}=c.useMemo((()=>{const t=g?f/x*1.6:x/20,r=g?.2:x/5,n=g?1-r:x-r,o=(new l.Quaternion).setFromUnitVectors(p,e.clone().normalize());return{cylinderLength:n,coneWidth:t,coneLength:r,matrixL:(new l.Matrix4).makeRotationFromQuaternion(o)}}),[e,x,f,g]),U=D?b:h[t];return c.createElement("group",{ref:C},c.createElement("group",{matrix:_,matrixAutoUpdate:!1,onPointerDown:R,onPointerMove:T,onPointerUp:V,onPointerOut:W},c.createElement(o.Html,{position:[0,-A,0]},c.createElement("div",{style:{display:"none",background:"#151520",color:"white",padding:"6px 8px",borderRadius:7,whiteSpace:"nowrap"},className:u,ref:k})),c.createElement("mesh",{visible:!1,position:[0,(S+A)/2,0],userData:E},c.createElement("cylinderGeometry",{args:[1.4*z,1.4*z,S+A,8,1]})),c.createElement(n.Line,{transparent:!0,raycast:()=>null,depthTest:y,points:[0,0,0,0,S,0],lineWidth:f,color:U,opacity:w,polygonOffset:!0,renderOrder:1,polygonOffsetFactor:-10}),c.createElement("mesh",{raycast:()=>null,position:[0,S+A/2,0],renderOrder:500},c.createElement("coneGeometry",{args:[z,A,24,1]}),c.createElement("meshBasicMaterial",{transparent:!0,depthTest:y,color:U,opacity:w,polygonOffset:!0,polygonOffsetFactor:-10}))))},exports.calculateOffset=d;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("three"),r=require("@react-three/fiber"),n=require("../../core/Line.cjs.js"),o=require("../Html.cjs.js"),a=require("./context.cjs.js");function i(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}require("@babel/runtime/helpers/extends"),require("three-stdlib"),require("react-dom/client");var c=i(e),l=i(t);const s=new l.Vector3,u=new l.Vector3,d=(e,t,r,n)=>{const o=t.dot(t),a=t.dot(e)-t.dot(r),i=t.dot(n);if(0===i)return-a/o;s.copy(n).multiplyScalar(o/i).sub(t),u.copy(n).multiplyScalar(a/i).add(r).sub(e);return-s.dot(u)/s.dot(s)},p=new l.Vector3(0,1,0),m=new l.Matrix4;exports.AxisArrow=({direction:e,axis:t})=>{const{translation:i,translationLimits:s,annotations:u,annotationsClass:x,depthTest:y,scale:f,lineWidth:g,fixed:h,axisColors:b,hoveredColor:P,opacity:w,onDragStart:O,onDrag:v,onDragEnd:j,userData:E}=c.useContext(a.context),M=r.useThree((e=>e.controls)),k=c.useRef(null),C=c.useRef(null),q=c.useRef(null),L=c.useRef(0),[D,F]=c.useState(!1),R=c.useCallback((r=>{u&&(k.current.innerText=`${i.current[t].toFixed(2)}`,k.current.style.display="block"),r.stopPropagation();const n=(new l.Matrix4).extractRotation(C.current.matrixWorld),o=r.point.clone(),a=(new l.Vector3).setFromMatrixPosition(C.current.matrixWorld),c=e.clone().applyMatrix4(n).normalize();q.current={clickPoint:o,dir:c},L.current=i.current[t],O({component:"Arrow",axis:t,origin:a,directions:[c]}),M&&(M.enabled=!1),r.target.setPointerCapture(r.pointerId)}),[u,e,M,O,i,t]),T=c.useCallback((e=>{if(e.stopPropagation(),D||F(!0),q.current){const{clickPoint:r,dir:n}=q.current,[o,a]=(null==s?void 0:s[t])||[void 0,void 0];let c=d(r,n,e.ray.origin,e.ray.direction);void 0!==o&&(c=Math.max(c,o-L.current)),void 0!==a&&(c=Math.min(c,a-L.current)),i.current[t]=L.current+c,u&&(k.current.innerText=`${i.current[t].toFixed(2)}`),m.makeTranslation(n.x*c,n.y*c,n.z*c),v(m)}}),[u,v,D,i,s,t]),W=c.useCallback((e=>{u&&(k.current.style.display="none"),e.stopPropagation(),q.current=null,j(),M&&(M.enabled=!0),e.target.releasePointerCapture(e.pointerId)}),[u,M,j]),S=c.useCallback((e=>{e.stopPropagation(),F(!1)}),[]),{cylinderLength:V,coneWidth:z,coneLength:A,matrixL:_}=c.useMemo((()=>{const t=h?g/f*1.6:f/20,r=h?.2:f/5,n=h?1-r:f-r,o=(new l.Quaternion).setFromUnitVectors(p,e.clone().normalize());return{cylinderLength:n,coneWidth:t,coneLength:r,matrixL:(new l.Matrix4).makeRotationFromQuaternion(o)}}),[e,f,g,h]),U=D?P:b[t];return c.createElement("group",{ref:C},c.createElement("group",{matrix:_,matrixAutoUpdate:!1,onPointerDown:R,onPointerMove:T,onPointerUp:W,onPointerOut:S},u&&c.createElement(o.Html,{position:[0,-A,0]},c.createElement("div",{style:{display:"none",background:"#151520",color:"white",padding:"6px 8px",borderRadius:7,whiteSpace:"nowrap"},className:x,ref:k})),c.createElement("mesh",{visible:!1,position:[0,(V+A)/2,0],userData:E},c.createElement("cylinderGeometry",{args:[1.4*z,1.4*z,V+A,8,1]})),c.createElement(n.Line,{transparent:!0,raycast:()=>null,depthTest:y,points:[0,0,0,0,V,0],lineWidth:g,color:U,opacity:w,polygonOffset:!0,renderOrder:1,polygonOffsetFactor:-10}),c.createElement("mesh",{raycast:()=>null,position:[0,V+A/2,0],renderOrder:500},c.createElement("coneGeometry",{args:[z,A,24,1]}),c.createElement("meshBasicMaterial",{transparent:!0,depthTest:y,color:U,opacity:w,polygonOffset:!0,polygonOffsetFactor:-10}))))},exports.calculateOffset=d;
@@ -30,6 +30,7 @@ const AxisArrow = ({
30
30
  const {
31
31
  translation,
32
32
  translationLimits,
33
+ annotations,
33
34
  annotationsClass,
34
35
  depthTest,
35
36
  scale,
@@ -37,7 +38,6 @@ const AxisArrow = ({
37
38
  fixed,
38
39
  axisColors,
39
40
  hoveredColor,
40
- displayValues,
41
41
  opacity,
42
42
  onDragStart,
43
43
  onDrag,
@@ -52,7 +52,7 @@ const AxisArrow = ({
52
52
  const offset0 = React.useRef(0);
53
53
  const [isHovered, setIsHovered] = React.useState(false);
54
54
  const onPointerDown = React.useCallback(e => {
55
- if (displayValues) {
55
+ if (annotations) {
56
56
  divRef.current.innerText = `${translation.current[axis].toFixed(2)}`;
57
57
  divRef.current.style.display = 'block';
58
58
  }
@@ -76,7 +76,7 @@ const AxisArrow = ({
76
76
  camControls && (camControls.enabled = false); // @ts-ignore - setPointerCapture is not in the type definition
77
77
 
78
78
  e.target.setPointerCapture(e.pointerId);
79
- }, [direction, camControls, onDragStart, translation, axis]);
79
+ }, [annotations, direction, camControls, onDragStart, translation, axis]);
80
80
  const onPointerMove = React.useCallback(e => {
81
81
  e.stopPropagation();
82
82
  if (!isHovered) setIsHovered(true);
@@ -99,16 +99,16 @@ const AxisArrow = ({
99
99
 
100
100
  translation.current[axis] = offset0.current + offset;
101
101
 
102
- if (displayValues) {
102
+ if (annotations) {
103
103
  divRef.current.innerText = `${translation.current[axis].toFixed(2)}`;
104
104
  }
105
105
 
106
106
  offsetMatrix.makeTranslation(dir.x * offset, dir.y * offset, dir.z * offset);
107
107
  onDrag(offsetMatrix);
108
108
  }
109
- }, [onDrag, isHovered, translation, translationLimits, axis]);
109
+ }, [annotations, onDrag, isHovered, translation, translationLimits, axis]);
110
110
  const onPointerUp = React.useCallback(e => {
111
- if (displayValues) {
111
+ if (annotations) {
112
112
  divRef.current.style.display = 'none';
113
113
  }
114
114
 
@@ -118,7 +118,7 @@ const AxisArrow = ({
118
118
  camControls && (camControls.enabled = true); // @ts-ignore - releasePointerCapture & PointerEvent#pointerId is not in the type definition
119
119
 
120
120
  e.target.releasePointerCapture(e.pointerId);
121
- }, [camControls, onDragEnd]);
121
+ }, [annotations, camControls, onDragEnd]);
122
122
  const onPointerOut = React.useCallback(e => {
123
123
  e.stopPropagation();
124
124
  setIsHovered(false);
@@ -151,7 +151,7 @@ const AxisArrow = ({
151
151
  onPointerMove: onPointerMove,
152
152
  onPointerUp: onPointerUp,
153
153
  onPointerOut: onPointerOut
154
- }, /*#__PURE__*/React.createElement(Html, {
154
+ }, annotations && /*#__PURE__*/React.createElement(Html, {
155
155
  position: [0, -coneLength, 0]
156
156
  }, /*#__PURE__*/React.createElement("div", {
157
157
  style: {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("three"),r=require("@react-three/fiber"),n=require("../../core/Line.cjs.js"),o=require("../Html.cjs.js"),a=require("lodash.clamp"),i=require("./context.cjs.js");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}require("@babel/runtime/helpers/extends"),require("three-stdlib"),require("react-dom/client");var l=s(e),u=s(t),d=c(a);const p=new u.Vector3,m=new u.Vector3,h=e=>180*e/Math.PI,f=e=>{let t=((e,t)=>{let r=Math.floor(e/t);return r=r<0?r+1:r,e-r*t})(e,2*Math.PI);return Math.abs(t)<1e-6?0:(t<0&&(t+=2*Math.PI),t)},x=new u.Matrix4,P=new u.Vector3,M=new u.Ray,b=new u.Vector3;exports.AxisRotator=({dir1:e,dir2:t,axis:a})=>{const{rotationLimits:c,annotationsClass:s,depthTest:y,scale:g,lineWidth:w,fixed:v,axisColors:C,hoveredColor:j,displayValues:I,opacity:k,onDragStart:q,onDrag:O,onDragEnd:R,userData:V}=l.useContext(i.context),F=r.useThree((e=>e.controls)),D=l.useRef(null),E=l.useRef(null),W=l.useRef(0),z=l.useRef(0),T=l.useRef(null),[A,L]=l.useState(!1),_=l.useCallback((e=>{I&&(D.current.innerText=`${h(z.current).toFixed(0)}º`,D.current.style.display="block"),e.stopPropagation();const t=e.point.clone(),r=(new u.Vector3).setFromMatrixPosition(E.current.matrixWorld),n=(new u.Vector3).setFromMatrixColumn(E.current.matrixWorld,0).normalize(),o=(new u.Vector3).setFromMatrixColumn(E.current.matrixWorld,1).normalize(),i=(new u.Vector3).setFromMatrixColumn(E.current.matrixWorld,2).normalize(),c=(new u.Plane).setFromNormalAndCoplanarPoint(i,r);T.current={clickPoint:t,origin:r,e1:n,e2:o,normal:i,plane:c},q({component:"Rotator",axis:a,origin:r,directions:[n,o,i]}),F&&(F.enabled=!1),e.target.setPointerCapture(e.pointerId)}),[F,q,a]),S=l.useCallback((e=>{if(e.stopPropagation(),A||L(!0),T.current){const{clickPoint:t,origin:r,e1:n,e2:o,normal:i,plane:s}=T.current,[l,u]=(null==c?void 0:c[a])||[void 0,void 0];M.copy(e.ray),M.intersectPlane(s,b),M.direction.negate(),M.intersectPlane(s,b);let y=((e,t,r,n,o)=>{p.copy(e).sub(r),m.copy(t).sub(r);const a=n.dot(n),i=o.dot(o),c=p.dot(n)/a,s=p.dot(o)/i,l=m.dot(n)/a,u=m.dot(o)/i,d=Math.atan2(s,c);return Math.atan2(u,l)-d})(t,b,r,n,o),g=h(y);e.shiftKey&&(g=10*Math.round(g/10),y=(e=>e*Math.PI/180)(g)),void 0!==l&&void 0!==u&&u-l<2*Math.PI?(y=f(y),y=y>Math.PI?y-2*Math.PI:y,y=d.default(y,l-W.current,u-W.current),z.current=W.current+y):(z.current=f(W.current+y),z.current=z.current>Math.PI?z.current-2*Math.PI:z.current),I&&(g=h(z.current),D.current.innerText=`${g.toFixed(0)}º`),x.makeRotationAxis(i,y),P.copy(r).applyMatrix4(x).sub(r).negate(),x.setPosition(P),O(x)}}),[O,A,c,a]),H=l.useCallback((e=>{I&&(D.current.style.display="none"),e.stopPropagation(),W.current=z.current,T.current=null,R(),F&&(F.enabled=!0),e.target.releasePointerCapture(e.pointerId)}),[F,R]),N=l.useCallback((e=>{e.stopPropagation(),L(!1)}),[]),U=l.useMemo((()=>{const r=e.clone().normalize(),n=t.clone().normalize();return(new u.Matrix4).makeBasis(r,n,r.clone().cross(n))}),[e,t]),$=v?.65:.65*g,B=l.useMemo((()=>{const e=[];for(let t=0;t<=32;t++){const r=t*(Math.PI/2)/32;e.push(new u.Vector3(Math.cos(r)*$,Math.sin(r)*$,0))}return e}),[$]);return l.createElement("group",{ref:E,onPointerDown:_,onPointerMove:S,onPointerUp:H,onPointerOut:N,matrix:U,matrixAutoUpdate:!1},l.createElement(o.Html,{position:[$,$,0]},l.createElement("div",{style:{display:"none",background:"#151520",color:"white",padding:"6px 8px",borderRadius:7,whiteSpace:"nowrap"},className:s,ref:D})),l.createElement(n.Line,{points:B,lineWidth:4*w,visible:!1,userData:V}),l.createElement(n.Line,{transparent:!0,raycast:()=>null,depthTest:y,points:B,lineWidth:w,color:A?j:C[a],opacity:k,polygonOffset:!0,polygonOffsetFactor:-10}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("three"),r=require("@react-three/fiber"),n=require("../../core/Line.cjs.js"),o=require("../Html.cjs.js"),a=require("lodash.clamp"),i=require("./context.cjs.js");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}require("@babel/runtime/helpers/extends"),require("three-stdlib"),require("react-dom/client");var l=s(e),u=s(t),d=c(a);const p=new u.Vector3,m=new u.Vector3,h=e=>180*e/Math.PI,f=e=>{let t=((e,t)=>{let r=Math.floor(e/t);return r=r<0?r+1:r,e-r*t})(e,2*Math.PI);return Math.abs(t)<1e-6?0:(t<0&&(t+=2*Math.PI),t)},x=new u.Matrix4,P=new u.Vector3,M=new u.Ray,b=new u.Vector3;exports.AxisRotator=({dir1:e,dir2:t,axis:a})=>{const{rotationLimits:c,annotations:s,annotationsClass:y,depthTest:g,scale:w,lineWidth:v,fixed:C,axisColors:j,hoveredColor:I,opacity:k,onDragStart:q,onDrag:O,onDragEnd:R,userData:V}=l.useContext(i.context),F=r.useThree((e=>e.controls)),D=l.useRef(null),E=l.useRef(null),W=l.useRef(0),z=l.useRef(0),T=l.useRef(null),[A,L]=l.useState(!1),_=l.useCallback((e=>{s&&(D.current.innerText=`${h(z.current).toFixed(0)}º`,D.current.style.display="block"),e.stopPropagation();const t=e.point.clone(),r=(new u.Vector3).setFromMatrixPosition(E.current.matrixWorld),n=(new u.Vector3).setFromMatrixColumn(E.current.matrixWorld,0).normalize(),o=(new u.Vector3).setFromMatrixColumn(E.current.matrixWorld,1).normalize(),i=(new u.Vector3).setFromMatrixColumn(E.current.matrixWorld,2).normalize(),c=(new u.Plane).setFromNormalAndCoplanarPoint(i,r);T.current={clickPoint:t,origin:r,e1:n,e2:o,normal:i,plane:c},q({component:"Rotator",axis:a,origin:r,directions:[n,o,i]}),F&&(F.enabled=!1),e.target.setPointerCapture(e.pointerId)}),[s,F,q,a]),S=l.useCallback((e=>{if(e.stopPropagation(),A||L(!0),T.current){const{clickPoint:t,origin:r,e1:n,e2:o,normal:i,plane:l}=T.current,[u,y]=(null==c?void 0:c[a])||[void 0,void 0];M.copy(e.ray),M.intersectPlane(l,b),M.direction.negate(),M.intersectPlane(l,b);let g=((e,t,r,n,o)=>{p.copy(e).sub(r),m.copy(t).sub(r);const a=n.dot(n),i=o.dot(o),c=p.dot(n)/a,s=p.dot(o)/i,l=m.dot(n)/a,u=m.dot(o)/i,d=Math.atan2(s,c);return Math.atan2(u,l)-d})(t,b,r,n,o),w=h(g);e.shiftKey&&(w=10*Math.round(w/10),g=(e=>e*Math.PI/180)(w)),void 0!==u&&void 0!==y&&y-u<2*Math.PI?(g=f(g),g=g>Math.PI?g-2*Math.PI:g,g=d.default(g,u-W.current,y-W.current),z.current=W.current+g):(z.current=f(W.current+g),z.current=z.current>Math.PI?z.current-2*Math.PI:z.current),s&&(w=h(z.current),D.current.innerText=`${w.toFixed(0)}º`),x.makeRotationAxis(i,g),P.copy(r).applyMatrix4(x).sub(r).negate(),x.setPosition(P),O(x)}}),[s,O,A,c,a]),H=l.useCallback((e=>{s&&(D.current.style.display="none"),e.stopPropagation(),W.current=z.current,T.current=null,R(),F&&(F.enabled=!0),e.target.releasePointerCapture(e.pointerId)}),[s,F,R]),N=l.useCallback((e=>{e.stopPropagation(),L(!1)}),[]),U=l.useMemo((()=>{const r=e.clone().normalize(),n=t.clone().normalize();return(new u.Matrix4).makeBasis(r,n,r.clone().cross(n))}),[e,t]),$=C?.65:.65*w,B=l.useMemo((()=>{const e=[];for(let t=0;t<=32;t++){const r=t*(Math.PI/2)/32;e.push(new u.Vector3(Math.cos(r)*$,Math.sin(r)*$,0))}return e}),[$]);return l.createElement("group",{ref:E,onPointerDown:_,onPointerMove:S,onPointerUp:H,onPointerOut:N,matrix:U,matrixAutoUpdate:!1},s&&l.createElement(o.Html,{position:[$,$,0]},l.createElement("div",{style:{display:"none",background:"#151520",color:"white",padding:"6px 8px",borderRadius:7,whiteSpace:"nowrap"},className:y,ref:D})),l.createElement(n.Line,{points:B,lineWidth:4*v,visible:!1,userData:V}),l.createElement(n.Line,{transparent:!0,raycast:()=>null,depthTest:g,points:B,lineWidth:v,color:A?I:j[a],opacity:k,polygonOffset:!0,polygonOffsetFactor:-10}))};
@@ -58,6 +58,7 @@ const AxisRotator = ({
58
58
  }) => {
59
59
  const {
60
60
  rotationLimits,
61
+ annotations,
61
62
  annotationsClass,
62
63
  depthTest,
63
64
  scale,
@@ -65,7 +66,6 @@ const AxisRotator = ({
65
66
  fixed,
66
67
  axisColors,
67
68
  hoveredColor,
68
- displayValues,
69
69
  opacity,
70
70
  onDragStart,
71
71
  onDrag,
@@ -81,7 +81,7 @@ const AxisRotator = ({
81
81
  const clickInfo = React.useRef(null);
82
82
  const [isHovered, setIsHovered] = React.useState(false);
83
83
  const onPointerDown = React.useCallback(e => {
84
- if (displayValues) {
84
+ if (annotations) {
85
85
  divRef.current.innerText = `${toDegrees(angle.current).toFixed(0)}º`;
86
86
  divRef.current.style.display = 'block';
87
87
  }
@@ -110,7 +110,7 @@ const AxisRotator = ({
110
110
  camControls && (camControls.enabled = false); // @ts-ignore
111
111
 
112
112
  e.target.setPointerCapture(e.pointerId);
113
- }, [camControls, onDragStart, axis]);
113
+ }, [annotations, camControls, onDragStart, axis]);
114
114
  const onPointerMove = React.useCallback(e => {
115
115
  e.stopPropagation();
116
116
  if (!isHovered) setIsHovered(true);
@@ -147,7 +147,7 @@ const AxisRotator = ({
147
147
  angle.current = angle.current > Math.PI ? angle.current - 2 * Math.PI : angle.current;
148
148
  }
149
149
 
150
- if (displayValues) {
150
+ if (annotations) {
151
151
  degrees = toDegrees(angle.current);
152
152
  divRef.current.innerText = `${degrees.toFixed(0)}º`;
153
153
  }
@@ -157,9 +157,9 @@ const AxisRotator = ({
157
157
  rotMatrix.setPosition(posNew);
158
158
  onDrag(rotMatrix);
159
159
  }
160
- }, [onDrag, isHovered, rotationLimits, axis]);
160
+ }, [annotations, onDrag, isHovered, rotationLimits, axis]);
161
161
  const onPointerUp = React.useCallback(e => {
162
- if (displayValues) {
162
+ if (annotations) {
163
163
  divRef.current.style.display = 'none';
164
164
  }
165
165
 
@@ -170,7 +170,7 @@ const AxisRotator = ({
170
170
  camControls && (camControls.enabled = true); // @ts-ignore
171
171
 
172
172
  e.target.releasePointerCapture(e.pointerId);
173
- }, [camControls, onDragEnd]);
173
+ }, [annotations, camControls, onDragEnd]);
174
174
  const onPointerOut = React.useCallback(e => {
175
175
  e.stopPropagation();
176
176
  setIsHovered(false);
@@ -200,7 +200,7 @@ const AxisRotator = ({
200
200
  onPointerOut: onPointerOut,
201
201
  matrix: matrixL,
202
202
  matrixAutoUpdate: false
203
- }, /*#__PURE__*/React.createElement(Html, {
203
+ }, annotations && /*#__PURE__*/React.createElement(Html, {
204
204
  position: [r, r, 0]
205
205
  }, /*#__PURE__*/React.createElement("div", {
206
206
  style: {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("three"),r=require("@react-three/fiber"),n=require("../../core/Line.cjs.js"),o=require("../Html.cjs.js"),a=require("./context.cjs.js");function i(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}require("@babel/runtime/helpers/extends"),require("three-stdlib"),require("react-dom/client");var s=i(e),c=i(t);const l=new c.Ray,u=new c.Vector3,p=new c.Matrix4;exports.PlaneSlider=({dir1:e,dir2:t,axis:i})=>{const{translation:d,translationLimits:m,annotationsClass:x,depthTest:b,scale:g,lineWidth:h,fixed:f,axisColors:y,hoveredColor:M,displayValues:C,opacity:P,onDragStart:v,onDrag:w,onDragEnd:j,userData:O}=s.useContext(a.context),k=r.useThree((e=>e.controls)),F=s.useRef(null),V=s.useRef(null),z=s.useRef(null),E=s.useRef(0),q=s.useRef(0),[D,R]=s.useState(!1),T=s.useCallback((e=>{C&&(F.current.innerText=`${d.current[(i+1)%3].toFixed(2)}, ${d.current[(i+2)%3].toFixed(2)}`,F.current.style.display="block"),e.stopPropagation();const t=e.point.clone(),r=(new c.Vector3).setFromMatrixPosition(V.current.matrixWorld),n=(new c.Vector3).setFromMatrixColumn(V.current.matrixWorld,0).normalize(),o=(new c.Vector3).setFromMatrixColumn(V.current.matrixWorld,1).normalize(),a=(new c.Vector3).setFromMatrixColumn(V.current.matrixWorld,2).normalize(),s=(new c.Plane).setFromNormalAndCoplanarPoint(a,r);z.current={clickPoint:t,e1:n,e2:o,plane:s},E.current=d.current[(i+1)%3],q.current=d.current[(i+2)%3],v({component:"Slider",axis:i,origin:r,directions:[n,o,a]}),k&&(k.enabled=!1),e.target.setPointerCapture(e.pointerId)}),[k,v,i]),S=s.useCallback((e=>{if(e.stopPropagation(),D||R(!0),z.current){const{clickPoint:t,e1:r,e2:n,plane:o}=z.current,[a,s]=(null==m?void 0:m[(i+1)%3])||[void 0,void 0],[c,x]=(null==m?void 0:m[(i+2)%3])||[void 0,void 0];l.copy(e.ray),l.intersectPlane(o,u),l.direction.negate(),l.intersectPlane(o,u),u.sub(t);let[b,g]=((e,t,r)=>{const n=Math.abs(e.x)>=Math.abs(e.y)&&Math.abs(e.x)>=Math.abs(e.z)?0:Math.abs(e.y)>=Math.abs(e.x)&&Math.abs(e.y)>=Math.abs(e.z)?1:2,o=[0,1,2].sort(((e,r)=>Math.abs(t.getComponent(r))-Math.abs(t.getComponent(e)))),a=n===o[0]?o[1]:o[0],i=e.getComponent(n),s=e.getComponent(a),c=t.getComponent(n),l=t.getComponent(a),u=r.getComponent(n),p=(r.getComponent(a)-u*(s/i))/(l-c*(s/i));return[(u-p*c)/i,p]})(r,n,u);void 0!==a&&(b=Math.max(b,a-E.current)),void 0!==s&&(b=Math.min(b,s-E.current)),void 0!==c&&(g=Math.max(g,c-q.current)),void 0!==x&&(g=Math.min(g,x-q.current)),d.current[(i+1)%3]=E.current+b,d.current[(i+2)%3]=q.current+g,C&&(F.current.innerText=`${d.current[(i+1)%3].toFixed(2)}, ${d.current[(i+2)%3].toFixed(2)}`),p.makeTranslation(b*r.x+g*n.x,b*r.y+g*n.y,b*r.z+g*n.z),w(p)}}),[w,D,d,m,i]),W=s.useCallback((e=>{C&&(F.current.style.display="none"),e.stopPropagation(),z.current=null,j(),k&&(k.enabled=!0),e.target.releasePointerCapture(e.pointerId)}),[k,j]),$=s.useCallback((e=>{e.stopPropagation(),R(!1)}),[]),_=s.useMemo((()=>{const r=e.clone().normalize(),n=t.clone().normalize();return(new c.Matrix4).makeBasis(r,n,r.clone().cross(n))}),[e,t]),L=f?1/7:g/7,A=f?.225:.225*g,B=D?M:y[i],H=s.useMemo((()=>[new c.Vector3(0,0,0),new c.Vector3(0,A,0),new c.Vector3(A,A,0),new c.Vector3(A,0,0),new c.Vector3(0,0,0)]),[A]);return s.createElement("group",{ref:V,matrix:_,matrixAutoUpdate:!1},s.createElement(o.Html,{position:[0,0,0]},s.createElement("div",{style:{display:"none",background:"#151520",color:"white",padding:"6px 8px",borderRadius:7,whiteSpace:"nowrap"},className:x,ref:F})),s.createElement("group",{position:[1.7*L,1.7*L,0]},s.createElement("mesh",{visible:!0,onPointerDown:T,onPointerMove:S,onPointerUp:W,onPointerOut:$,scale:A,userData:O},s.createElement("planeGeometry",null),s.createElement("meshBasicMaterial",{transparent:!0,depthTest:b,color:B,polygonOffset:!0,polygonOffsetFactor:-10,side:c.DoubleSide})),s.createElement(n.Line,{position:[-A/2,-A/2,0],transparent:!0,depthTest:b,points:H,lineWidth:h,color:B,opacity:P,polygonOffset:!0,polygonOffsetFactor:-10,userData:O})))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("three"),r=require("@react-three/fiber"),n=require("../../core/Line.cjs.js"),o=require("../Html.cjs.js"),a=require("./context.cjs.js");function i(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}require("@babel/runtime/helpers/extends"),require("three-stdlib"),require("react-dom/client");var s=i(e),c=i(t);const l=new c.Ray,u=new c.Vector3,p=new c.Matrix4;exports.PlaneSlider=({dir1:e,dir2:t,axis:i})=>{const{translation:d,translationLimits:m,annotations:x,annotationsClass:b,depthTest:g,scale:h,lineWidth:f,fixed:M,axisColors:y,hoveredColor:C,opacity:P,onDragStart:v,onDrag:w,onDragEnd:j,userData:O}=s.useContext(a.context),k=r.useThree((e=>e.controls)),F=s.useRef(null),z=s.useRef(null),E=s.useRef(null),V=s.useRef(0),q=s.useRef(0),[D,R]=s.useState(!1),T=s.useCallback((e=>{x&&(F.current.innerText=`${d.current[(i+1)%3].toFixed(2)}, ${d.current[(i+2)%3].toFixed(2)}`,F.current.style.display="block"),e.stopPropagation();const t=e.point.clone(),r=(new c.Vector3).setFromMatrixPosition(z.current.matrixWorld),n=(new c.Vector3).setFromMatrixColumn(z.current.matrixWorld,0).normalize(),o=(new c.Vector3).setFromMatrixColumn(z.current.matrixWorld,1).normalize(),a=(new c.Vector3).setFromMatrixColumn(z.current.matrixWorld,2).normalize(),s=(new c.Plane).setFromNormalAndCoplanarPoint(a,r);E.current={clickPoint:t,e1:n,e2:o,plane:s},V.current=d.current[(i+1)%3],q.current=d.current[(i+2)%3],v({component:"Slider",axis:i,origin:r,directions:[n,o,a]}),k&&(k.enabled=!1),e.target.setPointerCapture(e.pointerId)}),[x,k,v,i]),S=s.useCallback((e=>{if(e.stopPropagation(),D||R(!0),E.current){const{clickPoint:t,e1:r,e2:n,plane:o}=E.current,[a,s]=(null==m?void 0:m[(i+1)%3])||[void 0,void 0],[c,b]=(null==m?void 0:m[(i+2)%3])||[void 0,void 0];l.copy(e.ray),l.intersectPlane(o,u),l.direction.negate(),l.intersectPlane(o,u),u.sub(t);let[g,h]=((e,t,r)=>{const n=Math.abs(e.x)>=Math.abs(e.y)&&Math.abs(e.x)>=Math.abs(e.z)?0:Math.abs(e.y)>=Math.abs(e.x)&&Math.abs(e.y)>=Math.abs(e.z)?1:2,o=[0,1,2].sort(((e,r)=>Math.abs(t.getComponent(r))-Math.abs(t.getComponent(e)))),a=n===o[0]?o[1]:o[0],i=e.getComponent(n),s=e.getComponent(a),c=t.getComponent(n),l=t.getComponent(a),u=r.getComponent(n),p=(r.getComponent(a)-u*(s/i))/(l-c*(s/i));return[(u-p*c)/i,p]})(r,n,u);void 0!==a&&(g=Math.max(g,a-V.current)),void 0!==s&&(g=Math.min(g,s-V.current)),void 0!==c&&(h=Math.max(h,c-q.current)),void 0!==b&&(h=Math.min(h,b-q.current)),d.current[(i+1)%3]=V.current+g,d.current[(i+2)%3]=q.current+h,x&&(F.current.innerText=`${d.current[(i+1)%3].toFixed(2)}, ${d.current[(i+2)%3].toFixed(2)}`),p.makeTranslation(g*r.x+h*n.x,g*r.y+h*n.y,g*r.z+h*n.z),w(p)}}),[x,w,D,d,m,i]),W=s.useCallback((e=>{x&&(F.current.style.display="none"),e.stopPropagation(),E.current=null,j(),k&&(k.enabled=!0),e.target.releasePointerCapture(e.pointerId)}),[x,k,j]),$=s.useCallback((e=>{e.stopPropagation(),R(!1)}),[]),_=s.useMemo((()=>{const r=e.clone().normalize(),n=t.clone().normalize();return(new c.Matrix4).makeBasis(r,n,r.clone().cross(n))}),[e,t]),L=M?1/7:h/7,A=M?.225:.225*h,B=D?C:y[i],H=s.useMemo((()=>[new c.Vector3(0,0,0),new c.Vector3(0,A,0),new c.Vector3(A,A,0),new c.Vector3(A,0,0),new c.Vector3(0,0,0)]),[A]);return s.createElement("group",{ref:z,matrix:_,matrixAutoUpdate:!1},x&&s.createElement(o.Html,{position:[0,0,0]},s.createElement("div",{style:{display:"none",background:"#151520",color:"white",padding:"6px 8px",borderRadius:7,whiteSpace:"nowrap"},className:b,ref:F})),s.createElement("group",{position:[1.7*L,1.7*L,0]},s.createElement("mesh",{visible:!0,onPointerDown:T,onPointerMove:S,onPointerUp:W,onPointerOut:$,scale:A,userData:O},s.createElement("planeGeometry",null),s.createElement("meshBasicMaterial",{transparent:!0,depthTest:g,color:B,polygonOffset:!0,polygonOffsetFactor:-10,side:c.DoubleSide})),s.createElement(n.Line,{position:[-A/2,-A/2,0],transparent:!0,depthTest:g,points:H,lineWidth:f,color:B,opacity:P,polygonOffset:!0,polygonOffsetFactor:-10,userData:O})))};
@@ -31,6 +31,7 @@ const PlaneSlider = ({
31
31
  const {
32
32
  translation,
33
33
  translationLimits,
34
+ annotations,
34
35
  annotationsClass,
35
36
  depthTest,
36
37
  scale,
@@ -38,7 +39,6 @@ const PlaneSlider = ({
38
39
  fixed,
39
40
  axisColors,
40
41
  hoveredColor,
41
- displayValues,
42
42
  opacity,
43
43
  onDragStart,
44
44
  onDrag,
@@ -54,7 +54,7 @@ const PlaneSlider = ({
54
54
  const offsetY0 = React.useRef(0);
55
55
  const [isHovered, setIsHovered] = React.useState(false);
56
56
  const onPointerDown = React.useCallback(e => {
57
- if (displayValues) {
57
+ if (annotations) {
58
58
  divRef.current.innerText = `${translation.current[(axis + 1) % 3].toFixed(2)}, ${translation.current[(axis + 2) % 3].toFixed(2)}`;
59
59
  divRef.current.style.display = 'block';
60
60
  }
@@ -83,7 +83,7 @@ const PlaneSlider = ({
83
83
  camControls && (camControls.enabled = false); // @ts-ignore
84
84
 
85
85
  e.target.setPointerCapture(e.pointerId);
86
- }, [camControls, onDragStart, axis]);
86
+ }, [annotations, camControls, onDragStart, axis]);
87
87
  const onPointerMove = React.useCallback(e => {
88
88
  e.stopPropagation();
89
89
  if (!isHovered) setIsHovered(true);
@@ -125,16 +125,16 @@ const PlaneSlider = ({
125
125
  translation.current[(axis + 1) % 3] = offsetX0.current + offsetX;
126
126
  translation.current[(axis + 2) % 3] = offsetY0.current + offsetY;
127
127
 
128
- if (displayValues) {
128
+ if (annotations) {
129
129
  divRef.current.innerText = `${translation.current[(axis + 1) % 3].toFixed(2)}, ${translation.current[(axis + 2) % 3].toFixed(2)}`;
130
130
  }
131
131
 
132
132
  offsetMatrix.makeTranslation(offsetX * e1.x + offsetY * e2.x, offsetX * e1.y + offsetY * e2.y, offsetX * e1.z + offsetY * e2.z);
133
133
  onDrag(offsetMatrix);
134
134
  }
135
- }, [onDrag, isHovered, translation, translationLimits, axis]);
135
+ }, [annotations, onDrag, isHovered, translation, translationLimits, axis]);
136
136
  const onPointerUp = React.useCallback(e => {
137
- if (displayValues) {
137
+ if (annotations) {
138
138
  divRef.current.style.display = 'none';
139
139
  }
140
140
 
@@ -144,7 +144,7 @@ const PlaneSlider = ({
144
144
  camControls && (camControls.enabled = true); // @ts-ignore
145
145
 
146
146
  e.target.releasePointerCapture(e.pointerId);
147
- }, [camControls, onDragEnd]);
147
+ }, [annotations, camControls, onDragEnd]);
148
148
  const onPointerOut = React.useCallback(e => {
149
149
  e.stopPropagation();
150
150
  setIsHovered(false);
@@ -162,7 +162,7 @@ const PlaneSlider = ({
162
162
  ref: objRef,
163
163
  matrix: matrixL,
164
164
  matrixAutoUpdate: false
165
- }, /*#__PURE__*/React.createElement(Html, {
165
+ }, annotations && /*#__PURE__*/React.createElement(Html, {
166
166
  position: [0, 0, 0]
167
167
  }, /*#__PURE__*/React.createElement("div", {
168
168
  style: {
@@ -21,11 +21,11 @@ export declare type PivotContext = {
21
21
  scale: number;
22
22
  lineWidth: number;
23
23
  fixed: boolean;
24
- displayValues: boolean;
25
24
  depthTest: boolean;
26
25
  userData?: {
27
26
  [key: string]: any;
28
27
  };
28
+ annotations?: boolean;
29
29
  annotationsClass?: string;
30
30
  };
31
31
  export declare const context: React.Context<PivotContext>;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("react"),t=require("@react-three/fiber"),i=require("./AxisArrow.cjs.js"),o=require("./PlaneSlider.cjs.js"),a=require("./AxisRotator.cjs.js"),n=require("./context.cjs.js");function c(e){if(e&&e.__esModule)return e;var r=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var i=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,i.get?i:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}require("../../core/Line.cjs.js"),require("@babel/runtime/helpers/extends"),require("three-stdlib"),require("../Html.cjs.js"),require("react-dom/client"),require("lodash.clamp");var s=c(e),l=c(r);const u=new s.Vector3,d=new s.Vector3,p=new s.Vector3,x=(e,r,t,i=1)=>{const o=u.set(e.x/t.width*2-1,-e.y/t.height*2+1,i);return o.unproject(r),o},m=(e,r,t,i)=>{const o=((e,r,t)=>{const i=t.width/2,o=t.height/2;r.updateMatrixWorld(!1);const a=e.project(r);return a.x=a.x*i+i,a.y=-a.y*o+o,a})(p.copy(e),t,i);let a=0;for(let n=0;n<2;++n){const c=d.copy(o).setComponent(n,o.getComponent(n)+r),s=x(c,t,i,c.z);a=Math.max(a,e.distanceTo(s))}return a},y=new s.Matrix4,f=new s.Matrix4,w=new s.Matrix4,g=new s.Matrix4,v=new s.Matrix4,h=new s.Matrix4,j=new s.Matrix4,b=new s.Matrix4,E=new s.Box3,A=new s.Box3,M=new s.Vector3,V=new s.Vector3,q=new s.Vector3,R=new s.Vector3,S=new s.Vector3(1,0,0),P=new s.Vector3(0,1,0),C=new s.Vector3(0,0,1),D=l.forwardRef((({matrix:e,onDragStart:r,onDrag:c,onDragEnd:u,autoTransform:d=!0,anchor:p,disableAxes:x=!1,disableSliders:D=!1,disableRotations:W=!1,activeAxes:O=[!0,!0,!0],offset:B=[0,0,0],rotation:L=[0,0,0],scale:T=1,lineWidth:z=4,fixed:_=!1,translationLimits:k,rotationLimits:F,depthTest:H=!0,axisColors:I=["#ff2060","#20df80","#2080ff"],hoveredColor:U="#ffff40",displayValues:G=!0,annotationsClass:J,opacity:K=1,visible:N=!0,userData:Q,children:X},Y)=>{const Z=t.useThree((e=>e.invalidate)),$=l.useRef(null),ee=l.useRef(null),re=l.useRef(null),te=l.useRef(null),ie=l.useRef([0,0,0]);l.useLayoutEffect((()=>{p&&(te.current.updateWorldMatrix(!0,!0),g.copy(te.current.matrixWorld).invert(),E.makeEmpty(),te.current.traverse((e=>{e.geometry&&(e.geometry.boundingBox||e.geometry.computeBoundingBox(),h.copy(e.matrixWorld).premultiply(g),A.copy(e.geometry.boundingBox),A.applyMatrix4(h),E.union(A))})),M.copy(E.max).add(E.min).multiplyScalar(.5),V.copy(E.max).sub(E.min).multiplyScalar(.5),q.copy(V).multiply(new s.Vector3(...p)).add(M),R.set(...B).add(q),re.current.position.copy(R),Z())}));const oe=l.useMemo((()=>({onDragStart:e=>{y.copy(ee.current.matrix),f.copy(ee.current.matrixWorld),r&&r(e),Z()},onDrag:e=>{w.copy($.current.matrixWorld),g.copy(w).invert(),v.copy(f).premultiply(e),h.copy(v).premultiply(g),j.copy(y).invert(),b.copy(h).multiply(j),d&&ee.current.matrix.copy(h),c&&c(h,b,v,e),Z()},onDragEnd:()=>{u&&u(),Z()},translation:ie,translationLimits:k,rotationLimits:F,axisColors:I,hoveredColor:U,opacity:K,scale:T,lineWidth:z,fixed:_,displayValues:G,depthTest:H,userData:Q,annotationsClass:J})),[r,c,u,ie,k,F,H,T,z,_,...I,U,K,G,Q,d,J]),ae=new s.Vector3;return t.useFrame((e=>{if(_){const o=m(re.current.getWorldPosition(ae),T,e.camera,e.size);var r,t,i;if(re.current)(null==(r=re.current)?void 0:r.scale.x)===o&&(null==(t=re.current)?void 0:t.scale.y)===o&&(null==(i=re.current)?void 0:i.scale.z)===o||(re.current.scale.setScalar(o),e.invalidate())}})),l.useImperativeHandle(Y,(()=>ee.current),[]),l.createElement(n.context.Provider,{value:oe},l.createElement("group",{ref:$},l.createElement("group",{ref:ee,matrix:e,matrixAutoUpdate:!1},l.createElement("group",{visible:N,ref:re,position:B,rotation:L},!x&&O[0]&&l.createElement(i.AxisArrow,{axis:0,direction:S}),!x&&O[1]&&l.createElement(i.AxisArrow,{axis:1,direction:P}),!x&&O[2]&&l.createElement(i.AxisArrow,{axis:2,direction:C}),!D&&O[0]&&O[1]&&l.createElement(o.PlaneSlider,{axis:2,dir1:S,dir2:P}),!D&&O[0]&&O[2]&&l.createElement(o.PlaneSlider,{axis:1,dir1:C,dir2:S}),!D&&O[2]&&O[1]&&l.createElement(o.PlaneSlider,{axis:0,dir1:P,dir2:C}),!W&&O[0]&&O[1]&&l.createElement(a.AxisRotator,{axis:2,dir1:S,dir2:P}),!W&&O[0]&&O[2]&&l.createElement(a.AxisRotator,{axis:1,dir1:C,dir2:S}),!W&&O[2]&&O[1]&&l.createElement(a.AxisRotator,{axis:0,dir1:P,dir2:C})),l.createElement("group",{ref:te},X))))}));exports.PivotControls=D,exports.calculateScaleFactor=m;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("react"),t=require("@react-three/fiber"),i=require("./AxisArrow.cjs.js"),o=require("./PlaneSlider.cjs.js"),n=require("./AxisRotator.cjs.js"),a=require("./context.cjs.js");function c(e){if(e&&e.__esModule)return e;var r=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var i=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,i.get?i:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}require("../../core/Line.cjs.js"),require("@babel/runtime/helpers/extends"),require("three-stdlib"),require("../Html.cjs.js"),require("react-dom/client"),require("lodash.clamp");var s=c(e),l=c(r);const u=new s.Vector3,d=new s.Vector3,x=new s.Vector3,p=(e,r,t,i=1)=>{const o=u.set(e.x/t.width*2-1,-e.y/t.height*2+1,i);return o.unproject(r),o},m=(e,r,t,i)=>{const o=((e,r,t)=>{const i=t.width/2,o=t.height/2;r.updateMatrixWorld(!1);const n=e.project(r);return n.x=n.x*i+i,n.y=-n.y*o+o,n})(x.copy(e),t,i);let n=0;for(let a=0;a<2;++a){const c=d.copy(o).setComponent(a,o.getComponent(a)+r),s=p(c,t,i,c.z);n=Math.max(n,e.distanceTo(s))}return n},f=new s.Matrix4,y=new s.Matrix4,w=new s.Matrix4,g=new s.Matrix4,v=new s.Matrix4,h=new s.Matrix4,j=new s.Matrix4,b=new s.Matrix4,E=new s.Box3,A=new s.Box3,M=new s.Vector3,q=new s.Vector3,V=new s.Vector3,R=new s.Vector3,S=new s.Vector3(1,0,0),P=new s.Vector3(0,1,0),C=new s.Vector3(0,0,1),D=l.forwardRef((({matrix:e,onDragStart:r,onDrag:c,onDragEnd:u,autoTransform:d=!0,anchor:x,disableAxes:p=!1,disableSliders:D=!1,disableRotations:W=!1,activeAxes:O=[!0,!0,!0],offset:B=[0,0,0],rotation:L=[0,0,0],scale:T=1,lineWidth:z=4,fixed:_=!1,translationLimits:k,rotationLimits:F,depthTest:H=!0,axisColors:I=["#ff2060","#20df80","#2080ff"],hoveredColor:U="#ffff40",annotations:G=!1,annotationsClass:J,opacity:K=1,visible:N=!0,userData:Q,children:X},Y)=>{const Z=t.useThree((e=>e.invalidate)),$=l.useRef(null),ee=l.useRef(null),re=l.useRef(null),te=l.useRef(null),ie=l.useRef([0,0,0]);l.useLayoutEffect((()=>{x&&(te.current.updateWorldMatrix(!0,!0),g.copy(te.current.matrixWorld).invert(),E.makeEmpty(),te.current.traverse((e=>{e.geometry&&(e.geometry.boundingBox||e.geometry.computeBoundingBox(),h.copy(e.matrixWorld).premultiply(g),A.copy(e.geometry.boundingBox),A.applyMatrix4(h),E.union(A))})),M.copy(E.max).add(E.min).multiplyScalar(.5),q.copy(E.max).sub(E.min).multiplyScalar(.5),V.copy(q).multiply(new s.Vector3(...x)).add(M),R.set(...B).add(V),re.current.position.copy(R),Z())}));const oe=l.useMemo((()=>({onDragStart:e=>{f.copy(ee.current.matrix),y.copy(ee.current.matrixWorld),r&&r(e),Z()},onDrag:e=>{w.copy($.current.matrixWorld),g.copy(w).invert(),v.copy(y).premultiply(e),h.copy(v).premultiply(g),j.copy(f).invert(),b.copy(h).multiply(j),d&&ee.current.matrix.copy(h),c&&c(h,b,v,e),Z()},onDragEnd:()=>{u&&u(),Z()},translation:ie,translationLimits:k,rotationLimits:F,axisColors:I,hoveredColor:U,opacity:K,scale:T,lineWidth:z,fixed:_,depthTest:H,userData:Q,annotations:G,annotationsClass:J})),[r,c,u,ie,k,F,H,T,z,_,...I,U,K,Q,d,G,J]),ne=new s.Vector3;return t.useFrame((e=>{if(_){const o=m(re.current.getWorldPosition(ne),T,e.camera,e.size);var r,t,i;if(re.current)(null==(r=re.current)?void 0:r.scale.x)===o&&(null==(t=re.current)?void 0:t.scale.y)===o&&(null==(i=re.current)?void 0:i.scale.z)===o||(re.current.scale.setScalar(o),e.invalidate())}})),l.useImperativeHandle(Y,(()=>ee.current),[]),l.createElement(a.context.Provider,{value:oe},l.createElement("group",{ref:$},l.createElement("group",{ref:ee,matrix:e,matrixAutoUpdate:!1},l.createElement("group",{visible:N,ref:re,position:B,rotation:L},!p&&O[0]&&l.createElement(i.AxisArrow,{axis:0,direction:S}),!p&&O[1]&&l.createElement(i.AxisArrow,{axis:1,direction:P}),!p&&O[2]&&l.createElement(i.AxisArrow,{axis:2,direction:C}),!D&&O[0]&&O[1]&&l.createElement(o.PlaneSlider,{axis:2,dir1:S,dir2:P}),!D&&O[0]&&O[2]&&l.createElement(o.PlaneSlider,{axis:1,dir1:C,dir2:S}),!D&&O[2]&&O[1]&&l.createElement(o.PlaneSlider,{axis:0,dir1:P,dir2:C}),!W&&O[0]&&O[1]&&l.createElement(n.AxisRotator,{axis:2,dir1:S,dir2:P}),!W&&O[0]&&O[2]&&l.createElement(n.AxisRotator,{axis:1,dir1:C,dir2:S}),!W&&O[2]&&O[1]&&l.createElement(n.AxisRotator,{axis:0,dir1:P,dir2:C})),l.createElement("group",{ref:te},X))))}));exports.PivotControls=D,exports.calculateScaleFactor=m;
@@ -20,12 +20,12 @@ declare type PivotControlsProps = {
20
20
  rotationLimits?: [[number, number] | undefined, [number, number] | undefined, [number, number] | undefined];
21
21
  axisColors?: [string | number, string | number, string | number];
22
22
  hoveredColor?: string | number;
23
+ annotations?: boolean;
23
24
  annotationsClass?: string;
24
25
  onDragStart?: (props: OnDragStartProps) => void;
25
26
  onDrag?: (l: THREE.Matrix4, deltaL: THREE.Matrix4, w: THREE.Matrix4, deltaW: THREE.Matrix4) => void;
26
27
  onDragEnd?: () => void;
27
28
  depthTest?: boolean;
28
- displayValues?: boolean;
29
29
  opacity?: number;
30
30
  visible?: boolean;
31
31
  userData?: {
@@ -76,7 +76,7 @@ const PivotControls = /*#__PURE__*/React.forwardRef(({
76
76
  depthTest = true,
77
77
  axisColors = ['#ff2060', '#20df80', '#2080ff'],
78
78
  hoveredColor = '#ffff40',
79
- displayValues = true,
79
+ annotations = false,
80
80
  annotationsClass,
81
81
  opacity = 1,
82
82
  visible = true,
@@ -141,11 +141,11 @@ const PivotControls = /*#__PURE__*/React.forwardRef(({
141
141
  scale,
142
142
  lineWidth,
143
143
  fixed,
144
- displayValues,
145
144
  depthTest,
146
145
  userData,
146
+ annotations,
147
147
  annotationsClass
148
- }), [onDragStart, onDrag, onDragEnd, translation, translationLimits, rotationLimits, depthTest, scale, lineWidth, fixed, ...axisColors, hoveredColor, opacity, displayValues, userData, autoTransform, annotationsClass]);
148
+ }), [onDragStart, onDrag, onDragEnd, translation, translationLimits, rotationLimits, depthTest, scale, lineWidth, fixed, ...axisColors, hoveredColor, opacity, userData, autoTransform, annotations, annotationsClass]);
149
149
  const vec = new THREE.Vector3();
150
150
  useFrame(state => {
151
151
  if (fixed) {