From 97875da492c6f64b00441206c4b0df51dbd91c38 Mon Sep 17 00:00:00 2001 From: Peter Braden Date: Wed, 15 Oct 2014 20:31:19 +0200 Subject: [PATCH] fix window error --- examples/camera.js | 8 ++++++-- examples/face-detection-rectangle.js | 8 ++++---- src/HighGUI.cc | 8 +++++++- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/examples/camera.js b/examples/camera.js index abe885b..25b0246 100755 --- a/examples/camera.js +++ b/examples/camera.js @@ -2,11 +2,15 @@ var cv = require('../lib/opencv'); var camera = new cv.VideoCapture(0); var window = new cv.NamedWindow('Video', 0) - +/* setInterval(function() { camera.read(function(err, im) { if (err) throw err; - window.show(im); + console.log(im.size()) + if (im.size()[0] > 0 && im.size()[1] > 0){ + window.show(im); + } window.blockingWaitKey(0, 50); }); }, 20); +*/ diff --git a/examples/face-detection-rectangle.js b/examples/face-detection-rectangle.js index f108eee..e2d4f87 100755 --- a/examples/face-detection-rectangle.js +++ b/examples/face-detection-rectangle.js @@ -3,11 +3,11 @@ var cv = require('../lib/opencv'); var COLOR = [0, 255, 0]; // default red var thickness = 2; // default 1 -cv.readImage('./files/mona.png', function(err, im) { +cv.readImage('./examples/files/mona.png', function(err, im) { if (err) throw err; if (im.width() < 1 || im.height() < 1) throw new Error('Image has no size'); - im.detectObject('../data/haarcascade_frontalface_alt2.xml', {}, function(err, faces) { + im.detectObject('./data/haarcascade_frontalface_alt2.xml', {}, function(err, faces) { if (err) throw err; for (var i = 0; i < faces.length; i++) { @@ -15,8 +15,8 @@ cv.readImage('./files/mona.png', function(err, im) { im.rectangle([face.x, face.y], [face.x + face.width, face.y + face.height], COLOR, 2); } - im.save('./tmp/face-detection-rectangle.png'); - console.log('Image saved to ./tmp/face-detection-rectangle.png'); + im.save('./examples/tmp/face-detection-rectangle.png'); + console.log('Image saved to ./examples/tmp/face-detection-rectangle.png'); }); }); diff --git a/src/HighGUI.cc b/src/HighGUI.cc index bb1197b..3b99c9e 100644 --- a/src/HighGUI.cc +++ b/src/HighGUI.cc @@ -53,7 +53,13 @@ NamedWindow::NamedWindow(const std::string& name, int f){ NAN_METHOD(NamedWindow::Show){ SETUP_FUNCTION(NamedWindow) Matrix *im = ObjectWrap::Unwrap(args[0]->ToObject()); - cv::imshow(self->winname, im->mat); + + try{ + cv::imshow(self->winname, im->mat); + } catch(cv::Exception& e ){ + const char* err_msg = e.what(); + NanThrowError(err_msg); + } NanReturnValue(args.Holder()); }