Vector3 Math in THREE JS - Calculating Control Points for BezierCurve

So I scrapped all of this, and added .y to my var point calculation since I am only passing in the Y to my controlpoints and it SEEMS to be working. I am getting curved lines that attach to all of my points… Wondering if I even needed to use vector math. I think I am still following the above linked algo that I found for figuring this out… but not 100% sure.

var point0Percentage = .25;
        var point1Percentage = .75;

        // start at 1 because 0 would make the first lines start and end point the same which we don't want!
        for(var k = 1; k < linePoints.length; k++){

            var point0 = 1 - point0Percentage * linePoints[0].y + point0Percentage * linePoints[k].y;
            var point1 = 1 - point1Percentage * linePoints[0].y + point1Percentage * linePoints[k].y;
           
            var controlPoint0 = new THREE.Vector3(
                linePoints[0].x,
                point0 - (1 - point0Percentage * linePoints[0].y / point0Percentage),
                linePoints[0].z
            );
            
            var controlPoint1 = new THREE.Vector3(
                linePoints[0].x,
                point1 - (1 - point1Percentage * linePoints[0].y / point1Percentage),
                linePoints[0].z
            );
            
            var curve = new THREE.CubicBezierCurve3(linePoints[0], controlPoint0, controlPoint1, linePoints[k]);
            var curvePoints = curve.getPoints(50);
            var lineGeo = new THREE.BufferGeometry().setFromPoints(curvePoints);
            var line = new THREE.Line(lineGeo, lineMat);
            line.visible = false;
            hexSphere.add(line);
            this.clusterLines.push(line);

        }