HSL to RGB color

Here given code implementation process.

// C program 
// HSL to RGB color
#include <stdio.h>

#include <math.h>

// Returns absolute value
double abs_value(double value)
{
	if (value < 0.0)
	{
		return -value;
	}
	else
	{
		return value;
	}
}
int round_value(double num)
{
	if (num < 0)
	{
		return num - 0.5;
	}
	else
	{
		return num + 0.5;
	}
}
// Convert HSL to RGB
void hsv_to_rgb(double h, double s, double l)
{
	if (h < 0 || s < 0 || l < 0)
	{
		return;
	}
	// Display Given data
	printf(" Given HSL ");
	// hue
	printf("\n H = %lf °", h);
	// saturation
	printf("\n S = %lf %% ", s);
	// lightness
	printf("\n L = %lf %% ", l);
	if (s > 100)
	{
		s = 100;
	}
	if (l > 100)
	{
		l = 100;
	}
	if (h > 359)
	{
		h = 100;
	}
	// Define some variables
	double red = 0;
	double green = 0;
	double blue = 0;
	if (s != 0)
	{
		s /= 100.0;
	}
	if (l != 0)
	{
		l /= 100.0;
	}
	// First, we find chroma
	double chroma = s *(1 - abs_value(2 *l - 1));
	double h1 = h / 60.0;
	// find match value
	double m = l - (chroma / 2);
	//intermediate value X for the second largest component of color
	double x = chroma *(1.0 - abs_value(fmod(h1, 2) - 1.0));
	if (h1 >= 0.0 && h1 <= 1.0)
	{
		green = x;
		red = chroma;
	}
	else if (h1 >= 1.0 && h1 <= 1.0)
	{
		red = x;
		green = chroma;
	}
	else if (h1 >= 2.0 && h1 < 3.0)
	{
		blue = x;
		green = chroma;
	}
	else if (h1 >= 3.0 && h1 < 4.0)
	{
		green = x;
		blue = chroma;
	}
	else if (h1 >= 4.0 && h1 < 5.0)
	{
		red = x;
		blue = chroma;
	}
	else
	{
		blue = x;
		red = chroma;
	}
	// Adding the same amount to each component (m)
	red += m;
	green += m;
	blue += m;
	// Multiply by 255
	red *= 255.0;
	green *= 255.0;
	blue *= 255.0;
	// Get the actual result values
	int r = round_value(red);
	int g = round_value(green);
	int b = round_value(blue);
	// Display Calculate results
	printf("\n Calculate  RGB");
	printf("\n R = %d ", r);
	printf("\n G = %d ", g);
	printf("\n B = %d \n\n", b);
}
int main()
{
	// Test Cases
	hsv_to_rgb(34, 64, 13);
	hsv_to_rgb(56, 64.64, 43.24);
	return 0;
}

Output

 Given HSL
 H = 34.000000 °
 S = 64.000000 %
 L = 13.000000 %
 Calculate  RGB
 R = 54
 G = 36
 B = 12

 Given HSL
 H = 56.000000 °
 S = 64.640000 %
 L = 43.240000 %
 Calculate  RGB
 R = 182
 G = 172
 B = 39
