用Processing画自画像代码
时间: 2024-10-05 18:02:45 浏览: 55
CodeSelfPortrait:使用p5.js的自画像代码
在Processing中画自画像通常涉及到图形绘制和用户交互。以下是一个简单的示例,它创建了一个窗口,并让用户通过鼠标点击选择绘画区域,然后在那个区域内绘制像素点来构成自画像:
```java
import processing.core.PApplet;
import processing.core.PImage;
public class SelfPortrait extends PApplet {
PImage portrait; // 用于存储自画像的图像
void setup() {
size(400, 400);
portrait = createEmptyImage(width, height);
background(255); // 设置背景色
}
void draw() {
updatePortrait(); // 每次循环都更新画像
image(portrait, 0, 0);
}
void mousePressed() {
if (mouseX > 0 && mouseX < width && mouseY > 0 && mouseY < height) {
int pixelColor = color(mouseX, mouseY, 255); // 获取点击位置的颜色
portrait.set(xcor, ycor, pixelColor); // 将颜色应用到画像对应的位置
}
}
void updatePortrait() {
for (int x = 0; x < width; x++) {
for (int y = 0; y < height; y++) {
int pixelColor = portrait.get(x, y);
// 这里你可以选择将当前像素点的颜色与原点像素点的颜色对比,如果相近就保留,
// 或者直接复制原点像素值,这里为了简化示例,我们直接复制
fill(pixelColor);
rect(x, y, 1, 1);
}
}
}
}
// 要运行此代码,需要在Processing环境中打开并保存文件为SelfPortrait.java,然后运行程序。
```
在这个例子中,`updatePortrait()`函数遍历整个画像,并在每个像素点处放置一个小方块(rect()),模拟了像素点的绘制。`mousePressed()`监听鼠标的点击,将点击位置的颜色应用到画像上。
阅读全文