首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >p5js图像阵列

p5js图像阵列
EN

Stack Overflow用户
提问于 2018-07-08 15:24:23
回答 1查看 2K关注 0票数 0

每次点击鼠标时,我都想在画布上画一个随机图像。

代码语言:javascript
代码运行次数:0
运行
复制
let img = []

function preload(){

  for (let i = 0; i < 3; i++) {
    img[i] = loadImage('img/img' + i + '.png')
  }
  
}

function setup() {
  createCanvas(windowWidth, windowHeight)
  background(200, 255,255 )
  let img = random('img')  
  
}
 
function draw() {

}

function mouseClicked() {
  image(img,200, 200, 50, 50)
  
}
代码语言:javascript
代码运行次数:0
运行
复制
<html>
<head>
  <meta charset="UTF-8">
  <script language="javascript" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.6.1/p5.js"></script>
  <script language="javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.6.1/addons/p5.dom.min.js"></script>
  <script language="javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.6.1/addons/p5.sound.js"></script>
  <script language="javascript" type="text/javascript" src="sketch.js"></script>
</head>

<body>
  

</body>

</html>

控制台: p5.js说:()期望p5.Imagesp5.Element参数#0 (基于零的索引),而不是接收数组。

没有出现任何图像,并且该错误不断弹出。

我一直在研究这个类似的问题,但似乎无法在上面的问题中找到答案:stack question。以及编码训练、vid和p5示例。

EN

回答 1

Stack Overflow用户

发布于 2018-07-08 15:33:29

您需要一个新的变量来引用从三个图像数组中随机选择的图像。

将下面一行添加到代码的最顶端

代码语言:javascript
代码运行次数:0
运行
复制
var randomImageLocation

变更线

代码语言:javascript
代码运行次数:0
运行
复制
img[i] = loadImage('img/img' + i + '.png')

代码语言:javascript
代码运行次数:0
运行
复制
img[i] = 'img/img' + i + '.png' // store the image location in array only

然后换行

代码语言:javascript
代码运行次数:0
运行
复制
let img = random('img')

代码语言:javascript
代码运行次数:0
运行
复制
randomImageLocation = img[Math.floor(Math.random() * img.length)]; 

然后在mouseClicked函数中使用randomImageLocation变量而不是img。

代码语言:javascript
代码运行次数:0
运行
复制
let randomImage = loadImage(randomImageLocation)
image(randomImage,200, 200, 50, 50)

有关从数组Getting a random value from a JavaScript array中选择随机元素的详细信息,请参阅此问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51233447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档