/*
  Java Program
  CMYK to RGB color
*/
public class ColorConversion
{
	// Returns absolute value
	public double abs_value(double value)
	{
		if (value < 0.0)
		{
			return -value;
		}
		else
		{
			return value;
		}
	}
	public int round_value(double num)
	{
		if (num < 0)
		{
			return (int)(num - 0.5);
		}
		else
		{
			return (int)(num + 0.5);
		}
	}
	// Convert HSL to RGB
	public void hsv_to_rgb(double h, double s, double l)
	{
		if (h < 0 || s < 0 || l < 0)
		{
			return;
		}
		// Display Given data
		System.out.print(" Given HSL ");
		// hue
		System.out.print("\n H = " + h + " °");
		// saturation
		System.out.print("\n S = " + s + " % ");
		// lightness
		System.out.print("\n L = " + l + " % ");
		if (s > 100)
		{
			s = 100;
		}
		if (l > 100)
		{
			l = 100;
		}
		if (h > 359)
		{
			h = 100;
		}
		// Define some variables
		double red = 0;
		double green = 0;
		double blue = 0;
		if (s != 0)
		{
			s /= 100.0;
		}
		if (l != 0)
		{
			l /= 100.0;
		}
		// First, we find chroma
		double chroma = s * (1 - abs_value(2 * l - 1));
		double h1 = h / 60.0;
		// find match value
		double m = l - (chroma / 2);
		//intermediate value X for the second largest component of color
		double x = chroma * (1.0 - abs_value((h1 % 2) - 1.0));
		if (h1 >= 0.0 && h1 <= 1.0)
		{
			green = x;
			red = chroma;
		}
		else if (h1 >= 1.0 && h1 <= 1.0)
		{
			red = x;
			green = chroma;
		}
		else if (h1 >= 2.0 && h1 < 3.0)
		{
			blue = x;
			green = chroma;
		}
		else if (h1 >= 3.0 && h1 < 4.0)
		{
			green = x;
			blue = chroma;
		}
		else if (h1 >= 4.0 && h1 < 5.0)
		{
			red = x;
			blue = chroma;
		}
		else
		{
			blue = x;
			red = chroma;
		}
		// Adding the same amount to each component (m)
		red += m;
		green += m;
		blue += m;
		// Multiply by 255
		red *= 255.0;
		green *= 255.0;
		blue *= 255.0;
		// Get the actual result values
		int r = round_value(red);
		int g = round_value(green);
		int b = round_value(blue);
		// Display Calculate results
		System.out.print("\n Calculate RGB");
		System.out.print("\n R = " + r );
		System.out.print("\n G = " + g );
		System.out.print("\n B = " + b + " \n\n");
	}
	public static void main(String[] args)
	{
		ColorConversion color = new ColorConversion();
		// Test Case
		color.hsv_to_rgb(34, 64, 13);
		color.hsv_to_rgb(56, 64.64, 43.24);
	}
}

Output

 Given HSL
 H = 34.0 °
 S = 64.0 %
 L = 13.0 %
 Calculate RGB
 R = 54
 G = 36
 B = 12

 Given HSL
 H = 56.0 °
 S = 64.64 %
 L = 43.24 %
 Calculate RGB
 R = 182
 G = 172
 B = 39
// Include header file
#include <iostream>
#include <math.h>
using namespace std;

/*
  C++ Program
  CMYK to RGB color
*/
class ColorConversion
{
	public:
		// Returns absolute value
		double abs_value(double value)
		{
			if (value < 0.0)
			{
				return -value;
			}
			else
			{
				return value;
			}
		}
	int round_value(double num)
	{
		if (num < 0)
		{
			return (int)(num - 0.5);
		}
		else
		{
			return (int)(num + 0.5);
		}
	}
	// Convert HSL to RGB
	void hsv_to_rgb(double h, double s, double l)
	{
		if (h < 0 || s < 0 || l < 0)
		{
			return;
		}
		// Display Given data
		cout << " Given HSL ";
		// hue
		cout << "\n H = " << h << " °";
		// saturation
		cout << "\n S = " << s << " % ";
		// lightness
		cout << "\n L = " << l << " % ";
		if (s > 100)
		{
			s = 100;
		}
		if (l > 100)
		{
			l = 100;
		}
		if (h > 359)
		{
			h = 100;
		}
		// Define some variables
		double red = 0;
		double green = 0;
		double blue = 0;
		if (s != 0)
		{
			s /= 100.0;
		}
		if (l != 0)
		{
			l /= 100.0;
		}
		// First, we find chroma
		double chroma = s *(1 - this->abs_value(2 *l - 1));
		double h1 = h / 60.0;
		// find match value
		double m = l - (chroma / 2);
		//intermediate value X for the second largest component of color
		double x = chroma *(1.0 - this->abs_value(fmod(h1 , 2) - 1.0));
		if (h1 >= 0.0 && h1 <= 1.0)
		{
			green = x;
			red = chroma;
		}
		else if (h1 >= 1.0 && h1 <= 1.0)
		{
			red = x;
			green = chroma;
		}
		else if (h1 >= 2.0 && h1 < 3.0)
		{
			blue = x;
			green = chroma;
		}
		else if (h1 >= 3.0 && h1 < 4.0)
		{
			green = x;
			blue = chroma;
		}
		else if (h1 >= 4.0 && h1 < 5.0)
		{
			red = x;
			blue = chroma;
		}
		else
		{
			blue = x;
			red = chroma;
		}
		// Adding the same amount to each component (m)
		red += m;
		green += m;
		blue += m;
		// Multiply by 255
		red *= 255.0;
		green *= 255.0;
		blue *= 255.0;
		// Get the actual result values
		int r = this->round_value(red);
		int g = this->round_value(green);
		int b = this->round_value(blue);
		// Display Calculate results
		cout << "\n Calculate RGB";
		cout << "\n R = " << r;
		cout << "\n G = " << g;
		cout << "\n B = " << b << " \n\n";
	}
};
int main()
{
	ColorConversion color = ColorConversion();
	// Test Case
	color.hsv_to_rgb(34, 64, 13);
	color.hsv_to_rgb(56, 64.64, 43.24);
	return 0;
}

Output

 Given HSL
 H = 34 °
 S = 64 %
 L = 13 %
 Calculate RGB
 R = 54
 G = 36
 B = 12

 Given HSL
 H = 56 °
 S = 64.64 %
 L = 43.24 %
 Calculate RGB
 R = 182
 G = 172
 B = 39
// Include namespace system
using System;
/*
  C# Program
  CMYK to RGB color
*/
public class ColorConversion
{
	// Returns absolute value
	public double abs_value(double value)
	{
		if (value < 0.0)
		{
			return -value;
		}
		else
		{
			return value;
		}
	}
	public int round_value(double num)
	{
		if (num < 0)
		{
			return (int)(num - 0.5);
		}
		else
		{
			return (int)(num + 0.5);
		}
	}
	// Convert HSL to RGB
	public void hsv_to_rgb(double h, double s, double l)
	{
		if (h < 0 || s < 0 || l < 0)
		{
			return;
		}
		// Display Given data
		Console.Write(" Given HSL ");
		// hue
		Console.Write("\n H = " + h + " °");
		// saturation
		Console.Write("\n S = " + s + " % ");
		// lightness
		Console.Write("\n L = " + l + " % ");
		if (s > 100)
		{
			s = 100;
		}
		if (l > 100)
		{
			l = 100;
		}
		if (h > 359)
		{
			h = 100;
		}
		// Define some variables
		double red = 0;
		double green = 0;
		double blue = 0;
		if (s != 0)
		{
			s /= 100.0;
		}
		if (l != 0)
		{
			l /= 100.0;
		}
		// First, we find chroma
		double chroma = s * (1 - abs_value(2 * l - 1));
		double h1 = h / 60.0;
		// find match value
		double m = l - (chroma / 2);
		//intermediate value X for the second largest component of color
		double x = chroma * (1.0 - abs_value((h1 % 2) - 1.0));
		if (h1 >= 0.0 && h1 <= 1.0)
		{
			green = x;
			red = chroma;
		}
		else if (h1 >= 1.0 && h1 <= 1.0)
		{
			red = x;
			green = chroma;
		}
		else if (h1 >= 2.0 && h1 < 3.0)
		{
			blue = x;
			green = chroma;
		}
		else if (h1 >= 3.0 && h1 < 4.0)
		{
			green = x;
			blue = chroma;
		}
		else if (h1 >= 4.0 && h1 < 5.0)
		{
			red = x;
			blue = chroma;
		}
		else
		{
			blue = x;
			red = chroma;
		}
		// Adding the same amount to each component (m)
		red += m;
		green += m;
		blue += m;
		// Multiply by 255
		red *= 255.0;
		green *= 255.0;
		blue *= 255.0;
		// Get the actual result values
		int r = round_value(red);
		int g = round_value(green);
		int b = round_value(blue);
		// Display Calculate results
		Console.Write("\n Calculate RGB");
		Console.Write("\n R = " + r);
		Console.Write("\n G = " + g);
		Console.Write("\n B = " + b + " \n\n");
	}
	public static void Main(String[] args)
	{
		ColorConversion color = new ColorConversion();
		// Test Case
		color.hsv_to_rgb(34, 64, 13);
		color.hsv_to_rgb(56, 64.64, 43.24);
	}
}

Output

 Given HSL
 H = 34 °
 S = 64 %
 L = 13 %
 Calculate RGB
 R = 54
 G = 36
 B = 12

 Given HSL
 H = 56 °
 S = 64.64 %
 L = 43.24 %
 Calculate RGB
 R = 182
 G = 172
 B = 39
