1import{j as t,r as l,u as b}from"./r3f-D-tv2vky.js";import{d as m,g as j}from"./three-CrRbY0Rh.js";import{W as P,P as g,H as y}from"./_SharedWireframe-BAcIwvsi.js";import"./useInView-hX75lh_a.js";import"./HeroFigureFallback-DyXVoxj0.js";const A=3,v=2,M=1.4,f=220,d=(o,i=new m)=>{const a=o*Math.PI*2,s=v*a,p=A*a,x=M*(2+Math.cos(s))*.5;return i.set(x*Math.cos(p),x*Math.sin(p),M*Math.sin(s)),i},R=()=>{const o=l.useRef(null),i=l.useRef(null),a=l.useRef(null),s=l.useMemo(()=>new Float32Array(3),[]),{linePositions:p,vertexPositions:x}=l.useMemo(()=>{const c=new Float32Array((f+1)*3),e=new m;for(let r=0;r<=f;r++)d(r/f,e),c[r*3]=e.x,c[r*3+1]=e.y,c[r*3+2]=e.z;const h=14,n=Math.floor(f/h),u=new Float32Array(n*3);for(let r=0;r<n;r++)d(r*h/f,e),u[r*3]=e.x,u[r*3+1]=e.y,u[r*3+2]=e.z;return{linePositions:c,vertexPositions:u}},[]);return b(({clock:c})=>{const e=c.getElapsedTime();o.current&&(o.current.rotation.y=e*.2,o.current.rotation.x=Math.sin(e*.13)*.18),i.current&&(i.current.opacity=.6+Math.sin(e*.8)*.08);const h=e*.12%1,n=new m;if(d(h,n),s[0]=n.x,s[1]=n.y,s[2]=n.z,a.current){const u=a.current.geometry.getAttribute("position");u.needsUpdate=!0}}),t.jsxs("group",{ref:o,children:[t.jsxs("line",{children:[t.jsx("bufferGeometry",{children:t.jsx("bufferAttribute",{attach:"attributes-position",args:[p,3]})}),t.jsx("lineBasicMaterial",{ref:i,color:g,transparent:!0,opacity:.65,depthWrite:!1})]}),t.jsxs("points",{children:[t.jsx("bufferGeometry",{children:t.jsx("bufferAttribute",{attach:"attributes-position",args:[x,3]})}),t.jsx("pointsMaterial",{color:y,size:.07,sizeAttenuation:!0,transparent:!0,opacity:.85,depthWrite:!1,blending:j})]}),t.jsxs("points",{ref:a,children:[t.jsx("bufferGeometry",{children:t.jsx("bufferAttribute",{attach:"attributes-position",args:[s,3]})}),t.jsx("pointsMaterial",{color:y,size:.22,sizeAttenuation:!0,transparent:!0,opacity:1,depthWrite:!1,blending:j})]})]})},W=()=>t.jsx(P,{cameraZ:6.5,children:t.jsx(R,{})});export{W as AutomationFinOpsFigure,W as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.