Ortho camera solution that worked for me.
export const fitCameraToCenteredObject = (
camera: THREE.OrthographicCamera,
object: any
) => {
const boundingBox = new THREE.Box3();
boundingBox.setFromObject(object);
const center = boundingBox.getCenter(new THREE.Vector3());
const size = boundingBox.getSize(new THREE.Vector3());
const maxSize = Math.max(size.x, size.y, size.z);
let newPositionCamera = new THREE.Vector3(maxSize, maxSize, maxSize);
camera.zoom = 1;
camera.left = -(2 * maxSize);
camera.bottom = -(2 * maxSize);
camera.top = 2 * maxSize;
camera.right = 2 * maxSize;
camera.near = -maxSize * 4;
camera.far = maxSize * 4;
// camera;
camera.position.set(
newPositionCamera.x,
newPositionCamera.y,
newPositionCamera.z
);
camera.lookAt(0, 0, 0);
camera.updateProjectionMatrix();
};