<?php
/*
  Php Program
  CMYK to RGB color
*/
class ColorConversion
{
	// Returns absolute value
	public	function abs_value($value)
	{
		if ($value < 0.0)
		{
			return -$value;
		}
		else
		{
			return $value;
		}
	}
	public	function round_value($num)
	{
		if ($num < 0)
		{
			return (int)($num - 0.5);
		}
		else
		{
			return (int)($num + 0.5);
		}
	}
	// Convert HSL to RGB
	public	function hsv_to_rgb($h, $s, $l)
	{
		if ($h < 0 || $s < 0 || $l < 0)
		{
			return;
		}
		// Display Given data
		echo " Given HSL ";
		// hue
		echo "\n H = ". $h ." °";
		// saturation
		echo "\n S = ". $s ." % ";
		// lightness
		echo "\n L = ". $l ." % ";
		if ($s > 100)
		{
			$s = 100;
		}
		if ($l > 100)
		{
			$l = 100;
		}
		if ($h > 359)
		{
			$h = 100;
		}
		// Define some variables
		$red = 0;
		$green = 0;
		$blue = 0;
		if ($s != 0)
		{
			$s = ($s / 100.0);
		}
		if ($l != 0)
		{
			$l = ($l / 100.0);
		}
		// First, we find chroma
		$chroma = $s * (1 - $this->abs_value(2 * $l - 1));
		$h1 = ($h / 60.0);
		// find match value
		$m = $l - (($chroma / 2));
		//intermediate value X for the second largest component of color
		$x = $chroma * (1.0 - $this->abs_value(fmod($h1 , 2) - 1.0));
		if ($h1 >= 0.0 && $h1 <= 1.0)
		{
			$green = $x;
			$red = $chroma;
		}
		else if ($h1 >= 1.0 && $h1 <= 1.0)
		{
			$red = $x;
			$green = $chroma;
		}
		else if ($h1 >= 2.0 && $h1 < 3.0)
		{
			$blue = $x;
			$green = $chroma;
		}
		else if ($h1 >= 3.0 && $h1 < 4.0)
		{
			$green = $x;
			$blue = $chroma;
		}
		else if ($h1 >= 4.0 && $h1 < 5.0)
		{
			$red = $x;
			$blue = $chroma;
		}
		else
		{
			$blue = $x;
			$red = $chroma;
		}
		// Adding the same amount to each component (m)
		$red += $m;
		$green += $m;
		$blue += $m;
		// Multiply by 255
		$red *= 255.0;
		$green *= 255.0;
		$blue *= 255.0;
		// Get the actual result values
		$r = $this->round_value($red);
		$g = $this->round_value($green);
		$b = $this->round_value($blue);
		// Display Calculate results
		echo "\n Calculate RGB";
		echo "\n R = ". $r;
		echo "\n G = ". $g;
		echo "\n B = ". $b ." \n\n";
	}
}

function main()
{
	$color = new ColorConversion();
	// Test Case
	$color->hsv_to_rgb(34, 64, 13);
	$color->hsv_to_rgb(56, 64.64, 43.24);
}
main();

Output

 Given HSL
 H = 34 °
 S = 64 %
 L = 13 %
 Calculate RGB
 R = 54
 G = 36
 B = 12

 Given HSL
 H = 56 °
 S = 64.64 %
 L = 43.24 %
 Calculate RGB
 R = 182
 G = 172
 B = 39
/*
  Node Js Program
  CMYK to RGB color
*/
class ColorConversion
{
	// Returns absolute value
	abs_value(value)
	{
		if (value < 0.0)
		{
			return -value;
		}
		else
		{
			return value;
		}
	}
	round_value(num)
	{
		if (num < 0)
		{
			return parseInt((num - 0.5));
		}
		else
		{
			return parseInt((num + 0.5));
		}
	}
	// Convert HSL to RGB
	hsv_to_rgb(h, s, l)
	{
		if (h < 0 || s < 0 || l < 0)
		{
			return;
		}
		// Display Given data
		process.stdout.write(" Given HSL ");
		// hue
		process.stdout.write("\n H = " + h + " °");
		// saturation
		process.stdout.write("\n S = " + s + " % ");
		// lightness
		process.stdout.write("\n L = " + l + " % ");
		if (s > 100)
		{
			s = 100;
		}
		if (l > 100)
		{
			l = 100;
		}
		if (h > 359)
		{
			h = 100;
		}
		// Define some variables
		var red = 0;
		var green = 0;
		var blue = 0;
		if (s != 0)
		{
			s = (s / 100.0);
		}
		if (l != 0)
		{
			l = (l / 100.0);
		}
		// First, we find chroma
		var chroma = s * (1 - this.abs_value(2 * l - 1));
		var h1 = (h / 60.0);
		// find match value
		var m = l - ((chroma / 2));
		//intermediate value X for the second largest component of color
		var x = chroma * (1.0 - this.abs_value((h1 % 2) - 1.0));
		if (h1 >= 0.0 && h1 <= 1.0)
		{
			green = x;
			red = chroma;
		}
		else if (h1 >= 1.0 && h1 <= 1.0)
		{
			red = x;
			green = chroma;
		}
		else if (h1 >= 2.0 && h1 < 3.0)
		{
			blue = x;
			green = chroma;
		}
		else if (h1 >= 3.0 && h1 < 4.0)
		{
			green = x;
			blue = chroma;
		}
		else if (h1 >= 4.0 && h1 < 5.0)
		{
			red = x;
			blue = chroma;
		}
		else
		{
			blue = x;
			red = chroma;
		}
		// Adding the same amount to each component (m)
		red += m;
		green += m;
		blue += m;
		// Multiply by 255
		red *= 255.0;
		green *= 255.0;
		blue *= 255.0;
		// Get the actual result values
		var r = this.round_value(red);
		var g = this.round_value(green);
		var b = this.round_value(blue);
		// Display Calculate results
		process.stdout.write("\n Calculate RGB");
		process.stdout.write("\n R = " + r);
		process.stdout.write("\n G = " + g);
		process.stdout.write("\n B = " + b + " \n\n");
	}
}

