如何使一些像素无色
how to make some pixels colorless
我有一个代码,它在显示器中包含 2 个层,我需要使前层的一些像素无色以显示背景像素。我找不到使像素不可见的方法。在这方面,我尝试按形状创建前层。这个解决方案的主要问题是它太慢而且 cpu 消耗。我的代码如下:
import processing.video.*;
import SimpleOpenNI.*;
int[] userMap;
PShape Stencil,pix;
SimpleOpenNI kinect;
void setup(){
size(640,480,P2D);
kinect = new SimpleOpenNI(this);
kinect.enableDepth();
kinect.enableUser();
Stencil=createShape(GROUP);
}
void draw(){
background(255);
loadPixels();
kinect.update();
userMap =null;
userMap = kinect.userMap();
for (int y=0; y<480; y++) {
for (int x=0; x<640; x++) {
int index = x + y * 640;
if (userMap[index] == 0) {
pix = createShape(ELLIPSE, x, y,1,1);
color col=color(0,0,255);
pix.setFill(col);
pix.setStroke(false);
Stencil.addChild(pix);
}
}
}
shape(Stencil);
}
你能帮我隐藏或隐藏一些像素吗?
给他们一种带有 alpha 值的颜色。只需将第四个参数添加到任何颜色函数:
color(0, 0, 0, 0); //transparent
color(0, 0, 0, 128); //half transparent
color(0, 0, 0, 255); //opaque (default)
我有一个代码,它在显示器中包含 2 个层,我需要使前层的一些像素无色以显示背景像素。我找不到使像素不可见的方法。在这方面,我尝试按形状创建前层。这个解决方案的主要问题是它太慢而且 cpu 消耗。我的代码如下:
import processing.video.*;
import SimpleOpenNI.*;
int[] userMap;
PShape Stencil,pix;
SimpleOpenNI kinect;
void setup(){
size(640,480,P2D);
kinect = new SimpleOpenNI(this);
kinect.enableDepth();
kinect.enableUser();
Stencil=createShape(GROUP);
}
void draw(){
background(255);
loadPixels();
kinect.update();
userMap =null;
userMap = kinect.userMap();
for (int y=0; y<480; y++) {
for (int x=0; x<640; x++) {
int index = x + y * 640;
if (userMap[index] == 0) {
pix = createShape(ELLIPSE, x, y,1,1);
color col=color(0,0,255);
pix.setFill(col);
pix.setStroke(false);
Stencil.addChild(pix);
}
}
}
shape(Stencil);
}
你能帮我隐藏或隐藏一些像素吗?
给他们一种带有 alpha 值的颜色。只需将第四个参数添加到任何颜色函数:
color(0, 0, 0, 0); //transparent
color(0, 0, 0, 128); //half transparent
color(0, 0, 0, 255); //opaque (default)