WP_Duotone::colord_hsva_to_rgba()private staticWP 6.3.0

Converts an HSVA array to RGBA.

Direct port of colord's hsvaToRgba function.

Method of the class: WP_Duotone{}

No Hooks.

Returns

Array. The RGBA array.

Usage

$result = WP_Duotone::colord_hsva_to_rgba( $hsva );
$hsva(array) (required)
The HSVA array to convert.

Changelog

Since 6.3.0 Introduced.

WP_Duotone::colord_hsva_to_rgba() code WP 6.8.1

private static function colord_hsva_to_rgba( $hsva ) {
	$h = ( $hsva['h'] / 360 ) * 6;
	$s = $hsva['s'] / 100;
	$v = $hsva['v'] / 100;
	$a = $hsva['a'];

	$hh     = floor( $h );
	$b      = $v * ( 1 - $s );
	$c      = $v * ( 1 - ( $h - $hh ) * $s );
	$d      = $v * ( 1 - ( 1 - $h + $hh ) * $s );
	$module = $hh % 6;

	return array(
		'r' => array( $v, $c, $b, $b, $d, $v )[ $module ] * 255,
		'g' => array( $d, $v, $v, $c, $b, $b )[ $module ] * 255,
		'b' => array( $b, $b, $d, $v, $v, $c )[ $module ] * 255,
		'a' => $a,
	);
}