function main()
{
	var color = new ColorConversion();
	// Test Case
	color.hsv_to_rgb(34, 64, 13);
	color.hsv_to_rgb(56, 64.64, 43.24);
}
main();

Output

 Given HSL
 H = 34 °
 S = 64 %
 L = 13 %
 Calculate RGB
 R = 54
 G = 36
 B = 12

 Given HSL
 H = 56 °
 S = 64.64 %
 L = 43.24 %
 Calculate RGB
 R = 182
 G = 172
 B = 39
#   Python 3 Program
#   CMYK to RGB color

class ColorConversion :
	#  Returns absolute value
	def abs_value(self, value) :
		if (value < 0.0) :
			return -value
		else :
			return value
		
	
	def round_value(self, num) :
		if (num < 0) :
			return int((num - 0.5))
		else :
			return int((num + 0.5))
		
	
	#  Convert HSL to RGB
	def hsv_to_rgb(self, h, s, l) :
		if (h < 0 or s < 0 or l < 0) :
			return
		
		#  Display Given data
		print(" Given HSL ", end = "")
		#  hue
		print("\n H = ", h ," °", end = "")
		#  saturation
		print("\n S = ", s ," % ", end = "")
		#  lightness
		print("\n L = ", l ," % ", end = "")
		if (s > 100) :
			s = 100
		
		if (l > 100) :
			l = 100
		
		if (h > 359) :
			h = 100
		
		#  Define some variables
		red = 0
		green = 0
		blue = 0
		if (s != 0) :
			s = (s / 100.0)
		
		if (l != 0) :
			l = (l / 100.0)
		
		#  First, we find chroma
		chroma = s * (1 - self.abs_value(2 * l - 1))
		h1 = (h / 60.0)
		#  find match value
		m = l - ((chroma / 2))
		# intermediate value X for the second largest component of color
		x = chroma * (1.0 - self.abs_value((h1 % 2) - 1.0))
		if (h1 >= 0.0 and h1 <= 1.0) :
			green = x
			red = chroma
		
		elif(h1 >= 1.0 and h1 <= 1.0) :
			red = x
			green = chroma
		
		elif(h1 >= 2.0 and h1 < 3.0) :
			blue = x
			green = chroma
		
		elif(h1 >= 3.0 and h1 < 4.0) :
			green = x
			blue = chroma
		
		elif(h1 >= 4.0 and h1 < 5.0) :
			red = x
			blue = chroma
		else :
			blue = x
			red = chroma
		
		#  Adding the same amount to each component (m)
		red += m
		green += m
		blue += m
		#  Multiply by 255
		red *= 255.0
		green *= 255.0
		blue *= 255.0
		#  Get the actual result values
		r = self.round_value(red)
		g = self.round_value(green)
		b = self.round_value(blue)
		#  Display Calculate results
		print("\n Calculate RGB", end = "")
		print("\n R = ", r, end = "")
		print("\n G = ", g, end = "")
		print("\n B = ", b ," \n")
	

def main() :
	color = ColorConversion()
	#  Test Case
	color.hsv_to_rgb(34, 64, 13)
	color.hsv_to_rgb(56, 64.64, 43.24)

if __name__ == "__main__": main()

Output

 Given HSL
 H =  34  °
 S =  64  %
 L =  13  %
 Calculate RGB
 R =  54
 G =  36
 B =  12

 Given HSL
 H =  56  °
 S =  64.64  %
 L =  43.24  %
 Calculate RGB
 R =  182
 G =  172
 B =  39
#   Ruby Program
#   CMYK to RGB color

