【问题标题】:Processing/Java pixel array slicing assignment处理/Java像素数组切片赋值
【发布时间】:2018-05-23 15:18:23
【问题描述】:

我正在使用处理/Java,并且我正在使用像素数组为每个像素分配颜色,但是如果我分配每个像素,帧速率太低了,所以我想将 5 个像素的块视为一个,所以让它们的颜色相同。我不这样做,

for (int x = 0; x < width; x += 5) {
    // for loop width
    for (int y = 0; y < height; y += 5) {
        // For loop height
        // Assigning pixel color
        for (int px = 0; px < 5; px++) {
            for (int py = 0; py < 5; py++) {
                pixels[x + px + (y + py) * width] = color(myCol);
            }
        }
    }
}

但我想知道我是否可以为数组分配一个像这样的切片

pixels[startIndex : endIndex] = color(myColor);

【问题讨论】:

  • 没有。 Java 没有语法结构来将数组的范围设置为某个值。

标签: java arrays processing slice pixels


【解决方案1】:

Processing 确实有一个set() 函数,它接受一个图像参数。来自the reference

size(100, 100);
PImage myImage = loadImage("apples.jpg");
set(0, 0, myImage);
line(0, 0, width, height);
line(0, height, width, 0);

您可以将颜色放入图像中,然后绘制图像。我不知道这会不会更快。

另一种选择是在启动时简单地调整输入图像的大小。

【讨论】:

  • 是否可以画一个框架,然后将其调整为 5 倍大,然后显示它?
  • @R.Versnel 是的。请参阅参考资料中的createGraphics() 函数。
猜你喜欢
  • 2012-10-25
  • 2016-10-19
  • 2020-08-10
  • 2021-01-15
  • 2011-05-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-22
相关资源
最近更新 更多