猫史档案馆


论HSV【或HS Brightness】到RGB的转换--续篇

用户:IysthingraphicsIysthingraphics查看:0 回复:2 评论:0 创建时间:2021-04-12T18:47:17


咳咳

你们还认识我吧

我就是那个发布了第一篇讨论帖子的家伙,那现在还是不说多什么废话了,继续吧

 

前面有说到关于两种颜色格式的转换,如果没看过的我简单介绍一下:

第一种:RGB(红/绿/蓝)——一种适用在所有显示器以及底层语言使用的色彩格式

第二种:HSV(HS/B、色相/饱和/亮度)——一种人类可读的色彩格式,类似于美术课上的色环,鲜艳度及亮度

前面说到的那些公式,咱不要了,咱用了个新的公式来制作示范作品

这次我们主要讨论这次的作品,帖子发布不久后我会投稿出来的:)

 

它是一个颜色Demo,你可以通过左上角的六个键来分别加减RGB值(注意一下编程猫的HSV转RGB可能有点问题)中间有个点点,你可以看到它的变化,别问我为什么不把界面做的好看点,我都已经在函数上面花了一大堆时间了,到时候要做图像处理那就更难了

这次用的公式和上次比较像,但稍微的有不同,这里就不细说了

光是变量部分就使用了15个,积木的量更是占去了至少六分之五的地方,详细的操作我就放在作品上了

给你们一句忠告,千万不要去深入研究这种东西,否则你的发际线会退后至少喵00000000厘米

 

说句题外话

室长跟我说封面都很不好看,但我实在想不出什么办法制作好的封面了,总不能我全部的作品封面都是从那个充满线条的东西里截下来的吧


回复

上一页1 页 / 共 1下一页
IysthingraphicsIysthingraphics

补充一下

这一个色彩转换的bug可能是由于亮度的问题导致的

懒得解释了

直接上代码

r = 128
g = 128
b = 128
h = 0
s = 0
v = 0

import cdm

def CMFX_RGBcHSV(R,G,B)
{
    //当这里有很多东西好了,懒得打这么多
}

CMFX_RGBcHSV(r,g,b)
//我管他画笔函数是什么,干就完了
cdm.paint_hue(h)
cdm.paint_saturation(s)
cdm.paint_brightness( v / 2 + ( 100 - s ) / 2 )
cdm.paint_pendown()
cdm.paint_penup()

print("R:",r,"G:",g,"B:",b,"转换成HSV是",h,",",s,","v")

//;)

点赞0


评论


IysthingraphicsIysthingraphics

#include <iostream>

int main()
{
    cout << ":)\n"
}

点赞0


评论