未使用局部变量“ img”的值

时间:2019-04-18 17:30:52

标签: processing kinect

我现在正在运行编码培训教程。但是按照他的指示我总是出错。有人可以告诉我我的代码有什么问题吗?

import org.openkinect.processing.*;

Kinect kinect;

void setup() {

    PImage img; 

    size(512, 484); 
    kinect = new Kinect(this); 
    kinect.initDepth(); 
    img = createImage(kinect.width, kinect.height, RGB); 

}  

void draw() { 
    background(0); 

    img.loadPixels(); 

    int[] depth = kinect.getRawDepth(); 

    for (int x = 0; x < kinect.width; x++) { 
        for (int y = 0; y < kinect.height; y++) {
            int offsett = x + y * kinect.width; 
            int d = depth[offsett]; 

            img.pixels[offset] = color(255,0,150);
        }
    }

    img.updatePixels(); 
    image(img, 0, 0);
}

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

您在setup()函数中定义了变量img,因此该变量的范围仅是该方法。

您在draw()函数中多次使用了一个变量img,但从未在该函数中定义一个变量。

我想说的是错误是两个函数中具有相同的变量名的困惑。

答案 1 :(得分:-2)

尝试更改相同变量的名称,这不是一个好方法,也许这是错误原因。