Co-authored-by: Reifonas <211114984+Reifonas@users.noreply.github.com>
This commit is contained in:
gpt-engineer-app[bot]
2026-05-24 20:26:12 +00:00
parent 8ffb67689f
commit ba87af34f4
+5 -1
View File
@@ -164,7 +164,11 @@ export function pushModelFaceNormal(normalWorld: THREE.Vector3, calGroupWorldQua
const cubeWorld = calibration.pendingCube;
const inv = calGroupWorldQuat.clone().invert();
const cubeLocal = cubeWorld.clone().applyQuaternion(inv).normalize();
const modelLocal = normalWorld.clone().applyQuaternion(inv).normalize();
const modelLocalRaw = normalWorld.clone().applyQuaternion(inv).normalize();
// Snap near-axial picks (chamfered or slightly off faces) to the closest
// principal axis. This dramatically improves robustness when picking faces
// from an orthographic head-on view.
const modelLocal = snapToPrincipalAxis(modelLocalRaw, 12);
calibration.pairs.push({ cube: cubeLocal, model: modelLocal });
calibration.pendingCube = null;