p5.js - p5js中实例模式下的createGraphics
问题描述
我是p5的新手。
我的目标是显示我键入的键的 ASCII 值,并留下一条垂直线,其距左侧的距离为 200+键的 ASCII 值,
这可以使用 createGraphics() 来完成(在顶部添加一个与原始尺寸相同的附加画布层并在该附加画布层上绘图)
但是代码似乎不起作用,而且它也没有在控制台中显示任何错误。
const c5=function(p){
let pg;
p.setup=function(){
p.createCanvas(600,400);
pg=p.createGraphics(600,400);
};
p.draw=function(){
p.background(200);
p.textAlign(p.CENTER,p.TOP);
p.textSize(20);
p.text('ASCII Value : '+p.keyCode,300,100);
pg.line(200+p.keyCode,200,200+p.keyCode,300);//shift right by 200
};
};
解决方案
第一个问题是你必须告诉引擎你命名的东西p
实际上是一个p5
实例。您可以使用如下方式构造p5
对象:new p5(...)
const c5 = new p5(function(p) {
p.setup = function(){
...
};
p.draw = function(){
...
};
});
pg
然后,您可以用垂直线正确填充图形对象。但是,您不会在原始画布上“绘制”它。您可以使用 p5.jsimage()
函数来执行此操作(另请参阅createGraphics()
文档中显示的示例)。
我在这里的 p5.js 编辑器中做了一个工作示例。
推荐阅读
- virtual-machine - 警告:字符设备 /dev/vboxdrv 不存在
- terraform - 在 Terraform 中覆盖名称标签
- reactjs - Firebase 实时数据库验证规则不起作用
- c++ - 线程成员函数从成员变量中获取错误值
- tailwind-css - Tailwindcss 响应式断点不起作用
- keras - 如何在 Anaconda 中安装 keras-rl
- python - 如何收集请求头数据
- php - 单击提交时,我的浏览器会转到 domain.com/contactform.php 运行 php
- arrays - MongoDB - 在多个文档中更新数组中的多个子文档
- websocket - LightStreamer中snapshot和isActive()的概念