Calcolatore di rivolti
Il calcolatore di rivolti riceve note già disposte allo stato fondamentale e le colloca nell’ordine richiesto dal rivolto selezionato.
Esegui gratis nel browser
Usi zero per mantenere l’ordine originale, uno per il primo rivolto, due per il secondo e così via. Lo strumento conserva esattamente ogni etichetta, inclusi diesis, bemolli, indicazioni d’ottava e grafie personalizzate. Applica una rotazione deterministica senza indovinare nomi di accordi o equivalenze enarmoniche, quindi è adatto a lezioni, esercizi e procedure di software musicale.
Inserisca le note dell’accordo allo stato fondamentale
Cominci con un elenco ordinato delle note che formano l’accordo. Per una triade di do maggiore l’elenco è C, E, G; per un accordo di sol settima dominante potrebbe essere G, B, D, F. L’ordine è essenziale, perché il calcolatore considera il primo elemento come basso dello stato fondamentale e sposta le note dall’inizio alla fine. Non analizza simboli di accordo, non deduce note mancanti, non elimina duplicati e non stabilisce se due grafie siano enarmonicamente equivalenti. Questa regola intenzionale rende il risultato prevedibile negli esercizi di teoria e nelle applicazioni. Le etichette rimangono identiche a come sono state fornite, compresi valori quali F#, Gb, C4 o una notazione definita dal Suo programma. Ogni elemento deve essere una stringa non vuota, ma non è obbligato a seguire un particolare sistema. Prima dell’invio verifichi che l’elenco rappresenti l’ordine fondamentale desiderato. Se parte da una disposizione già rivoltata, il risultato sarà comunque una rotazione valida, ma il numero sarà relativo all’ordine fornito anziché a una fondamentale rilevata autonomamente.
Scelga il numero del rivolto partendo da zero
Il numero del rivolto indica quante note spostare dall’inizio dell’accordo alla fine. Il valore zero non sposta nulla e restituisce una copia dell’ordine iniziale. Il valore uno colloca la prima nota dopo tutte le altre: C, E, G diventa E, G, C. Il valore due sposta le prime due note e produce G, C, E. Un accordo di settima offre quattro scelte valide, numerate da zero a tre, mentre un accordo di cinque note accetta i valori da zero a quattro. Il numero deve essere un intero non negativo e inferiore al numero di note. Un accordo di tre note rifiuta quindi il valore tre, perché spostarle tutte riprodurrebbe soltanto lo stato fondamentale e non un rivolto distinto. La convalida intercetta anche comuni errori di indicizzazione. L’operazione modifica esclusivamente l’ordine: non aggiunge numeri d’ottava e non innalza automaticamente di dodici semitoni le note spostate. Se il registro è importante, interpreti ogni nota trasferita come posta sopra quelle restanti oppure fornisca indicazioni d’ottava esplicite che esprimano la convenzione desiderata.
Usi le note riordinate nello studio e nel software
La risposta contiene le note riordinate come array JSON, facile da visualizzare, memorizzare, confrontare o passare a un altro strumento musicale. Gli insegnanti possono generare soluzioni per esercizi sui rivolti senza riscrivere manualmente ogni accordo. Gli studenti possono controllare se il basso e la sequenza rimanente corrispondano al primo, al secondo o a un rivolto successivo. Gli arrangiatori possono esplorare l’ordine prima di scegliere una disposizione eseguibile, mentre gli sviluppatori possono inserire il risultato deterministico in diagrammi, fasi di preparazione MIDI o interfacce di analisi armonica. Ricordi che un rivolto non prescrive un voicing completo: uno strumento può raddoppiare od omettere note, distribuirle su più ottave o cambiare l’ordine interno mantenendo la stessa classe del basso. Il calcolatore risponde alla domanda più circoscritta dell’ordine ciclico, evitando ipotesi specifiche dello strumento. Lo stesso input produce sempre lo stesso output, senza rete, casualità o dizionari di accordi. Il browser è pratico per calcoli singoli; l’automazione tramite API costa $0.002 per richiesta.
Casi d'uso
Creare esercizi di teoria musicale
Generi elenchi coerenti di note riordinate per domande, schede e soluzioni dedicate ai rivolti.
Controllare le risposte degli esercizi
Confronti il rivolto proposto da uno studente con l’ordine deterministico del numero richiesto.
Alimentare interfacce per accordi
Invii le note riordinate a diagrammi, anteprime di notazione o successive procedure di voicing strumentale.
Domande frequenti
Come si contano i numeri dei rivolti?
La numerazione parte da zero: zero è lo stato fondamentale, uno il primo rivolto, due il secondo e così via.
Che cosa accade alle note quando richiede un rivolto?
Il numero richiesto di note passa dall’inizio dell’array alla fine, mantenendo il proprio ordine relativo.
Il numero del rivolto può uguagliare quello delle note?
No. Deve essere inferiore, perché spostare tutte le note riprodurrebbe semplicemente l’ordine originale.
Il calcolatore riconosce simboli o corregge la grafia?
No. Lavora soltanto sulle note ordinate che Lei fornisce e ne conserva esattamente la scrittura.
Assegna ottave alle note spostate?
No. Restituisce soltanto l’ordine; il registro e il voicing strumentale rimangono sotto il Suo controllo.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/hobby/chord-inversion \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"notes":["C","E","G"],"inversion":1}'const res = await fetch("https://api.kit.forhosting.com/hobby/chord-inversion", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"notes": [
"C",
"E",
"G"
],
"inversion": 1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/hobby/chord-inversion",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"notes": [
"C",
"E",
"G"
],
"inversion": 1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/hobby/chord-inversion", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"notes":["C","E","G"],"inversion":1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"notes":["C","E","G"],"inversion":1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/hobby/chord-inversion", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"notes": [
"C",
"E",
"G"
],
"inversion": 1
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "hobby.chord_inversion",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |