1

我正在尝试缩放像素的颜色分量。为此,我正在创建一个新像素,其中每个颜色分量都是原始值 * 该颜色的缩放因子。结果像素的值必须在 范围内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 函数中做什么的指导。

4

1 回答 1

3

从您提供的 JavaDoc 中,ColorScaleTransformer实现之一。

从您的代码段:

public ColorScale(double r0, double g0, double b0) {
   // need guidance as what to do here
}

这是构造函数。您正在创建instance一个 Pixel 的特定实现Transformer(在本例中为ColorScale)。

构造函数应该简单地设置 的内部状态Transformer,然后通过 contract 方法设置它来转换像素transformPixel

换句话说,

public ColorScale(double r0, double g0, double b0) {
   // Set internal state fields. 
   this.r0 = r0;
   this.g0 = g0;
   this.b0 = b0;
}
于 2013-03-15T03:03:51.657 回答