BANCO DI CONTROLLO DELLA RUOTA / MAPPA DI STATO

Imposta le voci e leggi lo stato visibile della ruota

Questo pannello decisionale collega l’editor corrente della ruota: limiti delle voci, ordine della tavolozza, impostazioni di giro, calcolo della rotazione, cronologia, stato di eliminazione e controlli del browser.

Apri ruota

Binario voci e ordine della tavolozza

All’avvio, l’editor crea quattro voci predefinite localizzate. Un valore salvato pickerWheelOptions è analizzato come JSON solo se è un array con almeno due voci; le voci richiedono campi string id e text, sono limitate a 30 e le etichette sono tagliate a 80 caratteri. Un set precedente di esattamente quattro etichette inglesi predefinite è sostituito da etichette localizzate. Questa scheda non assegna un esito di ripristino a valori salvati troppo lunghi o non validi.

01 · INPUT — Aggiungi, rimuovi, ordina

L’aggiunta rimuove gli spazi e taglia il testo a 80 caratteri, fino a 30 voci. La rimozione si ferma a due voci. L’ordinamento usa text.localeCompare; Shuffle è Fisher–Yates con Math.random() e targetIndex = Math.floor(Math.random() * (index + 1)).

02 · TAVOLOZZA — Otto set di colori

I temi visibili sono vibrant, pastel, sunset, forest, ocean, candy, earth e neon. I colori si ripetono ciclicamente secondo l’ordine corrente delle voci.

03 · CAMBIO — Il tema riassegna l’ordine visibile

Cambiare tema riassegna i colori del tema secondo l’ordine corrente delle voci. Ordinamento e mescolamento assegnano anch’essi colori da tale ordine.

Registro delle tavolozze

Un tema cambia i colori dei segmenti associati alla sequenza corrente; non aggiunge un altro stato di voce.

  • vibrant
  • pastel
  • sunset
  • forest
  • ocean
  • candy
  • earth
  • neon

Pannello del calcolo di giro

La ruota richiede almeno due voci. Un giro parte dalla rotazione corrente e usa i valori visibili. Durante la durata calcolata, l’editor impiega una curva ease-out cubic.

01 · IMPOSTAZIONI — Velocità e durata

spinSpeed inizia a 5 e accetta 1–10. spinDuration inizia a 5 secondi e accetta 2–15 secondi.

02 · TEMPO — Espressione della durata

actualDuration = spinDuration * 1000 / (spinSpeed / 5).

03 · ROTAZIONE — Intervallo di giri

I giri vanno da 5 + spinSpeed a 8 + spinSpeed usando Math.random() tra tali limiti; la rotazione totale è rotations * 2 * Math.PI.

04 · SEGMENTO — Derivazione del puntatore

Alla fine, normalizedRotation = newRotation % (2 * Math.PI), pointerAngle = (2 * Math.PI - normalizedRotation) % (2 * Math.PI), e l’indice del segmento è Math.floor(pointerAngle / anglePerOption).

Registro di uscita, cronologia ed eliminazione

Quando l’animazione termina, viene mostrata l’etichetta della voce selezionata, il totale dei giri aumenta e il risultato è inserito davanti alla cronologia. Il display conserva al massimo 10 record di cronologia.

01 · CRONOLOGIA — Inserimento davanti, limite 10

Il percorso finale usa [newResult, ...previous].slice(0, 10). Ogni risultato contiene il testo della voce mostrata e un timestamp.

02 · ELIMINAZIONE — Copia e rimozione condizionale

Attivare Elimination Mode copia le voci correnti. Dopo un risultato, la sua voce è rimossa solo quando restano almeno due voci; altrimenti l’elenco viene mantenuto.

03 · RESET — Reimposta rotazione ed etichetta

Reset riporta la rotazione a 0 e cancella l’etichetta mostrata. Con Elimination Mode attivo e voci originali presenti, Reset ripristina quell’elenco copiato.

Registro delle chiavi e ambito dei controlli

