HSV颜色与RGB颜色对象的互转
来源:互联网 发布:苏州楼市成交数据 编辑:程序博客网 时间:2024/04/28 21:25
做项目的时遇到HSV颜色值需要转化成RGB颜色值的需求,在网上查到了一些方法,但都比较复杂,转化中的损耗有一点点大,所以就想了一个损耗较小的方法,希望对各位有帮助。代码如下: 1.先在 .h 文件中 定义两个结构体,方便传导数据;
2.实现两种颜色互转的函数;
struct HSV { // 色调 CGFloat hu; // 饱和度 CGFloat sa; // 明亮度 CGFloat br; // 透明度 CGFloat al;};typedef struct HSV HSV;struct RGB { // 色调 CGFloat R; // 饱和度 CGFloat G; // 明亮度 CGFloat B; // 透明度 CGFloat al;};typedef struct RGB RGB;
/** 把 RGB 值转化成 HSV色值 @param r R 值 @param g G 值 @param b B 值 @param al 颜色透明度 @return 返回一个 HSV 的结构体 */- (HSV)getHSVColorWithR:(CGFloat)r G:(CGFloat)g B:(CGFloat)b alpha:(CGFloat)al{ UIColor * color = [UIColor colorWithRed:r green:g blue:b alpha:al]; struct HSV hsv; [color getHue:&hsv.hu saturation:&hsv.sa brightness:&hsv.br alpha:&hsv.al]; return hsv;}/** 把 RGB 值转化成 HSV色值 @param color 颜色对象 @return 返回一个 HSV 的结构体 */- (HSV)getHSVColorWithColor:(UIColor *)color{ struct HSV hsv; [color getHue:&hsv.hu saturation:&hsv.sa brightness:&hsv.br alpha:&hsv.al]; return hsv;}/** 把 HSV 色值转换成 RGB 色值 @param hu 色调 @param sa 饱和度 @param br 明亮度 @param al 透明度 @return 返回 RGB 色值 */- (RGB)getRGBColorToHSVWithHue:(CGFloat)hu Sa:(CGFloat)sa Br:(CGFloat)br Al:(CGFloat)al{ UIColor * color = [UIColor colorWithHue:hu saturation:sa brightness:br alpha:al]; struct RGB rgb; [color getRed:&rgb.R green:&rgb.G blue:&rgb.B alpha:&rgb.al]; return rgb;}/** 把 颜色对象 转换成 RGB 色值 @param color 颜色对象 @return 返回 RGB 值 */- (RGB)getRGBColorWithColor:(UIColor *)color{ struct RGB rgb; [color getRed:&rgb.R green:&rgb.G blue:&rgb.B alpha:&rgb.al]; return rgb;}
0 0
- HSV颜色与RGB颜色对象的互转
- HSV,HSL颜色表示与RGB的互转
- HSV与RGB颜色空间的转换
- RGB与HSV颜色空间
- HSV颜色空间 与 RGB 颜色空间的相互转换
- HSV RGB颜色空间互转
- RGB颜色空间和HSV颜色空间以及RGB与Hsv间的相互转换
- 颜色空间RGB与HSV(HSL)的转换
- 颜色空间RGB与HSV(HSL)的转换
- 颜色空间RGB与HSV(HSL)的转换
- ios--OpenCV--RGB与HSV颜色空间的转换
- OpenCV之RGB与HSV颜色空间的转换
- 【OpenCV】颜色空间RGB与HSV(HSL)的转换
- 【OpenCV】颜色空间RGB与HSV(HSL)的转换
- 颜色空间RGB与HSV(HSL)的转换
- 颜色空间RGB与HSV(HSL)的转换
- 颜色空间RGB与HSV(HSL)的转换
- 颜色空间RGB与HSV(HSL)的转换
- (转)centos liveCD liveDVD netinstall minimal DVD1 DVD2 版本区别
- 算法提高 9-3摩尔斯电码
- (15.1.22)Guitar-Music Theory
- hadoop(2.7.1)配置过程问题
- 浅谈 MVP in Android
- HSV颜色与RGB颜色对象的互转
- Intellij idea新建maven web项目并与tomcat服务集成
- 简化extend
- 大的二维数组
- Android之网络图片框架UniversalImageLoader和结合LruCache缓存图片
- 工作第三周:之前的随笔
- 机器学习中的查准率和查全率
- http相关
- hive安装时注意的东西和容易出错的地方
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
历史上的甄嬛与允礼
甄嬛之盛夏玉贵妃
甄嬛是历史上的谁
钮祜禄甄嬛历史原型
端妃知道甄嬛杀了皇上
甄嬛是什么妃
甄嬛什么时候回宫
甄嬛第一个孩子怎么没的
甄嬛第几集回宫
端妃
甄寰传
甄环传全集播放76
沈眉庄
甄环传
甑环传
珍环传
甄环
甄环传全集
真环传
端妃为什么帮甄嬛
安陵容为什么恨甄嬛
甄寰传剧照
甄平
甄欣
甄欣大结局
甄珍
甄珍年轻照片
甄珍回应与谢贤再婚
甄珠
甄珠全文
甄珠全文阅读
甄珠全文在线阅读
甄珠全文免费阅读
甄糕
甄糕的家常做法
甄诚
乡村少年甄诚
甄选
甄选是什么意思
兔头妈妈甄选
甄锡