Processing 方法不适用?

Processing 方法不适用?,processing,Processing,当我将参数“Color”添加到owl时,它表示方法owl不适用?? 我想让猫头鹰变成随机颜色有什么建议吗?这是Reas和Fry处理手册中的练习 void设置(){ 规模(700500); 背景(200); 平滑(); 帧率(10); } 无效拾取(){ 颜色(随机(255)、随机(255)、随机(255)); } 无效提款(){ 猫头鹰(35100); } 虚空猫头鹰(整数x,整数y,颜色z){ pick(); 冲程(0); 冲程重量(70); 线(x,-35+y,x,-65+y);//主体 仰

当我将参数“Color”添加到owl时,它表示方法owl不适用?? 我想让猫头鹰变成随机颜色有什么建议吗?这是Reas和Fry处理手册中的练习

void设置(){
规模(700500);
背景(200);
平滑();
帧率(10);
}
无效拾取(){
颜色(随机(255)、随机(255)、随机(255));
}
无效提款(){
猫头鹰(35100);
}
虚空猫头鹰(整数x,整数y,颜色z){
pick();
冲程(0);
冲程重量(70);
线(x,-35+y,x,-65+y);//主体
仰泳();
填充(255);
椭圆(-17.5+x,-65+y,35,35);//左眼圆顶
椭圆(17.5+x,-65+y,35,35);//右眼圆顶
弧(0+x,-65+y,70,70,0,PI);
填充(0);
椭圆(-14+x,-65+y,8,8);//左眼
椭圆(14+x,-65+y,8,8);//右眼
四元组(0+x,-58+y,4+x,-51+y,x,-44+y,-4+x,-51+y);
}
是颜色的处理数据类型。它知道
colorMode()
。问题很简单,您自己的方法需要3个参数
voidowl(intx,inty,colorz){…
,您用2个
owl(35100)
调用它。如果您说:

猫头鹰(35100,颜色(随机(255),随机(255),)随机(255));

它可以工作。

是一种处理颜色的数据类型。它知道
colorMode()
。问题很简单,您自己的方法需要3个参数
void owl(int x,int y,color z){…
,您用2个
owl(35100)
调用它。如果您说:

猫头鹰(35100,颜色(随机(255),随机(255),)随机(255));

它可以工作。

是一种处理颜色的数据类型。它知道
colorMode()
。问题很简单,您自己的方法需要3个参数
void owl(int x,int y,color z){…
,您用2个
owl(35100)
调用它。如果您说:

猫头鹰(35100,颜色(随机(255),随机(255),)随机(255));

它可以工作。

是一种处理颜色的数据类型。它知道
colorMode()
。问题很简单,您自己的方法需要3个参数
void owl(int x,int y,color z){…
,您用2个
owl(35100)
调用它。如果您说:

猫头鹰(35100,颜色(随机(255),随机(255),)随机(255));


它会起作用。

v.k.实际上是对的,尽管他没有告诉你为什么颜色没有改变。问题当然是你用两个参数调用owl,而它需要三个参数。据我所知,你想用
pick()
方法来选择随机颜色,因此你不需要第三个参数

void owl (int x, int y, color z) {
应该是

void owl (int x, int y) {
此外,您还需要以某种方式使用正确创建的随机颜色填充(或笔划)对象。问题是,只要您不在
fill()
stroke()
方法中传递它,它将不会为任何对象着色…因此您需要以某种方式在owl()方法中使用该颜色,因此您可以从
pick()返回它
命令并按如下方式使用:

color pick () {
  return color (random(255),random(255),random(255));
}
您可以在owl方法中检索它,并将其存储在变量中,以便使用它:

color z = pick();
然后改变你眼睛的颜色

fill(0);
致:

这是最后的代码,以防我把你弄糊涂了:

void setup ( ) {
  size(700,500);
  background(200);
  smooth( );
  frameRate(10);
}

color pick () {
  return color (random(255),random(255),random(255));
}

void draw ( ) {
  owl(35,100);
}

void owl (int x, int y) {
  color z = pick();
  stroke(0) ;
  strokeWeight(70) ;
  line(x, -35+y, x, -65+y) ;         // body
  noStroke() ;
  fill(255) ;
  ellipse(-17.5+x, -65+y, 35, 35) ; // left eye dome
  ellipse( 17.5+x, -65+y, 35, 35) ; // right eye dome
  arc(0+x, -65+y, 70, 70, 0, PI) ;
  fill(z) ;
  ellipse(-14+x, -65+y, 8, 8) ;      // left eye
  ellipse( 14+x, -65+y, 8, 8) ;      // right eye
  quad(0+x, -58+y, 4+x, -51+y, x, -44+y, -4+x, -51+y) ;  
}

v、 k.实际上是对的,尽管他没有告诉你为什么颜色没有改变。问题当然是你用两个参数调用owl,而它需要三个参数。据我所知,你想用
pick()
方法选择随机颜色,因此你不需要第三个参数

void owl (int x, int y, color z) {
应该是

void owl (int x, int y) {
此外,您还需要以某种方式使用正确创建的随机颜色填充(或笔划)对象。问题是,只要您不在
fill()
stroke()
方法中传递它,它将不会为任何对象着色…因此您需要以某种方式在owl()方法中使用该颜色,因此您可以从
pick()返回它
命令并按如下方式使用:

color pick () {
  return color (random(255),random(255),random(255));
}
您可以在owl方法中检索它,并将其存储在变量中,以便使用它:

color z = pick();
然后改变你眼睛的颜色

fill(0);
致:

这是最后的代码,以防我把你弄糊涂了:

void setup ( ) {
  size(700,500);
  background(200);
  smooth( );
  frameRate(10);
}

color pick () {
  return color (random(255),random(255),random(255));
}

void draw ( ) {
  owl(35,100);
}

void owl (int x, int y) {
  color z = pick();
  stroke(0) ;
  strokeWeight(70) ;
  line(x, -35+y, x, -65+y) ;         // body
  noStroke() ;
  fill(255) ;
  ellipse(-17.5+x, -65+y, 35, 35) ; // left eye dome
  ellipse( 17.5+x, -65+y, 35, 35) ; // right eye dome
  arc(0+x, -65+y, 70, 70, 0, PI) ;
  fill(z) ;
  ellipse(-14+x, -65+y, 8, 8) ;      // left eye
  ellipse( 14+x, -65+y, 8, 8) ;      // right eye
  quad(0+x, -58+y, 4+x, -51+y, x, -44+y, -4+x, -51+y) ;  
}

v、 k.实际上是对的,尽管他没有告诉你为什么颜色没有改变。问题当然是你用两个参数调用owl,而它需要三个参数。据我所知,你想用
pick()
方法选择随机颜色,因此你不需要第三个参数

void owl (int x, int y, color z) {
应该是

void owl (int x, int y) {
此外,您还需要以某种方式使用正确创建的随机颜色填充(或笔划)对象。问题是,只要您不在
fill()
stroke()
方法中传递它,它将不会为任何对象着色…因此您需要以某种方式在owl()方法中使用该颜色,因此您可以从
pick()返回它
命令并按如下方式使用:

color pick () {
  return color (random(255),random(255),random(255));
}
您可以在owl方法中检索它,并将其存储在变量中,以便使用它:

color z = pick();
然后改变你眼睛的颜色

fill(0);
致:

这是最后的代码,以防我把你弄糊涂了:

void setup ( ) {
  size(700,500);
  background(200);
  smooth( );
  frameRate(10);
}

color pick () {
  return color (random(255),random(255),random(255));
}

void draw ( ) {
  owl(35,100);
}

void owl (int x, int y) {
  color z = pick();
  stroke(0) ;
  strokeWeight(70) ;
  line(x, -35+y, x, -65+y) ;         // body
  noStroke() ;
  fill(255) ;
  ellipse(-17.5+x, -65+y, 35, 35) ; // left eye dome
  ellipse( 17.5+x, -65+y, 35, 35) ; // right eye dome
  arc(0+x, -65+y, 70, 70, 0, PI) ;
  fill(z) ;
  ellipse(-14+x, -65+y, 8, 8) ;      // left eye
  ellipse( 14+x, -65+y, 8, 8) ;      // right eye
  quad(0+x, -58+y, 4+x, -51+y, x, -44+y, -4+x, -51+y) ;  
}

v、 k.实际上是对的,尽管他没有告诉你为什么颜色没有改变。问题当然是你用两个参数调用owl,而它需要三个参数。据我所知,你想用
pick()
方法选择随机颜色,因此你不需要第三个参数

void owl (int x, int y, color z) {
应该是

void owl (int x, int y) {
此外,您还需要以某种方式使用正确创建的随机颜色填充(或笔划)对象。问题是,只要您不在
fill()
stroke()
方法中传递它,它将不会为任何对象着色…因此您需要以某种方式在owl()方法中使用该颜色,因此您可以从
pick()返回它
命令并按如下方式使用:

color pick () {
  return color (random(255),random(255),random(255));
}
然后在owl方法和