@react-three/drei 10.7.6 → 10.8.0-alpha.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.
Files changed (580) hide show
  1. package/README.md +49 -758
  2. package/_chunks/hls.mjs +3 -0
  3. package/_chunks/libs/@mediapipe/tasks-vision.mjs +4781 -0
  4. package/_chunks/libs/@monogrid/gainmap-js.mjs +1137 -0
  5. package/_chunks/libs/@use-gesture/core.mjs +1650 -0
  6. package/_chunks/libs/@use-gesture/react.mjs +207 -0
  7. package/_chunks/libs/camera-controls.mjs +2207 -0
  8. package/_chunks/libs/detect-gpu.mjs +515 -0
  9. package/_chunks/libs/hls.js.mjs +21925 -0
  10. package/_chunks/libs/maath.mjs +5200 -0
  11. package/_chunks/libs/stats-gl.mjs +301 -0
  12. package/_chunks/libs/stats.js.mjs +90 -0
  13. package/_chunks/libs/suspend-react.mjs +60 -0
  14. package/_chunks/libs/three.mjs +23169 -0
  15. package/_chunks/libs/tunnel-rat.mjs +458 -0
  16. package/_chunks/libs/zustand.mjs +104 -0
  17. package/_chunks/rolldown-runtime.mjs +47 -0
  18. package/_chunks/vision_bundle.mjs +3 -0
  19. package/core/_chunks/hls.mjs +3 -0
  20. package/core/_chunks/libs/@monogrid/gainmap-js.mjs +1137 -0
  21. package/core/_chunks/libs/@use-gesture/core.mjs +1650 -0
  22. package/core/_chunks/libs/@use-gesture/react.mjs +207 -0
  23. package/core/_chunks/libs/detect-gpu.mjs +515 -0
  24. package/core/_chunks/libs/hls.js.mjs +21925 -0
  25. package/core/_chunks/libs/maath.mjs +5200 -0
  26. package/core/_chunks/libs/stats-gl.mjs +301 -0
  27. package/core/_chunks/libs/stats.js.mjs +90 -0
  28. package/core/_chunks/libs/suspend-react.mjs +60 -0
  29. package/core/_chunks/libs/three.mjs +22457 -0
  30. package/core/_chunks/libs/tunnel-rat.mjs +458 -0
  31. package/core/_chunks/libs/zustand.mjs +104 -0
  32. package/core/_chunks/rolldown-runtime.mjs +47 -0
  33. package/core/core/index.d.mts +2232 -0
  34. package/core/core/index.mjs +11082 -0
  35. package/experimental/_chunks/libs/three.mjs +15386 -0
  36. package/experimental/experimental/index.d.mts +253 -0
  37. package/experimental/experimental/index.mjs +434 -0
  38. package/external/_chunks/hls.mjs +3 -0
  39. package/external/_chunks/libs/@mediapipe/tasks-vision.mjs +4781 -0
  40. package/external/_chunks/libs/camera-controls.mjs +2207 -0
  41. package/external/_chunks/libs/hls.js.mjs +21925 -0
  42. package/external/_chunks/libs/maath.mjs +5200 -0
  43. package/external/_chunks/libs/suspend-react.mjs +58 -0
  44. package/external/_chunks/libs/three.mjs +15387 -0
  45. package/external/_chunks/rolldown-runtime.mjs +32 -0
  46. package/external/_chunks/vision_bundle.mjs +3 -0
  47. package/external/external/index.d.mts +499 -0
  48. package/external/external/index.mjs +9422 -0
  49. package/index.d.mts +2567 -0
  50. package/index.mjs +20571 -0
  51. package/legacy/_chunks/hls.mjs +3 -0
  52. package/legacy/_chunks/libs/@monogrid/gainmap-js.mjs +1137 -0
  53. package/legacy/_chunks/libs/@use-gesture/core.mjs +1650 -0
  54. package/legacy/_chunks/libs/@use-gesture/react.mjs +207 -0
  55. package/legacy/_chunks/libs/bidi-js.mjs +675 -0
  56. package/legacy/_chunks/libs/detect-gpu.mjs +515 -0
  57. package/legacy/_chunks/libs/hls.js.mjs +21925 -0
  58. package/legacy/_chunks/libs/maath.mjs +5200 -0
  59. package/legacy/_chunks/libs/stats-gl.mjs +301 -0
  60. package/legacy/_chunks/libs/stats.js.mjs +90 -0
  61. package/legacy/_chunks/libs/suspend-react.mjs +60 -0
  62. package/legacy/_chunks/libs/three.mjs +26062 -0
  63. package/legacy/_chunks/libs/troika-three-text.mjs +6494 -0
  64. package/legacy/_chunks/libs/tunnel-rat.mjs +458 -0
  65. package/legacy/_chunks/libs/zustand.mjs +104 -0
  66. package/legacy/_chunks/rolldown-runtime.mjs +47 -0
  67. package/legacy/legacy/index.d.mts +2788 -0
  68. package/legacy/legacy/index.mjs +14984 -0
  69. package/native/_chunks/hls.mjs +3 -0
  70. package/native/_chunks/libs/@monogrid/gainmap-js.mjs +1137 -0
  71. package/native/_chunks/libs/@use-gesture/core.mjs +1650 -0
  72. package/native/_chunks/libs/@use-gesture/react.mjs +207 -0
  73. package/native/_chunks/libs/detect-gpu.mjs +515 -0
  74. package/native/_chunks/libs/hls.js.mjs +21925 -0
  75. package/native/_chunks/libs/maath.mjs +5200 -0
  76. package/native/_chunks/libs/stats-gl.mjs +301 -0
  77. package/native/_chunks/libs/stats.js.mjs +90 -0
  78. package/native/_chunks/libs/suspend-react.mjs +60 -0
  79. package/native/_chunks/libs/three.mjs +22592 -0
  80. package/native/_chunks/libs/tunnel-rat.mjs +458 -0
  81. package/native/_chunks/libs/zustand.mjs +104 -0
  82. package/native/_chunks/rolldown-runtime.mjs +47 -0
  83. package/native/native/index.d.mts +3168 -0
  84. package/native/native/index.mjs +14863 -0
  85. package/package.json +41 -10
  86. package/webgpu/_chunks/hls.mjs +3 -0
  87. package/webgpu/_chunks/libs/@monogrid/gainmap-js.mjs +1137 -0
  88. package/webgpu/_chunks/libs/@use-gesture/core.mjs +1650 -0
  89. package/webgpu/_chunks/libs/@use-gesture/react.mjs +207 -0
  90. package/webgpu/_chunks/libs/detect-gpu.mjs +515 -0
  91. package/webgpu/_chunks/libs/hls.js.mjs +21925 -0
  92. package/webgpu/_chunks/libs/maath.mjs +5200 -0
  93. package/webgpu/_chunks/libs/stats-gl.mjs +301 -0
  94. package/webgpu/_chunks/libs/stats.js.mjs +90 -0
  95. package/webgpu/_chunks/libs/suspend-react.mjs +60 -0
  96. package/webgpu/_chunks/libs/three.mjs +22592 -0
  97. package/webgpu/_chunks/libs/tunnel-rat.mjs +458 -0
  98. package/webgpu/_chunks/libs/zustand.mjs +104 -0
  99. package/webgpu/_chunks/rolldown-runtime.mjs +47 -0
  100. package/webgpu/webgpu/index.d.mts +3166 -0
  101. package/webgpu/webgpu/index.mjs +15015 -0
  102. package/core/AccumulativeShadows.cjs.js +0 -1
  103. package/core/AccumulativeShadows.d.ts +0 -59
  104. package/core/AccumulativeShadows.js +0 -310
  105. package/core/AdaptiveDpr.cjs.js +0 -1
  106. package/core/AdaptiveDpr.d.ts +0 -3
  107. package/core/AdaptiveDpr.js +0 -28
  108. package/core/AdaptiveEvents.cjs.js +0 -1
  109. package/core/AdaptiveEvents.d.ts +0 -1
  110. package/core/AdaptiveEvents.js +0 -20
  111. package/core/ArcballControls.cjs.js +0 -1
  112. package/core/ArcballControls.d.ts +0 -15
  113. package/core/ArcballControls.js +0 -67
  114. package/core/AsciiRenderer.cjs.js +0 -1
  115. package/core/AsciiRenderer.d.ts +0 -11
  116. package/core/AsciiRenderer.js +0 -66
  117. package/core/BBAnchor.cjs.js +0 -1
  118. package/core/BBAnchor.d.ts +0 -7
  119. package/core/BBAnchor.js +0 -37
  120. package/core/Backdrop.cjs.js +0 -1
  121. package/core/Backdrop.d.ts +0 -15
  122. package/core/Backdrop.js +0 -33
  123. package/core/BakeShadows.cjs.js +0 -1
  124. package/core/BakeShadows.d.ts +0 -1
  125. package/core/BakeShadows.js +0 -16
  126. package/core/Billboard.cjs.js +0 -1
  127. package/core/Billboard.d.ts +0 -10
  128. package/core/Billboard.js +0 -53
  129. package/core/Bounds.cjs.js +0 -1
  130. package/core/Bounds.d.ts +0 -36
  131. package/core/Bounds.js +0 -254
  132. package/core/Bvh.cjs.js +0 -1
  133. package/core/Bvh.d.ts +0 -19
  134. package/core/Bvh.js +0 -92
  135. package/core/CameraControls.cjs.js +0 -1
  136. package/core/CameraControls.d.ts +0 -48
  137. package/core/CameraControls.js +0 -151
  138. package/core/CameraShake.cjs.js +0 -1
  139. package/core/CameraShake.d.ts +0 -17
  140. package/core/CameraShake.js +0 -57
  141. package/core/CatmullRomLine.cjs.js +0 -1
  142. package/core/CatmullRomLine.d.ts +0 -10
  143. package/core/CatmullRomLine.js +0 -42
  144. package/core/Caustics.cjs.js +0 -1
  145. package/core/Caustics.d.ts +0 -32
  146. package/core/Caustics.js +0 -388
  147. package/core/Center.cjs.js +0 -1
  148. package/core/Center.d.ts +0 -33
  149. package/core/Center.js +0 -67
  150. package/core/Clone.cjs.js +0 -1
  151. package/core/Clone.d.ts +0 -15
  152. package/core/Clone.js +0 -100
  153. package/core/Cloud.cjs.js +0 -1
  154. package/core/Cloud.d.ts +0 -97
  155. package/core/Cloud.js +0 -231
  156. package/core/ComputedAttribute.cjs.js +0 -1
  157. package/core/ComputedAttribute.d.ts +0 -8
  158. package/core/ComputedAttribute.js +0 -33
  159. package/core/ContactShadows.cjs.js +0 -1
  160. package/core/ContactShadows.d.ts +0 -18
  161. package/core/ContactShadows.js +0 -114
  162. package/core/CubeCamera.cjs.js +0 -1
  163. package/core/CubeCamera.d.ts +0 -21
  164. package/core/CubeCamera.js +0 -86
  165. package/core/CubeTexture.cjs.js +0 -1
  166. package/core/CubeTexture.d.ts +0 -14
  167. package/core/CubeTexture.js +0 -25
  168. package/core/CubicBezierLine.cjs.js +0 -1
  169. package/core/CubicBezierLine.d.ts +0 -12
  170. package/core/CubicBezierLine.js +0 -28
  171. package/core/CurveModifier.cjs.js +0 -1
  172. package/core/CurveModifier.d.ts +0 -11
  173. package/core/CurveModifier.js +0 -27
  174. package/core/Decal.cjs.js +0 -1
  175. package/core/Decal.d.ts +0 -16
  176. package/core/Decal.js +0 -128
  177. package/core/Detailed.cjs.js +0 -1
  178. package/core/Detailed.d.ts +0 -10
  179. package/core/Detailed.js +0 -33
  180. package/core/DetectGPU.cjs.js +0 -1
  181. package/core/DetectGPU.d.ts +0 -7
  182. package/core/DetectGPU.js +0 -14
  183. package/core/DeviceOrientationControls.cjs.js +0 -1
  184. package/core/DeviceOrientationControls.d.ts +0 -10
  185. package/core/DeviceOrientationControls.js +0 -51
  186. package/core/Edges.cjs.js +0 -1
  187. package/core/Edges.d.ts +0 -13
  188. package/core/Edges.js +0 -38
  189. package/core/Effects.cjs.js +0 -1
  190. package/core/Effects.d.ts +0 -25
  191. package/core/Effects.js +0 -91
  192. package/core/Environment.cjs.js +0 -1
  193. package/core/Environment.d.ts +0 -37
  194. package/core/Environment.js +0 -189
  195. package/core/Example.cjs.js +0 -1
  196. package/core/Example.d.ts +0 -13
  197. package/core/Example.js +0 -46
  198. package/core/Fbo.cjs.js +0 -1
  199. package/core/Fbo.d.ts +0 -22
  200. package/core/Fbo.js +0 -63
  201. package/core/Fbx.cjs.js +0 -1
  202. package/core/Fbx.d.ts +0 -11
  203. package/core/Fbx.js +0 -23
  204. package/core/FirstPersonControls.cjs.js +0 -1
  205. package/core/FirstPersonControls.d.ts +0 -8
  206. package/core/FirstPersonControls.js +0 -38
  207. package/core/Fisheye.cjs.js +0 -1
  208. package/core/Fisheye.d.ts +0 -10
  209. package/core/Fisheye.js +0 -95
  210. package/core/Float.cjs.js +0 -1
  211. package/core/Float.d.ts +0 -14
  212. package/core/Float.js +0 -37
  213. package/core/FlyControls.cjs.js +0 -1
  214. package/core/FlyControls.d.ts +0 -10
  215. package/core/FlyControls.js +0 -55
  216. package/core/GizmoHelper.cjs.js +0 -1
  217. package/core/GizmoHelper.d.ts +0 -16
  218. package/core/GizmoHelper.js +0 -116
  219. package/core/GizmoViewcube.cjs.js +0 -1
  220. package/core/GizmoViewcube.d.ts +0 -14
  221. package/core/GizmoViewcube.js +0 -133
  222. package/core/GizmoViewport.cjs.js +0 -1
  223. package/core/GizmoViewport.d.ts +0 -16
  224. package/core/GizmoViewport.js +0 -140
  225. package/core/Gltf.cjs.js +0 -1
  226. package/core/Gltf.d.ts +0 -27
  227. package/core/Gltf.js +0 -52
  228. package/core/GradientTexture.cjs.js +0 -1
  229. package/core/GradientTexture.d.ts +0 -18
  230. package/core/GradientTexture.js +0 -54
  231. package/core/Grid.cjs.js +0 -1
  232. package/core/Grid.d.ts +0 -26
  233. package/core/Grid.js +0 -142
  234. package/core/Helper.cjs.js +0 -1
  235. package/core/Helper.d.ts +0 -16
  236. package/core/Helper.js +0 -47
  237. package/core/Hud.cjs.js +0 -1
  238. package/core/Hud.d.ts +0 -6
  239. package/core/Hud.js +0 -55
  240. package/core/Image.cjs.js +0 -1
  241. package/core/Image.d.ts +0 -38
  242. package/core/Image.js +0 -160
  243. package/core/Instances.cjs.js +0 -1
  244. package/core/Instances.d.ts +0 -64
  245. package/core/Instances.js +0 -313
  246. package/core/Ktx2.cjs.js +0 -1
  247. package/core/Ktx2.d.ts +0 -14
  248. package/core/Ktx2.js +0 -48
  249. package/core/Lightformer.cjs.js +0 -1
  250. package/core/Lightformer.d.ts +0 -15
  251. package/core/Lightformer.js +0 -63
  252. package/core/Line.cjs.js +0 -1
  253. package/core/Line.d.ts +0 -13
  254. package/core/Line.js +0 -73
  255. package/core/MapControls.cjs.js +0 -1
  256. package/core/MapControls.d.ts +0 -14
  257. package/core/MapControls.js +0 -63
  258. package/core/MarchingCubes.cjs.js +0 -1
  259. package/core/MarchingCubes.d.ts +0 -24
  260. package/core/MarchingCubes.js +0 -78
  261. package/core/Mask.cjs.js +0 -1
  262. package/core/Mask.d.ts +0 -17
  263. package/core/Mask.js +0 -42
  264. package/core/MatcapTexture.cjs.js +0 -1
  265. package/core/MatcapTexture.d.ts +0 -9
  266. package/core/MatcapTexture.js +0 -51
  267. package/core/MeshDiscardMaterial.cjs.js +0 -1
  268. package/core/MeshDiscardMaterial.d.ts +0 -10
  269. package/core/MeshDiscardMaterial.js +0 -15
  270. package/core/MeshDistortMaterial.cjs.js +0 -1
  271. package/core/MeshDistortMaterial.d.ts +0 -39
  272. package/core/MeshDistortMaterial.js +0 -72
  273. package/core/MeshPortalMaterial.cjs.js +0 -1
  274. package/core/MeshPortalMaterial.d.ts +0 -25
  275. package/core/MeshPortalMaterial.js +0 -467
  276. package/core/MeshReflectorMaterial.cjs.js +0 -1
  277. package/core/MeshReflectorMaterial.d.ts +0 -14
  278. package/core/MeshReflectorMaterial.js +0 -180
  279. package/core/MeshRefractionMaterial.cjs.js +0 -1
  280. package/core/MeshRefractionMaterial.d.ts +0 -19
  281. package/core/MeshRefractionMaterial.js +0 -73
  282. package/core/MeshTransmissionMaterial.cjs.js +0 -1
  283. package/core/MeshTransmissionMaterial.d.ts +0 -34
  284. package/core/MeshTransmissionMaterial.js +0 -402
  285. package/core/MeshWobbleMaterial.cjs.js +0 -1
  286. package/core/MeshWobbleMaterial.d.ts +0 -36
  287. package/core/MeshWobbleMaterial.js +0 -60
  288. package/core/MotionPathControls.cjs.js +0 -1
  289. package/core/MotionPathControls.d.ts +0 -33
  290. package/core/MotionPathControls.js +0 -121
  291. package/core/MultiMaterial.cjs.js +0 -1
  292. package/core/MultiMaterial.d.ts +0 -4
  293. package/core/MultiMaterial.js +0 -29
  294. package/core/NormalTexture.cjs.js +0 -1
  295. package/core/NormalTexture.d.ts +0 -14
  296. package/core/NormalTexture.js +0 -42
  297. package/core/OrbitControls.cjs.js +0 -1
  298. package/core/OrbitControls.d.ts +0 -22
  299. package/core/OrbitControls.js +0 -79
  300. package/core/OrthographicCamera.cjs.js +0 -1
  301. package/core/OrthographicCamera.d.ts +0 -14
  302. package/core/OrthographicCamera.js +0 -76
  303. package/core/Outlines.cjs.js +0 -1
  304. package/core/Outlines.d.ts +0 -17
  305. package/core/Outlines.js +0 -166
  306. package/core/PerformanceMonitor.cjs.js +0 -1
  307. package/core/PerformanceMonitor.d.ts +0 -36
  308. package/core/PerformanceMonitor.js +0 -116
  309. package/core/PerspectiveCamera.cjs.js +0 -1
  310. package/core/PerspectiveCamera.d.ts +0 -14
  311. package/core/PerspectiveCamera.js +0 -72
  312. package/core/PointMaterial.cjs.js +0 -1
  313. package/core/PointMaterial.d.ts +0 -8
  314. package/core/PointMaterial.js +0 -36
  315. package/core/PointerLockControls.cjs.js +0 -1
  316. package/core/PointerLockControls.d.ts +0 -15
  317. package/core/PointerLockControls.js +0 -89
  318. package/core/Points.cjs.js +0 -1
  319. package/core/Points.d.ts +0 -31
  320. package/core/Points.js +0 -202
  321. package/core/PositionalAudio.cjs.js +0 -1
  322. package/core/PositionalAudio.d.ts +0 -9
  323. package/core/PositionalAudio.js +0 -46
  324. package/core/Preload.cjs.js +0 -1
  325. package/core/Preload.d.ts +0 -7
  326. package/core/Preload.js +0 -44
  327. package/core/Progress.cjs.js +0 -1
  328. package/core/Progress.d.ts +0 -14
  329. package/core/Progress.js +0 -55
  330. package/core/QuadraticBezierLine.cjs.js +0 -1
  331. package/core/QuadraticBezierLine.d.ts +0 -14
  332. package/core/QuadraticBezierLine.js +0 -42
  333. package/core/RenderCubeTexture.cjs.js +0 -1
  334. package/core/RenderCubeTexture.d.ts +0 -30
  335. package/core/RenderCubeTexture.js +0 -96
  336. package/core/RenderTexture.cjs.js +0 -1
  337. package/core/RenderTexture.d.ts +0 -18
  338. package/core/RenderTexture.js +0 -105
  339. package/core/Resize.cjs.js +0 -1
  340. package/core/Resize.d.ts +0 -17
  341. package/core/Resize.js +0 -39
  342. package/core/RoundedBox.cjs.js +0 -1
  343. package/core/RoundedBox.d.ts +0 -14
  344. package/core/RoundedBox.js +0 -70
  345. package/core/Sampler.cjs.js +0 -1
  346. package/core/Sampler.d.ts +0 -28
  347. package/core/Sampler.js +0 -75
  348. package/core/ScreenQuad.cjs.js +0 -1
  349. package/core/ScreenQuad.d.ts +0 -5
  350. package/core/ScreenQuad.js +0 -25
  351. package/core/ScreenSizer.cjs.js +0 -1
  352. package/core/ScreenSizer.d.ts +0 -7
  353. package/core/ScreenSizer.js +0 -39
  354. package/core/ScreenSpace.cjs.js +0 -1
  355. package/core/ScreenSpace.d.ts +0 -7
  356. package/core/ScreenSpace.js +0 -25
  357. package/core/Segments.cjs.js +0 -1
  358. package/core/Segments.d.ts +0 -29
  359. package/core/Segments.js +0 -96
  360. package/core/Shadow.cjs.js +0 -1
  361. package/core/Shadow.d.ts +0 -12
  362. package/core/Shadow.js +0 -42
  363. package/core/ShadowAlpha.cjs.js +0 -1
  364. package/core/ShadowAlpha.d.ts +0 -7
  365. package/core/ShadowAlpha.js +0 -108
  366. package/core/Sky.cjs.js +0 -1
  367. package/core/Sky.d.ts +0 -16
  368. package/core/Sky.js +0 -39
  369. package/core/Sparkles.cjs.js +0 -1
  370. package/core/Sparkles.d.ts +0 -26
  371. package/core/Sparkles.js +0 -161
  372. package/core/Splat.cjs.js +0 -1
  373. package/core/Splat.d.ts +0 -56
  374. package/core/Splat.js +0 -506
  375. package/core/SpotLight.cjs.js +0 -1
  376. package/core/SpotLight.d.ts +0 -27
  377. package/core/SpotLight.js +0 -223
  378. package/core/SpriteAnimator.cjs.js +0 -1
  379. package/core/SpriteAnimator.d.ts +0 -88
  380. package/core/SpriteAnimator.js +0 -413
  381. package/core/Stage.cjs.js +0 -1
  382. package/core/Stage.d.ts +0 -27
  383. package/core/Stage.js +0 -133
  384. package/core/Stars.cjs.js +0 -1
  385. package/core/Stars.d.ts +0 -22
  386. package/core/Stars.js +0 -100
  387. package/core/Stats.cjs.js +0 -1
  388. package/core/Stats.d.ts +0 -7
  389. package/core/Stats.js +0 -32
  390. package/core/StatsGl.cjs.js +0 -1
  391. package/core/StatsGl.d.ts +0 -14
  392. package/core/StatsGl.js +0 -44
  393. package/core/Svg.cjs.js +0 -1
  394. package/core/Svg.d.ts +0 -13
  395. package/core/Svg.js +0 -62
  396. package/core/Text.cjs.js +0 -1
  397. package/core/Text.d.ts +0 -38
  398. package/core/Text.js +0 -57
  399. package/core/Text3D.cjs.js +0 -1
  400. package/core/Text3D.d.ts +0 -20
  401. package/core/Text3D.js +0 -74
  402. package/core/Texture.cjs.js +0 -1
  403. package/core/Texture.d.ts +0 -20
  404. package/core/Texture.js +0 -60
  405. package/core/TrackballControls.cjs.js +0 -1
  406. package/core/TrackballControls.d.ts +0 -15
  407. package/core/TrackballControls.js +0 -72
  408. package/core/Trail.cjs.js +0 -1
  409. package/core/Trail.d.ts +0 -21
  410. package/core/Trail.js +0 -150
  411. package/core/TrailTexture.cjs.js +0 -1
  412. package/core/TrailTexture.d.ts +0 -19
  413. package/core/TrailTexture.js +0 -159
  414. package/core/TransformControls.cjs.js +0 -1
  415. package/core/TransformControls.d.ts +0 -28
  416. package/core/TransformControls.js +0 -114
  417. package/core/VideoTexture.cjs.js +0 -1
  418. package/core/VideoTexture.d.ts +0 -26
  419. package/core/VideoTexture.js +0 -111
  420. package/core/Wireframe.cjs.js +0 -1
  421. package/core/Wireframe.d.ts +0 -15
  422. package/core/Wireframe.js +0 -157
  423. package/core/calculateScaleFactor.cjs.js +0 -1
  424. package/core/calculateScaleFactor.d.ts +0 -3
  425. package/core/calculateScaleFactor.js +0 -31
  426. package/core/index.cjs.js +0 -1
  427. package/core/index.d.ts +0 -122
  428. package/core/index.js +0 -150
  429. package/core/meshBounds.cjs.js +0 -1
  430. package/core/meshBounds.d.ts +0 -2
  431. package/core/meshBounds.js +0 -28
  432. package/core/shaderMaterial.cjs.js +0 -1
  433. package/core/shaderMaterial.d.ts +0 -9
  434. package/core/shaderMaterial.js +0 -29
  435. package/core/shapes.cjs.js +0 -1
  436. package/core/shapes.d.ts +0 -26
  437. package/core/shapes.js +0 -65
  438. package/core/softShadows.cjs.js +0 -1
  439. package/core/softShadows.d.ts +0 -6
  440. package/core/softShadows.js +0 -158
  441. package/core/useAnimations.cjs.js +0 -1
  442. package/core/useAnimations.d.ts +0 -13
  443. package/core/useAnimations.js +0 -52
  444. package/core/useAspect.cjs.js +0 -1
  445. package/core/useAspect.d.ts +0 -1
  446. package/core/useAspect.js +0 -10
  447. package/core/useBoxProjectedEnv.cjs.js +0 -1
  448. package/core/useBoxProjectedEnv.d.ts +0 -19
  449. package/core/useBoxProjectedEnv.js +0 -95
  450. package/core/useCamera.cjs.js +0 -1
  451. package/core/useCamera.d.ts +0 -3
  452. package/core/useCamera.js +0 -19
  453. package/core/useContextBridge.cjs.js +0 -1
  454. package/core/useContextBridge.d.ts +0 -4
  455. package/core/useContextBridge.js +0 -20
  456. package/core/useDepthBuffer.cjs.js +0 -1
  457. package/core/useDepthBuffer.d.ts +0 -6
  458. package/core/useDepthBuffer.js +0 -38
  459. package/core/useEnvironment.cjs.js +0 -1
  460. package/core/useEnvironment.d.ts +0 -17
  461. package/core/useEnvironment.js +0 -150
  462. package/core/useFont.cjs.js +0 -1
  463. package/core/useFont.d.ts +0 -24
  464. package/core/useFont.js +0 -24
  465. package/core/useIntersect.cjs.js +0 -1
  466. package/core/useIntersect.d.ts +0 -3
  467. package/core/useIntersect.js +0 -36
  468. package/core/useSpriteLoader.cjs.js +0 -1
  469. package/core/useSpriteLoader.d.ts +0 -57
  470. package/core/useSpriteLoader.js +0 -402
  471. package/helpers/constants.cjs.js +0 -1
  472. package/helpers/constants.d.ts +0 -1
  473. package/helpers/constants.js +0 -6
  474. package/helpers/deprecated.cjs.js +0 -1
  475. package/helpers/deprecated.d.ts +0 -5
  476. package/helpers/deprecated.js +0 -8
  477. package/helpers/environment-assets.cjs.js +0 -1
  478. package/helpers/environment-assets.d.ts +0 -13
  479. package/helpers/environment-assets.js +0 -14
  480. package/helpers/glsl/DefaultSpotlightShadowShadows.glsl.js +0 -3
  481. package/helpers/glsl/distort.vert.glsl.js +0 -3
  482. package/helpers/ts-utils.cjs.js +0 -1
  483. package/helpers/ts-utils.d.ts +0 -7
  484. package/helpers/ts-utils.js +0 -1
  485. package/helpers/useEffectfulState.cjs.js +0 -1
  486. package/helpers/useEffectfulState.d.ts +0 -4
  487. package/helpers/useEffectfulState.js +0 -17
  488. package/index.cjs.js +0 -1
  489. package/index.d.ts +0 -1
  490. package/index.js +0 -139
  491. package/materials/BlurPass.cjs.js +0 -1
  492. package/materials/BlurPass.d.ts +0 -23
  493. package/materials/BlurPass.js +0 -72
  494. package/materials/ConvolutionMaterial.cjs.js +0 -1
  495. package/materials/ConvolutionMaterial.d.ts +0 -7
  496. package/materials/ConvolutionMaterial.js +0 -97
  497. package/materials/DiscardMaterial.cjs.js +0 -1
  498. package/materials/DiscardMaterial.d.ts +0 -3
  499. package/materials/DiscardMaterial.js +0 -5
  500. package/materials/MeshReflectorMaterial.cjs.js +0 -1
  501. package/materials/MeshReflectorMaterial.d.ts +0 -50
  502. package/materials/MeshReflectorMaterial.js +0 -256
  503. package/materials/MeshRefractionMaterial.cjs.js +0 -1
  504. package/materials/MeshRefractionMaterial.d.ts +0 -18
  505. package/materials/MeshRefractionMaterial.js +0 -163
  506. package/materials/SpotLightMaterial.cjs.js +0 -1
  507. package/materials/SpotLightMaterial.d.ts +0 -4
  508. package/materials/SpotLightMaterial.js +0 -115
  509. package/materials/WireframeMaterial.cjs.js +0 -1
  510. package/materials/WireframeMaterial.d.ts +0 -64
  511. package/materials/WireframeMaterial.js +0 -217
  512. package/native/index.cjs.js +0 -1
  513. package/native/index.d.ts +0 -1
  514. package/native/index.js +0 -150
  515. package/web/CycleRaycast.cjs.js +0 -1
  516. package/web/CycleRaycast.d.ts +0 -10
  517. package/web/CycleRaycast.js +0 -93
  518. package/web/DragControls.cjs.js +0 -1
  519. package/web/DragControls.d.ts +0 -17
  520. package/web/DragControls.js +0 -127
  521. package/web/FaceControls.cjs.js +0 -1
  522. package/web/FaceControls.d.ts +0 -29
  523. package/web/FaceControls.js +0 -236
  524. package/web/FaceLandmarker.cjs.js +0 -1
  525. package/web/FaceLandmarker.d.ts +0 -14
  526. package/web/FaceLandmarker.js +0 -49
  527. package/web/Facemesh.cjs.js +0 -1
  528. package/web/Facemesh.d.ts +0 -118
  529. package/web/Facemesh.js +0 -4538
  530. package/web/Html.cjs.js +0 -1
  531. package/web/Html.d.ts +0 -34
  532. package/web/Html.js +0 -375
  533. package/web/KeyboardControls.cjs.js +0 -1
  534. package/web/KeyboardControls.d.ts +0 -37
  535. package/web/KeyboardControls.js +0 -104
  536. package/web/Loader.cjs.js +0 -1
  537. package/web/Loader.d.ts +0 -12
  538. package/web/Loader.js +0 -101
  539. package/web/PresentationControls.cjs.js +0 -1
  540. package/web/PresentationControls.d.ts +0 -16
  541. package/web/PresentationControls.js +0 -79
  542. package/web/ScreenVideoTexture.cjs.js +0 -1
  543. package/web/ScreenVideoTexture.d.ts +0 -17
  544. package/web/ScreenVideoTexture.js +0 -30
  545. package/web/ScrollControls.cjs.js +0 -1
  546. package/web/ScrollControls.d.ts +0 -45
  547. package/web/ScrollControls.js +0 -237
  548. package/web/Select.cjs.js +0 -1
  549. package/web/Select.d.ts +0 -14
  550. package/web/Select.js +0 -171
  551. package/web/View.cjs.js +0 -1
  552. package/web/View.d.ts +0 -34
  553. package/web/View.js +0 -259
  554. package/web/WebcamVideoTexture.cjs.js +0 -1
  555. package/web/WebcamVideoTexture.d.ts +0 -17
  556. package/web/WebcamVideoTexture.js +0 -33
  557. package/web/index.cjs.js +0 -1
  558. package/web/index.d.ts +0 -17
  559. package/web/index.js +0 -176
  560. package/web/pivotControls/AxisArrow.cjs.js +0 -1
  561. package/web/pivotControls/AxisArrow.d.ts +0 -7
  562. package/web/pivotControls/AxisArrow.js +0 -193
  563. package/web/pivotControls/AxisRotator.cjs.js +0 -1
  564. package/web/pivotControls/AxisRotator.d.ts +0 -7
  565. package/web/pivotControls/AxisRotator.js +0 -220
  566. package/web/pivotControls/PlaneSlider.cjs.js +0 -1
  567. package/web/pivotControls/PlaneSlider.d.ts +0 -7
  568. package/web/pivotControls/PlaneSlider.js +0 -202
  569. package/web/pivotControls/ScalingSphere.cjs.js +0 -1
  570. package/web/pivotControls/ScalingSphere.d.ts +0 -7
  571. package/web/pivotControls/ScalingSphere.js +0 -192
  572. package/web/pivotControls/context.cjs.js +0 -1
  573. package/web/pivotControls/context.d.ts +0 -33
  574. package/web/pivotControls/context.js +0 -5
  575. package/web/pivotControls/index.cjs.js +0 -1
  576. package/web/pivotControls/index.d.ts +0 -39
  577. package/web/pivotControls/index.js +0 -213
  578. package/web/useCursor.cjs.js +0 -1
  579. package/web/useCursor.d.ts +0 -1
  580. package/web/useCursor.js +0 -12
