如何在处理中使对象不可见

发布于 2024-11-01 08:54:45 字数 40 浏览 3 评论 0原文

我正在使用处理在素描板上制作矩形,但我想让它们不可见。我该怎么做?

I am making rectangles on the sketch board using processing, but I want to make them invisible. How do I do that?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

々眼睛长脚气 2024-11-08 08:54:45

您可以不绘制它们,或者使用forth(alpha/透明度)参数fill 函数

不绘制:

int numVisible = 0;
for(int i = 0 ; i  < 20 ;  i++) {
  boolean visible = random(1) > .5;
  if(visible) {
    rect(random(100),random(100),random(10),random(10));
    numVisible++;
  }
}
println(numVisible+" boxes are visible");

绘制透明(只有笔画可见):

for(int i = 0 ; i  < 20 ;  i++) {
  boolean visible = random(1) > .5;
  fill(255,255,255,visible ? 255 : 0);
  rect(random(100),random(100),random(10),random(10));
}

如果有帮助,这里有一个更长的版本:

void setup(){
  size(400,400,P2D);
  smooth();
  noStroke();
  background(255);
  for(int i = 0; i < 200 ; i++){
    Rect r = new Rect(random(width),random(height),random(10,20),random(10,20),color(random(255),random(255),random(255),random(1) > .5 ? 255 : 64));
    r.draw();
  }
}
class Rect{
  color c;
  float w,h,x,y;
  Rect(float x,float y,float w,float h,color c){
    this.c = c;
    this.w = w;
    this.h = h;
    this.x = x;
    this.y = y;
  }
  void draw(){
    fill(c);
    rect(x,y,w,h);
  }
}

贝壳是一个您可以运行的代码片段:

function setup(){
  createCanvas(400,400);
  smooth();
  noStroke();
  background(255);
  for(var i = 0; i < 200 ; i++){
    var r = new Rect(random(width),random(height),random(10,20),random(10,20),color(random(255),random(255),random(255),random(1) > .5 ? 255 : 64));
    r.draw();
  }
}
function Rect(x,y,w,h,c){
    this.c = c;
    this.w = w;
    this.h = h;
    this.x = x;
    this.y = y;
  
  this.draw = function(){
    fill(c);
    rect(x,y,w,h);
  }
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.4.4/p5.min.js"></script>

预览

You can either not draw them, either use the forth(alpha/transparency) parameter for the fill function

not drawing:

int numVisible = 0;
for(int i = 0 ; i  < 20 ;  i++) {
  boolean visible = random(1) > .5;
  if(visible) {
    rect(random(100),random(100),random(10),random(10));
    numVisible++;
  }
}
println(numVisible+" boxes are visible");

drawing transparent(only strokes are visible):

for(int i = 0 ; i  < 20 ;  i++) {
  boolean visible = random(1) > .5;
  fill(255,255,255,visible ? 255 : 0);
  rect(random(100),random(100),random(10),random(10));
}

If it helps, here's a longer version of the same:

void setup(){
  size(400,400,P2D);
  smooth();
  noStroke();
  background(255);
  for(int i = 0; i < 200 ; i++){
    Rect r = new Rect(random(width),random(height),random(10,20),random(10,20),color(random(255),random(255),random(255),random(1) > .5 ? 255 : 64));
    r.draw();
  }
}
class Rect{
  color c;
  float w,h,x,y;
  Rect(float x,float y,float w,float h,color c){
    this.c = c;
    this.w = w;
    this.h = h;
    this.x = x;
    this.y = y;
  }
  void draw(){
    fill(c);
    rect(x,y,w,h);
  }
}

Bellow is a snippet you can run:

function setup(){
  createCanvas(400,400);
  smooth();
  noStroke();
  background(255);
  for(var i = 0; i < 200 ; i++){
    var r = new Rect(random(width),random(height),random(10,20),random(10,20),color(random(255),random(255),random(255),random(1) > .5 ? 255 : 64));
    r.draw();
  }
}
function Rect(x,y,w,h,c){
    this.c = c;
    this.w = w;
    this.h = h;
    this.x = x;
    this.y = y;
  
  this.draw = function(){
    fill(c);
    rect(x,y,w,h);
  }
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.4.4/p5.min.js"></script>

preview

守不住的情 2024-11-08 08:54:45

您可以在绘图函数中放入一个 var 来控制它是否必须显示您想要的内容。

void draw()
{
  if (showThis)
  {
    image(image);
  }
}

You could put in the draw function a var to control if it must show what you want.

void draw()
{
  if (showThis)
  {
    image(image);
  }
}
阳光下的泡沫是彩色的 2024-11-08 08:54:45

添加 noStroke();并使颜色与背景颜色相同?

Add noStroke(); and make the color the same as the background color?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文