Vector3 projectPoint(Vector3 point, Vector3 target) { return target .copy(normal) .multiplyScalar(-distanceToPoint(point)) .add(point); }