feat: simmetria 'invariante' per oggetti circolari (1 variante angolare)

Test tooth_rim foro grande: 12x piu veloce (0.14s vs 1.77s) perche
angle_max=0 genera 1 sola variante angolare invece di 72.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-24 10:02:32 +02:00
parent e1a1b956fd
commit 45e3a29ff0
3 changed files with 3 additions and 1 deletions
+1
View File
@@ -163,6 +163,7 @@ class TuneParams(BaseModel):
# ---------- User-facing (simple) params ----------
SYMMETRY_TO_ANGLE_MAX = {
"invariante": 0.0, # oggetto simmetrico a rotazione totale (cerchi): 1 variante
"nessuna": 360.0,
"bilaterale": 180.0,
"rot_3": 120.0,
+1 -1
View File
@@ -202,7 +202,7 @@ async function doMatch() {
let body;
if (hasAdv) {
// Merge simple → tecnici base, poi overrides
const SYM_MAP = {nessuna:360, bilaterale:180, rot_3:120,
const SYM_MAP = {invariante:0, nessuna:360, bilaterale:180, rot_3:120,
rot_4:90, rot_6:60, rot_8:45};
const SCALE_MAP = {fissa:[1,1,0.1], mini:[0.9,1.1,0.05],
medio:[0.75,1.25,0.05], max:[0.5,1.5,0.05]};
+1
View File
@@ -50,6 +50,7 @@
<div class="field">
<label>Simmetria</label>
<select id="p-simmetria">
<option value="invariante">Invariante (cerchi — no rotazione)</option>
<option value="nessuna">Nessuna (0..360°)</option>
<option value="bilaterale">Bilaterale (speculare 180°)</option>
<option value="rot_3">Rotazionale 3× (120°)</option>