HEX naar HSV

HEX Invoer
Voorbeeld
HSV Uitvoer

HEX naar HSV Converter: Een gratis en betrouwbare online tool

Als je op zoek bent naar een gratis en efficiënt hulpmiddel om HEX kleurcodes om te zetten naar hun bijbehorende HSV kleurcodes, ben je hier aan het juiste adres. Onze HEX naar HSV converter is een online tool die nauwkeurige kleurconversie biedt voor jouw webdesign behoeften.

Doel en Scenario

Als webdesigner moet je consistentie behouden in het kleurenschema van jouw website op verschillende platformen. Hoewel HEX kleurcodes veel gebruikt worden in webdesign, is het omzetten ervan naar HSV kleurcodes noodzakelijk voor specifieke functionaliteit. Onze HEX naar HSV converter is een handige tool voor webontwikkelaars die hun HEX kleurcodes willen omzetten naar HSV kleurcodes.

Voordelen en Voordelen

Onze HEX naar HSV converter heeft verschillende voordelen en voordelen die het een waardevol hulpmiddel maken voor webontwikkelaars:

  • Online en Gratis: Onze tool is 100% online en gratis, en je hoeft geen software te downloaden of afhankelijkheden te installeren om het te gebruiken.
  • Gebruiksvriendelijke Interface: Onze tool heeft een intuïtieve en gebruiksvriendelijke interface, waar je gemakkelijk jouw HEX kleurcodes kunt invoeren of plakken, kunt converteren en kleuren kunt kopiëren of gebruiken als voorbeeld.
  • Gegevensbeveiliging: Onze tool draait lokaal op jouw computer, waardoor jouw gegevens veilig zijn.

Kernalgoritme/logica

Het kernalgoritme of de logica om HEX naar HSV om te zetten is gebaseerd op het RGB kleurmodel. Het RGB kleurmodel combineert rood, groen en blauw licht om een breed scala aan kleuren te creëren. Om RGB naar HSV om te zetten, moeten we eerst RGB naar HSL (tint, verzadiging, lichtheid) omzetten en vervolgens HSL naar HSV. De formule voor conversie is als volgt:

r = R/255
g = G/255
b = B/255

cmax = max(r, g, b)
cmin = min(r, g, b)
delta = cmax - cmin

if delta == 0:
h = 0
elif cmax == r:
h = ((g - b) / delta) % 6
elif cmax == g:
h = ((b - r) / delta) + 2
else:
h = ((r - g) / delta) + 4

h = round(h \* 60)

if h < 0:
h += 360

s = round(delta / cmax _ 100)
v = round(cmax _ 100)

return "hsv({}, {}%, {}%)".format(h, s, v)

Hoe de tool te gebruiken

Het gebruik van onze HEX naar HSV converter is eenvoudig. Volg deze eenvoudige stappen:

  1. Voer uw HEX kleurcode in in het invoerveld, zoals deze: #ffd500.
  2. Klik op de "Converteren" knop om uw HEX kleurcode om te zetten naar de bijbehorende HSV kleurcode.
  3. U kunt vervolgens de HSV kleurcode kopiëren of op de "Kopiëren" knop klikken om deze naar uw klembord te kopiëren.

Voorbeelden in Python, C, JavaScript, Java en PHP

Als u een ontwikkelaar bent, kunt u onze HEX naar HSV converter in uw applicatie gebruiken door de volgende code toe te voegen in een van de genoemde programmeertalen:

Python

def hex_to_hsv(hex):
    r, g, b = tuple(int(hex[i:i+2], 16) for i in (0, 2, 4))
    r, g, b = r / 255.0, g / 255.0, b / 255.0
    cmax, cmin = max(r, g, b), min(r, g, b)
    delta = cmax - cmin
    if delta == 0:
        hue = 0
    elif cmax == r:
        hue = ((g - b) / delta) % 6
    elif cmax == g:
        hue = ((b - r) / delta) + 2
    else:
        hue = ((r - g) / delta) + 4
    hue = round(hue * 60)
    if hue < 0:
        hue += 360
    saturation = round(delta / cmax * 100)
    value = round(cmax * 100)
    return "hsv({}, {}%, {}%)".format(hue, saturation, value)

hex_code = "#ffd500"
hsv_code = hex_to_hsv(hex_code)
print("HSV:", hsv_code)

C

#include <stdio.h>
#include <stdlib.h>