L’editor scrive il proprio stato mostrato sotto chiavi localStorage nominate. La cronologia viene scritta solo se non vuota; Clear history svuota lo stato e rimuove la sua chiave.

OPZIONI — pickerWheelOptions

Lo stato delle voci è scritto come JSON dopo le modifiche. Le altre preferenze scritte sono pickerWheelSound, pickerWheelEliminationMode, pickerWheelColorTheme, pickerWheelSpinSpeed, pickerWheelSpinDuration e pickerWheelTotalSpins.

CRONOLOGIA — pickerWheelHistory

Una cronologia non vuota è scritta sotto pickerWheelHistory. Clear history rimuove pickerWheelHistory dopo aver impostato la cronologia mostrata come elenco vuoto.

INPUT / VISTA — Tastiera, suono, schermo intero

Il pulsante e il canvas possono avviare un giro. Invio o Spazio possono farlo se l’elemento attivo non è un INPUT. L’inizializzazione di AudioContext viene tentata dopo il primo document click e il suono ha un interruttore. Lo schermo intero usa un’API nativa quando disponibile, altrimenti una vista CSS di ripiego, compreso un ramo di rilevamento iOS.

Note di ambito

  • Questo pannello descrive percorsi e formule correnti dell’editor, non una valutazione della selezione.
  • L’indice di selezione deriva dalla rotazione finale normalizzata e dalla larghezza del segmento sotto il puntatore.
  • L’editor usa Math.random() nei percorsi di mescolamento e giro; questa pagina non caratterizza tali uscite.
  • Valori memorizzati, inizializzazione del suono e schermo intero sono descritti come percorsi di codice, non come aspettative di piattaforma.

Prosegui con controlli vicini

Ogni strumento collegato ha la propria interfaccia e il proprio percorso di stato.

  • Lancia moneta

    Apri l’interfaccia separata della moneta a due lati.

  • Sudoku

    Apri un puzzle a griglia con controlli propri.

  • Puzzle di parole

    Apri l’interfaccia del puzzle basato sulle parole.

Domande sul banco di controllo

Quali voci sono presenti all’avvio?

L’editor parte con quattro voci predefinite localizzate. pickerWheelOptions è usato solo dopo parsing JSON come array con almeno due voci; quelle valide richiedono id e text string, al massimo 30 sono mantenute e le etichette sono tagliate a 80 caratteri.

Quali temi colore sono visibili?

I nomi visibili sono vibrant, pastel, sunset, forest, ocean, candy, earth e neon. I colori sono assegnati ciclicamente secondo l’ordine corrente delle voci, anche dopo un cambio tema.

Come sono calcolate durata e rotazione?

spinSpeed è 1–10 e spinDuration è 2–15 secondi. actualDuration = spinDuration * 1000 / (spinSpeed / 5). La rotazione usa un valore tra 5 + spinSpeed e 8 + spinSpeed e poi una curva ease-out cubic.

Come è derivata la voce mostrata?

Alla fine il codice normalizza con newRotation % (2 * Math.PI), deriva pointerAngle come (2 * Math.PI - normalizedRotation) % (2 * Math.PI), poi prende Math.floor(pointerAngle / anglePerOption).

Cosa fanno cronologia ed Elimination Mode?

Un risultato è aggiunto davanti e la cronologia è limitata a 10. Attivare Elimination Mode copia le voci correnti; dopo un risultato rimuove quella voce solo se restano almeno due. Reset ripristina le copiate quando la modalità è attiva.

Quali chiavi sono memorizzate?

L’editor scrive pickerWheelOptions, pickerWheelHistory se non vuota, pickerWheelSound, pickerWheelEliminationMode, pickerWheelColorTheme, pickerWheelSpinSpeed, pickerWheelSpinDuration e pickerWheelTotalSpins. Clear history rimuove pickerWheelHistory.

Apri i controlli della ruota

Imposta le voci, consulta tavolozza e impostazioni, poi usa i controlli visibili della ruota.

Apri ruota