class ColorConversion 
	#  Returns absolute value
	def abs_value(value) 
		if (value < 0.0) 
			return -value
		else 
			return value
		end

	end

	def round_value(num) 
		if (num < 0) 
			return ((num - 0.5)).to_i
		else 
			return ((num + 0.5)).to_i
		end

	end

	#  Convert HSL to RGB
	def hsv_to_rgb(h, s, l) 
		if (h < 0 || s < 0 || l < 0) 
			return
		end

		#  Display Given data
		print(" Given HSL ")
		#  hue
		print("\n H = ", h ," °")
		#  saturation
		print("\n S = ", s ," % ")
		#  lightness
		print("\n L = ", l ," % ")
		if (s > 100) 
			s = 100
		end

		if (l > 100) 
			l = 100
		end

		if (h > 359) 
			h = 100
		end

		#  Define some variables
		red = 0
		green = 0
		blue = 0
		if (s != 0) 
			s /= 100.0
		end

		if (l != 0) 
			l /= 100.0
		end

		#  First, we find chroma
		chroma = s * (1 - self.abs_value(2 * l - 1))
		h1 = h / 60.0
		#  find match value
		m = l - (chroma / 2)
		# intermediate value X for the second largest component of color
		x = chroma * (1.0 - self.abs_value((h1 % 2) - 1.0))
		if (h1 >= 0.0 && h1 <= 1.0) 
			green = x
			red = chroma
		elsif(h1 >= 1.0 && h1 <= 1.0) 
			red = x
			green = chroma
		elsif(h1 >= 2.0 && h1 < 3.0) 
			blue = x
			green = chroma
		elsif(h1 >= 3.0 && h1 < 4.0) 
			green = x
			blue = chroma
		elsif(h1 >= 4.0 && h1 < 5.0) 
			red = x
			blue = chroma
		else 
			blue = x
			red = chroma
		end

		#  Adding the same amount to each component (m)
		red += m
		green += m
		blue += m
		#  Multiply by 255
		red *= 255.0
		green *= 255.0
		blue *= 255.0
		#  Get the actual result values
		r = self.round_value(red)
		g = self.round_value(green)
		b = self.round_value(blue)
		#  Display Calculate results
		print("\n Calculate RGB")
		print("\n R = ", r)
		print("\n G = ", g)
		print("\n B = ", b ," \n\n")
	end

end

def main() 
	color = ColorConversion.new()
	#  Test Case
	color.hsv_to_rgb(34, 64, 13)
	color.hsv_to_rgb(56, 64.64, 43.24)
end

main()

Output

 Given HSL 
 H = 34 °
 S = 64 % 
 L = 13 % 
 Calculate RGB
 R = 54
 G = 36
 B = 12 

 Given HSL 
 H = 56 °
 S = 64.64 % 
 L = 43.24 % 
 Calculate RGB
 R = 182
 G = 172
 B = 39 

/*
  Scala Program
  CMYK to RGB color
*/
class ColorConversion
{
	// Returns absolute value
	def abs_value(value: Double): Double = {
		if (value < 0.0)
		{
			return -value;
		}
		else
		{
			return value;
		}
	}
	def round_value(num: Double): Int = {
		if (num < 0)
		{
			return ((num - 0.5)).toInt;
		}
		else
		{
			return ((num + 0.5)).toInt;
		}
	}
	// Convert HSL to RGB
	def hsv_to_rgb(hue: Double, saturation: Double, lightness: Double): Unit = {
		if (hue < 0 || saturation < 0 || lightness < 0)
		{
			return;
		}
		// Display Given data
		print(" Given HSL ");
		// hue
		print("\n H = " + hue + " °");
		// saturation
		print("\n S = " + saturation + " % ");
		// lightness
		print("\n L = " + lightness + " % ");
		var s = saturation;
		var l = lightness;
		var h = hue;
		if (s > 100.0)
		{
			s = 100.0;
		}
		if (l > 100)
		{
			l = 100.0;
		}
		if (h > 359)
		{
			h = 100.0;
		}
		// Define some variables
		var red: Double = 0;
		var green: Double = 0;
		var blue: Double = 0;
		if (s != 0)
		{
			s = (s / 100.0);
		}
		if (l != 0)
		{
			l = (l / 100.0);
		}
		// First, we find chroma
		var chroma: Double = s * (1 - this.abs_value(2 * l - 1));
		var h1: Double = (h / 60.0);
		// find match value
		var m: Double = l - (chroma / 2);
		//intermediate value X for the second largest component of color
		var x: Double = chroma * (1.0 - this.abs_value((h1 % 2) - 1.0));
		if (h1 >= 0.0 && h1 <= 1.0)
		{
			green = x;
			red = chroma;
		}
		else if (h1 >= 1.0 && h1 <= 1.0)
		{
			red = x;
			green = chroma;
		}
		else if (h1 >= 2.0 && h1 < 3.0)
		{
			blue = x;
			green = chroma;
		}
		else if (h1 >= 3.0 && h1 < 4.0)
		{
			green = x;
			blue = chroma;
		}
		else if (h1 >= 4.0 && h1 < 5.0)
		{
			red = x;
			blue = chroma;
		}
		else
		{
			blue = x;
			red = chroma;
		}
		// Adding the same amount to each component (m)
		red += m;
		green += m;
		blue += m;
		// Multiply by 255
		red *= 255.0;
		green *= 255.0;
		blue *= 255.0;
		// Get the actual result values
		var r: Int = this.round_value(red);
		var g: Int = this.round_value(green);
		var b: Int = this.round_value(blue);
		// Display Calculate results
		print("\n Calculate RGB");
		print("\n R = " + r);
		print("\n G = " + g);
		print("\n B = " + b + " \n\n");
	}
}
object Main
{
	def main(args: Array[String]): Unit = {
		var color: ColorConversion = new ColorConversion();
		// Test Case
		color.hsv_to_rgb(34, 64, 13);
		color.hsv_to_rgb(56, 64.64, 43.24);
	}
}