void hex_to_hsv(char *hex) {
    int r = strtol(hex, NULL, 16) >> 16;
    int g = strtol(hex, NULL, 16) >> 8 & 0xFF;
    int b = strtol(hex, NULL, 16) & 0xFF;
    float r_f = r / 255.0;
    float g_f = g / 255.0;
    float b_f = b / 255.0;
    float cmax = fmax(r_f, fmax(g_f, b_f));
    float cmin = fmin(r_f, fmin(g_f, b_f));
    float delta = cmax - cmin;
    float hue;
    if (delta == 0) {
        hue = 0;
    } else if (cmax == r_f) {
        hue = fmod((g_f - b_f) / delta, 6);
    } else if (cmax == g_f) {
        hue = ((b_f - r_f) / delta) + 2;
    } else {
        hue = ((r_f - g_f) / delta) + 4;
    }
    hue = round(hue * 60);
    if (hue < 0) {
        hue += 360;
    }
    int saturation = round(delta / cmax * 100);
    int value = round(cmax * 100);
    printf("HSV: %d, %d%%, %d%%", (int)hue, saturation, value);
}

int main() {
    char hex[] = "ffd500";
    hex_to_hsv(hex);
    return 0;
}

JavaScript

function hex_to_hsv(hex) {
  var r = parseInt(hex.substring(0, 2), 16) / 255;
  var g = parseInt(hex.substring(2, 4), 16) / 255;
  var b = parseInt(hex.substring(4, 6), 16) / 255;
  var cmax = Math.max(r, g, b);
  var cmin = Math.min(r, g, b);
  var delta = cmax - cmin;
  var hue;
  if (delta === 0) {
    hue = 0;
  } else if (cmax === r) {
    hue = ((g - b) / delta) % 6;
  } else if (cmax === g) {
    hue = (b - r) / delta + 2;
  } else {
    hue = (r - g) / delta + 4;
  }
  hue = Math.round(hue * 60);
  if (hue < 0) {
    hue += 360;
  }
  var saturation = Math.round((delta / cmax) * 100);
  var value = Math.round(cmax * 100);
  return "hsv(" + hue + ", " + saturation + "%, " + value + "%)";
}

var hex_code = "ffd500";
var hsv_code = hex_to_hsv(hex_code);
console.log("HSV:", hsv_code);

Java

public static String hexToHsv(String hex) {
    int r = Integer.valueOf(hex.substring(0, 2), 16);
    int g = Integer.valueOf(hex.substring(2, 4), 16);
    int b = Integer.valueOf(hex.substring(4, 6), 16);
    float r_f = r / 255f;
    float g_f = g / 255f;
    float b_f = b / 255f;
    float cmax = Math.max(r_f, Math.max(g_f, b_f));
    float cmin = Math.min(r_f, Math.min(g_f, b_f));
    float delta = cmax - cmin;
    float hue;
    if (delta == 0) {
        hue = 0;
    } else if (cmax == r_f) {
        hue = ((g_f - b_f) / delta) % 6;
    } else if (cmax == g_f) {
        hue = ((b_f - r_f) / delta) + 2;
    } else {
        hue = ((r_f - g_f) / delta) + 4;
    }
    hue = Math.round(hue * 60);
    if (hue < 0) {
        hue += 360;
    }
    int saturation = Math.round(delta / cmax * 100);
    int value = Math.round(cmax * 100);
    return "hsv(" + hue + ", " + saturation + "%, " + value + "%)";
}

String hexCode = "ffd500";
String hsvCode = hexToHsv(hexCode);
System.out.println("HSV: " + hsvCode);

PHP

function hex_to_hsv($hex) {
    $r = hexdec(substr($hex, 0, 2)) / 255;
    $g = hexdec(substr($hex, 2, 2)) / 255;
    $b = hexdec(substr($hex, 4, 2)) / 255;
    $cmax = max($r, $g, $b);
    $cmin = min($r, $g, $b);
    $delta = $cmax - $cmin;
    if ($delta == 0) {
        $hue = 0;
    } else if ($cmax == $r) {
        $hue = fmod(($g - $b) / $delta, 6);
    } else if ($cmax == $g) {
        $hue = (($b - $r) / $delta) + 2;
    } else {
        $hue = (($r - $g) / $delta) + 4;
    }
    $hue = round($hue * 60);
    if ($hue < 0) {
        $hue += 360;
    }
    $saturation = round($delta / $cmax * 100);
    $value = round($cmax * 100);
    return "hsv(" . $hue . ", " . $saturation . "%, " . $value . "%)";
}

$hex_code = "ffd500";
$hsv_code = hex_to_hsv($hex_code);
echo "HSV: " . $hsv_code;

Conclusie

Onze HEX naar HSV converter is een betrouwbare tool waarmee u uw HEX kleurcodes kunt omzetten naar hun bijbehorende HSV kleurcodes. Met zijn intuïtieve interface en nauwkeurige kleuromzetting is onze tool perfect voor webontwikkelaars en ontwerpers die consistentie willen behouden in hun kleurenschema op verschillende platforms. Dus waar wacht je nog op? Probeer het nu uit en ervaar zelf de voordelen!

Veelgestelde vragen (FAQ)

Maak kennis met onze andere hulpmiddelen