我正在尝试缩放像素的颜色分量。为此,我创建了一个新的像素,其中每个颜色分量是原始值*该颜色的缩放系数。结果像素的值必须在0 <= color <= 255
范围内。
这是我到目前为止所做的事情
public class ColorScale implements Transformer {
/* This part creates a transformer that scales the color in each pixel by the following factors
parameter r0 = red factor
parameter b0 = blue factor
parameter g0 = green factor
*/
public ColorScale(double r0, double g0, double b0) {
// need guidance as what to do here
}
public Pixel transformPixel(pixel p) {
return p;
}
}
更多信息在这里:http://www.seas.upenn.edu/~cis120/current/hw/hw07/javadoc/ColorScale.html
我是Java的新手,因此我只需要指导如何在ColorScale函数中执行操作。
答案 0 :(得分:3)
从您提供的JavaDoc中,ColorScale
是Transformer
实现之一。
从您的代码段:
public ColorScale(double r0, double g0, double b0) {
// need guidance as what to do here
}
这是构造函数。您正在创建instance
Pixel Transformer
的特定实现(在本例中为ColorScale
)。
构造函数应该只设置Transformer
的内部状态,然后它将被设置为通过契约方法transformPixel
转换像素。
换句话说,
public ColorScale(double r0, double g0, double b0) {
// Set internal state fields.
this.r0 = r0;
this.g0 = g0;
this.b0 = b0;
}