euglena/src/Camera.java
2016-07-10 05:26:55 -07:00

49 lines
1.1 KiB
Java

import processing.core.*;
import processing.video.*;
class Camera {
Capture cam;
PImage latestImage;
/*
Set up a camera.
*/
Camera(PApplet applet, int cameraMode) {
String[] cameras = Capture.list();
if (cameras.length == 0) {
PApplet.println("There are no cameras available for capture.");
applet.exit();
} else {
PApplet.println("Available cameras:");
for(int i = 0; i < cameras.length; i++) {
PApplet.println(i, cameras[i]);
}
PApplet.print("Using camera mode ");
PApplet.println(cameras[cameraMode]);
this.cam = new Capture(applet, cameras[cameraMode]);
this.cam.start();
this.updateImage();
}
}
boolean updateImage() {
boolean newImageAvailable = cam.available();
if (newImageAvailable) {
cam.read();
latestImage = cam;
}
return newImageAvailable;
}
PImage getImage() {
return latestImage;
}
}