Output

 Given HSL
 H = 34.0 °
 S = 64.0 %
 L = 13.0 %
 Calculate RGB
 R = 54
 G = 36
 B = 12

 Given HSL
 H = 56.0 °
 S = 64.64 %
 L = 43.24 %
 Calculate RGB
 R = 182
 G = 172
 B = 39
/*
  Swift 4 Program
  CMYK to RGB color
*/
class ColorConversion
{
	// Returns absolute value
	func abs_value(_ value: Double)->Double
	{
		if (value < 0.0)
		{
			return -value;
		}
		else
		{
			return value;
		}
	}
	func round_value(_ num: Double)->Int
	{
		if (num < 0)
		{
			return Int(num - 0.5);
		}
		else
		{
			return Int(num + 0.5);
		}
	}
	// Convert HSL to RGB
	func hsv_to_rgb(_ hue: Double, _ saturation: Double, _ lightness: Double)
	{
		var s = saturation;
		var l = lightness;
		var h = hue;
		if (h < 0 || s < 0 || l < 0)
		{
			return;
		}
		// Display Given data
		print(" Given HSL ", terminator: "");
		// hue
		print("\n H = ", h, " °", terminator: "");
		// saturation
		print("\n S = ", s, " % ", terminator: "");
		// lightness
		print("\n L = ", l, " % ", terminator: "");
		if (s > 100)
		{
			s = 100;
		}
		if (l > 100)
		{
			l = 100;
		}
		if (h > 359)
		{
			h = 100;
		}
		// Define some variables
		var red: Double = 0;
		var green: Double = 0;
		var blue: Double = 0;
		if (s != 0)
		{
			s /= 100.0;
		}
		if (l != 0)
		{
			l /= 100.0;
		}
		// First, we find chroma
		let chroma: Double = s * (1 - self.abs_value(2 * l - 1));
		let h1: Double = h / 60.0;
		// find match value
		let m: Double = l - (chroma / 2);
		//intermediate value X for the second largest component of color
		let x: Double = chroma * (1.0 - self.abs_value((h1.truncatingRemainder(dividingBy: 2)) - 1.0));
		if (h1 >= 0.0 && h1 <= 1.0)
		{
			green = x;
			red = chroma;
		}
		else if (h1 >= 1.0 && h1 <= 1.0)
		{
			red = x;
			green = chroma;
		}
		else if (h1 >= 2.0 && h1 < 3.0)
		{
			blue = x;
			green = chroma;
		}
		else if (h1 >= 3.0 && h1 < 4.0)
		{
			green = x;
			blue = chroma;
		}
		else if (h1 >= 4.0 && h1 < 5.0)
		{
			red = x;
			blue = chroma;
		}
		else
		{
			blue = x;
			red = chroma;
		}
		// Adding the same amount to each component (m)
		red += m;
		green += m;
		blue += m;
		// Multiply by 255
		red *= 255.0;
		green *= 255.0;
		blue *= 255.0;
		// Get the actual result values
		let r: Int = self.round_value(red);
		let g: Int = self.round_value(green);
		let b: Int = self.round_value(blue);
		// Display Calculate results
		print("\n Calculate RGB", terminator: "");
		print("\n R = ", r, terminator: "");
		print("\n G = ", g, terminator: "");
		print("\n B = ", b, " \n");
	}
}
func main()
{
	let color: ColorConversion = ColorConversion();
	// Test Case
	color.hsv_to_rgb(34, 64, 13);
	color.hsv_to_rgb(56, 64.64, 43.24);
}
main();

