public void draw() {
   if (cam.available()) {
     cam.read();
     image(cam, 0, 0);
     text("Click to upload to Flickr", 10, height - 13);
   }
   fill(255, 0, 0);
   rect(0, 0, 25, 25);
 }
示例#2
0
文件: vidsk.java 项目: Gradonhf/ATP
  public void draw() {
    if (cam.available() == true) {
      cam.read();
      pushMatrix();
      scale(-1, 1);
      translate(-cam.width, 0);
      image(cam, 0, 0);
      popMatrix();

      // image(cam, 0,0);
      try {
        // Now test to see if it has a QR code embedded in it
        LuminanceSource source = new BufferedImageLuminanceSource((BufferedImage) cam.getImage());
        BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));
        Result result = reader.decode(bitmap);
        // Once we get the results, we can do some display
        if (result.getText() != null) {
          println(result.getText());
          ResultPoint[] points = result.getResultPoints();
          // Draw some ellipses on at the control points
          for (int i = 0; i < points.length; i++) {
            // fill(#ff8c00);
            ellipse(points[i].getX(), points[i].getY(), 20, 20);
            // fill(#ff0000);
            text(i, points[i].getX(), points[i].getY());
          }
          // Now fetch the book cover, if it is found
          if (!result.getText().equals(lastISBNAcquired)) {
            String url = "http://covers.oreilly.com/images/" + result.getText() + "/cat.gif";
            try {
              cover = loadImage(url, "gif");
              lastISBNAcquired = result.getText();
            } catch (Exception e) {
              cover = null;
            }
          }
          // Superimpose the cover on the image
          if (cover != null) {
            image(cover, points[1].getX(), points[1].getY());
          }
        }
      } catch (Exception e) {
        //         println(e.toString());
      }
    }
  }