我目前正在用 Python 编写一个调色板生成器。我希望能够输入模式作为参数,以产生特定类型的配色方案。像互补或粉彩等。
我见过像 colorMode(HSB) 与 colorMode(RGB) 这样的函数,其中参数之一是“Mode”。我以前见过很多次,它们通常都是大写字母,IDE 通常以某种方式对它们进行颜色编码。这些模式通常如何存储在函数中?它们用颜色编码是因为它们是某种类吗?或者它们存储为字符串或数字?
抱歉,如果这样的问题已经存在,我只是不知道该使用什么类型的术语来描述这种情况。
最佳答案
其他答案对于一般开发来说是正确的,但是因为您已经用 processing 标记了它,我将解释处理是如何做到的。
Processing(和Processing.py)不为此使用枚举值。它只使用 int
值。
在Java(常规处理)中,只定义了一堆int
变量。发生这种情况here ,但它基本上看起来像这样:
int RGB = 1;
int ARGB = 2;
int HSB = 3;
因此,每当您使用其中一个变量时,您只是引用这些值。
colorMode(HSB);
这与您输入的内容相同:
colorMode(3);
然后在 colorMode()
函数中,Processing 会执行如下操作:
void colorMode(int mode){
if(mode == RGB){
// do something
}
else if(mode == HSB){
// do something else
}
}
我使用 Java 作为示例,因为我对它更加熟悉,但请注意,这在Processing.py 引用 here 中都有解释。 :
mode
int
: Either RGB or HSB, corresponding to Red/Green/Blue and Hue/Saturation/Brightness
请注意,mode
是一个 int
。
如果您正在编写自己的代码,则枚举值可能是最佳选择。但如果您询问 Processing 在内部如何执行此操作,那么他们会使用 int
值。
关于python - 如何编写一个以 "Mode"作为参数的 Python 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49260433/