Paleta de matizes equidistantes
Cinco cores a partir do matiz 200° ficam separadas por 72°: a primeira é #269dd9 e a última #26d93e. Saturação e luminosidade não mudam, então nenhuma região da roda domina o seu gráfico. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Hue
- 200
- Quantidade
- 5
- Saturação
- 70
- Luminosidade
- 50
- Passo (°)
- 72
- Esquema
- #269dd9, #8526d9, #d92656, #d9cd26, #26d93e
- Matizes
- 200, 272, 344, 56, 128
Um gerador de paleta de matizes equidistantes posiciona N cores em passos angulares iguais ao redor da roda de cores, partindo do matiz base que você escolhe e mantendo saturação e luminosidade constantes. Informe um matiz inicial em graus, uma contagem de dois a trinta e seis e os percentuais de saturação e luminosidade que devem permanecer iguais em cada amostra; a ferramenta calcula o passo como trezentos e sessenta dividido por N, envolve cada matiz sucessivo no intervalo semiaberto de zero a trezentos e sessenta, converte cada tripla HSL para sRGB e hexadecimal minúsculo e devolve um array scheme, uma lista de matizes e objetos ricos por cor com detalhamentos RGB, CSS e HSL. Equipes de marca que montam séries de gráficos multipasso, desenvolvedores front-end que constroem tokens de tema para painéis e estudantes de design que estudam o espaçamento equidistante de matizes precisam desse mesmo mapa determinístico sem abrir uma suíte de design completa.
O que é uma paleta de matizes equidistantes e por que passos iguais importam
O espaçamento angular igual no círculo de matiz é a forma clássica de construir uma série multicolor que não favorece nenhum setor da roda. Esquemas complementares usam cento e oitenta graus, triádicos cento e vinte e tetrádicos noventa; esta capacidade generaliza essa ideia a qualquer inteiro N de dois a trinta e seis fixando o passo em trezentos e sessenta dividido por N e avançando a partir do seu matiz base.
Saturação e luminosidade permanecem fixas de propósito: a intenção de busca de uma paleta de matizes equidistantes é a rotação equilibrada do matiz, não inventar rampas de valor ou croma, de modo que um início vivo de luminosidade média produz companheiros vivos de luminosidade média e um início pastel produz companheiros pastel. Quando a saturação é zero, cada membro colapsa em direção ao cinza porque cores acromáticas não têm matiz significativo a rotacionar; isso é física da cor correta, não um defeito.
Professores costumam emparelhar esta ferramenta com geradores de esquemas fixos para que os alunos vejam como mudar N altera a tensão visual e como o mesmo matiz base pode alimentar uma série de gráficos de cinco paradas ou um mapa qualitativo de doze. Sistemas de design usam esta estrutura quando um produto precisa de uma paleta categórica que escale com a contagem de séries em vez de codificar três ou quatro acentos de marca.
Dicas práticas, limites e buscas relacionadas
Comece pelo matiz de marca ou de interface em que você já confia em vez de uma escolha arbitraria na roda; o primeiro membro é sempre o matiz base no deslocamento zero após o wrap, de modo que o índice zero é a sua cor de identidade em termos HSL. Prefira contagens inteiras que batam com o tamanho da série de gráficos ou da legenda; cinco paradas dão passos de setenta e dois graus, seis dão sessenta, oito dão quarenta e cinco e doze dão trinta.
Mantenha saturação e luminosidade dentro dos intervalos que o seu pipeline de acessibilidade já valida—espaçamento equidistante de matiz não garante contraste WCAG contra um fundo fixo, então combine esta paleta com um verificador de contraste quando o texto assenta em preenchimentos sólidos. Não espere saída apenas complementar ou apenas triádica nesta página: esses esquemas fixos são ferramentas separadas com intenção SEO própria; use esta capacidade quando N for um parâmetro que você controla.
Cores CSS nomeadas e strings hex estão fora do escopo aqui; converta-as primeiro para matiz, saturação e luminosidade se partir de um hex de token. Ao escrever testes, cubra pelo menos um caso multipasso vívido, um count de dois (divisão de cento e oitenta graus), uma saturação quase cinza e um count inválido deliberado para travar a matemática do espaçamento e a validação.
Esta página atende quem busca uma paleta de matizes equidistantes, um gerador de roda de matiz igual ou uma ferramenta gratuita de N cores na roda online; não é um extrator de paleta de imagem nem um conversor multi-espaço completo.
Casos de uso
Séries categóricas de gráficos e painéis
Equipes de dados escolhem um matiz base de marca e uma contagem N de séries, depois inserem a lista hex do scheme em bibliotecas de gráficos para cores categóricas equidistantes.
Andaime de tokens de design para temas
Desenvolvedores front-end geram N propriedades personalizadas CSS a partir de um matiz base com saturação e luminosidade fixas para kits de interface multiacento.
Perguntas frequentes
O que é uma paleta de matizes equidistantes?
N cores colocadas em passos angulares iguais no círculo de matiz.
É o mesmo que esquemas triádicos ou complementares?
Esta capacidade generaliza para qualquer N permitido que você escolher.
A ferramenta de paleta de matizes equidistantes é grátis?
A ferramenta do navegador é grátis e roda localmente.
Quantos graus separam cada cor da paleta?
O passo é 360 graus dividido pelo número de cores. Com cinco cores o passo é de 72°, então um matiz base de 200° continua em 272°, 344°, 56° e 128°, dando a volta na roda.
Por que todas as cores saem cinza?
Porque a saturação está em 0. Uma cor sem saturação não tem matiz para girar, então todas as amostras viram o mesmo cinza. Aumente a saturação, por exemplo para 70 %, e os matizes voltam a se separar.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/color/hue-wheel \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"hue":200,"count":5,"saturation":70,"lightness":50}'const res = await fetch("https://api.kit.forhosting.com/color/hue-wheel", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"hue": 200,
"count": 5,
"saturation": 70,
"lightness": 50
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/hue-wheel",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"hue": 200,
"count": 5,
"saturation": 70,
"lightness": 50
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/hue-wheel", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"hue":200,"count":5,"saturation":70,"lightness":50}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"hue":200,"count":5,"saturation":70,"lightness":50}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/hue-wheel", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"hue": 200,
"count": 5,
"saturation": 70,
"lightness": 50
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.hue_wheel",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Entrada inválida—campos ausentes, contagem não inteira, contagem fora do intervalo permitido, saturação ou luminosidade fora de zero a cem—falha com um erro invalid_input claro em vez de inventar uma paleta. O caminho é aritmética pura—sem rede, sem sementes aleatórias, sem dependência do relógio—de modo que o executor gratuito do navegador e a API pré-paga devolvem o mesmo JSON cada vez que você a chama.
O que é uma paleta de matizes equidistantes e por que passos iguais importam
A resposta sempre indexa os membros a partir de zero e informa offset_deg e hue para que documentação, tokens de design e testes automatizados possam afirmar posições exatas na roda sem reordenar à mão.
Como chamar a API e o que volta na resposta
Prefira fixar os arrays scheme e hues em testes unitários para que uma mudança futura no arredondamento ou na conversão HSL apareça imediatamente. Envie um corpo JSON com quatro números finitos obrigatórios: hue como o ângulo base em graus (qualquer valor finito é aceito e envolvido no intervalo semiaberto de zero a trezentos e sessenta), count como inteiro de dois a trinta e seis, saturation como percentual de zero a cem e lightness como percentual de zero a cem. Strings numéricas são aceitas da mesma forma que números JSON. Em caso de sucesso a resposta devolve o matiz normalizado, a contagem ecoada, saturação e luminosidade arredondadas, step_deg igual a trezentos e sessenta dividido por count com arredondamento decimal fixo, um array scheme de strings #rrggbb minúsculas na ordem do percurso, um array hues dos ângulos dos membros, um array colors de objetos ricos cada um com index, offset_deg, hue, hex, hex6, r, g, b, rgb, css e hsl, mais uma mensagem curta em inglês e um array steps documentando normalização, o tamanho do passo e cada conversão. Validação falha—campo ausente, valor não finito, count não inteiro, count fora de dois a trinta e seis, ou saturação ou luminosidade fora de zero a cem—retorna invalid_input e nunca é cobrada. O preço é um valor fixo de US$ 0,002 por requisição bem-sucedida com unidade item.
Dicas práticas, limites e buscas relacionadas
Tarefas falhas que retornam invalid_input não consomem saldo pré-pago, o que mantém baratos scripts de design exploratório e validação de formulários enquanto valores imperfeitos são colados.
Casos de integração
Exercícios de roda de cores em sala de aula
Estudantes comparam setores iguais desenhados à mão com step_deg determinístico e afirmam arrays hues em lições de casa ou katas de programação.
Perguntas técnicas
Quais entradas são obrigatórias?
Quatro números: hue (graus, envolvido em [0, 360)), count (inteiro 2–36), saturation (0–100%) e lightness (0–100%). Valores inválidos retornam invalid_input.
Como o tamanho do passo é calculado?
step_deg = 360 / count com arredondamento decimal estável. O membro i usa hue wrap(base + i × step_deg).