package/web/index.js DELETED
@@ -1,176 +0,0 @@
1
- export { Html } from './Html.js';
2
- export { CycleRaycast } from './CycleRaycast.js';
3
- export { useCursor } from './useCursor.js';
4
- export { Loader } from './Loader.js';
5
- export { Scroll, ScrollControls, useScroll } from './ScrollControls.js';
6
- export { PresentationControls } from './PresentationControls.js';
7
- export { KeyboardControls, useKeyboardControls } from './KeyboardControls.js';
8
- export { Select, useSelect } from './Select.js';
9
- export { View } from './View.js';
10
- export { PivotControls } from './pivotControls/index.js';
11
- export { ScreenVideoTexture } from './ScreenVideoTexture.js';
12
- export { WebcamVideoTexture } from './WebcamVideoTexture.js';
13
- export { FaceControls, useFaceControls } from './FaceControls.js';
14
- export { DragControls } from './DragControls.js';
15
- export { FaceLandmarker, FaceLandmarkerDefaults, useFaceLandmarker } from './FaceLandmarker.js';
16
- export { Facemesh, FacemeshDatas, FacemeshEye, FacemeshEyeDefaults } from './Facemesh.js';
17
- export { Billboard } from '../core/Billboard.js';
18
- export { ScreenSpace } from '../core/ScreenSpace.js';
19
- export { ScreenSizer } from '../core/ScreenSizer.js';
20
- export { QuadraticBezierLine } from '../core/QuadraticBezierLine.js';
21
- export { CubicBezierLine } from '../core/CubicBezierLine.js';
22
- export { CatmullRomLine } from '../core/CatmullRomLine.js';
23
- export { Line } from '../core/Line.js';
24
- export { PositionalAudio } from '../core/PositionalAudio.js';
25
- export { Text } from '../core/Text.js';
26
- export { Text3D } from '../core/Text3D.js';
27
- export { Effects, isWebGL2Available } from '../core/Effects.js';
28
- export { GradientTexture, GradientType } from '../core/GradientTexture.js';
29
- export { Image } from '../core/Image.js';
30
- export { Edges } from '../core/Edges.js';
31
- export { Outlines } from '../core/Outlines.js';
32
- export { Trail, useTrail } from '../core/Trail.js';
33
- export { Sampler, useSurfaceSampler } from '../core/Sampler.js';
34
- export { ComputedAttribute } from '../core/ComputedAttribute.js';
35
- export { Clone } from '../core/Clone.js';
36
- export { MarchingCube, MarchingCubes, MarchingPlane } from '../core/MarchingCubes.js';
37
- export { Decal } from '../core/Decal.js';
38
- export { Svg } from '../core/Svg.js';
39
- export { Gltf, useGLTF } from '../core/Gltf.js';
40
- export { AsciiRenderer } from '../core/AsciiRenderer.js';
41
- export { Splat } from '../core/Splat.js';
42
- export { OrthographicCamera } from '../core/OrthographicCamera.js';
43
- export { PerspectiveCamera } from '../core/PerspectiveCamera.js';
44
- export { CubeCamera, useCubeCamera } from '../core/CubeCamera.js';
45
- export { DeviceOrientationControls } from '../core/DeviceOrientationControls.js';
46
- export { FlyControls } from '../core/FlyControls.js';
47
- export { MapControls } from '../core/MapControls.js';
48
- export { OrbitControls } from '../core/OrbitControls.js';
49
- export { TrackballControls } from '../core/TrackballControls.js';
50
- export { ArcballControls } from '../core/ArcballControls.js';
51
- export { TransformControls } from '../core/TransformControls.js';
52
- export { PointerLockControls } from '../core/PointerLockControls.js';
53
- export { FirstPersonControls } from '../core/FirstPersonControls.js';
54
- export { CameraControls } from '../core/CameraControls.js';
55
- export { default as CameraControlsImpl } from 'camera-controls';
56
- export { MotionPathControls, useMotion } from '../core/MotionPathControls.js';
57
- export { GizmoHelper, useGizmoContext } from '../core/GizmoHelper.js';
58
- export { GizmoViewcube } from '../core/GizmoViewcube.js';
59
- export { GizmoViewport } from '../core/GizmoViewport.js';
60
- export { Grid } from '../core/Grid.js';
61
- export { CubeTexture, useCubeTexture } from '../core/CubeTexture.js';
62
- export { Fbx, useFBX } from '../core/Fbx.js';
63
- export { Ktx2, useKTX2 } from '../core/Ktx2.js';
64
- export { Progress, useProgress } from '../core/Progress.js';
65
- export { IsObject, Texture, useTexture } from '../core/Texture.js';
66
- export { VideoTexture, useVideoTexture } from '../core/VideoTexture.js';
67
- export { useFont } from '../core/useFont.js';
68
- export { checkIfFrameIsEmpty, getFirstFrame, useSpriteLoader } from '../core/useSpriteLoader.js';
69
- export { Helper, useHelper } from '../core/Helper.js';
70
- export { Stats } from '../core/Stats.js';
71
- export { StatsGl } from '../core/StatsGl.js';
72
- export { useDepthBuffer } from '../core/useDepthBuffer.js';
73
- export { useAspect } from '../core/useAspect.js';
74
- export { useCamera } from '../core/useCamera.js';
75
- export { DetectGPU, useDetectGPU } from '../core/DetectGPU.js';
76
- export { Bvh, useBVH } from '../core/Bvh.js';
77
- export { useContextBridge } from '../core/useContextBridge.js';
78
- export { useAnimations } from '../core/useAnimations.js';
79
- export { Fbo, useFBO } from '../core/Fbo.js';
80
- export { useIntersect } from '../core/useIntersect.js';
81
- export { useBoxProjectedEnv } from '../core/useBoxProjectedEnv.js';
82
- export { BBAnchor } from '../core/BBAnchor.js';
83
- export { TrailTexture, useTrailTexture } from '../core/TrailTexture.js';
84
- export { Example } from '../core/Example.js';
85
- export { SpriteAnimator, useSpriteAnimator } from '../core/SpriteAnimator.js';
86
- export { CurveModifier } from '../core/CurveModifier.js';
87
- export { MeshDistortMaterial } from '../core/MeshDistortMaterial.js';
88
- export { MeshWobbleMaterial } from '../core/MeshWobbleMaterial.js';
89
- export { MeshReflectorMaterial } from '../core/MeshReflectorMaterial.js';
90
- export { MeshRefractionMaterial } from '../core/MeshRefractionMaterial.js';
91
- export { MeshTransmissionMaterial } from '../core/MeshTransmissionMaterial.js';
92
- export { MeshDiscardMaterial } from '../core/MeshDiscardMaterial.js';
93
- export { MultiMaterial } from '../core/MultiMaterial.js';
94
- export { PointMaterial, PointMaterialImpl } from '../core/PointMaterial.js';
95
- export { shaderMaterial } from '../core/shaderMaterial.js';
96
- export { SoftShadows } from '../core/softShadows.js';
97
- export { Box, Capsule, Circle, Cone, Cylinder, Dodecahedron, Extrude, Icosahedron, Lathe, Octahedron, Plane, Polyhedron, Ring, Shape, Sphere, Tetrahedron, Torus, TorusKnot, Tube } from '../core/shapes.js';
98
- export { RoundedBox, RoundedBoxGeometry } from '../core/RoundedBox.js';
99
- export { ScreenQuad } from '../core/ScreenQuad.js';
100
- export { Center } from '../core/Center.js';
101
- export { Resize } from '../core/Resize.js';
102
- export { Bounds, useBounds } from '../core/Bounds.js';
103
- export { CameraShake } from '../core/CameraShake.js';
104
- export { Float } from '../core/Float.js';
105
- export { Stage } from '../core/Stage.js';
106
- export { Backdrop } from '../core/Backdrop.js';
107
- export { Shadow } from '../core/Shadow.js';
108
- export { Caustics } from '../core/Caustics.js';
109
- export { ContactShadows } from '../core/ContactShadows.js';
110
- export { AccumulativeShadows, RandomizedLight, accumulativeContext } from '../core/AccumulativeShadows.js';
111
- export { SpotLight, SpotLightShadow } from '../core/SpotLight.js';
112
- export { Environment, EnvironmentCube, EnvironmentMap, EnvironmentPortal } from '../core/Environment.js';
113
- export { Lightformer } from '../core/Lightformer.js';
114
- export { Sky, calcPosFromAngles } from '../core/Sky.js';
115
- export { Stars } from '../core/Stars.js';
116
- export { Cloud, CloudInstance, Clouds } from '../core/Cloud.js';
117
- export { Sparkles } from '../core/Sparkles.js';
118
- export { useEnvironment } from '../core/useEnvironment.js';
119
- export { MatcapTexture, useMatcapTexture } from '../core/MatcapTexture.js';
120
- export { NormalTexture, useNormalTexture } from '../core/NormalTexture.js';
121
- export { Wireframe } from '../core/Wireframe.js';
122
- export { ShadowAlpha } from '../core/ShadowAlpha.js';
123
- export { Point, Points, PointsBuffer, PositionPoint } from '../core/Points.js';
124
- export { Instance, InstancedAttribute, Instances, Merged, PositionMesh, createInstances } from '../core/Instances.js';
125
- export { Segment, SegmentObject, Segments } from '../core/Segments.js';
126
- export { Detailed } from '../core/Detailed.js';
127
- export { Preload } from '../core/Preload.js';
128
- export { BakeShadows } from '../core/BakeShadows.js';
129
- export { meshBounds } from '../core/meshBounds.js';
130
- export { AdaptiveDpr } from '../core/AdaptiveDpr.js';
131
- export { AdaptiveEvents } from '../core/AdaptiveEvents.js';
132
- export { PerformanceMonitor, usePerformanceMonitor } from '../core/PerformanceMonitor.js';
133
- export { RenderTexture } from '../core/RenderTexture.js';
134
- export { RenderCubeTexture } from '../core/RenderCubeTexture.js';
135
- export { Mask, useMask } from '../core/Mask.js';
136
- export { Hud } from '../core/Hud.js';
137
- export { Fisheye } from '../core/Fisheye.js';
138
- export { MeshPortalMaterial } from '../core/MeshPortalMaterial.js';
139
- export { calculateScaleFactor } from '../core/calculateScaleFactor.js';
140
- import '@babel/runtime/helpers/esm/extends';
141
- import 'react';
142
- import 'react-dom/client';
143
- import 'three';
144
- import '@react-three/fiber';
145
- import 'zustand';
146
- import 'maath';
147
- import '@use-gesture/react';
148
- import 'zustand/middleware';
149
- import 'three-stdlib';
150
- import 'zustand/shallow';
151
- import 'tunnel-rat';
152
- import './pivotControls/AxisArrow.js';
153
- import './pivotControls/context.js';
154
- import './pivotControls/AxisRotator.js';
155
- import './pivotControls/PlaneSlider.js';
156
- import './pivotControls/ScalingSphere.js';
157
- import 'suspend-react';
158
- import 'hls.js';
159
- import 'troika-three-text';
160
- import '../helpers/constants.js';
161
- import 'meshline';
162
- import 'stats.js';
163
- import '../helpers/useEffectfulState.js';
164
- import 'stats-gl';
165
- import 'detect-gpu';
166
- import 'three-mesh-bvh';
167
- import '../helpers/deprecated.js';
168
- import '../materials/BlurPass.js';
169
- import '../materials/ConvolutionMaterial.js';
170
- import '../materials/MeshReflectorMaterial.js';
171
- import '../materials/MeshRefractionMaterial.js';
172
- import '../materials/DiscardMaterial.js';
173
- import '@monogrid/gainmap-js';
174
- import '../helpers/environment-assets.js';
175
- import '../materials/SpotLightMaterial.js';
176
- import '../materials/WireframeMaterial.js';
@@ -1 +0,0 @@
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:f,depthTest:x,scale:y,lineWidth:g,fixed:h,axisColors:b,hoveredColor:O,opacity:P,renderOrder:w,onDragStart:v,onDrag:j,onDragEnd:E,userData:M}=c.useContext(a.context),k=r.useThree((e=>e.controls)),C=c.useRef(null),q=c.useRef(null),L=c.useRef(null),D=c.useRef(0),[F,R]=c.useState(!1),T=c.useCallback((r=>{u&&(C.current.innerText=`${i.current[t].toFixed(2)}`,C.current.style.display="block"),r.stopPropagation();const n=(new l.Matrix4).extractRotation(q.current.matrixWorld),o=r.point.clone(),a=(new l.Vector3).setFromMatrixPosition(q.current.matrixWorld),c=e.clone().applyMatrix4(n).normalize();L.current={clickPoint:o,dir:c},D.current=i.current[t],v({component:"Arrow",axis:t,origin:a,directions:[c]}),k&&(k.enabled=!1),r.target.setPointerCapture(r.pointerId)}),[u,e,k,v,i,t]),S=c.useCallback((e=>{if(e.stopPropagation(),F||R(!0),L.current){const{clickPoint:r,dir:n}=L.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-D.current)),void 0!==a&&(c=Math.min(c,a-D.current)),i.current[t]=D.current+c,u&&(C.current.innerText=`${i.current[t].toFixed(2)}`),m.makeTranslation(n.x*c,n.y*c,n.z*c),j(m)}}),[u,j,F,i,s,t]),W=c.useCallback((e=>{u&&(C.current.style.display="none"),e.stopPropagation(),L.current=null,E(),k&&(k.enabled=!0),e.target.releasePointerCapture(e.pointerId)}),[u,k,E]),V=c.useCallback((e=>{e.stopPropagation(),R(!1)}),[]),{cylinderLength:z,coneWidth:A,coneLength:_,matrixL:U}=c.useMemo((()=>{const t=h?g/y*1.6:y/20,r=h?.2:y/5,n=h?1-r:y-r,o=(new l.Quaternion).setFromUnitVectors(p,e.clone().normalize());return{cylinderLength:n,coneWidth:t,coneLength:r,matrixL:(new l.Matrix4).makeRotationFromQuaternion(o)}}),[e,y,g,h]),G=F?O:b[t];return c.createElement("group",{ref:q},c.createElement("group",{matrix:U,matrixAutoUpdate:!1,onPointerDown:T,onPointerMove:S,onPointerUp:W,onPointerOut:V},u&&c.createElement(o.Html,{position:[0,-_,0]},c.createElement("div",{style:{display:"none",background:"#151520",color:"white",padding:"6px 8px",borderRadius:7,whiteSpace:"nowrap"},className:f,ref:C})),c.createElement("mesh",{visible:!1,position:[0,(z+_)/2,0],userData:M},c.createElement("cylinderGeometry",{args:[1.4*A,1.4*A,z+_,8,1]})),c.createElement(n.Line,{transparent:!0,raycast:()=>null,depthTest:x,points:[0,0,0,0,z,0],lineWidth:g,side:l.DoubleSide,color:G,opacity:P,polygonOffset:!0,renderOrder:w,polygonOffsetFactor:-10,fog:!1}),c.createElement("mesh",{raycast:()=>null,position:[0,z+_/2,0],renderOrder:w},c.createElement("coneGeometry",{args:[A,_,24,1]}),c.createElement("meshBasicMaterial",{transparent:!0,depthTest:x,color:G,opacity:P,polygonOffset:!0,polygonOffsetFactor:-10,fog:!1}))))},exports.calculateOffset=d;
@@ -1,7 +0,0 @@
1
- import * as React from 'react';
2
- import * as THREE from 'three';
3
- export declare const calculateOffset: (clickPoint: THREE.Vector3, normal: THREE.Vector3, rayStart: THREE.Vector3, rayDir: THREE.Vector3) => number;
4
- export declare const AxisArrow: React.FC<{
5
- direction: THREE.Vector3;
6
- axis: 0 | 1 | 2;
7
- }>;
@@ -1,193 +0,0 @@
1
- import * as React from 'react';
2
- import * as THREE from 'three';
3
- import { useThree } from '@react-three/fiber';
4
- import { Line } from '../../core/Line.js';
5
- import { Html } from '../Html.js';
6
- import { context } from './context.js';
7
-
8
- const vec1 = /* @__PURE__ */new THREE.Vector3();
9
- const vec2 = /* @__PURE__ */new THREE.Vector3();
10
- const calculateOffset = (clickPoint, normal, rayStart, rayDir) => {
11
- const e1 = normal.dot(normal);
12
- const e2 = normal.dot(clickPoint) - normal.dot(rayStart);
13
- const e3 = normal.dot(rayDir);
14
- if (e3 === 0) {
15
- return -e2 / e1;
16
- }
17
- vec1.copy(rayDir).multiplyScalar(e1 / e3).sub(normal);
18
- vec2.copy(rayDir).multiplyScalar(e2 / e3).add(rayStart).sub(clickPoint);
19
- const offset = -vec1.dot(vec2) / vec1.dot(vec1);
20
- return offset;
21
- };
22
- const upV = /* @__PURE__ */new THREE.Vector3(0, 1, 0);
23
- const offsetMatrix = /* @__PURE__ */new THREE.Matrix4();
24
- const AxisArrow = ({
25
- direction,
26
- axis
27
- }) => {
28
- const {
29
- translation,
30
- translationLimits,
31
- annotations,
32
- annotationsClass,
33
- depthTest,
34
- scale,
35
- lineWidth,
36
- fixed,
37
- axisColors,
38
- hoveredColor,
39
- opacity,
40
- renderOrder,
41
- onDragStart,
42
- onDrag,
43
- onDragEnd,
44
- userData
45
- } = React.useContext(context);
46
- const camControls = useThree(state => state.controls);
47
- const divRef = React.useRef(null);
48
- const objRef = React.useRef(null);
49
- const clickInfo = React.useRef(null);
50
- const offset0 = React.useRef(0);
51
- const [isHovered, setIsHovered] = React.useState(false);
52
- const onPointerDown = React.useCallback(e => {
53
- if (annotations) {
54
- divRef.current.innerText = `${translation.current[axis].toFixed(2)}`;
55
- divRef.current.style.display = 'block';
56
- }
57
- e.stopPropagation();
58
- const rotation = new THREE.Matrix4().extractRotation(objRef.current.matrixWorld);
59
- const clickPoint = e.point.clone();
60
- const origin = new THREE.Vector3().setFromMatrixPosition(objRef.current.matrixWorld);
61
- const dir = direction.clone().applyMatrix4(rotation).normalize();
62
- clickInfo.current = {
63
- clickPoint,
64
- dir
65
- };
66
- offset0.current = translation.current[axis];
67
- onDragStart({
68
- component: 'Arrow',
69
- axis,
70
- origin,
71
- directions: [dir]
72
- });
73
- camControls && (camControls.enabled = false);
74
- // @ts-ignore - setPointerCapture is not in the type definition
75
- e.target.setPointerCapture(e.pointerId);
76
- }, [annotations, direction, camControls, onDragStart, translation, axis]);
77
- const onPointerMove = React.useCallback(e => {
78
- e.stopPropagation();
79
- if (!isHovered) setIsHovered(true);
80
- if (clickInfo.current) {
81
- const {
82
- clickPoint,
83
- dir
84
- } = clickInfo.current;
85
- const [min, max] = (translationLimits == null ? void 0 : translationLimits[axis]) || [undefined, undefined];
86
- let offset = calculateOffset(clickPoint, dir, e.ray.origin, e.ray.direction);
87
- if (min !== undefined) {
88
- offset = Math.max(offset, min - offset0.current);
89
- }
90
- if (max !== undefined) {
91
- offset = Math.min(offset, max - offset0.current);
92
- }
93
- translation.current[axis] = offset0.current + offset;
94
- if (annotations) {
95
- divRef.current.innerText = `${translation.current[axis].toFixed(2)}`;
96
- }
97
- offsetMatrix.makeTranslation(dir.x * offset, dir.y * offset, dir.z * offset);
98
- onDrag(offsetMatrix);
99
- }
100
- }, [annotations, onDrag, isHovered, translation, translationLimits, axis]);
101
- const onPointerUp = React.useCallback(e => {
102
- if (annotations) {
103
- divRef.current.style.display = 'none';
104
- }
105
- e.stopPropagation();
106
- clickInfo.current = null;
107
- onDragEnd();
108
- camControls && (camControls.enabled = true);
109
- // @ts-ignore - releasePointerCapture & PointerEvent#pointerId is not in the type definition
110
- e.target.releasePointerCapture(e.pointerId);
111
- }, [annotations, camControls, onDragEnd]);
112
- const onPointerOut = React.useCallback(e => {
113
- e.stopPropagation();
114
- setIsHovered(false);
115
- }, []);
116
- const {
117
- cylinderLength,
118
- coneWidth,
119
- coneLength,
120
- matrixL
121
- } = React.useMemo(() => {
122
- const coneWidth = fixed ? lineWidth / scale * 1.6 : scale / 20;
123
- const coneLength = fixed ? 0.2 : scale / 5;
124
- const cylinderLength = fixed ? 1 - coneLength : scale - coneLength;
125
- const quaternion = new THREE.Quaternion().setFromUnitVectors(upV, direction.clone().normalize());
126
- const matrixL = new THREE.Matrix4().makeRotationFromQuaternion(quaternion);
127
- return {
128
- cylinderLength,
129
- coneWidth,
130
- coneLength,
131
- matrixL
132
- };
133
- }, [direction, scale, lineWidth, fixed]);
134
- const color_ = isHovered ? hoveredColor : axisColors[axis];
135
- return /*#__PURE__*/React.createElement("group", {
136
- ref: objRef
137
- }, /*#__PURE__*/React.createElement("group", {
138
- matrix: matrixL,
139
- matrixAutoUpdate: false,
140
- onPointerDown: onPointerDown,
141
- onPointerMove: onPointerMove,
142
- onPointerUp: onPointerUp,
143
- onPointerOut: onPointerOut
144
- }, annotations && /*#__PURE__*/React.createElement(Html, {
145
- position: [0, -coneLength, 0]
146
- }, /*#__PURE__*/React.createElement("div", {
147
- style: {
148
- display: 'none',
149
- background: '#151520',
150
- color: 'white',
151
- padding: '6px 8px',
152
- borderRadius: 7,
153
- whiteSpace: 'nowrap'
154
- },
155
- className: annotationsClass,
156
- ref: divRef
157
- })), /*#__PURE__*/React.createElement("mesh", {
158
- visible: false,
159
- position: [0, (cylinderLength + coneLength) / 2.0, 0],
160
- userData: userData
161
- }, /*#__PURE__*/React.createElement("cylinderGeometry", {
162
- args: [coneWidth * 1.4, coneWidth * 1.4, cylinderLength + coneLength, 8, 1]
163
- })), /*#__PURE__*/React.createElement(Line, {
164
- transparent: true,
165
- raycast: () => null,
166
- depthTest: depthTest,
167
- points: [0, 0, 0, 0, cylinderLength, 0],
168
- lineWidth: lineWidth,
169
- side: THREE.DoubleSide,
170
- color: color_,
171
- opacity: opacity,
172
- polygonOffset: true,
173
- renderOrder: renderOrder,
174
- polygonOffsetFactor: -10,
175
- fog: false
176
- }), /*#__PURE__*/React.createElement("mesh", {
177
- raycast: () => null,
178
- position: [0, cylinderLength + coneLength / 2.0, 0],
179
- renderOrder: renderOrder
180
- }, /*#__PURE__*/React.createElement("coneGeometry", {
181
- args: [coneWidth, coneLength, 24, 1]
182
- }), /*#__PURE__*/React.createElement("meshBasicMaterial", {
183
- transparent: true,
184
- depthTest: depthTest,
185
- color: color_,
186
- opacity: opacity,
187
- polygonOffset: true,
188
- polygonOffsetFactor: -10,
189
- fog: false
190
- }))));
191
- };
192
-
193
- export { AxisArrow, calculateOffset };
@@ -1 +0,0 @@
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),s=i(t);const l=new s.Vector3,u=new s.Vector3,d=e=>180*e/Math.PI,p=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)},m=new s.Matrix4,h=new s.Vector3,x=new s.Ray,P=new s.Vector3;exports.AxisRotator=({dir1:e,dir2:t,axis:i})=>{const{rotationLimits:M,annotations:f,annotationsClass:b,depthTest:g,scale:y,lineWidth:w,fixed:v,axisColors:C,hoveredColor:j,renderOrder:I,opacity:O,onDragStart:k,onDrag:R,onDragEnd:q,userData:V}=c.useContext(a.context),D=r.useThree((e=>e.controls)),F=c.useRef(null),E=c.useRef(null),W=c.useRef(0),z=c.useRef(0),T=c.useRef(null),[A,L]=c.useState(!1),S=c.useCallback((e=>{f&&(F.current.innerText=`${d(z.current).toFixed(0)}º`,F.current.style.display="block"),e.stopPropagation();const t=e.point.clone(),r=(new s.Vector3).setFromMatrixPosition(E.current.matrixWorld),n=(new s.Vector3).setFromMatrixColumn(E.current.matrixWorld,0).normalize(),o=(new s.Vector3).setFromMatrixColumn(E.current.matrixWorld,1).normalize(),a=(new s.Vector3).setFromMatrixColumn(E.current.matrixWorld,2).normalize(),c=(new s.Plane).setFromNormalAndCoplanarPoint(a,r);T.current={clickPoint:t,origin:r,e1:n,e2:o,normal:a,plane:c},k({component:"Rotator",axis:i,origin:r,directions:[n,o,a]}),D&&(D.enabled=!1),e.target.setPointerCapture(e.pointerId)}),[f,D,k,i]),_=c.useCallback((e=>{if(e.stopPropagation(),A||L(!0),T.current){const{clickPoint:t,origin:r,e1:n,e2:o,normal:a,plane:c}=T.current,[b,g]=(null==M?void 0:M[i])||[void 0,void 0];x.copy(e.ray),x.intersectPlane(c,P),x.direction.negate(),x.intersectPlane(c,P);let y=((e,t,r,n,o)=>{l.copy(e).sub(r),u.copy(t).sub(r);const a=n.dot(n),i=o.dot(o),c=l.dot(n)/a,s=l.dot(o)/i,d=u.dot(n)/a,p=u.dot(o)/i,m=Math.atan2(s,c);return Math.atan2(p,d)-m})(t,P,r,n,o),w=d(y);e.shiftKey&&(w=10*Math.round(w/10),y=(e=>e*Math.PI/180)(w)),void 0!==b&&void 0!==g&&g-b<2*Math.PI?(y=p(y),y=y>Math.PI?y-2*Math.PI:y,y=s.MathUtils.clamp(y,b-W.current,g-W.current),z.current=W.current+y):(z.current=p(W.current+y),z.current=z.current>Math.PI?z.current-2*Math.PI:z.current),f&&(w=d(z.current),F.current.innerText=`${w.toFixed(0)}º`),m.makeRotationAxis(a,y),h.copy(r).applyMatrix4(m).sub(r).negate(),m.setPosition(h),R(m)}}),[f,R,A,M,i]),U=c.useCallback((e=>{f&&(F.current.style.display="none"),e.stopPropagation(),W.current=z.current,T.current=null,q(),D&&(D.enabled=!0),e.target.releasePointerCapture(e.pointerId)}),[f,D,q]),H=c.useCallback((e=>{e.stopPropagation(),L(!1)}),[]),N=c.useMemo((()=>{const r=e.clone().normalize(),n=t.clone().normalize();return(new s.Matrix4).makeBasis(r,n,r.clone().cross(n))}),[e,t]),$=v?.65:.65*y,B=c.useMemo((()=>{const e=[];for(let t=0;t<=32;t++){const r=t*(Math.PI/2)/32;e.push(new s.Vector3(Math.cos(r)*$,Math.sin(r)*$,0))}return e}),[$]);return c.createElement("group",{ref:E,onPointerDown:S,onPointerMove:_,onPointerUp:U,onPointerOut:H,matrix:N,matrixAutoUpdate:!1},f&&c.createElement(o.Html,{position:[$,$,0]},c.createElement("div",{style:{display:"none",background:"#151520",color:"white",padding:"6px 8px",borderRadius:7,whiteSpace:"nowrap"},className:b,ref:F})),c.createElement(n.Line,{points:B,lineWidth:4*w,visible:!1,userData:V}),c.createElement(n.Line,{transparent:!0,raycast:()=>null,depthTest:g,points:B,lineWidth:w,side:s.DoubleSide,color:A?j:C[i],opacity:O,polygonOffset:!0,polygonOffsetFactor:-10,renderOrder:I,fog:!1}))};
@@ -1,7 +0,0 @@
1
- import * as React from 'react';
2
- import * as THREE from 'three';
3
- export declare const AxisRotator: React.FC<{
4
- dir1: THREE.Vector3;
5
- dir2: THREE.Vector3;
6
- axis: 0 | 1 | 2;
7
- }>;
@@ -1,220 +0,0 @@
1
- import * as React from 'react';
2
- import * as THREE from 'three';
3
- import { useThree } from '@react-three/fiber';
4
- import { Line } from '../../core/Line.js';
5
- import { Html } from '../Html.js';
6
- import { context } from './context.js';
7
-
8
- const clickDir = /* @__PURE__ */new THREE.Vector3();
9
- const intersectionDir = /* @__PURE__ */new THREE.Vector3();
10
- const toDegrees = radians => radians * 180 / Math.PI;
11
- const toRadians = degrees => degrees * Math.PI / 180;
12
- const calculateAngle = (clickPoint, intersectionPoint, origin, e1, e2) => {
13
- clickDir.copy(clickPoint).sub(origin);
14
- intersectionDir.copy(intersectionPoint).sub(origin);
15
- const dote1e1 = e1.dot(e1);
16
- const dote2e2 = e2.dot(e2);
17
- const uClick = clickDir.dot(e1) / dote1e1;
18
- const vClick = clickDir.dot(e2) / dote2e2;
19
- const uIntersection = intersectionDir.dot(e1) / dote1e1;
20
- const vIntersection = intersectionDir.dot(e2) / dote2e2;
21
- const angleClick = Math.atan2(vClick, uClick);
22
- const angleIntersection = Math.atan2(vIntersection, uIntersection);
23
- return angleIntersection - angleClick;
24
- };
25
- const fmod = (num, denom) => {
26
- let k = Math.floor(num / denom);
27
- k = k < 0 ? k + 1 : k;
28
- return num - k * denom;
29
- };
30
- const minimizeAngle = angle => {
31
- let result = fmod(angle, 2 * Math.PI);
32
- if (Math.abs(result) < 1e-6) {
33
- return 0.0;
34
- }
35
- if (result < 0.0) {
36
- result += 2 * Math.PI;
37
- }
38
- return result;
39
- };
40
- const rotMatrix = /* @__PURE__ */new THREE.Matrix4();
41
- const posNew = /* @__PURE__ */new THREE.Vector3();
42
- const ray = /* @__PURE__ */new THREE.Ray();
43
- const intersection = /* @__PURE__ */new THREE.Vector3();
44
- const AxisRotator = ({
45
- dir1,
46
- dir2,
47
- axis
48
- }) => {
49
- const {
50
- rotationLimits,
51
- annotations,
52
- annotationsClass,
53
- depthTest,
54
- scale,
55
- lineWidth,
56
- fixed,
57
- axisColors,
58
- hoveredColor,
59
- renderOrder,
60
- opacity,
61
- onDragStart,
62
- onDrag,
63
- onDragEnd,
64
- userData
65
- } = React.useContext(context);
66
- const camControls = useThree(state => state.controls);
67
- const divRef = React.useRef(null);
68
- const objRef = React.useRef(null);
69
- const angle0 = React.useRef(0);
70
- const angle = React.useRef(0);
71
- const clickInfo = React.useRef(null);
72
- const [isHovered, setIsHovered] = React.useState(false);
73
- const onPointerDown = React.useCallback(e => {
74
- if (annotations) {
75
- divRef.current.innerText = `${toDegrees(angle.current).toFixed(0)}º`;
76
- divRef.current.style.display = 'block';
77
- }
78
- e.stopPropagation();
79
- const clickPoint = e.point.clone();
80
- const origin = new THREE.Vector3().setFromMatrixPosition(objRef.current.matrixWorld);
81
- const e1 = new THREE.Vector3().setFromMatrixColumn(objRef.current.matrixWorld, 0).normalize();
82
- const e2 = new THREE.Vector3().setFromMatrixColumn(objRef.current.matrixWorld, 1).normalize();
83
- const normal = new THREE.Vector3().setFromMatrixColumn(objRef.current.matrixWorld, 2).normalize();
84
- const plane = new THREE.Plane().setFromNormalAndCoplanarPoint(normal, origin);
85
- clickInfo.current = {
86
- clickPoint,
87
- origin,
88
- e1,
89
- e2,
90
- normal,
91
- plane
92
- };
93
- onDragStart({
94
- component: 'Rotator',
95
- axis,
96
- origin,
97
- directions: [e1, e2, normal]
98
- });
99
- camControls && (camControls.enabled = false);
100
- // @ts-ignore
101
- e.target.setPointerCapture(e.pointerId);
102
- }, [annotations, camControls, onDragStart, axis]);
103
- const onPointerMove = React.useCallback(e => {
104
- e.stopPropagation();
105
- if (!isHovered) setIsHovered(true);
106
- if (clickInfo.current) {
107
- const {
108
- clickPoint,
109
- origin,
110
- e1,
111
- e2,
112
- normal,
113
- plane
114
- } = clickInfo.current;
115
- const [min, max] = (rotationLimits == null ? void 0 : rotationLimits[axis]) || [undefined, undefined];
116
- ray.copy(e.ray);
117
- ray.intersectPlane(plane, intersection);
118
- ray.direction.negate();
119
- ray.intersectPlane(plane, intersection);
120
- let deltaAngle = calculateAngle(clickPoint, intersection, origin, e1, e2);
121
- let degrees = toDegrees(deltaAngle);
122
-
123
- // @ts-ignore
124
- if (e.shiftKey) {
125
- degrees = Math.round(degrees / 10) * 10;
126
- deltaAngle = toRadians(degrees);
127
- }
128
- if (min !== undefined && max !== undefined && max - min < 2 * Math.PI) {
129
- deltaAngle = minimizeAngle(deltaAngle);
130
- deltaAngle = deltaAngle > Math.PI ? deltaAngle - 2 * Math.PI : deltaAngle;
131
- deltaAngle = THREE.MathUtils.clamp(deltaAngle, min - angle0.current, max - angle0.current);
132
- angle.current = angle0.current + deltaAngle;
133
- } else {
134
- angle.current = minimizeAngle(angle0.current + deltaAngle);
135
- angle.current = angle.current > Math.PI ? angle.current - 2 * Math.PI : angle.current;
136
- }
137
- if (annotations) {
138
- degrees = toDegrees(angle.current);
139
- divRef.current.innerText = `${degrees.toFixed(0)}º`;
140
- }
141
- rotMatrix.makeRotationAxis(normal, deltaAngle);
142
- posNew.copy(origin).applyMatrix4(rotMatrix).sub(origin).negate();
143
- rotMatrix.setPosition(posNew);
144
- onDrag(rotMatrix);
145
- }
146
- }, [annotations, onDrag, isHovered, rotationLimits, axis]);
147
- const onPointerUp = React.useCallback(e => {
148
- if (annotations) {
149
- divRef.current.style.display = 'none';
150
- }
151
- e.stopPropagation();
152
- angle0.current = angle.current;
153
- clickInfo.current = null;
154
- onDragEnd();
155
- camControls && (camControls.enabled = true);
156
- // @ts-ignore
157
- e.target.releasePointerCapture(e.pointerId);
158
- }, [annotations, camControls, onDragEnd]);
159
- const onPointerOut = React.useCallback(e => {
160
- e.stopPropagation();
161
- setIsHovered(false);
162
- }, []);
163
- const matrixL = React.useMemo(() => {
164
- const dir1N = dir1.clone().normalize();
165
- const dir2N = dir2.clone().normalize();
166
- return new THREE.Matrix4().makeBasis(dir1N, dir2N, dir1N.clone().cross(dir2N));
167
- }, [dir1, dir2]);
168
- const r = fixed ? 0.65 : scale * 0.65;
169
- const arc = React.useMemo(() => {
170
- const segments = 32;
171
- const points = [];
172
- for (let j = 0; j <= segments; j++) {
173
- const angle = j * (Math.PI / 2) / segments;
174
- points.push(new THREE.Vector3(Math.cos(angle) * r, Math.sin(angle) * r, 0));
175
- }
176
- return points;
177
- }, [r]);
178
- return /*#__PURE__*/React.createElement("group", {
179
- ref: objRef,
180
- onPointerDown: onPointerDown,
181
- onPointerMove: onPointerMove,
182
- onPointerUp: onPointerUp,
183
- onPointerOut: onPointerOut,
184
- matrix: matrixL,
185
- matrixAutoUpdate: false
186
- }, annotations && /*#__PURE__*/React.createElement(Html, {
187
- position: [r, r, 0]
188
- }, /*#__PURE__*/React.createElement("div", {
189
- style: {
190
- display: 'none',
191
- background: '#151520',
192
- color: 'white',
193
- padding: '6px 8px',
194
- borderRadius: 7,
195
- whiteSpace: 'nowrap'
196
- },
197
- className: annotationsClass,
198
- ref: divRef
199
- })), /*#__PURE__*/React.createElement(Line, {
200
- points: arc,
201
- lineWidth: lineWidth * 4,
202
- visible: false,
203
- userData: userData
204
- }), /*#__PURE__*/React.createElement(Line, {
205
- transparent: true,
206
- raycast: () => null,
207
- depthTest: depthTest,
208
- points: arc,
209
- lineWidth: lineWidth,
210
- side: THREE.DoubleSide,
211
- color: isHovered ? hoveredColor : axisColors[axis],
212
- opacity: opacity,
213
- polygonOffset: true,
214
- polygonOffsetFactor: -10,
215
- renderOrder: renderOrder,
216
- fog: false
217
- }));
218
- };
219
-
220
- export { AxisRotator };
@@ -1 +0,0 @@
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,d=new c.Matrix4;exports.PlaneSlider=({dir1:e,dir2:t,axis:i})=>{const{translation:p,translationLimits:m,annotations:x,annotationsClass:b,depthTest:g,scale:f,lineWidth:h,fixed:M,axisColors:y,hoveredColor:C,opacity:P,renderOrder:v,onDragStart:w,onDrag:O,onDragEnd:j,userData:k}=s.useContext(a.context),F=r.useThree((e=>e.controls)),z=s.useRef(null),E=s.useRef(null),V=s.useRef(null),q=s.useRef(0),D=s.useRef(0),[R,T]=s.useState(!1),S=s.useCallback((e=>{x&&(z.current.innerText=`${p.current[(i+1)%3].toFixed(2)}, ${p.current[(i+2)%3].toFixed(2)}`,z.current.style.display="block"),e.stopPropagation();const t=e.point.clone(),r=(new c.Vector3).setFromMatrixPosition(E.current.matrixWorld),n=(new c.Vector3).setFromMatrixColumn(E.current.matrixWorld,0).normalize(),o=(new c.Vector3).setFromMatrixColumn(E.current.matrixWorld,1).normalize(),a=(new c.Vector3).setFromMatrixColumn(E.current.matrixWorld,2).normalize(),s=(new c.Plane).setFromNormalAndCoplanarPoint(a,r);V.current={clickPoint:t,e1:n,e2:o,plane:s},q.current=p.current[(i+1)%3],D.current=p.current[(i+2)%3],w({component:"Slider",axis:i,origin:r,directions:[n,o,a]}),F&&(F.enabled=!1),e.target.setPointerCapture(e.pointerId)}),[x,F,w,i]),W=s.useCallback((e=>{if(e.stopPropagation(),R||T(!0),V.current){const{clickPoint:t,e1:r,e2:n,plane:o}=V.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,f]=((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),d=(r.getComponent(a)-u*(s/i))/(l-c*(s/i));return[(u-d*c)/i,d]})(r,n,u);void 0!==a&&(g=Math.max(g,a-q.current)),void 0!==s&&(g=Math.min(g,s-q.current)),void 0!==c&&(f=Math.max(f,c-D.current)),void 0!==b&&(f=Math.min(f,b-D.current)),p.current[(i+1)%3]=q.current+g,p.current[(i+2)%3]=D.current+f,x&&(z.current.innerText=`${p.current[(i+1)%3].toFixed(2)}, ${p.current[(i+2)%3].toFixed(2)}`),d.makeTranslation(g*r.x+f*n.x,g*r.y+f*n.y,g*r.z+f*n.z),O(d)}}),[x,O,R,p,m,i]),$=s.useCallback((e=>{x&&(z.current.style.display="none"),e.stopPropagation(),V.current=null,j(),F&&(F.enabled=!0),e.target.releasePointerCapture(e.pointerId)}),[x,F,j]),_=s.useCallback((e=>{e.stopPropagation(),T(!1)}),[]),L=s.useMemo((()=>{const r=e.clone().normalize(),n=t.clone().normalize();return(new c.Matrix4).makeBasis(r,n,r.clone().cross(n))}),[e,t]),A=M?1/7:f/7,B=M?.225:.225*f,H=R?C:y[i],I=s.useMemo((()=>[new c.Vector3(0,0,0),new c.Vector3(0,B,0),new c.Vector3(B,B,0),new c.Vector3(B,0,0),new c.Vector3(0,0,0)]),[B]);return s.createElement("group",{ref:E,matrix:L,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:z})),s.createElement("group",{position:[1.7*A,1.7*A,0]},s.createElement("mesh",{visible:!0,onPointerDown:S,onPointerMove:W,onPointerUp:$,onPointerOut:_,scale:B,userData:k,renderOrder:v},s.createElement("planeGeometry",null),s.createElement("meshBasicMaterial",{transparent:!0,depthTest:g,color:H,polygonOffset:!0,polygonOffsetFactor:-10,side:c.DoubleSide,fog:!1})),s.createElement(n.Line,{position:[-B/2,-B/2,0],transparent:!0,depthTest:g,points:I,lineWidth:h,color:H,opacity:P,polygonOffset:!0,polygonOffsetFactor:-10,userData:k,fog:!1,renderOrder:v})))};
@@ -1,7 +0,0 @@
1
- import * as React from 'react';
2
- import * as THREE from 'three';
3
- export declare const PlaneSlider: React.FC<{
4
- dir1: THREE.Vector3;
5
- dir2: THREE.Vector3;
6
- axis: 0 | 1 | 2;
7
- }>;