Conversor HSV para RGB
Transforme uma escolha HSV em canais de tela: matiz 210, saturação 70% e valor 80% dão rgb(61, 133, 204), ou #3d85cc, pela fórmula clássica de seis setores. 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
- H
- 210
- S
- 70
- Tensão (V)
- 80
- Valor
- 80
- Matiz
- 210
- Saturação
- 70
- Resistência (Ω)
- 61
Informe o matiz de zero a trezentos e sessenta graus, a saturação de zero a cem por cento e o valor de zero a cem por cento; a ferramenta executa a fórmula clássica de seis setores, devolve r, g e b de zero a duzentos e cinquenta e cinco, e também entrega uma string hex, uma forma CSS rgb() pronta para colar e a matemática intermediária de croma passo a passo.
O que HSV significa e como o RGB é derivado
HSV significa matiz (hue), saturação e valor—um modelo cilíndrico que se aproxima mais de como muitas pessoas escolhem cores em software de design do que os controles brutos de vermelho-verde-azul. O matiz é um ângulo na roda de cores medido em graus: zero e trezentos e sessenta caem ambos no vermelho puro, sessenta é amarelo, cento e vinte é verde, cento e oitenta é ciano, duzentos e quarenta é azul e trezentos é magenta.
A saturação é o quão longe a cor fica do cinza em direção ao croma total, expressa aqui como porcentagem de zero (sem cor, só níveis de cinza) a cem (pureza máxima para aquele matiz e brilho). O valor é o brilho de zero (preto, independentemente do matiz) a cem (a versão mais brilhante daquele matiz e saturação).
A conversão para RGB primeiro normaliza saturação e valor no intervalo unitário de zero a um, calcula o croma C igual a V vezes S, o intermediário X a partir da posição fracionária dentro de um setor de sessenta graus, e o casamento m igual a V menos C, depois atribui a tripla ordenada de canais primados conforme em qual dos seis setores de sessenta graus o matiz cai. Por fim cada canal é escalado por duzentos e cinquenta e cinco e arredondado para inteiro.
Esse é o mesmo algoritmo ensinado em cursos de computação gráfica e usado por inúmeros seletores de cor; esta capacidade o implementa de forma determinística para que testes dourados e gabaritos de sala de aula permaneçam estáveis. Entender a diferença em relação ao HSL importa para quem buscou o acrônimo errado: a luminosidade no HSL não é o mesmo eixo que o valor no HSV, então alimentar números HSL nesta ferramenta produziria o RGB errado.
Prefira HSV quando sua fonte já rotula os canais como matiz, saturação e valor ou brilho.
Dicas práticas, limites e buscas relacionadas
Prefira enviar a mesma escala percentual que sua ferramenta de design exportou para saturação e valor; não envie frações do intervalo unitário de zero a um a menos que primeiro multiplique por cem, porque uma saturação de zero ponto sete seria lida como menos de um por cento e pareceria quase cinza. O matiz trezentos e sessenta é aceito e tratado como zero para que exportações de roda fechada não falhem.
Esta página mira quem busca um conversor HSV para RGB, matiz saturação valor para vermelho verde azul, ou uma calculadora de cor HSV gratuita online; não é um conversor HSL, nem uma ferramenta hex-para-RGB, nem um extrator de paletas de imagens, nem um suite completo de gerenciamento de cor com LAB ou CMYK.
Prefira esta capacidade quando você já tem HSV e só precisa dos três inteiros de canal, de um token hex ou de uma string css rgb(); se seu pipeline parte de hex, use um caminho dedicado hex-para-RGB, e se precisar ir e voltar por muitos espaços, use um conversor multi-formato.
Casos de uso
Exportação do seletor de cor para CSS e canvas
Desenvolvedores pegam HSV de um seletor personalizado ou exportação de design e recebem inteiros r, g, b exatos mais strings css e hex para folhas de estilo e preenchimentos de Canvas.
Ensinar a fórmula HSV de seis setores
Alunos comparam setor, croma e canais escalados à mão com o array steps determinístico antes de entregar o dever de gráficos.
Perguntas frequentes
Quais intervalos o conversor HSV para RGB aceita?
Matiz h de 0 a 360 graus, saturação s de 0 a 100 por cento, e valor v de 0 a 100 por cento.
HSV é o mesmo que HSL?
Não. Ambos usam nomes de matiz e saturação, mas o valor (brilho) não é o mesmo que a luminosidade. Esta ferramenta implementa apenas HSV; não alimente triplas HSL e espere RGB correto.
O que r, g e b representam?
Intensidades de canal vermelho, verde e azul como inteiros de 0 a 255.
O que acontece se a saturação estiver fora de 0–100?
O valor não é cortado. Validação falha não é cobrada.
O conversor HSV para RGB é grátis?
A ferramenta do navegador é grátis e roda localmente.
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/hsv-rgb \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"h":210,"s":70,"v":80}'const res = await fetch("https://api.kit.forhosting.com/color/hsv-rgb", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"h": 210,
"s": 70,
"v": 80
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/hsv-rgb",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"h": 210,
"s": 70,
"v": 80
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/hsv-rgb", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"h":210,"s":70,"v":80}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"h":210,"s":70,"v":80}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/hsv-rgb", 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
{
"h": 210,
"s": 70,
"v": 80
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.hsv_rgb",
"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.
Limites
h_min | 0 |
h_max | 360 |
s_min | 0 |
s_max | 100 |
v_min | 0 |
v_max | 100 |
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
Um conversor HSV para RGB recebe uma cor descrita pelo matiz na roda, pela saturação como porcentagem de croma puro e pelo valor como brilho, e mapeia esses três números nos canais inteiros vermelho, verde e azul que toda tela, API de canvas e sistema de tokens de design ainda falam nativamente. Saturação fora do intervalo de zero a cem é rejeitada com um erro claro invalid_input em vez de inventar uma cor cortada. O caminho é aritmética determinística pura—sem rede, sem sementes aleatórias, sem dependência de relógio—assim o executor gratuito do navegador e a API pré-paga devolvem o mesmo JSON toda vez que você chama.
Como chamar a API e o que volta
Envie um corpo JSON com três números finitos obrigatórios: h para o matiz em graus de zero a trezentos e sessenta (aliases hue e H), s para a saturação como porcentagem de zero a cem (aliases saturation e S), e v para o valor como porcentagem de zero a cem (aliases value, V e brightness). Strings numéricas adjacentes que sigam um padrão numérico finito estrito são aceitas e convertidas da mesma forma que números JSON. Em caso de sucesso a resposta ecoa h, s e v arredondados junto com aliases hue, saturation e value, campos inteiros r, g e b com aliases red, green e blue, um array rgb de três números, uma string hex em minúsculas com hash inicial, uma string css na forma rgb(r, g, b), uma string css_hsv que resume as porcentagens de entrada, um índice de setor de zero a cinco para o balde de sessenta graus usado, uma mensagem curta em inglês e um array steps que mostra normalização, croma, atribuição de setor e linhas de escala final para depuração ou ensino. Validação falha—campos ausentes, números não finitos, matiz fora de zero a trezentos e sessenta, valor fora de zero a cem, ou saturação fora de zero a cem—retorna invalid_input e nunca é cobrada. O preço é um US$ 0,002 fixo por requisição bem-sucedida com item unitário e preço marginal unitário zero.
Dicas práticas, limites e buscas relacionadas
Ao escrever testes unitários, cubra pelo menos o vermelho puro em saturação e valor máximos, um azul de setor intermediário como duzentos e dez graus com saturação parcial, um cinza de saturação zero em que só o valor muda o nível de cinza RGB, um preto de valor zero que ignora o matiz, e uma saturação deliberadamente fora de zero a cem para que o caminho invalid_input não regresse. Tarefas falhas que retornam invalid_input não consomem saldo pré-pago, o que mantém baratos scripts exploratórios e validação de formulários enquanto aprendizes colam valores imperfeitos da área de transferência ou testam de propósito os limites de saturação.
Casos de integração
Testes unitários de tema e fixtures de paleta
Gere triplas RGB conhecidas a partir de fixtures HSV para que testes de regressão visual e de tokens de marca afirmem valores de canal estáveis e rejeitem saturação fora da faixa.