{"version":3,"file":"Random.DiOSpqJx.mjs","names":["React.useRef","React.useMemo","React.useState"],"sources":["https:/framerusercontent.com/modules/E9QaM6mPG1DtBDGgdvn2/TxAldDgXZxZPF4QEPAIO/Random.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";const MAX_PARTICLES=800;const MEMORY_PREFIX=\"rialto-particle-life\";const LAYOUT_FLASH_DURATION=420;function createAgent(){return{x:(Math.random()-.5)*400,y:(Math.random()-.5)*400,z:(Math.random()-.5)*250,vx:(Math.random()-.5)*1.5,vy:(Math.random()-.5)*1.5,vz:(Math.random()-.5)*1.5,ax:0,ay:0,az:0};}function adjustAgentCount(agents,count){if(agents.length>count){agents.splice(count);}else{while(agents.length<count){agents.push(createAgent());}}}function getPersistentState(memoryKey,initialGridLayoutMode,targetCount){const fallback={agents:[],splitLevel:1,gridLayoutMode:initialGridLayoutMode};if(typeof window===\"undefined\"){adjustAgentCount(fallback.agents,targetCount);return fallback;}const stores=window.__rialtoParticleLifeStores__??={};const storeKey=`${MEMORY_PREFIX}:${memoryKey||\"default\"}`;const store=stores[storeKey]??={agents:[],splitLevel:1,gridLayoutMode:initialGridLayoutMode};adjustAgentCount(store.agents,targetCount);return store;}function resolveFramerStyleColor(element,colorValue){if(!element||!colorValue)return colorValue||\"#ffffff\";if(colorValue.startsWith(\"var(\")||colorValue.includes(\"color\")){const dummy=document.createElement(\"div\");dummy.style.color=colorValue;element.appendChild(dummy);const computedColor=window.getComputedStyle(dummy).color;element.removeChild(dummy);return computedColor||\"#ffffff\";}return colorValue;}export default function ParticleLifeMatrixSystem(props){const{gridLayoutMode,pointColor,lineColor,particleDensity,perceptionRadius,speed,lifeForce,mouseInfluence,transparentBg,gridBorderColor,gridBorderWidth,globalMouseCapture,memoryKey,layoutSwitchDelay,style}=props;const containerRef=React.useRef(null);const canvasRef=React.useRef(null);const mouseRef=React.useRef({x:-1e3,y:-1e3,tx:-1e3,ty:-1e3});const safeDensity=Math.max(100,Math.min(MAX_PARTICLES,particleDensity));const persistentState=React.useMemo(()=>getPersistentState(memoryKey,gridLayoutMode,safeDensity),[memoryKey]);React.useEffect(()=>{adjustAgentCount(persistentState.agents,safeDensity);},[safeDensity,persistentState]);const[splitLevel,setSplitLevel]=React.useState(persistentState.splitLevel);const[displayGridLayoutMode,setDisplayGridLayoutMode]=React.useState(persistentState.gridLayoutMode);const stateRef=React.useRef({gridLayoutMode:displayGridLayoutMode,splitLevel});const lastPersistentStateRef=React.useRef(persistentState);const layoutFlashStartedAtRef=React.useRef(-Infinity);const paramsRef=React.useRef({pointColor,lineColor,perceptionRadius,speed,lifeForce,mouseInfluence,transparentBg,gridBorderColor,gridBorderWidth});React.useEffect(()=>{paramsRef.current={pointColor,lineColor,perceptionRadius,speed,lifeForce,mouseInfluence,transparentBg,gridBorderColor,gridBorderWidth};},[pointColor,lineColor,perceptionRadius,speed,lifeForce,mouseInfluence,transparentBg,gridBorderColor,gridBorderWidth]);React.useEffect(()=>{if(lastPersistentStateRef.current!==persistentState){lastPersistentStateRef.current=persistentState;setSplitLevel(persistentState.splitLevel);setDisplayGridLayoutMode(persistentState.gridLayoutMode);stateRef.current={gridLayoutMode:persistentState.gridLayoutMode,splitLevel:persistentState.splitLevel};return;}persistentState.splitLevel=splitLevel;persistentState.gridLayoutMode=displayGridLayoutMode;stateRef.current={gridLayoutMode:displayGridLayoutMode,splitLevel};},[displayGridLayoutMode,persistentState,splitLevel]);React.useEffect(()=>{const delayMs=Math.max(0,layoutSwitchDelay)*1e3;const timeoutId=window.setTimeout(()=>{if(stateRef.current.gridLayoutMode!==gridLayoutMode){layoutFlashStartedAtRef.current=performance.now();}setDisplayGridLayoutMode(gridLayoutMode);},delayMs);return()=>{window.clearTimeout(timeoutId);};},[gridLayoutMode,layoutSwitchDelay]);React.useEffect(()=>{if(!globalMouseCapture)return;const handleGlobalMouseMove=e=>{const container=containerRef.current;if(!container)return;const rect=container.getBoundingClientRect();mouseRef.current.tx=e.clientX-rect.left;mouseRef.current.ty=e.clientY-rect.top;};const handleGlobalMouseLeave=()=>{mouseRef.current.tx=-1e3;mouseRef.current.ty=-1e3;};window.addEventListener(\"mousemove\",handleGlobalMouseMove);window.addEventListener(\"mouseleave\",handleGlobalMouseLeave);return()=>{window.removeEventListener(\"mousemove\",handleGlobalMouseMove);window.removeEventListener(\"mouseleave\",handleGlobalMouseLeave);};},[globalMouseCapture]);React.useEffect(()=>{const canvas=canvasRef.current;const container=containerRef.current;if(!canvas||!container)return;const ctx=canvas.getContext(\"2d\");if(!ctx)return;let animationFrameId=0;let frameCount=0;const resize=()=>{const dpr=window.devicePixelRatio||1;const w=container.clientWidth;const h=container.clientHeight;const nextWidth=Math.max(1,Math.floor(w*dpr));const nextHeight=Math.max(1,Math.floor(h*dpr));if(canvas.width!==nextWidth||canvas.height!==nextHeight){canvas.width=nextWidth;canvas.height=nextHeight;}canvas.style.width=`${w}px`;canvas.style.height=`${h}px`;ctx.setTransform(dpr,0,0,dpr,0,0);};const ro=new ResizeObserver(resize);ro.observe(container);resize();const handleMouseMove=e=>{if(globalMouseCapture)return;const rect=container.getBoundingClientRect();mouseRef.current.tx=e.clientX-rect.left;mouseRef.current.ty=e.clientY-rect.top;};const handleMouseLeave=()=>{if(globalMouseCapture)return;mouseRef.current.tx=-1e3;mouseRef.current.ty=-1e3;};const handleMouseDown=()=>{if(stateRef.current.gridLayoutMode===\"single\"){setSplitLevel(prev=>prev>=4?1:prev+1);}};window.addEventListener(\"mousemove\",handleMouseMove);container.addEventListener(\"mouseleave\",handleMouseLeave);canvas.addEventListener(\"mousedown\",handleMouseDown);const render=()=>{const w=container.clientWidth;const h=container.clientHeight;if(w===0||h===0){animationFrameId=requestAnimationFrame(render);return;}frameCount++;ctx.globalAlpha=1;ctx.globalCompositeOperation=\"source-over\";const params=paramsRef.current;const currentAgents=persistentState.agents;const currentDensity=currentAgents.length;const resolvedPointColor=resolveFramerStyleColor(container,params.pointColor);const resolvedLineColor=resolveFramerStyleColor(container,params.lineColor);const resolvedGridColor=resolveFramerStyleColor(container,params.gridBorderColor);const{gridLayoutMode:currentMode,splitLevel:currentSplit}=stateRef.current;const flashElapsed=performance.now()-layoutFlashStartedAtRef.current;const layoutFlash=flashElapsed>=0&&flashElapsed<LAYOUT_FLASH_DURATION?1-flashElapsed/LAYOUT_FLASH_DURATION:0;ctx.clearRect(0,0,w,h);if(mouseRef.current.tx!==-1e3){mouseRef.current.x+=(mouseRef.current.tx-mouseRef.current.x)*.1;mouseRef.current.y+=(mouseRef.current.ty-mouseRef.current.y)*.1;}let loopGridX=1;let loopGridY=1;if(currentMode===\"single\"){loopGridX=currentSplit;loopGridY=currentSplit;}else if(currentMode===\"matrix\"){loopGridX=3;loopGridY=3;}else if(currentMode===\"asymmetric\"){loopGridX=2;loopGridY=1;}else if(currentMode===\"masonry\"){loopGridX=3;loopGridY=2;}else if(currentMode===\"horizontal\"){loopGridX=1;loopGridY=5;}const cellW=w/loopGridX;const cellH=h/loopGridY;const agentsPerCell=Math.floor(currentDensity/(loopGridX*loopGridY));const pRadiusSq=params.perceptionRadius*params.perceptionRadius;for(let gy=0;gy<loopGridY;gy++){for(let gx=0;gx<loopGridX;gx++){let cx=gx*cellW+cellW/2;let cy=gy*cellH+cellH/2;let curCellW=cellW;let curCellH=cellH;let leftBound=gx*cellW;let topBound=gy*cellH;if(currentMode===\"asymmetric\"){const splitX=w*.4;leftBound=gx===0?0:splitX;curCellW=gx===0?splitX:w-splitX;topBound=0;curCellH=h;cx=leftBound+curCellW/2;cy=h/2;}else if(currentMode===\"masonry\"){const col1=w*.33;const col2=w*.66;leftBound=gx===0?0:gx===1?col1:col2;curCellW=gx===0?col1:gx===1?col2-col1:w-col2;if(gx===0){topBound=gy===0?0:h*.4;curCellH=gy===0?h*.4:h*.6;}else if(gx===1){topBound=gy===0?0:h*.6;curCellH=gy===0?h*.6:h*.4;}else{topBound=gy===0?0:h*.3;curCellH=gy===0?h*.3:h*.7;}cx=leftBound+curCellW/2;cy=topBound+curCellH/2;}else if(currentMode===\"single\"&&currentSplit===1||currentMode===\"focus\"||currentMode===\"radar\"||currentMode===\"chaos\"){cx=w/2;cy=h/2;leftBound=0;topBound=0;curCellW=w;curCellH=h;}const boundaryX=curCellW/2;const boundaryY=curCellH/2;const startIdx=(gy*loopGridX+gx)*agentsPerCell;const endIdx=startIdx+agentsPerCell;const shouldUpdatePhysics=(frameCount+gy+gx)%2===0;for(let i=startIdx;i<endIdx;i++){const a=currentAgents[i];if(!a)continue;if(shouldUpdatePhysics){let closeDx=0,closeDy=0,closeDz=0;let avgVx=0,avgVy=0,avgVz=0;let avgX=0,avgY=0,avgZ=0;let neighbors=0;for(let j=startIdx;j<endIdx;j++){if(i===j)continue;const b=currentAgents[j];if(!b)continue;const dx=a.x-b.x;const dy=a.y-b.y;const dz=a.z-b.z;const distSq=dx*dx+dy*dy+dz*dz;if(distSq<pRadiusSq){if(distSq<225){closeDx+=dx;closeDy+=dy;closeDz+=dz;}avgVx+=b.vx;avgVy+=b.vy;avgVz+=b.vz;avgX+=b.x;avgY+=b.y;avgZ+=b.z;neighbors++;}}if(neighbors>0){avgVx/=neighbors;avgVy/=neighbors;avgVz/=neighbors;avgX/=neighbors;avgY/=neighbors;avgZ/=neighbors;a.ax+=(avgX-a.x)*(params.lifeForce*.001);a.ax+=(avgVx-a.vx)*(params.lifeForce*.01);a.ax+=closeDx*.03;a.ay+=(avgY-a.y)*(params.lifeForce*.001);a.ay+=(avgVy-a.vy)*(params.lifeForce*.01);a.ay+=closeDy*.03;a.az+=(avgZ-a.z)*(params.lifeForce*.001);a.az+=(avgVz-a.vz)*(params.lifeForce*.01);a.az+=closeDz*.03;}if(mouseRef.current.tx!==-1e3){const mouseInCellX=mouseRef.current.x-leftBound;const mouseInCellY=mouseRef.current.y-topBound;if(mouseInCellX>=0&&mouseInCellX<=curCellW&&mouseInCellY>=0&&mouseInCellY<=curCellH){const mdx=mouseRef.current.x-(cx+a.x);const mdy=mouseRef.current.y-(cy+a.y);const mdistSq=mdx*mdx+mdy*mdy;const mouseRadius=curCellW*.4;if(mdistSq<mouseRadius*mouseRadius){const mdist=Math.sqrt(mdistSq)||1;a.ax+=mdx/mdist*params.mouseInfluence*.15;a.ay+=mdy/mdist*params.mouseInfluence*.15;}}}a.vx+=a.ax;a.vy+=a.ay;a.vz+=a.az;const maxVel=1.5*params.speed;const velSq=a.vx*a.vx+a.vy*a.vy+a.vz*a.vz;if(velSq>maxVel*maxVel){const vel=Math.sqrt(velSq);a.vx=a.vx/vel*maxVel;a.vy=a.vy/vel*maxVel;a.vz=a.vz/vel*maxVel;}a.ax=0;a.ay=0;a.az=0;}a.x+=a.vx;a.y+=a.vy;a.z+=a.vz;const pad=8;if(a.x<-boundaryX+pad){a.x=-boundaryX+pad;a.vx*=-1;}if(a.x>boundaryX-pad){a.x=boundaryX-pad;a.vx*=-1;}if(a.y<-boundaryY+pad){a.y=-boundaryY+pad;a.vy*=-1;}if(a.y>boundaryY-pad){a.y=boundaryY-pad;a.vy*=-1;}// 【追加安全ガード】Z軸移動自体も上限を縛り、分母がマイナスやゼロに絶対突入しないよう保護\nif(a.z<-140){a.z=-140;a.vz*=-1;}if(a.z>120){a.z=120;a.vz*=-1;}}const fov=180;const currentGridDivisor=currentMode===\"single\"?currentSplit:(loopGridX+loopGridY)*.5;const activeRadius=params.perceptionRadius/(currentGridDivisor*.6);const activeRadiusSq=activeRadius*activeRadius;ctx.strokeStyle=resolvedLineColor;for(let i=startIdx;i<endIdx;i++){const a=currentAgents[i];if(!a)continue;// 【最重要バグ修正】分母が極小値になるのを防ぎ、scale自体の上限を「最大3.5倍」に絶対固定。巨大化と遅延を根絶します。\nconst denominator=Math.max(25,fov+a.z);const scale=Math.min(3.5,fov/denominator);let px=cx+a.x*scale;let py=cy+a.y*scale;px=Math.max(leftBound+2,Math.min(leftBound+curCellW-2,px));py=Math.max(topBound+2,Math.min(topBound+curCellH-2,py));for(let j=i+1;j<endIdx;j++){const b=currentAgents[j];if(!b)continue;const dx=a.x-b.x;const dy=a.y-b.y;const dz=a.z-b.z;const dSq=dx*dx+dy*dy+dz*dz;if(dSq<activeRadiusSq){ctx.globalAlpha=Math.min(.42,(1-dSq/activeRadiusSq)*(.15+layoutFlash*.22));ctx.beginPath();ctx.moveTo(px,py);const bDenominator=Math.max(25,fov+b.z);const bScale=Math.min(3.5,fov/bDenominator);let bx=cx+b.x*bScale;let by=cy+b.y*bScale;bx=Math.max(leftBound+2,Math.min(leftBound+curCellW-2,bx));by=Math.max(topBound+2,Math.min(topBound+curCellH-2,by));ctx.lineTo(bx,by);ctx.stroke();}}ctx.fillStyle=resolvedPointColor;ctx.globalAlpha=Math.min(.9,.5+layoutFlash*.35);ctx.beginPath();ctx.arc(px,py,Math.max(.3,1*scale),0,Math.PI*2);ctx.fill();}ctx.globalAlpha=1;if(currentMode!==\"chaos\"){ctx.save();ctx.strokeStyle=resolvedGridColor;ctx.lineWidth=params.gridBorderWidth+layoutFlash*2;ctx.globalAlpha=1;ctx.shadowBlur=layoutFlash*14;ctx.shadowColor=resolvedGridColor;if(currentMode===\"single\"&&gx===0&&gy===0){if(currentSplit>1){ctx.beginPath();for(let k=1;k<currentSplit;k++){ctx.moveTo(w/currentSplit*k,0);ctx.lineTo(w/currentSplit*k,h);ctx.moveTo(0,h/currentSplit*k);ctx.lineTo(w,h/currentSplit*k);}ctx.stroke();}ctx.strokeRect(0,0,w,h);}else if(currentMode===\"asymmetric\"&&gx===0&&gy===0){const splitX=w*.4;ctx.beginPath();ctx.moveTo(splitX,0);ctx.lineTo(splitX,h);ctx.stroke();}else if(currentMode===\"matrix\"&&gx===0&&gy===0){ctx.beginPath();for(let k=1;k<3;k++){ctx.moveTo(w/3*k,0);ctx.lineTo(w/3*k,h);ctx.moveTo(0,h/3*k);ctx.lineTo(w,h/3*k);}ctx.stroke();}else if(currentMode===\"masonry\"&&gx===0&&gy===0){const col1=w*.33;const col2=w*.66;ctx.beginPath();ctx.moveTo(col1,0);ctx.lineTo(col1,h);ctx.moveTo(col2,0);ctx.lineTo(col2,h);ctx.moveTo(0,h*.4);ctx.lineTo(col1,h*.4);ctx.moveTo(col1,h*.6);ctx.lineTo(col2,h*.6);ctx.moveTo(col2,h*.3);ctx.lineTo(w,h*.3);ctx.stroke();}else if(currentMode===\"horizontal\"&&gx===0&&gy===0){ctx.beginPath();for(let k=1;k<5;k++){ctx.moveTo(0,h/5*k);ctx.lineTo(w,h/5*k);}ctx.stroke();}else if(currentMode===\"focus\"&&gx===0&&gy===0){const padX=w*.25;const padY=h*.25;ctx.strokeRect(padX,padY,w*.5,h*.5);ctx.beginPath();ctx.moveTo(padX,0);ctx.lineTo(padX,padY);ctx.moveTo(padX,h-padY);ctx.lineTo(padX,h);ctx.moveTo(w-padX,0);ctx.lineTo(w-padX,padY);ctx.moveTo(w-padX,h-padY);ctx.lineTo(w-padX,h);ctx.stroke();}else if(currentMode===\"radar\"&&gx===0&&gy===0){const radarCx=w/2;const radarCy=h/2;const minSide=Math.min(w,h);ctx.beginPath();ctx.arc(radarCx,radarCy,minSide*.15,0,Math.PI*2);ctx.arc(radarCx,radarCy,minSide*.35,0,Math.PI*2);ctx.moveTo(radarCx,0);ctx.lineTo(radarCx,h);ctx.moveTo(0,radarCy);ctx.lineTo(w,radarCy);ctx.stroke();}if(mouseRef.current.tx!==-1e3){const mx=mouseRef.current.x;const my=mouseRef.current.y;if(mx>=leftBound&&mx<=leftBound+curCellW&&my>=topBound&&my<=topBound+curCellH){ctx.fillStyle=\"rgba(255, 255, 255, 0.02)\";ctx.fillRect(leftBound,topBound,curCellW,curCellH);ctx.strokeStyle=\"rgba(255, 255, 255, 0.35)\";ctx.strokeRect(leftBound,topBound,curCellW,curCellH);}}ctx.restore();}}}animationFrameId=requestAnimationFrame(render);};render();return()=>{ro.disconnect();window.removeEventListener(\"mousemove\",handleMouseMove);container.removeEventListener(\"mouseleave\",handleMouseLeave);canvas.addEventListener(\"mousedown\",handleMouseDown);cancelAnimationFrame(animationFrameId);};},[persistentState,globalMouseCapture]);const finalStyle={width:\"100%\",height:\"100%\",overflow:\"hidden\",cursor:\"crosshair\",backgroundColor:transparentBg?\"transparent\":undefined,...style};return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:finalStyle,children:/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,style:{display:\"block\",background:\"transparent\"}})});}ParticleLifeMatrixSystem.defaultProps={gridLayoutMode:\"single\",pointColor:\"#FFFFFF\",lineColor:\"#FFFFFF\",particleDensity:300,perceptionRadius:50,speed:1,lifeForce:1.5,mouseInfluence:2.5,transparentBg:false,gridBorderColor:\"rgba(255, 255, 255, 0.25)\",gridBorderWidth:1,globalMouseCapture:true,memoryKey:\"main\",layoutSwitchDelay:.3};addPropertyControls(ParticleLifeMatrixSystem,{gridLayoutMode:{type:ControlType.Enum,title:\"Grid Mode\",defaultValue:\"single\",options:[\"single\",\"asymmetric\",\"matrix\",\"masonry\",\"horizontal\",\"focus\",\"radar\",\"chaos\"],optionTitles:[\"1. Single / Split 16\",\"2. Asymmetric Dual (ABOUT)\",\"3. Matrix Portfolio (WORKS)\",\"4. Masonry Puzzle (CMS)\",\"5. Horizontal Datasheet (BLOG)\",\"6. Focus Highlight / Center\",\"7. Radar / Circular Coordinates\",\"8. Pure Chaos (None)\"]},pointColor:{type:ControlType.Color,title:\"Point Color\"},lineColor:{type:ControlType.Color,title:\"Net Line Color\"},transparentBg:{type:ControlType.Boolean,title:\"Transparent BG\",defaultValue:false},gridBorderColor:{type:ControlType.Color,title:\"Grid Line Color\"},gridBorderWidth:{type:ControlType.Number,title:\"Grid Line Width\",min:.5,max:5,step:.5},particleDensity:{type:ControlType.Number,title:\"Density (Total)\",min:100,max:MAX_PARTICLES,step:20},perceptionRadius:{type:ControlType.Number,title:\"Life Radius\",min:20,max:120,step:5},speed:{type:ControlType.Number,title:\"Activity\",min:.1,max:4,step:.1},lifeForce:{type:ControlType.Number,title:\"Life Force\",min:.1,max:5,step:.1},mouseInfluence:{type:ControlType.Number,title:\"Mouse React\",min:0,max:10,step:.5},globalMouseCapture:{type:ControlType.Boolean,title:\"Global Mouse Capture\",defaultValue:true},memoryKey:{type:ControlType.String,title:\"Memory Key\",defaultValue:\"main\"},layoutSwitchDelay:{type:ControlType.Number,title:\"Switch Delay\",min:0,max:2,step:.1,defaultValue:.3}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ParticleLifeMatrixSystem\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Random.map"],"mappings":"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"}