📅  最后修改于: 2023-12-03 15:33:22.552000             🧑  作者: Mango
P5.js是一个基于Processing语言的JavaScript库,它使得使用JavaScript开发交互式图形和动画变得更加容易。在这里,我们将介绍常量和结构的完整参考。
P5.js库中包含了一些颜色常量。这些常量包括以下颜色:
BLACK
黑色WHITE
白色RED
红色GREEN
绿色BLUE
蓝色YELLOW
黄色ORANGE
橙色PURPLE
紫色GRAY
灰色例子:
background(BLUE);
fill(RED);
stroke(GREEN);
默认情况下,P5.js中的角度单位为弧度。为了方便,库中也包含以下角度常量:
DEGREES
角度RADIANS
弧度例子:
angleMode(DEGREES);
rotate(45);
P5.js包含许多预定义的图形常量。这些常量可以作为绘制形状的参数。
POINTS
点LINES
直线LINE_STRIP
直线条LINE_LOOP
直线循环TRIANGLES
三角形TRIANGLE_FAN
三角形扇TRIANGLE_STRIP
三角形带QUADS
矩形QUAD_STRIP
矩形带POLYGON
多边形例子:
beginShape(TRIANGLES);
vertex(10, 10);
vertex(20, 30);
vertex(30, 10);
endShape();
混合模式影响图形的绘制方式。P5.js支持以下混合模式:
BLEND
混合ADD
加法混合DARKEST
取最小值混合LIGHTEST
取最大值混合DIFFERENCE
差异混合EXCLUSION
排除混合MULTIPLY
乘法混合SCREEN
屏幕混合REPLACE
替换混合例子:
blendMode(MULTIPLY);
rect(25, 25, 50, 50);
P5.js包含了一些用于处理鼠标的结构。以下是P5.js中使用的鼠标结构:
mouseX
鼠标在画布中的横坐标mouseY
鼠标在画布中的纵坐标pmouseX
上一帧的鼠标横坐标pmouseY
上一帧的鼠标纵坐标winMouseX
鼠标在屏幕中的横坐标winMouseY
鼠标在屏幕中的纵坐标pwinMouseX
上一帧鼠标在屏幕中的横坐标pwinMouseY
上一帧鼠标在屏幕中的纵坐标mouseButton
鼠标按下的按钮代码(0表示鼠标左键,1表示鼠标滚轮,2表示鼠标右键)例子:
function draw() {
if (mouseIsPressed) {
line(mouseX, mouseY, pmouseX, pmouseY);
}
}
和鼠标一样,P5.js同样可以与键盘进行交互。以下是P5.js中使用的键盘结构:
key
表示当前按下的键所表示的字符keyCode
表示当前按下的键的代码值keyIsDown()
表示传递的代码值对应的键是否按下例子:
function keyPressed() {
if (keyCode === LEFT_ARROW) {
x -= 10;
} else if (keyCode === RIGHT_ARROW) {
x += 10;
}
}
P5.js可以用于处理声音。以下是P5.js中使用的音频结构:
loadSound()
从文件加载音频play()
播放音频pause()
暂停音频stop()
停止音频isPlaying()
检查音频是否正在播放setVolume()
设置音频音量例子:
let mySound;
function preload() {
mySound = loadSound('sound.mp3');
}
function mouseClicked() {
mySound.play();
}
P5.js负责处理图像的显示。以下是P5.js中使用的图像结构:
loadImage()
从文件加载图像createGraphics()
创建一个新的图像image()
绘制图像tint()
修改图像的色彩resizeCanvas()
调整画布的大小push()
保存状态pop()
恢复状态translate()
沿x,y轴平移原点rotate()
以弧度旋转图像scale()
按比例缩放图像例子:
let img;
function preload() {
img = loadImage('image.jpg');
}
function draw() {
tint(255, 128); // Set transparency value (255 = opaque, 0 = transparent)
image(img, 0, 0);
}
P5.js可以用于完成动画。以下是P5.js中使用的运动结构:
frameRate()
帧速率millis()
当前时间loop()
开始动画循环noLoop()
停止动画循环redraw()
重新绘制例子:
function setup() {
frameRate(30);
}
function draw() {
background(200);
}
function keyPressed() {
redraw();
}
以上就是P5.js中常量和结构的完整参考。在使用过程中,您可以据此进行了解与掌握。