@splinetool/runtime 2.0.23 → 2.0.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/runtime-chunk-23H2UXOS.js +1 -0
- package/build/runtime-chunk-23H2UXOS.js.br +0 -0
- package/build/runtime-chunk-23H2UXOS.js.gz +0 -0
- package/build/{runtime-chunk-DVEQODTP.js → runtime-chunk-2G3XRBSE.js} +1 -1
- package/build/runtime-chunk-2G3XRBSE.js.br +0 -0
- package/build/runtime-chunk-2G3XRBSE.js.gz +0 -0
- package/build/{runtime-chunk-K243YAC2.js → runtime-chunk-5JV6Q5VM.js} +1 -1
- package/build/runtime-chunk-5JV6Q5VM.js.br +0 -0
- package/build/runtime-chunk-5JV6Q5VM.js.gz +0 -0
- package/build/{runtime-chunk-A76FVHGE.js → runtime-chunk-6G2UV3Q3.js} +1 -1
- package/build/runtime-chunk-6G2UV3Q3.js.br +0 -0
- package/build/runtime-chunk-6G2UV3Q3.js.gz +0 -0
- package/build/{runtime-chunk-XCKZMNJQ.js → runtime-chunk-7TJXMO5V.js} +1 -1
- package/build/runtime-chunk-7TJXMO5V.js.br +0 -0
- package/build/runtime-chunk-7TJXMO5V.js.gz +0 -0
- package/build/{runtime-chunk-S755CUUZ.js → runtime-chunk-A6KXWGB5.js} +1 -1
- package/build/runtime-chunk-A6KXWGB5.js.br +0 -0
- package/build/runtime-chunk-A6KXWGB5.js.gz +0 -0
- package/build/{runtime-chunk-TEXI5YDQ.js → runtime-chunk-COQMTU7H.js} +1 -1
- package/build/runtime-chunk-COQMTU7H.js.br +0 -0
- package/build/runtime-chunk-COQMTU7H.js.gz +0 -0
- package/build/runtime-chunk-CSJ2DZY7.js +1 -0
- package/build/runtime-chunk-CSJ2DZY7.js.br +0 -0
- package/build/runtime-chunk-CSJ2DZY7.js.gz +0 -0
- package/build/{runtime-chunk-52RNNYO5.js → runtime-chunk-CZOW5UET.js} +1 -1
- package/build/runtime-chunk-CZOW5UET.js.br +0 -0
- package/build/runtime-chunk-CZOW5UET.js.gz +0 -0
- package/build/{runtime-chunk-ZCJM5CSP.js → runtime-chunk-DGOXAYKE.js} +1 -1
- package/build/runtime-chunk-DGOXAYKE.js.br +0 -0
- package/build/runtime-chunk-DGOXAYKE.js.gz +0 -0
- package/build/{runtime-chunk-AHEZMDVX.js → runtime-chunk-III3PY57.js} +1 -1
- package/build/runtime-chunk-III3PY57.js.br +0 -0
- package/build/runtime-chunk-III3PY57.js.gz +0 -0
- package/build/{runtime-chunk-PW6QGMSR.js → runtime-chunk-IQDIX4JZ.js} +1 -1
- package/build/runtime-chunk-IQDIX4JZ.js.br +0 -0
- package/build/runtime-chunk-IQDIX4JZ.js.gz +0 -0
- package/build/{runtime-chunk-K4CIB2C6.js → runtime-chunk-IT5GSRUQ.js} +1 -1
- package/build/runtime-chunk-IT5GSRUQ.js.br +0 -0
- package/build/runtime-chunk-IT5GSRUQ.js.gz +0 -0
- package/build/{runtime-chunk-RUSRNMDR.js → runtime-chunk-IX7AZI2Z.js} +1 -1
- package/build/runtime-chunk-IX7AZI2Z.js.br +0 -0
- package/build/runtime-chunk-IX7AZI2Z.js.gz +0 -0
- package/build/{runtime-chunk-LIGM5CBR.js → runtime-chunk-JK5SZBXI.js} +1 -1
- package/build/runtime-chunk-JK5SZBXI.js.br +0 -0
- package/build/runtime-chunk-JK5SZBXI.js.gz +0 -0
- package/build/{runtime-chunk-HKQCYNAF.js → runtime-chunk-K7HUQUBO.js} +1 -1
- package/build/runtime-chunk-K7HUQUBO.js.br +0 -0
- package/build/runtime-chunk-K7HUQUBO.js.gz +0 -0
- package/build/{runtime-chunk-Y5EAETTQ.js → runtime-chunk-OD3BRITR.js} +1 -1
- package/build/runtime-chunk-OD3BRITR.js.br +0 -0
- package/build/runtime-chunk-OD3BRITR.js.gz +0 -0
- package/build/{runtime-chunk-FYL3WK3Q.js → runtime-chunk-RYPQ4UYZ.js} +1 -1
- package/build/runtime-chunk-RYPQ4UYZ.js.br +0 -0
- package/build/runtime-chunk-RYPQ4UYZ.js.gz +0 -0
- package/build/{runtime-chunk-N2NCEEAW.js → runtime-chunk-TTYK7PPG.js} +1 -1
- package/build/{runtime-chunk-N2NCEEAW.js.br → runtime-chunk-TTYK7PPG.js.br} +0 -0
- package/build/{runtime-chunk-N2NCEEAW.js.gz → runtime-chunk-TTYK7PPG.js.gz} +0 -0
- package/build/{runtime-chunk-UKJX6LHM.js → runtime-chunk-UNCE2XMH.js} +1 -1
- package/build/runtime-chunk-UNCE2XMH.js.br +0 -0
- package/build/runtime-chunk-UNCE2XMH.js.gz +0 -0
- package/build/{runtime-chunk-H7HOYWRJ.js → runtime-chunk-W3AWVQGD.js} +1 -1
- package/build/runtime-chunk-W3AWVQGD.js.br +0 -0
- package/build/runtime-chunk-W3AWVQGD.js.gz +0 -0
- package/build/{runtime-chunk-QWR7RYED.js → runtime-chunk-W6CBB6HF.js} +1 -1
- package/build/runtime-chunk-W6CBB6HF.js.br +0 -0
- package/build/runtime-chunk-W6CBB6HF.js.gz +0 -0
- package/build/{runtime-chunk-6A2V4AND.js → runtime-chunk-XKB5FGZ7.js} +1 -1
- package/build/runtime-chunk-XKB5FGZ7.js.br +0 -0
- package/build/runtime-chunk-XKB5FGZ7.js.gz +0 -0
- package/build/{runtime-chunk-576TG6DE.js → runtime-chunk-XV4XI3BX.js} +1 -1
- package/build/runtime-chunk-XV4XI3BX.js.br +0 -0
- package/build/runtime-chunk-XV4XI3BX.js.gz +0 -0
- package/build/{runtime-chunk-R4B77PH5.js → runtime-chunk-YK4LBPDN.js} +1 -1
- package/build/runtime-chunk-YK4LBPDN.js.br +0 -0
- package/build/runtime-chunk-YK4LBPDN.js.gz +0 -0
- package/build/{runtime-chunk-AWJUME6M.js → runtime-chunk-ZAQHRZOM.js} +1 -1
- package/build/runtime-chunk-ZAQHRZOM.js.br +0 -0
- package/build/runtime-chunk-ZAQHRZOM.js.gz +0 -0
- package/build/{runtime-chunk-KMYHZDFC.js → runtime-chunk-ZP5E3FUX.js} +1 -1
- package/build/runtime-chunk-ZP5E3FUX.js.br +0 -0
- package/build/runtime-chunk-ZP5E3FUX.js.gz +0 -0
- package/build/{runtime-classicRuntime-SNC5QNFJ.js → runtime-classicRuntime-VISVFQLA.js} +1 -1
- package/build/runtime-classicRuntime-VISVFQLA.js.br +0 -0
- package/build/runtime-classicRuntime-VISVFQLA.js.gz +0 -0
- package/build/{runtime-cloners-PX36DIYP.js → runtime-cloners-DA5GJ2YG.js} +1 -1
- package/build/runtime-cloners-DA5GJ2YG.js.br +0 -0
- package/build/runtime-cloners-DA5GJ2YG.js.gz +0 -0
- package/build/{runtime-components-AQDWI5MF.js → runtime-components-45VFYEWA.js} +1 -1
- package/build/runtime-components-45VFYEWA.js.br +0 -0
- package/build/runtime-components-45VFYEWA.js.gz +0 -0
- package/build/{runtime-createDestroy-QA7PN6PL.js → runtime-createDestroy-7WD5EPLW.js} +1 -1
- package/build/runtime-createDestroy-7WD5EPLW.js.br +0 -0
- package/build/runtime-createDestroy-7WD5EPLW.js.gz +0 -0
- package/build/{runtime-dragDrop-E2PJAJKM.js → runtime-dragDrop-ME2ZSZKX.js} +1 -1
- package/build/runtime-dragDrop-ME2ZSZKX.js.br +0 -0
- package/build/runtime-dragDrop-ME2ZSZKX.js.gz +0 -0
- package/build/{runtime-gameControls-3YHTQ6PG.js → runtime-gameControls-GXMGUAHJ.js} +1 -1
- package/build/runtime-gameControls-GXMGUAHJ.js.br +0 -0
- package/build/runtime-gameControls-GXMGUAHJ.js.gz +0 -0
- package/build/{runtime-hair-OX6QN52I.js → runtime-hair-5KIPB6G4.js} +1 -1
- package/build/runtime-hair-5KIPB6G4.js.br +2 -0
- package/build/runtime-hair-5KIPB6G4.js.gz +0 -0
- package/build/{runtime-mergeStaticGeometries-A4LSPM7Z.js → runtime-mergeStaticGeometries-JADSU6ON.js} +1 -1
- package/build/runtime-mergeStaticGeometries-JADSU6ON.js.br +0 -0
- package/build/runtime-mergeStaticGeometries-JADSU6ON.js.gz +0 -0
- package/build/{runtime-miscActions-WE5KFTYC.js → runtime-miscActions-HV3LXJC4.js} +1 -1
- package/build/runtime-miscActions-HV3LXJC4.js.br +0 -0
- package/build/runtime-miscActions-HV3LXJC4.js.gz +0 -0
- package/build/{runtime-mouseHover-7EUJQA6D.js → runtime-mouseHover-4FLOQ33Q.js} +1 -1
- package/build/runtime-mouseHover-4FLOQ33Q.js.br +0 -0
- package/build/runtime-mouseHover-4FLOQ33Q.js.gz +0 -0
- package/build/{runtime-particles-I6KZWWX6.js → runtime-particles-IWZ2A2ZT.js} +1 -1
- package/build/runtime-particles-IWZ2A2ZT.js.br +0 -0
- package/build/runtime-particles-IWZ2A2ZT.js.gz +0 -0
- package/build/{runtime-paths-IV2RNWTD.js → runtime-paths-7VX3FIAI.js} +1 -1
- package/build/runtime-paths-7VX3FIAI.js.br +0 -0
- package/build/runtime-paths-7VX3FIAI.js.gz +0 -0
- package/build/{runtime-resize-RPBLVRDB.js → runtime-resize-ANAQRV3G.js} +1 -1
- package/build/runtime-resize-ANAQRV3G.js.br +0 -0
- package/build/runtime-resize-ANAQRV3G.js.gz +0 -0
- package/build/{runtime-sceneTransition-KA2USY5D.js → runtime-sceneTransition-WMJAE4CW.js} +1 -1
- package/build/runtime-sceneTransition-WMJAE4CW.js.br +0 -0
- package/build/runtime-sceneTransition-WMJAE4CW.js.gz +0 -0
- package/build/{runtime-scroll-AYTJDQGX.js → runtime-scroll-6LPASL7K.js} +1 -1
- package/build/runtime-scroll-6LPASL7K.js.br +0 -0
- package/build/runtime-scroll-6LPASL7K.js.gz +0 -0
- package/build/runtime-shapeBlends-M4GBLHA6.js +1 -0
- package/build/runtime-shapeBlends-M4GBLHA6.js.br +3 -0
- package/build/runtime-shapeBlends-M4GBLHA6.js.gz +0 -0
- package/build/{runtime-text-CPQVHRKH.js → runtime-text-CMK26YI5.js} +1 -1
- package/build/runtime-text-CMK26YI5.js.br +0 -0
- package/build/runtime-text-CMK26YI5.js.gz +0 -0
- package/build/{runtime-textInputs-QQ4ASBMT.js → runtime-textInputs-3MC2BBQI.js} +1 -1
- package/build/runtime-textInputs-3MC2BBQI.js.br +0 -0
- package/build/runtime-textInputs-3MC2BBQI.js.gz +0 -0
- package/build/{runtime-timeline-PB7GMHMW.js → runtime-timeline-GNNPV7ZF.js} +1 -1
- package/build/runtime-timeline-GNNPV7ZF.js.br +0 -0
- package/build/runtime-timeline-GNNPV7ZF.js.gz +0 -0
- package/build/{runtime-tracking-CQID5IFN.js → runtime-tracking-FCGTKPDC.js} +1 -1
- package/build/runtime-tracking-FCGTKPDC.js.br +0 -0
- package/build/runtime-tracking-FCGTKPDC.js.gz +0 -0
- package/build/{runtime-transitions-A4Y4R2WU.js → runtime-transitions-6M3RBBMQ.js} +1 -1
- package/build/runtime-transitions-6M3RBBMQ.js.br +0 -0
- package/build/runtime-transitions-6M3RBBMQ.js.gz +0 -0
- package/build/{runtime-ui2d-SSJFOVP2.js → runtime-ui2d-XSGM4BYR.js} +1 -1
- package/build/runtime-ui2d-XSGM4BYR.js.br +0 -0
- package/build/runtime-ui2d-XSGM4BYR.js.gz +0 -0
- package/build/{runtime-vectorShapes-M4T2AOYG.js → runtime-vectorShapes-474UD7EK.js} +1 -1
- package/build/runtime-vectorShapes-474UD7EK.js.br +0 -0
- package/build/runtime-vectorShapes-474UD7EK.js.gz +0 -0
- package/build/{runtime-webgpu-QAK25VK6.js → runtime-webgpu-VBBMA2RD.js} +1 -1
- package/build/runtime-webgpu-VBBMA2RD.js.br +0 -0
- package/build/runtime-webgpu-VBBMA2RD.js.gz +0 -0
- package/build/runtime.cjs +149 -149
- package/build/runtime.js +1 -1
- package/build/runtime.js.br +0 -0
- package/build/runtime.js.gz +0 -0
- package/build/runtime.standalone.js +1 -1
- package/build/runtime.standalone.js.br +0 -0
- package/build/runtime.standalone.js.gz +0 -0
- package/build/runtime.standalone.webgl.js +1 -1
- package/build/runtime.standalone.webgl.js.br +0 -0
- package/build/runtime.standalone.webgl.js.gz +0 -0
- package/build/runtime.standalone.webgpu.js +1 -1
- package/build/runtime.standalone.webgpu.js.br +0 -0
- package/build/runtime.standalone.webgpu.js.gz +0 -0
- package/build/runtime.standalone.webgpu.micro.js +1 -1
- package/build/runtime.standalone.webgpu.micro.js.br +0 -0
- package/build/runtime.standalone.webgpu.micro.js.gz +0 -0
- package/build/runtime.standalone.webgpu.min.js +1 -1
- package/build/runtime.standalone.webgpu.min.js.br +0 -0
- package/build/runtime.standalone.webgpu.min.js.gz +0 -0
- package/package.json +1 -1
- package/build/runtime-chunk-52RNNYO5.js.br +0 -0
- package/build/runtime-chunk-52RNNYO5.js.gz +0 -0
- package/build/runtime-chunk-576TG6DE.js.br +0 -0
- package/build/runtime-chunk-576TG6DE.js.gz +0 -0
- package/build/runtime-chunk-6A2V4AND.js.br +0 -0
- package/build/runtime-chunk-6A2V4AND.js.gz +0 -0
- package/build/runtime-chunk-6KZ5UEEO.js +0 -1
- package/build/runtime-chunk-6KZ5UEEO.js.br +0 -0
- package/build/runtime-chunk-6KZ5UEEO.js.gz +0 -0
- package/build/runtime-chunk-A76FVHGE.js.br +0 -0
- package/build/runtime-chunk-A76FVHGE.js.gz +0 -0
- package/build/runtime-chunk-AHEZMDVX.js.br +0 -0
- package/build/runtime-chunk-AHEZMDVX.js.gz +0 -0
- package/build/runtime-chunk-AWJUME6M.js.br +0 -0
- package/build/runtime-chunk-AWJUME6M.js.gz +0 -0
- package/build/runtime-chunk-DVEQODTP.js.br +0 -0
- package/build/runtime-chunk-DVEQODTP.js.gz +0 -0
- package/build/runtime-chunk-FYL3WK3Q.js.br +0 -0
- package/build/runtime-chunk-FYL3WK3Q.js.gz +0 -0
- package/build/runtime-chunk-H7HOYWRJ.js.br +0 -0
- package/build/runtime-chunk-H7HOYWRJ.js.gz +0 -0
- package/build/runtime-chunk-HKQCYNAF.js.br +0 -0
- package/build/runtime-chunk-HKQCYNAF.js.gz +0 -0
- package/build/runtime-chunk-K243YAC2.js.br +0 -0
- package/build/runtime-chunk-K243YAC2.js.gz +0 -0
- package/build/runtime-chunk-K4CIB2C6.js.br +0 -0
- package/build/runtime-chunk-K4CIB2C6.js.gz +0 -0
- package/build/runtime-chunk-KMYHZDFC.js.br +0 -0
- package/build/runtime-chunk-KMYHZDFC.js.gz +0 -0
- package/build/runtime-chunk-LIGM5CBR.js.br +0 -0
- package/build/runtime-chunk-LIGM5CBR.js.gz +0 -0
- package/build/runtime-chunk-PMXIEPYE.js +0 -1
- package/build/runtime-chunk-PMXIEPYE.js.br +0 -0
- package/build/runtime-chunk-PMXIEPYE.js.gz +0 -0
- package/build/runtime-chunk-PW6QGMSR.js.br +0 -0
- package/build/runtime-chunk-PW6QGMSR.js.gz +0 -0
- package/build/runtime-chunk-QWR7RYED.js.br +0 -0
- package/build/runtime-chunk-QWR7RYED.js.gz +0 -0
- package/build/runtime-chunk-R4B77PH5.js.br +0 -0
- package/build/runtime-chunk-R4B77PH5.js.gz +0 -0
- package/build/runtime-chunk-RUSRNMDR.js.br +0 -0
- package/build/runtime-chunk-RUSRNMDR.js.gz +0 -0
- package/build/runtime-chunk-S755CUUZ.js.br +0 -0
- package/build/runtime-chunk-S755CUUZ.js.gz +0 -0
- package/build/runtime-chunk-TEXI5YDQ.js.br +0 -0
- package/build/runtime-chunk-TEXI5YDQ.js.gz +0 -0
- package/build/runtime-chunk-UKJX6LHM.js.br +0 -0
- package/build/runtime-chunk-UKJX6LHM.js.gz +0 -0
- package/build/runtime-chunk-XCKZMNJQ.js.br +0 -0
- package/build/runtime-chunk-XCKZMNJQ.js.gz +0 -0
- package/build/runtime-chunk-Y5EAETTQ.js.br +0 -0
- package/build/runtime-chunk-Y5EAETTQ.js.gz +0 -0
- package/build/runtime-chunk-ZCJM5CSP.js.br +0 -0
- package/build/runtime-chunk-ZCJM5CSP.js.gz +0 -0
- package/build/runtime-classicRuntime-SNC5QNFJ.js.br +0 -0
- package/build/runtime-classicRuntime-SNC5QNFJ.js.gz +0 -0
- package/build/runtime-cloners-PX36DIYP.js.br +0 -0
- package/build/runtime-cloners-PX36DIYP.js.gz +0 -0
- package/build/runtime-components-AQDWI5MF.js.br +0 -0
- package/build/runtime-components-AQDWI5MF.js.gz +0 -0
- package/build/runtime-createDestroy-QA7PN6PL.js.br +0 -0
- package/build/runtime-createDestroy-QA7PN6PL.js.gz +0 -0
- package/build/runtime-dragDrop-E2PJAJKM.js.br +0 -0
- package/build/runtime-dragDrop-E2PJAJKM.js.gz +0 -0
- package/build/runtime-gameControls-3YHTQ6PG.js.br +0 -0
- package/build/runtime-gameControls-3YHTQ6PG.js.gz +0 -0
- package/build/runtime-hair-OX6QN52I.js.br +0 -4
- package/build/runtime-hair-OX6QN52I.js.gz +0 -0
- package/build/runtime-mergeStaticGeometries-A4LSPM7Z.js.br +0 -0
- package/build/runtime-mergeStaticGeometries-A4LSPM7Z.js.gz +0 -0
- package/build/runtime-miscActions-WE5KFTYC.js.br +0 -0
- package/build/runtime-miscActions-WE5KFTYC.js.gz +0 -0
- package/build/runtime-mouseHover-7EUJQA6D.js.br +0 -0
- package/build/runtime-mouseHover-7EUJQA6D.js.gz +0 -0
- package/build/runtime-particles-I6KZWWX6.js.br +0 -0
- package/build/runtime-particles-I6KZWWX6.js.gz +0 -0
- package/build/runtime-paths-IV2RNWTD.js.br +0 -0
- package/build/runtime-paths-IV2RNWTD.js.gz +0 -0
- package/build/runtime-resize-RPBLVRDB.js.br +0 -0
- package/build/runtime-resize-RPBLVRDB.js.gz +0 -0
- package/build/runtime-sceneTransition-KA2USY5D.js.br +0 -0
- package/build/runtime-sceneTransition-KA2USY5D.js.gz +0 -0
- package/build/runtime-scroll-AYTJDQGX.js.br +0 -0
- package/build/runtime-scroll-AYTJDQGX.js.gz +0 -0
- package/build/runtime-shapeBlends-F6XS74BM.js +0 -1
- package/build/runtime-shapeBlends-F6XS74BM.js.br +0 -0
- package/build/runtime-shapeBlends-F6XS74BM.js.gz +0 -0
- package/build/runtime-text-CPQVHRKH.js.br +0 -0
- package/build/runtime-text-CPQVHRKH.js.gz +0 -0
- package/build/runtime-textInputs-QQ4ASBMT.js.br +0 -0
- package/build/runtime-textInputs-QQ4ASBMT.js.gz +0 -0
- package/build/runtime-timeline-PB7GMHMW.js.br +0 -0
- package/build/runtime-timeline-PB7GMHMW.js.gz +0 -0
- package/build/runtime-tracking-CQID5IFN.js.br +0 -0
- package/build/runtime-tracking-CQID5IFN.js.gz +0 -0
- package/build/runtime-transitions-A4Y4R2WU.js.br +0 -0
- package/build/runtime-transitions-A4Y4R2WU.js.gz +0 -0
- package/build/runtime-ui2d-SSJFOVP2.js.br +0 -0
- package/build/runtime-ui2d-SSJFOVP2.js.gz +0 -0
- package/build/runtime-vectorShapes-M4T2AOYG.js.br +0 -0
- package/build/runtime-vectorShapes-M4T2AOYG.js.gz +0 -0
- package/build/runtime-webgpu-QAK25VK6.js.br +0 -0
- package/build/runtime-webgpu-QAK25VK6.js.gz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as t}from"./runtime-chunk-A76FVHGE.js";import{b as e}from"./runtime-chunk-XCKZMNJQ.js";import{$ as i,C as r}from"./runtime-chunk-PW6QGMSR.js";import{f as n,v as s}from"./runtime-chunk-N2NCEEAW.js";import{c as a}from"./runtime-chunk-RTLL6WIB.js";import{c as o}from"./runtime-chunk-2PT2WH66.js";import{K as l}from"./runtime-chunk-AIWIOLR6.js";import{Cc as h,Ec as d,Fc as c,Oc as u,Pc as p,Rc as m,Wc as f,qd as y}from"./runtime-chunk-BVVSZMXD.js";import{a as b,b as x}from"./runtime-chunk-ML3Z74BL.js";var g=x(b((t,e)=>{var i,r;i=t,r=function(){return t.importState=function(e){var i=new t;return i.importState(e),i},t;function t(){return function(t){var e=0,i=0,r=0,n=1;0==t.length&&(t=[+new Date]);var s=function(){var t=4022871197,e=function(e){e=e.toString();for(var i=0;i<e.length;i++){var r=.02519603282416938*(t+=e.charCodeAt(i));r-=t=r>>>0,t=(r*=t)>>>0,t+=4294967296*(r-=t)}return 2.3283064365386963e-10*(t>>>0)};return e.version="Mash 0.9",e}();e=s(" "),i=s(" "),r=s(" ");for(var a=0;a<t.length;a++)(e-=s(t[a]))<0&&(e+=1),(i-=s(t[a]))<0&&(i+=1),(r-=s(t[a]))<0&&(r+=1);s=null;var o=function(){var t=2091639*e+2.3283064365386963e-10*n;return e=i,i=r,r=t-(n=0|t)};return o.next=o,o.uint32=function(){return 4294967296*o()},o.fract53=function(){return o()+11102230246251565e-32*(2097152*o()|0)},o.version="Alea 0.9",o.args=t,o.exportState=function(){return[e,i,r,n]},o.importState=function(t){e=+t[0]||0,i=+t[1]||0,r=+t[2]||0,n=+t[3]||0},o}(Array.prototype.slice.call(arguments))}},"object"==typeof t?e.exports=r():"function"==typeof define&&define.amd?define(r):i.Alea=r()})()),M=.5*(Math.sqrt(3)-1),v=(3-Math.sqrt(3))/6,w=1/3,j=1/6,A=(Math.sqrt(5),Math.sqrt(5),t=>0|Math.floor(t)),S=new Float64Array([1,1,-1,1,1,-1,-1,-1,1,0,-1,0,1,0,-1,0,0,1,0,-1,0,1,0,-1]),F=new Float64Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0,1,0,1,-1,0,1,1,0,-1,-1,0,-1,0,1,1,0,-1,1,0,1,-1,0,-1,-1]);function _(t){let e=new Uint8Array(512);for(let t=0;t<256;t++)e[t]=t;for(let i=0;i<255;i++){let r=i+~~(t()*(256-i)),n=e[i];e[i]=e[r],e[r]=n}for(let t=256;t<512;t++)e[t]=e[t-256];return e}var W=new f,z=class{constructor(t){this.weightAttribute=null;let e=t.geometry;if(!e.isBufferGeometry||3!==e.attributes.position.itemSize)throw new Error("THREE.MeshSurfaceSampler: Requires BufferGeometry triangle mesh.");e.index&&(e=e.toNonIndexed()),this.geometry=e,this.randomFunction=Math.random,this.positionAttribute=this.geometry.getAttribute("position"),this.distribution=null}build(){let t=this.positionAttribute,e=new Float32Array(t.count/3);for(let i=0;i<t.count;i+=3){let r=1;W.a.fromBufferAttribute(t,i),W.b.fromBufferAttribute(t,i+1),W.c.fromBufferAttribute(t,i+2),r*=W.getArea(),e[i/3]=r}this.distribution=new Float32Array(t.count/3);let i=0;for(let t=0;t<e.length;t++)i+=e[t],this.distribution[t]=i;return this}setRandomGenerator(t){return this.randomFunction=t,this}sample(t,e){if(this.distribution){let i=this.distribution[this.distribution.length-1],r=this.binarySearch(this.randomFunction()*i);return this.sampleFace(r,t,e)}}binarySearch(t){if(!this.distribution)return 0;let e=this.distribution,i=0,r=e.length-1,n=-1;for(;i<=r;){let s=Math.ceil((i+r)/2);if(0===s||e[s-1]<=t&&e[s]>t){n=s;break}t<e[s]?r=s-1:i=s+1}return n}sampleFace(t,e,i){let r=this.randomFunction(),n=this.randomFunction();return r+n>1&&(r=1-r,n=1-n),W.a.fromBufferAttribute(this.positionAttribute,3*t),W.b.fromBufferAttribute(this.positionAttribute,3*t+1),W.c.fromBufferAttribute(this.positionAttribute,3*t+2),e.set(0,0,0).addScaledVector(W.a,r).addScaledVector(W.b,n).addScaledVector(W.c,1-(r+n)),W.getNormal(i),this}},C={x:[1,0,0],"-x":[-1,0,0],y:[0,1,0],"-y":[0,-1,0],z:[0,0,1],"-z":[0,0,-1]},O={polygon_center:0,edge:1,vertex:2},N=(t,e)=>(i,r)=>e&&0!==i&&0!==t?t*r/100:0,P=(t,e)=>{let i=Math.abs(e),r=-1*i;return(t- -1)*(i-r)/2+r},T=new c,V=new c,R=new c,k=new c;function B(t,e){let i=R.fromArray(t),r=k.fromArray(e);V.copy(r).sub(i);let n=V.length();return V.normalize().multiplyScalar(.5*n),T.copy(i).add(V).toArray()}var I,E,U,D,q=new f,L=new c,G=new c,$=new c,H=class extends y{},Q=class extends H{constructor(t,e){super(void 0,void 0,e),this.source=t,this.isClonerInstancedMesh=!0,this.hiddenMatrix=new u,this.pivotMatrix=new u,this.previousModelViewMatrix=new u,this.copyPreviousMatrix=!0,this.capacity=e,this.count=0,this.matrixAutoUpdate=!1}raycast(t,e){}updateMatrixWorld(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&&(null===this.parent?this.matrixWorld.multiplyMatrices(this.hiddenMatrix,this.matrix):(this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.hiddenMatrix),this.matrixWorld.multiplyMatrices(this.matrixWorld,this.matrix)),this.matrixWorld.multiply(this.pivotMatrix),this.matrixWorldNeedsUpdate=!1,t=!0);for(let e of this.children)e.updateMatrixWorld(t)}updateWorldMatrix(t,e){let i=this.parent;if(t&&null!==i&&i.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),null===this.parent?this.matrixWorld.multiplyMatrices(this.hiddenMatrix,this.matrix):(this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.hiddenMatrix),this.matrixWorld.multiplyMatrices(this.matrixWorld,this.matrix)),this.matrixWorld.multiply(this.pivotMatrix),e)for(let t of this.children)t.updateWorldMatrix(!1,!0)}onAfterRender(t,e,i,r,n,s){this.copyPreviousMatrix&&this.previousModelViewMatrix.copy(this.modelViewMatrix)}get visible(){return!0!==this.source.cloner?.insideBoolean&&(this.source.visible||this.source.dataPatched.visible&&!0===this.source.dataPatched.cloner?.hideBase)}set visible(t){}get castShadow(){return this.source.castShadow}set castShadow(t){}get receiveShadow(){return this.source.receiveShadow}set receiveShadow(t){}get layers(){return this.source.layers}set layers(t){}get geometry(){return this.source.geometry}set geometry(t){}get material(){return this.source.material}set material(t){}get morphTargetInfluences(){return this.source.morphTargetInfluences}set morphTargetInfluences(t){}},Z=t=>.5*(1-Math.cos(t*Math.PI)),K=class{constructor(){this.perlin=new Array(4096)}noise(t,e=0,i=0){if(null==this.perlin){this.perlin=new Array(4096);for(let t=0;t<4096;t++)this.perlin[t]=Math.random()}t<0&&(t=-t),e<0&&(e=-e),i<0&&(i=-i);let r,n,s,a,o,l=Math.floor(t),h=Math.floor(e),d=Math.floor(i),c=t-l,u=e-h,p=i-d,m=0,f=.5;for(let t=0;t<4;t++){let t=l+(h<<4)+(d<<8);r=Z(c),n=Z(u),s=this.perlin[4095&t],s+=r*(this.perlin[t+1&4095]-s),a=this.perlin[t+16&4095],a+=r*(this.perlin[t+16+1&4095]-a),s+=n*(a-s),t+=256,a=this.perlin[4095&t],a+=r*(this.perlin[t+1&4095]-a),o=this.perlin[t+16&4095],o+=r*(this.perlin[t+16+1&4095]-o),a+=n*(o-a),s+=Z(p)*(a-s),m+=s*f,f*=.5,l<<=1,c*=2,h<<=1,u*=2,d<<=1,p*=2,c>=1&&(l++,c--),u>=1&&(h++,u--),p>=1&&(d++,p--)}return m}noiseSeed(t){let e=(()=>{let t,e;return{setSeed(i){e=t=(i??4294967296*Math.random())>>>0},getSeed:()=>t,rand:()=>(e=(1664525*e+1013904223)%4294967296,e/4294967296)}})();e.setSeed(t),this.perlin=new Array(4096);for(let t=0;t<4096;t++)this.perlin[t]=e.rand()}},X=1e-4,J=new c,Y=new c;r.then(t=>{E=[(I=t).get_face_center,I.get_edge_midpoint,I.get_vertex_position],U=[I.get_face_normal,I.get_edge_normal,I.get_vertex_normal],D=[I.face_count,I.edge_count,I.vertex_count]}),new u;var tt=new u,et=new u,it=new u,rt=new u,nt=new u,st=new u,at=new u,ot=new c,lt=new c,ht=new c,dt=new c,ct=new c,ut=new c,pt=new c,mt=new c,ft=new c,yt=new c,bt=new c,xt=new p,gt=new d;function Mt(t){return t?t.version??t.data?.version??0:-1}function vt(t,e){return["number"==typeof t?.[0]?t[0]:"string"==typeof t?.[0]&&e?parseFloat(String(e.shared.getVariable(t[0])??"0")):0,"number"==typeof t?.[1]?t[1]:"string"==typeof t?.[1]&&e?parseFloat(String(e.shared.getVariable(t[1])??"0")):0,"number"==typeof t?.[2]?t[2]:"string"==typeof t?.[2]&&e?parseFloat(String(e.shared.getVariable(t[2])??"0")):0]}var wt=class{constructor(t,e){this.data=t,this.is3D=e,this.perlin=new K,"perlin"===t.noiseType?(this.perlin.noiseSeed(t.seed),this.noise=e?(t,e,i)=>this.perlin.noise(t,e,i):t=>this.perlin.noise(t)):this.noise=e?function(t=Math.random){let e=_(t),i=new Float64Array(e).map(t=>F[t%12*3]),r=new Float64Array(e).map(t=>F[t%12*3+1]),n=new Float64Array(e).map(t=>F[t%12*3+2]);return function(t,s,a){let o,l,h,d,c,u,p,m,f,y,b=(t+s+a)*w,x=A(t+b),g=A(s+b),M=A(a+b),v=(x+g+M)*j,S=t-(x-v),F=s-(g-v),_=a-(M-v);S>=F?F>=_?(c=1,u=0,p=0,m=1,f=1,y=0):S>=_?(c=1,u=0,p=0,m=1,f=0,y=1):(c=0,u=0,p=1,m=1,f=0,y=1):F<_?(c=0,u=0,p=1,m=0,f=1,y=1):S<_?(c=0,u=1,p=0,m=0,f=1,y=1):(c=0,u=1,p=0,m=1,f=1,y=0);let W=S-c+j,z=F-u+j,C=_-p+j,O=S-m+2*j,N=F-f+2*j,P=_-y+2*j,T=S-1+.5,V=F-1+.5,R=_-1+.5,k=255&x,B=255&g,I=255&M,E=.6-S*S-F*F-_*_;if(E<0)o=0;else{let t=k+e[B+e[I]];E*=E,o=E*E*(i[t]*S+r[t]*F+n[t]*_)}let U=.6-W*W-z*z-C*C;if(U<0)l=0;else{let t=k+c+e[B+u+e[I+p]];U*=U,l=U*U*(i[t]*W+r[t]*z+n[t]*C)}let D=.6-O*O-N*N-P*P;if(D<0)h=0;else{let t=k+m+e[B+f+e[I+y]];D*=D,h=D*D*(i[t]*O+r[t]*N+n[t]*P)}let q=.6-T*T-V*V-R*R;if(q<0)d=0;else{let t=k+1+e[B+1+e[I+1]];q*=q,d=q*q*(i[t]*T+r[t]*V+n[t]*R)}return 32*(o+l+h+d)}}((0,g.default)(t.seed)):function(t=Math.random){let e=_(t),i=new Float64Array(e).map(t=>S[t%12*2]),r=new Float64Array(e).map(t=>S[t%12*2+1]);return function(t,n){let s,a,o=0,l=0,h=0,d=(t+n)*M,c=A(t+d),u=A(n+d),p=(c+u)*v,m=t-(c-p),f=n-(u-p);m>f?(s=1,a=0):(s=0,a=1);let y=m-s+v,b=f-a+v,x=m-1+2*v,g=f-1+2*v,w=255&c,j=255&u,S=.5-m*m-f*f;if(S>=0){let t=w+e[j];S*=S,o=S*S*(i[t]*m+r[t]*f)}let F=.5-y*y-b*b;if(F>=0){let t=w+s+e[j+a];F*=F,l=F*F*(i[t]*y+r[t]*b)}let _=.5-x*x-g*g;if(_>=0){let t=w+1+e[j+1];_*=_,h=_*_*(i[t]*x+r[t]*g)}return 70*(o+l+h)}}((0,g.default)(t.seed??""))}},jt=class extends(n(m)){constructor(t,e){super(),this.parameters=e,this.isCloner=!0,this.objectForSample=void 0,this._pendingMediaLoad=!1,this.random=null,this.surfaceSamplerCache=null,this.surfacePointsCache=null,this.object=t}resetOnMove(){this.removeFromParent(),this.parent=null}removeFromParent(){return super.removeFromParent(),this.instancedMesh?.removeFromParent(),this}dispose(){this.removeFromParent(),this._disposeInstancedMesh(),this._invalidateBoolean()}_invalidateBoolean(){this.object instanceof s&&this.object.onClonerLayoutUpdated()}expandClones(t){if(null===this.parent)this.updateState(this.parameters,t);else{for(let t of this.children)t instanceof i&&t.expand();this._syncInstancedMesh()}}invalidateTransform(t){this.matrixWorldNeedsUpdate=!0}onObjUpdateMatrix(){"toObject"!==this.parameters.type&&(this.matrixWorldNeedsUpdate=!0)}update(t){switch(this._updateCount(t),this.parameters.type){case"radial":this._updateRadial(this.parameters,t);break;case"linear":this._updateLinear(this.parameters,t);break;case"grid":this._updateGrid(this.parameters,t);break;case"toObject":this._updateToObject(this.parameters,t)}for(let t of this.children){let e=t.transformOverride;void 0!==e&&(t.position.fromArray(e.position),t.rotation.fromArray(e.rotation),t.scale.fromArray(e.scale)),t.updateMatrix(),t.hasNonUniformScale&&(t.updateMatrixWorld(),t.updateMatrixWorldRigid())}this._syncInstancedMesh(),this._invalidateBoolean()}get instancingActive(){return void 0!==this.instancedMesh}get insideBoolean(){return null!==this.parent&&"booleanOp"in this.parent}_instancingEligible(){if(!0!==this.parameters.instanced)return!1;let t=this.object;return!(t.entityChildrenCount()>0||!0!==t.isMesh||o(t)||!0===t.isDecalObject)}_syncInstancedMesh(){if(!this._instancingEligible())return void this._disposeInstancedMesh();let t=this.instancedMesh;if(void 0!==t&&t.capacity<this.children.length&&(this._disposeInstancedMesh(),t=void 0),void 0===t){let e=Math.max(8,Math.ceil(1.5*this.children.length));t=this.instancedMesh=new Q(this.object,e)}t.matrix=this.matrix,t.hiddenMatrix=this.hiddenMatrix,t.matrixWorldNeedsUpdate=!0,t.parent!==this.parent&&(t.removeFromParent(),this.parent?.add(t)),this.syncInstanceMatrices()}syncInstanceMatrices(){this._invalidateBoolean();let t=this.instancedMesh;if(void 0===t)return;let e=0;for(let i of this.children)!1!==i.playModeVisible&&(et.multiplyMatrices(i.hiddenMatrix,i.matrix).multiply(i.pivotMatrix),t.setMatrixAt(e++,et));t.count=e,t.instanceMatrix.needsUpdate=!0,t.boundingSphere=null}_disposeInstancedMesh(){let t=this.instancedMesh;void 0!==t&&(this.instancedMesh=void 0,t.removeFromParent(),t.dispose())}_updateCount(t,e){let r;if(void 0!==e)r=e;else{let e=vt(this.parameters.grid.count,t);r="grid"===this.parameters.type?Math.round(e[0])*Math.round(e[1])*Math.round(e[2]):this.parameters.count}if("toObject"===this.parameters.type)if(this.parameters.toObject.object){if(void 0===e&&"random"!==this.parameters.toObject.spreadType)return}else r=0;if(this.children.length!==r)if(this.children.length<r)for(let t=0,e=r-this.children.length;t<e;++t){let t=new i(this.object);t.expand(),this.add(t)}else for(;this.children.length>r;){let t=this.children.pop();t.parent=null,t.dispatchEvent({type:"removed"}),this.dispatchEvent({type:"childremoved",child:t})}}getRandom(t,e=!1){return(null===this.random||this.random.data.seed!==t.seed||this.random.data.noiseType!==t.noiseType||this.random.is3D!==e)&&(this.random=new wt(t,e)),this.random}_updateRadial(t,e){let i,r=t.radial,n=r.start*h.DEG2RAD,s=n-r.end*h.DEG2RAD,a=vt(r.rotation,e),o=new p(a[0],a[1],a[2]);switch(r.axis){case"z":i=new c(0,0,1);break;case"y":i=new c(0,1,0);break;default:i=new c(1,0,0)}let d=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,u=!0===this.parameters.randomness&&0!==d.strength?this.getRandom(d):null,m=vt(r.scale,e),f=vt(r.position,e),y=vt(d.scale,e),b=vt(d.position,e),x=vt(d.rotation,e),g=s/t.count,M=N(d.strength,this.parameters.randomness);for(let[t,e]of this.children.entries()){let s=t*(d.freqScale/10)+d.movement,a=null===u?0:u.noise(s,s,s),l=t+1;e.scale.x=m[0]+M(l,P(a,y[0]))||X,e.scale.y=m[1]+M(l,P(a,y[1]))||X,e.scale.z=m[2]+M(l,P(a,y[2]))||X;let h=g*t-n;switch(r.axis){default:case"x":xt.set(0,h,0);break;case"y":xt.set(0,0,h);break;case"z":xt.set(h,0,0)}pt.copy(i).applyQuaternion(gt.setFromEuler(xt)).multiplyScalar(r.radius),e.position.set(pt.x+(f[0]+M(l,P(a,b[0]))),pt.y+(f[1]+M(l,P(a,b[1]))),pt.z+(f[2]+M(l,P(a,b[2]))));let c=M(l,P(a,x[0])),p=M(l,P(a,x[1])),v=M(l,P(a,x[2]));!0===r.alignment?e.rotation.set(xt.x+(o.x+c),xt.y+(o.y+p),xt.z+(o.z+v)):e.rotation.set(o.x+c,o.y+p,o.z+v)}}_updateLinear(t,e){if("linear"!==t.type)throw new Error;let i=t.linear,r=vt(i.rotation,e),n=vt(i.scale,e),s=vt(i.position,e),a=new p(r[0]??0,r[1]??0,r[2]??0),o=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,h=vt(o.rotation,e),d=vt(o.scale,e),c=vt(o.position,e),u=!0===this.parameters.randomness&&0!==o.strength?this.getRandom(o):null,m=N(o.strength,this.parameters.randomness);for(let[t,e]of this.children.entries()){let i=t*(o.freqScale/10)+o.movement,r=null===u?0:u.noise(i,i,i),l=t+1,p=m(l,P(r,h[0])),f=m(l,P(r,h[1])),y=m(l,P(r,h[2]));e.scale.x=1+(n[0]-1)*t+m(l,P(r,d[0]))||X,e.scale.y=1+(n[1]-1)*t+m(l,P(r,d[1]))||X,e.scale.z=1+(n[2]-1)*t+m(l,P(r,d[2]))||X,e.rotation.set(a.x*t+p,a.y*t+f,a.z*t+y),e.position.x=s[0]*t+m(l,P(r,c[0])),e.position.y=s[1]*t+m(l,P(r,c[1])),e.position.z=s[2]*t+m(l,P(r,c[2]))}}_updateGrid(t,e){let i=0,r=t.grid,n=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,s=vt(n.scale,e),a=vt(n.rotation,e),o=vt(n.position,e),h=!0===this.parameters.randomness&&0!==n.strength?this.getRandom(n,!0):null,d=N(n.strength,this.parameters.randomness),u=vt(r.count,e),p=vt(r.size,e);if(!0===r.useCenter){let t={x:u[0]%2==0?2:1,y:u[1]%2==0?2:1,z:u[2]%2==0?2:1},e=new c(p[0]*(u[0]-t.x)*.5,p[1]*(u[1]-t.y)*.5,p[2]*(u[2]-t.z)*.5);for(let t=0;t<u[0];t++)for(let r=0;r<u[1];r++)for(let l=0;l<u[2];l++){let c=this.children[i++];if(!c)continue;let u=null===h?0:h.noise((t+1)*(n.freqScale/10)+n.movement,(r+1)*(n.freqScale/10)+n.movement,(l+1)*(n.freqScale/10)+n.movement);c.scale.x=1+d(i,P(u,s[0]))||X,c.scale.y=1+d(i,P(u,s[1]))||X,c.scale.z=1+d(i,P(u,s[2]))||X;let m=d(i,P(u,a[0])),f=d(i,P(u,a[1])),y=d(i,P(u,a[2]));c.rotation.set(m,f,y),c.position.x=p[0]*t-e.x+d(i,P(u,o[0])),c.position.y=p[1]*r-e.y+d(i,P(u,o[1])),c.position.z=p[2]*l-e.z+d(i,P(u,o[2]))}}else for(let t=0;t<u[0];t++)for(let e=0;e<u[1];e++)for(let r=0;r<u[2];r++){let l=this.children[i++];if(!l)continue;let c=null===h?0:h.noise((t+1)*(n.freqScale/10)+n.movement,(e+1)*(n.freqScale/10)+n.movement,(r+1)*(n.freqScale/10)+n.movement);l.scale.x=1+d(i,P(c,s[0]))||X,l.scale.y=1+d(i,P(c,s[1]))||X,l.scale.z=1+d(i,P(c,s[2]))||X;let u=d(i,P(c,a[0])),m=d(i,P(c,a[1])),f=d(i,P(c,a[2]));l.rotation.set(u,m,f),l.position.x=p[0]*t+d(i,P(c,o[0])),l.position.y=-p[1]*e+d(i,P(c,o[1])),l.position.z=-p[2]*r+d(i,P(c,o[2]))}}_updateToObject(i,r){if("toObject"!==i.type)throw new Error;let{toObject:n}=i,s=vt(n.rotation,r),a=vt(n.position,r),o=vt(n.scale,r),h=new p(s[0],s[1],s[2]),d=i.randomnessObject??l.defaultData([1,1,1]).randomnessObject,c=vt(d.rotation,r),u=vt(d.position,r),m=vt(d.scale,r),f=!0===this.parameters.randomness&&0!==d.strength?this.getRandom(d):null,y=N(d.strength,this.parameters.randomness);if(!n.object){for(let[,t]of this.children.entries())t.position.set(0,0,0),t.scale.setScalar(1),t.rotation.set(0,0,0);return this.objectForSample=void 0,void this.invalidateSurfaceCaches()}if(!this.objectForSample)return;if(this.objectForSample instanceof t){if(!this.objectForSample.font?.isLoaded||void 0===this.objectForSample.geometry.attributes.position)return void(this._pendingMediaLoad=!0);this._pendingMediaLoad=!1}if(void 0===this.objectForSample.geometry&&this.objectForSample.isAncestorOf(this.object.uuid))return void console.warn(`Oh no! The object "${this.object.name}" (${this.object.uuid}) seem to be a child/descendant of the object it's being cloned to. Please re-parent it so that they are siblings instead.`);let b=this.getSubdivData();if(b.length>0){let t=Math.round(b.length*n.count/100);this._updateCount(r,t)}else{let t=this.objectForSample.geometry.getAttribute("position");if(!t||isNaN(t.count)||0===t.count)return void console.warn(`Oh no! The object "${this.object.name}" (${this.object.uuid}) cannot be cloned on the surface of "${this.objectForSample.name}" (${this.objectForSample.uuid}) because the latter does not have a valid geometry.`)}this.objectForSample.updateMatrixWorld();let x="random"===n.spreadType,M=null;x&&(M=this.getSurfaceSampler(),M.setRandomGenerator((0,g.default)(this.object.uuid+n.seed)));let v=C[n.axis],w=this.children;ot.fromArray(v),it.copy(this.object.hiddenMatrix).invert();let j=this.objectForSample instanceof e;j&&rt.copy(this.objectForSample.matrixWorld).invert(),"normal"!==n.align&&this.object.getWorldDirection(ut),yt.set(ot.y,ot.z,ot.x).normalize(),bt.copy(yt).cross(ot).normalize(),st.makeBasis(yt,ot,bt).invert();for(let[t,e]of w.entries()){let i=t*(d.freqScale/10)+d.movement,r=null===f?0:f.noise(i,i,i),s=t+1,l=y(s,P(r,c[0])),p=y(s,P(r,c[1])),g=y(s,P(r,c[2]));x?M.sample(ht,dt):(b.length&&(ht.fromArray(b[t].pos),dt.fromArray(b[t].norm)),j&&ht.applyMatrix4(rt)),ht.applyMatrix4(it),e.position.copy(ht);let v="normal"===n.align?dt:ut,w=lt.fromArray(a);lt.x+=y(s,P(r,u[0])),lt.y+=y(s,P(r,u[1])),lt.z+=y(s,P(r,u[2]));let A=Math.acos(v.dot(ot)),S=ct.crossVectors(ot,v).normalize(),F=tt.makeRotationAxis(S,A);mt.copy(v).cross(this.object.up).normalize(),ft.copy(mt).cross(v).normalize(),nt.makeBasis(mt,v,ft),at.multiplyMatrices(nt,st),xt.setFromRotationMatrix(at),w.applyMatrix4(F),e.position.add(w),e.rotation.set(xt.x+h.x+l,xt.y+h.y+p,xt.z+h.z+g),e.scale.set(1+o[0]+y(s,P(r,m[0]))||X,1+o[1]+y(s,P(r,m[1]))||X,1+o[2]+y(s,P(r,m[2]))||X),e.scale.multiply(this.object.scale),e.hiddenMatrix=this.object.hiddenMatrix}}getSurfaceSampler(){let t=this.objectForSample,e=t.geometry,i=e.getAttribute("position"),r=e.index,n=this.surfaceSamplerCache;if(null!==n&&n.geometry===e&&n.position===i&&n.positionVersion===Mt(i)&&n.index===r&&n.indexVersion===(null===r?-1:r.version))return n.sampler;let s=new z(t).build();return this.surfaceSamplerCache={geometry:e,position:i,positionVersion:Mt(i),index:r,indexVersion:null===r?-1:r.version,sampler:s},s}invalidateSurfaceCaches(){this.surfaceSamplerCache=null,this.surfacePointsCache=null}getSubdivData(){if(!this.objectForSample)return[];let t=this.parameters.toObject.spreadType;if("random"===t)return[];let i=this.objectForSample instanceof e,r=this.objectForSample.geometry;if(!i&&r){let e=this.surfacePointsCache,i=r.getAttribute("position");if(null!==e&&e.spreadType===t&&e.geometry===r&&e.position===i&&e.positionVersion===Mt(i)&&e.index===r.index&&e.indexVersion===(null===r.index?-1:r.index.version))return e.points}let n=new Map,s=(t,e)=>{let i=Math.round(1e4*t[0])+"_"+Math.round(1e4*t[1])+"_"+Math.round(1e4*t[2]),r=n.get(i);r?(r.pos[0]+=t[0],r.pos[1]+=t[1],r.pos[2]+=t[2],r.norm[0]+=e[0],r.norm[1]+=e[1],r.norm[2]+=e[2],r.count+=1):n.set(i,{pos:[...t],norm:[...e],count:1})};if(i){let e=this.objectForSample,i=O[t],r=D[i],n=E[i],a=U[i],o=r(e.subdivPointerNew);for(let t=0;t<=o-1;t++){let i=n(e.subdivPointerNew,t),r=a(e.subdivPointerNew,t);J.fromArray(i).applyMatrix4(e.matrixWorld),Y.fromArray(r),s(J.toArray(),Y.toArray())}}else(r.index?function(t){let e=[],i=Math.floor(t.index.count/3);for(let r=0;r<i;r++)if(L.fromArray(t.index.array,3*r),q.setFromAttributeAndIndices(t.attributes.position,L.x,L.y,L.z),q.getNormal(G),q.getMidpoint($),!(isNaN($.x)||isNaN($.y)||isNaN($.z))){let{a:t,b:i,c:r}=q,n=t.toArray(),s=i.toArray(),a=r.toArray(),o=t.distanceTo(i),l=i.distanceTo(r),h=r.distanceTo(t),d=B(n,s),c=B(s,a),u=B(a,n),p=[o,l,h],m=Math.max(...p),f=p.filter(t=>Math.round(t)===Math.round(m)).length>1,y=[],b=q.getMidpoint($).toArray();m===o&&!f&&(y=[c,u,u],b=d),m===l&&!f&&(y=[d,u,u],b=c),m===h&&!f&&(y=[d,c,c],b=u),f&&(y=[d,c,u]),e.push({vertices:[n,s,a],faceCenters:y,midpoint:b,norm:q.getNormal(G).toArray()})}return e}(r):function(t){let e=[],{position:i}=t.attributes;for(let t=0;t<i.count;t++){q.setFromAttributeAndIndices(i,3*t,3*t+1,3*t+2),q.getNormal(G),q.getMidpoint($);let r=q.a.toArray(),n=q.b.toArray(),s=q.c.toArray();e.push({vertices:[r,n,s],faceCenters:[B(r,n),B(n,s),B(s,r)],midpoint:$.toArray(),norm:G.toArray()})}return e}(r)).forEach((e,i)=>{"polygon_center"===t&&s(e.midpoint,e.norm),"vertex"===t&&(s(e.vertices[0],e.norm),s(e.vertices[1],e.norm),s(e.vertices[2],e.norm)),"edge"===t&&(s(e.faceCenters[0],e.norm),s(e.faceCenters[1],e.norm),s(e.faceCenters[2],e.norm))});let a=Array.from(n.values());for(let t of a)t.pos[0]/=t.count,t.pos[1]/=t.count,t.pos[2]/=t.count,t.norm[0]/=t.count,t.norm[1]/=t.count,t.norm[2]/=t.count;if(!i&&r){let e=r.getAttribute("position");this.surfacePointsCache={spreadType:t,geometry:r,position:e,positionVersion:Mt(e),index:r.index,indexVersion:null===r.index?-1:r.index.version,points:a}}return a}updateState(t,e){if(this.parameters=a(t),"toObject"!==this.parameters.type)this.invalidateSurfaceCaches(),(null===this.parent||this.parent!==this.object)&&(this.removeFromParent(),this.object.parent?.add(this),this.matrix=this.object.matrix,this.hiddenMatrix=this.object.hiddenMatrix,this.matrixWorldNeedsUpdate=!0,this.matrixAutoUpdate=!1);else if(null===this.parent||this.parent.uuid!==this.parameters.toObject.object){this.removeFromParent(),this.invalidateSurfaceCaches();let t=e.scene.find(this.parameters.toObject.object);this.objectForSample=t instanceof s?t:void 0,this.matrix=new u,this.hiddenMatrix=new u,this.matrixWorldNeedsUpdate=!0,this.matrixAutoUpdate=!1,t&&t.add(this)}this.update(e)}get pendingMediaLoad(){return this._pendingMediaLoad}};export{jt as a};
|
|
1
|
+
import{a as t}from"./runtime-chunk-6G2UV3Q3.js";import{b as e}from"./runtime-chunk-7TJXMO5V.js";import{$ as i,C as r}from"./runtime-chunk-IQDIX4JZ.js";import{f as n,v as s}from"./runtime-chunk-TTYK7PPG.js";import{c as a}from"./runtime-chunk-RTLL6WIB.js";import{c as o}from"./runtime-chunk-2PT2WH66.js";import{K as l}from"./runtime-chunk-AIWIOLR6.js";import{Cc as h,Ec as d,Fc as c,Oc as u,Pc as p,Rc as m,Wc as f,qd as y}from"./runtime-chunk-BVVSZMXD.js";import{a as b,b as x}from"./runtime-chunk-ML3Z74BL.js";var g=x(b((t,e)=>{var i,r;i=t,r=function(){return t.importState=function(e){var i=new t;return i.importState(e),i},t;function t(){return function(t){var e=0,i=0,r=0,n=1;0==t.length&&(t=[+new Date]);var s=function(){var t=4022871197,e=function(e){e=e.toString();for(var i=0;i<e.length;i++){var r=.02519603282416938*(t+=e.charCodeAt(i));r-=t=r>>>0,t=(r*=t)>>>0,t+=4294967296*(r-=t)}return 2.3283064365386963e-10*(t>>>0)};return e.version="Mash 0.9",e}();e=s(" "),i=s(" "),r=s(" ");for(var a=0;a<t.length;a++)(e-=s(t[a]))<0&&(e+=1),(i-=s(t[a]))<0&&(i+=1),(r-=s(t[a]))<0&&(r+=1);s=null;var o=function(){var t=2091639*e+2.3283064365386963e-10*n;return e=i,i=r,r=t-(n=0|t)};return o.next=o,o.uint32=function(){return 4294967296*o()},o.fract53=function(){return o()+11102230246251565e-32*(2097152*o()|0)},o.version="Alea 0.9",o.args=t,o.exportState=function(){return[e,i,r,n]},o.importState=function(t){e=+t[0]||0,i=+t[1]||0,r=+t[2]||0,n=+t[3]||0},o}(Array.prototype.slice.call(arguments))}},"object"==typeof t?e.exports=r():"function"==typeof define&&define.amd?define(r):i.Alea=r()})()),M=.5*(Math.sqrt(3)-1),v=(3-Math.sqrt(3))/6,w=1/3,j=1/6,A=(Math.sqrt(5),Math.sqrt(5),t=>0|Math.floor(t)),S=new Float64Array([1,1,-1,1,1,-1,-1,-1,1,0,-1,0,1,0,-1,0,0,1,0,-1,0,1,0,-1]),F=new Float64Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0,1,0,1,-1,0,1,1,0,-1,-1,0,-1,0,1,1,0,-1,1,0,1,-1,0,-1,-1]);function _(t){let e=new Uint8Array(512);for(let t=0;t<256;t++)e[t]=t;for(let i=0;i<255;i++){let r=i+~~(t()*(256-i)),n=e[i];e[i]=e[r],e[r]=n}for(let t=256;t<512;t++)e[t]=e[t-256];return e}var W=new f,z=class{constructor(t){this.weightAttribute=null;let e=t.geometry;if(!e.isBufferGeometry||3!==e.attributes.position.itemSize)throw new Error("THREE.MeshSurfaceSampler: Requires BufferGeometry triangle mesh.");e.index&&(e=e.toNonIndexed()),this.geometry=e,this.randomFunction=Math.random,this.positionAttribute=this.geometry.getAttribute("position"),this.distribution=null}build(){let t=this.positionAttribute,e=new Float32Array(t.count/3);for(let i=0;i<t.count;i+=3){let r=1;W.a.fromBufferAttribute(t,i),W.b.fromBufferAttribute(t,i+1),W.c.fromBufferAttribute(t,i+2),r*=W.getArea(),e[i/3]=r}this.distribution=new Float32Array(t.count/3);let i=0;for(let t=0;t<e.length;t++)i+=e[t],this.distribution[t]=i;return this}setRandomGenerator(t){return this.randomFunction=t,this}sample(t,e){if(this.distribution){let i=this.distribution[this.distribution.length-1],r=this.binarySearch(this.randomFunction()*i);return this.sampleFace(r,t,e)}}binarySearch(t){if(!this.distribution)return 0;let e=this.distribution,i=0,r=e.length-1,n=-1;for(;i<=r;){let s=Math.ceil((i+r)/2);if(0===s||e[s-1]<=t&&e[s]>t){n=s;break}t<e[s]?r=s-1:i=s+1}return n}sampleFace(t,e,i){let r=this.randomFunction(),n=this.randomFunction();return r+n>1&&(r=1-r,n=1-n),W.a.fromBufferAttribute(this.positionAttribute,3*t),W.b.fromBufferAttribute(this.positionAttribute,3*t+1),W.c.fromBufferAttribute(this.positionAttribute,3*t+2),e.set(0,0,0).addScaledVector(W.a,r).addScaledVector(W.b,n).addScaledVector(W.c,1-(r+n)),W.getNormal(i),this}},O={x:[1,0,0],"-x":[-1,0,0],y:[0,1,0],"-y":[0,-1,0],z:[0,0,1],"-z":[0,0,-1]},C={polygon_center:0,edge:1,vertex:2},P=(t,e)=>(i,r)=>e&&0!==i&&0!==t?t*r/100:0,T=(t,e)=>{let i=Math.abs(e),r=-1*i;return(t- -1)*(i-r)/2+r},N=new c,V=new c,I=new c,k=new c;function B(t,e){let i=I.fromArray(t),r=k.fromArray(e);V.copy(r).sub(i);let n=V.length();return V.normalize().multiplyScalar(.5*n),N.copy(i).add(V).toArray()}var R,U,D,q,E=new f,L=new c,G=new c,$=new c,Q=class extends y{},X=class extends Q{constructor(t,e){super(void 0,void 0,e),this.source=t,this.isClonerInstancedMesh=!0,this.hiddenMatrix=new u,this.pivotMatrix=new u,this.previousModelViewMatrix=new u,this.copyPreviousMatrix=!0,this.capacity=e,this.count=0,this.matrixAutoUpdate=!1}raycast(t,e){}updateMatrixWorld(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&&(null===this.parent?this.matrixWorld.multiplyMatrices(this.hiddenMatrix,this.matrix):(this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.hiddenMatrix),this.matrixWorld.multiplyMatrices(this.matrixWorld,this.matrix)),this.matrixWorld.multiply(this.pivotMatrix),this.matrixWorldNeedsUpdate=!1,t=!0);for(let e of this.children)e.updateMatrixWorld(t)}updateWorldMatrix(t,e){let i=this.parent;if(t&&null!==i&&i.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),null===this.parent?this.matrixWorld.multiplyMatrices(this.hiddenMatrix,this.matrix):(this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.hiddenMatrix),this.matrixWorld.multiplyMatrices(this.matrixWorld,this.matrix)),this.matrixWorld.multiply(this.pivotMatrix),e)for(let t of this.children)t.updateWorldMatrix(!1,!0)}onAfterRender(t,e,i,r,n,s){this.copyPreviousMatrix&&this.previousModelViewMatrix.copy(this.modelViewMatrix)}get visible(){return!0!==this.source.cloner?.insideBoolean&&(this.source.visible||this.source.dataPatched.visible&&!0===this.source.dataPatched.cloner?.hideBase)}set visible(t){}get castShadow(){return this.source.castShadow}set castShadow(t){}get receiveShadow(){return this.source.receiveShadow}set receiveShadow(t){}get layers(){return this.source.layers}set layers(t){}get geometry(){return this.source.geometry}set geometry(t){}get material(){return this.source.material}set material(t){}get morphTargetInfluences(){return this.source.morphTargetInfluences}set morphTargetInfluences(t){}},Z=t=>.5*(1-Math.cos(t*Math.PI)),H=class{constructor(){this.perlin=new Array(4096)}noise(t,e=0,i=0){if(null==this.perlin){this.perlin=new Array(4096);for(let t=0;t<4096;t++)this.perlin[t]=Math.random()}t<0&&(t=-t),e<0&&(e=-e),i<0&&(i=-i);let r,n,s,a,o,l=Math.floor(t),h=Math.floor(e),d=Math.floor(i),c=t-l,u=e-h,p=i-d,m=0,f=.5;for(let t=0;t<4;t++){let t=l+(h<<4)+(d<<8);r=Z(c),n=Z(u),s=this.perlin[4095&t],s+=r*(this.perlin[t+1&4095]-s),a=this.perlin[t+16&4095],a+=r*(this.perlin[t+16+1&4095]-a),s+=n*(a-s),t+=256,a=this.perlin[4095&t],a+=r*(this.perlin[t+1&4095]-a),o=this.perlin[t+16&4095],o+=r*(this.perlin[t+16+1&4095]-o),a+=n*(o-a),s+=Z(p)*(a-s),m+=s*f,f*=.5,l<<=1,c*=2,h<<=1,u*=2,d<<=1,p*=2,c>=1&&(l++,c--),u>=1&&(h++,u--),p>=1&&(d++,p--)}return m}noiseSeed(t){let e=(()=>{let t,e;return{setSeed(i){e=t=(i??4294967296*Math.random())>>>0},getSeed:()=>t,rand:()=>(e=(1664525*e+1013904223)%4294967296,e/4294967296)}})();e.setSeed(t),this.perlin=new Array(4096);for(let t=0;t<4096;t++)this.perlin[t]=e.rand()}},J=1e-4,K=new c,Y=new c;r.then(t=>{U=[(R=t).get_face_center,R.get_edge_midpoint,R.get_vertex_position],D=[R.get_face_normal,R.get_edge_normal,R.get_vertex_normal],q=[R.face_count,R.edge_count,R.vertex_count]}),new u;var tt=new u,et=new u,it=new u,rt=new u,nt=new u,st=new u,at=new u,ot=new c,lt=new c,ht=new c,dt=new c,ct=new c,ut=new c,pt=new c,mt=new c,ft=new c,yt=new c,bt=new c,xt=new p,gt=new d;function Mt(t){return t?t.version??t.data?.version??0:-1}function vt(t,e){return["number"==typeof t?.[0]?t[0]:"string"==typeof t?.[0]&&e?parseFloat(String(e.shared.getVariable(t[0])??"0")):0,"number"==typeof t?.[1]?t[1]:"string"==typeof t?.[1]&&e?parseFloat(String(e.shared.getVariable(t[1])??"0")):0,"number"==typeof t?.[2]?t[2]:"string"==typeof t?.[2]&&e?parseFloat(String(e.shared.getVariable(t[2])??"0")):0]}var wt=class{constructor(t,e){this.data=t,this.is3D=e,this.perlin=new H,"perlin"===t.noiseType?(this.perlin.noiseSeed(t.seed),this.noise=e?(t,e,i)=>this.perlin.noise(t,e,i):t=>this.perlin.noise(t)):this.noise=e?function(t=Math.random){let e=_(t),i=new Float64Array(e).map(t=>F[t%12*3]),r=new Float64Array(e).map(t=>F[t%12*3+1]),n=new Float64Array(e).map(t=>F[t%12*3+2]);return function(t,s,a){let o,l,h,d,c,u,p,m,f,y,b=(t+s+a)*w,x=A(t+b),g=A(s+b),M=A(a+b),v=(x+g+M)*j,S=t-(x-v),F=s-(g-v),_=a-(M-v);S>=F?F>=_?(c=1,u=0,p=0,m=1,f=1,y=0):S>=_?(c=1,u=0,p=0,m=1,f=0,y=1):(c=0,u=0,p=1,m=1,f=0,y=1):F<_?(c=0,u=0,p=1,m=0,f=1,y=1):S<_?(c=0,u=1,p=0,m=0,f=1,y=1):(c=0,u=1,p=0,m=1,f=1,y=0);let W=S-c+j,z=F-u+j,O=_-p+j,C=S-m+2*j,P=F-f+2*j,T=_-y+2*j,N=S-1+.5,V=F-1+.5,I=_-1+.5,k=255&x,B=255&g,R=255&M,U=.6-S*S-F*F-_*_;if(U<0)o=0;else{let t=k+e[B+e[R]];U*=U,o=U*U*(i[t]*S+r[t]*F+n[t]*_)}let D=.6-W*W-z*z-O*O;if(D<0)l=0;else{let t=k+c+e[B+u+e[R+p]];D*=D,l=D*D*(i[t]*W+r[t]*z+n[t]*O)}let q=.6-C*C-P*P-T*T;if(q<0)h=0;else{let t=k+m+e[B+f+e[R+y]];q*=q,h=q*q*(i[t]*C+r[t]*P+n[t]*T)}let E=.6-N*N-V*V-I*I;if(E<0)d=0;else{let t=k+1+e[B+1+e[R+1]];E*=E,d=E*E*(i[t]*N+r[t]*V+n[t]*I)}return 32*(o+l+h+d)}}((0,g.default)(t.seed)):function(t=Math.random){let e=_(t),i=new Float64Array(e).map(t=>S[t%12*2]),r=new Float64Array(e).map(t=>S[t%12*2+1]);return function(t,n){let s,a,o=0,l=0,h=0,d=(t+n)*M,c=A(t+d),u=A(n+d),p=(c+u)*v,m=t-(c-p),f=n-(u-p);m>f?(s=1,a=0):(s=0,a=1);let y=m-s+v,b=f-a+v,x=m-1+2*v,g=f-1+2*v,w=255&c,j=255&u,S=.5-m*m-f*f;if(S>=0){let t=w+e[j];S*=S,o=S*S*(i[t]*m+r[t]*f)}let F=.5-y*y-b*b;if(F>=0){let t=w+s+e[j+a];F*=F,l=F*F*(i[t]*y+r[t]*b)}let _=.5-x*x-g*g;if(_>=0){let t=w+1+e[j+1];_*=_,h=_*_*(i[t]*x+r[t]*g)}return 70*(o+l+h)}}((0,g.default)(t.seed??""))}},jt=class extends(n(m)){constructor(t,e){super(),this.parameters=e,this.isCloner=!0,this.objectForSample=void 0,this._pendingMediaLoad=!1,this.random=null,this.surfaceSamplerCache=null,this.surfacePointsCache=null,this.object=t}resetOnMove(){this.removeFromParent(),this.parent=null}removeFromParent(){return super.removeFromParent(),this.instancedMesh?.removeFromParent(),this}dispose(){this.removeFromParent(),this._disposeInstancedMesh(),this._invalidateBoolean()}_invalidateBoolean(){this.object instanceof s&&this.object.onClonerLayoutUpdated()}expandClones(t){if(null===this.parent)this.updateState(this.parameters,t);else{for(let t of this.children)t instanceof i&&t.expand();this._syncInstancedMesh()}}invalidateTransform(t){this.matrixWorldNeedsUpdate=!0}onObjUpdateMatrix(){"toObject"!==this.parameters.type&&(this.matrixWorldNeedsUpdate=!0)}update(t){switch(this._updateCount(t),this.parameters.type){case"radial":this._updateRadial(this.parameters,t);break;case"linear":this._updateLinear(this.parameters,t);break;case"grid":this._updateGrid(this.parameters,t);break;case"toObject":this._updateToObject(this.parameters,t)}for(let t of this.children){let e=t.transformOverride;void 0!==e&&(t.position.fromArray(e.position),t.rotation.fromArray(e.rotation),t.scale.fromArray(e.scale)),t.updateMatrix(),t.hasNonUniformScale&&(t.updateMatrixWorld(),t.updateMatrixWorldRigid())}this._syncInstancedMesh(),this._invalidateBoolean()}get instancingActive(){return void 0!==this.instancedMesh}get insideBoolean(){return null!==this.parent&&"booleanOp"in this.parent}_instancingEligible(){if(!0!==this.parameters.instanced)return!1;let t=this.object;return!(t.entityChildrenCount()>0||!0!==t.isMesh||o(t)||!0===t.isDecalObject)}_syncInstancedMesh(){if(!this._instancingEligible())return void this._disposeInstancedMesh();let t=this.instancedMesh;if(void 0!==t&&t.capacity<this.children.length&&(this._disposeInstancedMesh(),t=void 0),void 0===t){let e=Math.max(8,Math.ceil(1.5*this.children.length));t=this.instancedMesh=new X(this.object,e)}t.matrix=this.matrix,t.hiddenMatrix=this.hiddenMatrix,t.matrixWorldNeedsUpdate=!0,t.parent!==this.parent&&(t.removeFromParent(),this.parent?.add(t)),this.syncInstanceMatrices()}syncInstanceMatrices(){this._invalidateBoolean();let t=this.instancedMesh;if(void 0===t)return;let e=0;for(let i of this.children)!1!==i.playModeVisible&&(et.multiplyMatrices(i.hiddenMatrix,i.matrix).multiply(i.pivotMatrix),t.setMatrixAt(e++,et));t.count=e,t.instanceMatrix.needsUpdate=!0,t.boundingSphere=null}_disposeInstancedMesh(){let t=this.instancedMesh;void 0!==t&&(this.instancedMesh=void 0,t.removeFromParent(),t.dispose())}_updateCount(t,e){let r;if(void 0!==e)r=e;else{let e=vt(this.parameters.grid.count,t);r="grid"===this.parameters.type?Math.round(e[0])*Math.round(e[1])*Math.round(e[2]):this.parameters.count}if("toObject"===this.parameters.type)if(this.parameters.toObject.object){if(void 0===e&&"random"!==this.parameters.toObject.spreadType)return}else r=0;if(this.children.length!==r)if(this.children.length<r)for(let t=0,e=r-this.children.length;t<e;++t){let t=new i(this.object);t.expand(),this.add(t)}else for(;this.children.length>r;){let t=this.children.pop();t.parent=null,t.dispatchEvent({type:"removed"}),this.dispatchEvent({type:"childremoved",child:t})}}getRandom(t,e=!1){return(null===this.random||this.random.data.seed!==t.seed||this.random.data.noiseType!==t.noiseType||this.random.is3D!==e)&&(this.random=new wt(t,e)),this.random}_updateRadial(t,e){let i,r=t.radial,n=r.start*h.DEG2RAD,s=n-r.end*h.DEG2RAD,a=vt(r.rotation,e),o=new p(a[0],a[1],a[2]);switch(r.axis){case"z":i=new c(0,0,1);break;case"y":i=new c(0,1,0);break;default:i=new c(1,0,0)}let d=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,u=!0===this.parameters.randomness&&0!==d.strength?this.getRandom(d):null,m=vt(r.scale,e),f=vt(r.position,e),y=vt(d.scale,e),b=vt(d.position,e),x=vt(d.rotation,e),g=s/t.count,M=P(d.strength,this.parameters.randomness);for(let[t,e]of this.children.entries()){let s=t*(d.freqScale/10)+d.movement,a=null===u?0:u.noise(s,s,s),l=t+1;e.scale.x=m[0]+M(l,T(a,y[0]))||J,e.scale.y=m[1]+M(l,T(a,y[1]))||J,e.scale.z=m[2]+M(l,T(a,y[2]))||J;let h=g*t-n;switch(r.axis){default:case"x":xt.set(0,h,0);break;case"y":xt.set(0,0,h);break;case"z":xt.set(h,0,0)}pt.copy(i).applyQuaternion(gt.setFromEuler(xt)).multiplyScalar(r.radius),e.position.set(pt.x+(f[0]+M(l,T(a,b[0]))),pt.y+(f[1]+M(l,T(a,b[1]))),pt.z+(f[2]+M(l,T(a,b[2]))));let c=M(l,T(a,x[0])),p=M(l,T(a,x[1])),v=M(l,T(a,x[2]));!0===r.alignment?e.rotation.set(xt.x+(o.x+c),xt.y+(o.y+p),xt.z+(o.z+v)):e.rotation.set(o.x+c,o.y+p,o.z+v)}}_updateLinear(t,e){if("linear"!==t.type)throw new Error;let i=t.linear,r=vt(i.rotation,e),n=vt(i.scale,e),s=vt(i.position,e),a=new p(r[0]??0,r[1]??0,r[2]??0),o=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,h=vt(o.rotation,e),d=vt(o.scale,e),c=vt(o.position,e),u=!0===this.parameters.randomness&&0!==o.strength?this.getRandom(o):null,m=P(o.strength,this.parameters.randomness);for(let[t,e]of this.children.entries()){let i=t*(o.freqScale/10)+o.movement,r=null===u?0:u.noise(i,i,i),l=t+1,p=m(l,T(r,h[0])),f=m(l,T(r,h[1])),y=m(l,T(r,h[2]));e.scale.x=1+(n[0]-1)*t+m(l,T(r,d[0]))||J,e.scale.y=1+(n[1]-1)*t+m(l,T(r,d[1]))||J,e.scale.z=1+(n[2]-1)*t+m(l,T(r,d[2]))||J,e.rotation.set(a.x*t+p,a.y*t+f,a.z*t+y),e.position.x=s[0]*t+m(l,T(r,c[0])),e.position.y=s[1]*t+m(l,T(r,c[1])),e.position.z=s[2]*t+m(l,T(r,c[2]))}}_updateGrid(t,e){let i=0,r=t.grid,n=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,s=vt(n.scale,e),a=vt(n.rotation,e),o=vt(n.position,e),h=!0===this.parameters.randomness&&0!==n.strength?this.getRandom(n,!0):null,d=P(n.strength,this.parameters.randomness),u=vt(r.count,e),p=vt(r.size,e);if(!0===r.useCenter){let t={x:u[0]%2==0?2:1,y:u[1]%2==0?2:1,z:u[2]%2==0?2:1},e=new c(p[0]*(u[0]-t.x)*.5,p[1]*(u[1]-t.y)*.5,p[2]*(u[2]-t.z)*.5);for(let t=0;t<u[0];t++)for(let r=0;r<u[1];r++)for(let l=0;l<u[2];l++){let c=this.children[i++];if(!c)continue;let u=null===h?0:h.noise((t+1)*(n.freqScale/10)+n.movement,(r+1)*(n.freqScale/10)+n.movement,(l+1)*(n.freqScale/10)+n.movement);c.scale.x=1+d(i,T(u,s[0]))||J,c.scale.y=1+d(i,T(u,s[1]))||J,c.scale.z=1+d(i,T(u,s[2]))||J;let m=d(i,T(u,a[0])),f=d(i,T(u,a[1])),y=d(i,T(u,a[2]));c.rotation.set(m,f,y),c.position.x=p[0]*t-e.x+d(i,T(u,o[0])),c.position.y=p[1]*r-e.y+d(i,T(u,o[1])),c.position.z=p[2]*l-e.z+d(i,T(u,o[2]))}}else for(let t=0;t<u[0];t++)for(let e=0;e<u[1];e++)for(let r=0;r<u[2];r++){let l=this.children[i++];if(!l)continue;let c=null===h?0:h.noise((t+1)*(n.freqScale/10)+n.movement,(e+1)*(n.freqScale/10)+n.movement,(r+1)*(n.freqScale/10)+n.movement);l.scale.x=1+d(i,T(c,s[0]))||J,l.scale.y=1+d(i,T(c,s[1]))||J,l.scale.z=1+d(i,T(c,s[2]))||J;let u=d(i,T(c,a[0])),m=d(i,T(c,a[1])),f=d(i,T(c,a[2]));l.rotation.set(u,m,f),l.position.x=p[0]*t+d(i,T(c,o[0])),l.position.y=-p[1]*e+d(i,T(c,o[1])),l.position.z=-p[2]*r+d(i,T(c,o[2]))}}_updateToObject(i,r){if("toObject"!==i.type)throw new Error;let{toObject:n}=i,s=vt(n.rotation,r),a=vt(n.position,r),o=vt(n.scale,r),h=new p(s[0],s[1],s[2]),d=i.randomnessObject??l.defaultData([1,1,1]).randomnessObject,c=vt(d.rotation,r),u=vt(d.position,r),m=vt(d.scale,r),f=!0===this.parameters.randomness&&0!==d.strength?this.getRandom(d):null,y=P(d.strength,this.parameters.randomness);if(!n.object){for(let[,t]of this.children.entries())t.position.set(0,0,0),t.scale.setScalar(1),t.rotation.set(0,0,0);return this.objectForSample=void 0,void this.invalidateSurfaceCaches()}if(!this.objectForSample)return;if(this.objectForSample instanceof t){if(!this.objectForSample.font?.isLoaded||void 0===this.objectForSample.geometry.attributes.position)return void(this._pendingMediaLoad=!0);this._pendingMediaLoad=!1}if(void 0===this.objectForSample.geometry&&this.objectForSample.isAncestorOf(this.object.uuid))return void console.warn(`Oh no! The object "${this.object.name}" (${this.object.uuid}) seem to be a child/descendant of the object it's being cloned to. Please re-parent it so that they are siblings instead.`);let b=this.getSubdivData();if(b.length>0){let t=Math.round(b.length*n.count/100);this._updateCount(r,t)}else{let t=this.objectForSample.geometry.getAttribute("position");if(!t||isNaN(t.count)||0===t.count)return void console.warn(`Oh no! The object "${this.object.name}" (${this.object.uuid}) cannot be cloned on the surface of "${this.objectForSample.name}" (${this.objectForSample.uuid}) because the latter does not have a valid geometry.`)}this.objectForSample.updateMatrixWorld();let x="random"===n.spreadType,M=null;x&&(M=this.getSurfaceSampler(),M.setRandomGenerator((0,g.default)(this.object.uuid+n.seed)));let v=O[n.axis],w=this.children;ot.fromArray(v),it.copy(this.object.hiddenMatrix).invert();let j=this.objectForSample instanceof e;j&&rt.copy(this.objectForSample.matrixWorld).invert(),"normal"!==n.align&&this.object.getWorldDirection(ut),yt.set(ot.y,ot.z,ot.x).normalize(),bt.copy(yt).cross(ot).normalize(),st.makeBasis(yt,ot,bt).invert();for(let[t,e]of w.entries()){let i=t*(d.freqScale/10)+d.movement,r=null===f?0:f.noise(i,i,i),s=t+1,l=y(s,T(r,c[0])),p=y(s,T(r,c[1])),g=y(s,T(r,c[2]));x?M.sample(ht,dt):(b.length&&(ht.fromArray(b[t].pos),dt.fromArray(b[t].norm)),j&&ht.applyMatrix4(rt)),ht.applyMatrix4(it),e.position.copy(ht);let v="normal"===n.align?dt:ut,w=lt.fromArray(a);lt.x+=y(s,T(r,u[0])),lt.y+=y(s,T(r,u[1])),lt.z+=y(s,T(r,u[2]));let A=Math.acos(v.dot(ot)),S=ct.crossVectors(ot,v).normalize(),F=tt.makeRotationAxis(S,A);mt.copy(v).cross(this.object.up).normalize(),ft.copy(mt).cross(v).normalize(),nt.makeBasis(mt,v,ft),at.multiplyMatrices(nt,st),xt.setFromRotationMatrix(at),w.applyMatrix4(F),e.position.add(w),e.rotation.set(xt.x+h.x+l,xt.y+h.y+p,xt.z+h.z+g),e.scale.set(1+o[0]+y(s,T(r,m[0]))||J,1+o[1]+y(s,T(r,m[1]))||J,1+o[2]+y(s,T(r,m[2]))||J),e.scale.multiply(this.object.scale),e.hiddenMatrix=this.object.hiddenMatrix}}getSurfaceSampler(){let t=this.objectForSample,e=t.geometry,i=e.getAttribute("position"),r=e.index,n=this.surfaceSamplerCache;if(null!==n&&n.geometry===e&&n.position===i&&n.positionVersion===Mt(i)&&n.index===r&&n.indexVersion===(null===r?-1:r.version))return n.sampler;let s=new z(t).build();return this.surfaceSamplerCache={geometry:e,position:i,positionVersion:Mt(i),index:r,indexVersion:null===r?-1:r.version,sampler:s},s}invalidateSurfaceCaches(){this.surfaceSamplerCache=null,this.surfacePointsCache=null}getSubdivData(){if(!this.objectForSample)return[];let t=this.parameters.toObject.spreadType;if("random"===t)return[];let i=this.objectForSample instanceof e,r=this.objectForSample.geometry;if(!i&&r){let e=this.surfacePointsCache,i=r.getAttribute("position");if(null!==e&&e.spreadType===t&&e.geometry===r&&e.position===i&&e.positionVersion===Mt(i)&&e.index===r.index&&e.indexVersion===(null===r.index?-1:r.index.version))return e.points}let n=new Map,s=(t,e)=>{let i=Math.round(1e4*t[0])+"_"+Math.round(1e4*t[1])+"_"+Math.round(1e4*t[2]),r=n.get(i);r?(r.pos[0]+=t[0],r.pos[1]+=t[1],r.pos[2]+=t[2],r.norm[0]+=e[0],r.norm[1]+=e[1],r.norm[2]+=e[2],r.count+=1):n.set(i,{pos:[...t],norm:[...e],count:1})};if(i){let e=this.objectForSample,i=C[t],r=q[i],n=U[i],a=D[i],o=r(e.subdivPointerNew);for(let t=0;t<=o-1;t++){let i=n(e.subdivPointerNew,t),r=a(e.subdivPointerNew,t);K.fromArray(i).applyMatrix4(e.matrixWorld),Y.fromArray(r),s(K.toArray(),Y.toArray())}}else(r.index?function(t){let e=[],i=Math.floor(t.index.count/3);for(let r=0;r<i;r++)if(L.fromArray(t.index.array,3*r),E.setFromAttributeAndIndices(t.attributes.position,L.x,L.y,L.z),E.getNormal(G),E.getMidpoint($),!(isNaN($.x)||isNaN($.y)||isNaN($.z))){let{a:t,b:i,c:r}=E,n=t.toArray(),s=i.toArray(),a=r.toArray(),o=t.distanceTo(i),l=i.distanceTo(r),h=r.distanceTo(t),d=B(n,s),c=B(s,a),u=B(a,n),p=[o,l,h],m=Math.max(...p),f=p.filter(t=>Math.round(t)===Math.round(m)).length>1,y=[],b=E.getMidpoint($).toArray();m===o&&!f&&(y=[c,u,u],b=d),m===l&&!f&&(y=[d,u,u],b=c),m===h&&!f&&(y=[d,c,c],b=u),f&&(y=[d,c,u]),e.push({vertices:[n,s,a],faceCenters:y,midpoint:b,norm:E.getNormal(G).toArray()})}return e}(r):function(t){let e=[],{position:i}=t.attributes;for(let t=0;t<i.count;t++){E.setFromAttributeAndIndices(i,3*t,3*t+1,3*t+2),E.getNormal(G),E.getMidpoint($);let r=E.a.toArray(),n=E.b.toArray(),s=E.c.toArray();e.push({vertices:[r,n,s],faceCenters:[B(r,n),B(n,s),B(s,r)],midpoint:$.toArray(),norm:G.toArray()})}return e}(r)).forEach((e,i)=>{"polygon_center"===t&&s(e.midpoint,e.norm),"vertex"===t&&(s(e.vertices[0],e.norm),s(e.vertices[1],e.norm),s(e.vertices[2],e.norm)),"edge"===t&&(s(e.faceCenters[0],e.norm),s(e.faceCenters[1],e.norm),s(e.faceCenters[2],e.norm))});let a=Array.from(n.values());for(let t of a)t.pos[0]/=t.count,t.pos[1]/=t.count,t.pos[2]/=t.count,t.norm[0]/=t.count,t.norm[1]/=t.count,t.norm[2]/=t.count;if(!i&&r){let e=r.getAttribute("position");this.surfacePointsCache={spreadType:t,geometry:r,position:e,positionVersion:Mt(e),index:r.index,indexVersion:null===r.index?-1:r.index.version,points:a}}return a}updateState(t,e){if(this.parameters=a(t),"toObject"!==this.parameters.type)this.invalidateSurfaceCaches(),(null===this.parent||this.parent!==this.object)&&(this.removeFromParent(),this.object.parent?.add(this),this.matrix=this.object.matrix,this.hiddenMatrix=this.object.hiddenMatrix,this.matrixWorldNeedsUpdate=!0,this.matrixAutoUpdate=!1);else if(null===this.parent||this.parent.uuid!==this.parameters.toObject.object){this.removeFromParent(),this.invalidateSurfaceCaches();let t=e.scene.find(this.parameters.toObject.object);this.objectForSample=t instanceof s?t:void 0,this.matrix=new u,this.hiddenMatrix=new u,this.matrixWorldNeedsUpdate=!0,this.matrixAutoUpdate=!1,t&&t.add(this)}this.update(e)}get pendingMediaLoad(){return this._pendingMediaLoad}};export{jt as a};
|
|
Binary file
|
|
Binary file
|