我想截取草图中的特定区域(处理中)。
使用save();
和saveFrame();
引用我无法做到,因为它们捕获了整个区域,但我只需要一个较小的特定要捕获。怎么做得好?
答案 0 :(得分:2)
检查处理参考。有一个名为get
的函数可以在PImages或绘图屏幕上调用。你没有提到是否要捕捉一些奇怪的形状或矩形,所以我假设一个标准的矩形。根据它的documentation,你想要的是:
语法:get(x,y,w,h)
<强>参数强>:
答案 1 :(得分:1)
正如kevinsa5所说,get(x, y, w, h)
是要走的路,为了保存它,你可以使用PImage来保存捕获,如:
int sliceW = 50;
int sliceH = 50;
int number = 1 ;
PImage slice;
void setup(){
size (300, 300);
slice = createImage(sliceW, sliceH, ARGB);
noFill();
}
void draw(){
stroke(random(10,90),random(100,200),random(80,120));
line(0, frameCount%height, width, frameCount%height );
}
void mouseClicked(){
captureAndSave(mouseX, mouseY, sliceW, sliceH);
}
void captureAndSave(int x, int y, int w, int h){
slice = get(x, y, w, h);
slice.save("slice" + nf(number, 4) + ".png");
number++;
println("saved!");
}