Output

 Given HSL
 H =  34.0  °
 S =  64.0  %
 L =  13.0  %
 Calculate RGB
 R =  54
 G =  36
 B =  12

 Given HSL
 H =  56.0  °
 S =  64.64  %
 L =  43.24  %
 Calculate RGB
 R =  182
 G =  172
 B =  39
/*
  Kotlin Program
  CMYK to RGB color
*/
class ColorConversion
{
	// Returns absolute value
	fun abs_value(value: Double): Double
	{
		if (value<0.0)
		{
			return -value;
		}
		else
		{
			return value;
		}
	}
	fun round_value(num: Double): Int
	{
		if (num<0.0)
		{
			return (num - 0.5).toInt();
		}
		else
		{
			return (num + 0.5).toInt();
		}
	}
	// Convert HSL to RGB
	fun hsv_to_rgb(hue: Any, saturation: Any, lightness: Any): Unit
	{
      	var s: Double = saturation.toString().toDouble();
      	var l: Double = lightness.toString().toDouble();
      	var h: Double = hue.toString().toDouble();
      	if (h<0.0 || s<0.0 || l<0.0)
		{
			return;
		}
		// Display Given data
		print(" Given HSL ");
		// hue
		print("\n H = " + h + " °");
		// saturation
		print("\n S = " + s + " % ");
		// lightness
		print("\n L = " + l + " % ");
		if (s>100.0)
		{
			s = 100.0;
		}
		if (l>100.0)
		{
			l = 100.0;
		}
		if (h > 359.0)
		{
			h = 100.0;
		}
		// Define some variables
		var red: Double = 0.0;
		var green: Double = 0.0;
		var blue: Double = 0.0;
		if (s != 0.0)
		{
			s /= 100.0;
		}
		if (l != 0.0)
		{
			l /= 100.0;
		}
		// First, we find chroma
		var chroma: Double = s * (1 - this.abs_value(2 * l - 1));
		var h1: Double = h / 60.0;
		// find match value
		var m: Double = l - (chroma / 2);
		//intermediate value X for the second largest component of color
		var x: Double = chroma * (1.0 - this.abs_value((h1 % 2) - 1.0));
		if (h1>= 0.0 && h1 <= 1.0)
		{
			green = x;
			red = chroma;
		}
		else
		if (h1>= 1.0 && h1 <= 1.0)
		{
			red = x;
			green = chroma;
		}
		else
		if (h1>= 2.0 && h1<3.0)
		{
			blue = x;
			green = chroma;
		}
		else
		if (h1>= 3.0 && h1<4.0)
		{
			green = x;
			blue = chroma;
		}
		else
		if (h1>= 4.0 && h1<5.0)
		{
			red = x;
			blue = chroma;
		}
		else
		{
			blue = x;
			red = chroma;
		}
		// Adding the same amount to each component (m)
		red += m;
		green += m;
		blue += m;
		// Multiply by 255
		red *= 255.0;
		green *= 255.0;
		blue *= 255.0;
		// Get the actual result values
		var r: Int = this.round_value(red);
		var g: Int = this.round_value(green);
		var b: Int = this.round_value(blue);
		// Display Calculate results
		print("\n Calculate RGB");
		print("\n R = " + r);
		print("\n G = " + g);
		print("\n B = " + b + " \n\n");
	}
}
fun main(args: Array<String>): Unit
{
	var color: ColorConversion = ColorConversion();
	// Test Case
	color.hsv_to_rgb(34, 64, 13);
	color.hsv_to_rgb(56, 64.64, 43.24);
}

Output

 Given HSL
 H = 34.0 °
 S = 64.0 %
 L = 13.0 %
 Calculate RGB
 R = 54
 G = 36
 B = 12

 Given HSL
 H = 56.0 °
 S = 64.64 %
 L = 43.24 %
 Calculate RGB
 R = 182
 G = 172
 B = 39


Please share your knowledge to improve code and content standard. Also submit your doubts, and test case. We improve by your feedback. We will try to resolve your query as soon as possible.

New Comment







© 2021, kalkicode.com, All rights reserved