Lam Wei Lun
f048ede640
Lay on Face: flip a face pointing straight up about X, not an arbitrary axis
...
Laying a face that already points up down needs a half turn, and every
horizontal axis does the job. setFromTwoVectors() resolved the choice through an
SVD whose null space is the whole XY plane, so the axis followed rounding noise:
the object landed at an arbitrary angle in the plate plane, and a part that fit
the plate no longer did. Turn such a face over about X, which keeps the
footprint, and share the rotation between the gizmo and the --ground-* options
instead of duplicating it.
2026-10-20 18:24:23 +08:00
..
2026-10-19 20:44:24 -05:00
2026-10-03 13:45:21 +08:00
2026-10-19 16:08:59 +08:00
2026-10-05 16:47:17 +08:00
2026-10-19 12:05:55 -03:00
2026-10-09 19:25:53 +08:00
2026-10-13 15:13:07 -05:00
2026-10-07 14:22:32 +08:00
2026-10-20 18:23:29 +08:00
2026-10-04 14:50:15 +08:00
2026-10-03 13:45:21 +08:00
2026-10-05 23:06:01 -05:00
2026-10-05 16:47:17 +08:00
2026-10-07 14:22:32 +08:00
2026-10-05 16:47:17 +08:00
2026-10-03 13:45:21 +08:00
2026-10-05 16:47:17 +08:00
2026-10-08 13:40:36 +08:00
2026-10-20 13:38:20 +08:00
2026-10-09 16:48:48 -03:00
2026-10-03 13:45:21 +08:00
2026-10-19 20:44:24 -05:00
2026-10-03 13:45:21 +08:00
2026-10-09 22:23:07 +08:00
2026-10-05 16:47:17 +08:00
2026-10-03 13:45:21 +08:00
2026-10-04 14:50:15 +08:00
2026-10-10 16:03:34 -03:00
2026-10-03 13:45:21 +08:00
2026-10-10 01:44:42 -04:00
2026-10-13 10:53:57 -03:00
2026-10-05 11:55:18 -04:00
2026-10-09 16:48:48 -03:00
2026-10-05 21:49:32 -03:00
2026-10-20 18:24:23 +08:00
2026-10-04 14:50:15 +08:00
2026-10-07 14:22:32 +08:00
2026-10-12 21:59:17 -03:00
2026-10-08 16:00:28 -03:00
2026-10-03 13:45:21 +08:00
2026-10-16 18:47:49 +08:00
2026-10-12 21:59:17 -03:00
2026-10-05 16:47:17 +08:00
2026-10-03 13:45:21 +08:00
2026-10-03 13:45:21 +08:00
2026-10-03 13:45:21 +08:00
2026-10-03 13:45:21 +08:00
2026-10-05 16:47:17 +08:00
2026-10-19 15:53:32 -03:00
2026-10-03 13:45:21 +08:00
2026-10-03 13:45:21 +08:00
2025-12-08 22:42:11 +08:00
2026-10-09 11:52:55 +08:00
2026-10-05 16:47:17 +08:00
2026-10-05 16:47:17 +08:00
2026-10-05 14:19:47 +08:00
2026-10-20 13:38:20 +08:00
2026-10-03 13:45:21 +08:00
2026-10-03 13:45:21 +08:00
2026-10-03 13:45:21 +08:00
2026-10-19 15:53:32 -03:00
2026-10-05 16:47:17 +08:00
2026-10-05 18:29:35 +08:00
2026-10-03 13:45:21 +08:00
2026-10-03 13:45:21 +08:00
2026-10-03 13:45:21 +08:00
2026-10-03 13:45:21 +08:00
2026-10-12 21:59:17 -03:00
2026-10-05 14:19:47 +08:00
2026-10-13 19:51:07 +08:00
2026-10-19 20:30:03 -03:00
2026-10-07 14:22:32 +08:00
2026-10-05 16:47:17 +08:00
2026-10-03 13:45:21 +08:00
2026-10-04 14:50:15 +08:00
2026-10-16 18:47:49 +08:00
2026-10-03 13:45:21 +08:00
2026-10-07 14:22:32 +08:00
2026-10-05 16:47:17 +08:00
2026-10-13 22:38:04 +08:00
2026-10-05 16:47:17 +08:00
2026-10-19 20:30:03 -03:00
2026-10-19 20:30:03 -03:00