`
javahead
  • 浏览: 16958 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

HSL对象,用于RGB和HSL转换

阅读更多
public class HSL {

	/** 色调 */
	private float h = 0;
	/** 饱和度 */
	private float s = 0;
	/** 深度 */
	private float l = 0;

	public HSL() {
	}

	public HSL(float h, float s, float l) {
		setH(h);
		setS(s);
		setL(l);
	}

	public float getH() {
		return h;
	}

	public void setH(float h) {
		if (h < 0) {
			this.h = 0;
		} else if (h > 360) {
			this.h = 360;
		} else {
			this.h = h;
		}
	}

	public float getS() {
		return s;
	}

	public void setS(float s) {
		if (s < 0) {
			this.s = 0;
		} else if (s > 255) {
			this.s = 255;
		} else {
			this.s = s;
		}
	}

	public float getL() {
		return l;
	}

	public void setL(float l) {
		if (l < 0) {
			this.l = 0;
		} else if (l > 255) {
			this.l = 255;
		} else {
			this.l = l;
		}
	}

	public String toString() {
		return "HSL {" + h + ", " + s + ", " + l + "}";
	}
2
1
分享到:
评论
2 楼 javahead 2008-12-17  
noshlin 写道

感觉,不咋地!

这是和另一篇RGB和HSL颜色转换算法配合使用的,目前还没有Java的实现,这里采用float类型存储,保证了RGB和HSL两种颜色模式的正确转换。
1 楼 noshlin 2008-12-17  
感觉,不咋地!

相关推荐

    HSL空间转换到RGB空间

    在这个HSL到RGB的转换中,MATLAB的矩阵操作和控制流语句(如`for`循环和条件语句)被用来高效地处理每个像素。`zeros`函数创建了初始化的零矩阵来存储结果,`imread`函数用于读取图像,`size`函数获取矩阵的尺寸,...

    一个HSL和RGB转换的封装

    1. `ColorConverter.cs`:这个文件封装了HSL和RGB之间的转换方法。它可能包含了静态方法,如`HSLtoRGB()`和`RGBtoHSL()`,这些方法接收HSL或RGB的值作为参数,并返回相应的另一种颜色模型的值。这些转换方法通常涉及...

    HSL与RGB相互转换的Demo

    - 在C#中,可以定义两个静态方法,一个用于HSL到RGB的转换,另一个用于RGB到HSL的转换。每个方法内部会包含上述转换过程的具体算法。 - 示例代码可能包括`HslToRgb`和`RgbToHsl`函数,分别接收HSL和RGB的三个分量...

    RGB HSL颜色模式转换

    相反,从HSL转换回RGB则需要反向应用这些公式,确保在各种颜色情况下都能准确地还原原始RGB值。 六滑块的交互界面提供了一种直观的方式来探索和理解RGB与HSL之间的关系。用户可以通过拖动红色、绿色和蓝色滑块来...

    hsl2rgb 与 rgb2hsl matlab源码

    `rgb2hsl.m`文件中则包含了这个转换过程的MATLAB实现,通过计算RGB分量的最大值、最小值和它们的差来确定HSL的各个参数。 总的来说,HSL和RGB模型之间的转换是图像处理和颜色分析中不可或缺的一部分。通过理解这些...

    RGB和HSL色彩空间转换

    `.m`文件是MATLAB编程语言的源代码文件,`rgb2hsl.m`和`hsl2rgb.m`很可能是两个函数,分别实现了RGB到HSL和HSL到RGB的转换算法。MATLAB是一种强大的数学计算和可视化工具,常用于科学计算和工程领域,包括图像处理。...

    STM32 RGB模型和HSL模型的互相转换

    void RGB_to_HSL(/*[in]*/const COLOR_RGB* rgb, /*[out]*/COLOR_HSL* hsl); void HSL_to_RGB(const COLOR_HSL* hsl, COLOR_RGB* rgb);

    rgb_hsl转换

    RGB和HSL是两种颜色空间模型,用于表示和处理图像中的颜色。在图像处理和计算机视觉领域,了解和掌握这两种颜色空间的转换至关重要。本文将详细介绍RGB到HSL以及HSL到RGB的转换过程,并结合MATLAB代码进行解析。 ...

    HSL.rar_HSL RGB_RGB转hsl_hsl_rgb h_rgb hsl

    本文将深入探讨RGB到HSL的转换过程,并提供相关的算法和源码。 RGB颜色模型是一种加性颜色模型,广泛应用于显示器、电视和电脑屏幕等显示设备。它基于三种基本颜色:红色(Red)、绿色(Green)和蓝色(Blue),...

    HSL.rar_CMYK_HSL RGB_rgb hsl

    通常需要先将HSL转换为RGB,然后再将RGB转换为CMYK。这个过程包括将HSL值转化为RGB,再通过比较RGB值与白色(255,255,255)的比例来确定CMYK值。 SDK函数代码可以为开发者提供方便的接口,实现这些颜色空间的快速...

    RGB、HSB、HSL互相转换 源码

    总的来说,理解并掌握RGB、HSB、HSL之间的转换对于进行色彩处理和图像编程至关重要。无论是设计网页、开发图像编辑软件还是进行数据分析,这些颜色模型的转换都是必不可少的工具。通过深入学习和实践,我们可以更好...

    C# RGB与HSV,HSL,HTML颜色相互之前转换

    例如,你可能会有一个RGB输入框,用户输入RGB值后,点击“转换”按钮,程序会将RGB转换为HSV和HSL,并在相应的文本框中显示结果。同时,也可以提供一个HTML颜色输入框,进行HTML到RGB或其他颜色模型的转换。 总之,...

    glsl-hsl2rgb:GLSL 中 HSL 到 RGB 颜色的转换

    GLSL 中的 HSL 到 RGB 颜色转换。 #pragma glslify : hsl2rgb = require(glsl - hsl2rgb) ... // 75deg hue, 50% sat, 25% lightness vec3 rgb = hsl2rgb( 75.0 / 360.0 , 0.5 , 0.25 ); gl_FragColor = vec4 ...

    C#实现HSL颜色值转换为RGB的方法

    本文实例讲述了C#实现HSL颜色值转换为RGB的方法。分享给大家供大家参考。具体实现方法如下: //This method converts the values to RGB public RgbColor HslToRgb(int Hue, int Saturation, int Lightness) { ...

    RGB到HSL颜色空间转换matlab程序代码

    RGB到HSL颜色空间转换是图像处理和计算机视觉领域中常见的色彩模型变换。RGB颜色空间是一种加性颜色模型,常用于数字图像表示,而HSL(色相、饱和度、亮度)颜色空间则更适合人类对颜色的理解。在MATLAB中进行这种...

    RGB空间与HSL空间转换

    MATLAB代码,完成RGB空间与HSL空间的相互转换,验证后正反变换应该都没有错误!

    C# HSL调色板 HSL转RGB

    本篇文章将深入探讨C#中如何实现HSL调色板的计算以及HSL到RGB的转换,同时会提及仿QQ和Windows调色板的实现方法。 首先,HSL色彩模型由三个参数定义:色相(Hue)、饱和度(Saturation)和亮度(Lightness)。色相H...

    RGB空间与HSL空间的相互转换-MATLAB

    在MATLAB中,可以使用`rgb2hsl`函数将RGB颜色转换为HSL颜色,而`hsl2rgb`函数则用于将HSL颜色转换回RGB。这两个函数的工作原理是基于颜色理论和色彩科学的算法,确保了颜色信息的准确传递。 例如,假设我们有一个...

    rgb to hsl(rgb到色调,饱和度,亮度的转化,as3代码)

    6. **HSL到RGB的反向转换**:这涉及到三角函数和一些复杂的代数运算,以将色调、饱和度和亮度重新转换回红色、绿色和蓝色的值。 在AS3代码中,这些步骤通常被封装在函数中,如`rgbToHsl()`和`hslToRgb()`。源文件`...

    ColorSpace.zip_HSL RGB_HSL matlab_RGB LUV_lab MATLAB_rgb hsv y

    例如,可以使用`rgb2hsl`、`hsl2rgb`、`rgb2luv`、`luv2rgb`、`rgb2hsv`、`hsv2rgb`、`rgb2yuv`和`yuv2rgb`等函数进行转换。 这个压缩包"ColorSpace"很可能包含了一系列MATLAB脚本或函数,用户可以通过调用这些脚本...

Global site tag (gtag.js) - Google Analytics