Regular Motion

개발자가 상팔자

[WAC2.0] Camera Module UseCase.

1. TakePicture까지의 Sequence는 아래와 같다.

var rearCamera;
var frontCamera;
var myParent = document.getElementById(“myDiv”);
var myPreviewId = null;

// CameraCaptureSuccessCallback
// 저장된 image의 path가 인자로 전달된다. 

function onCaptureImageSuccess(filename) {

alert(“Captured Image Path : ” + filename);
}

// CameraPreviewSuccessCallback
function onCreatePreviewNodeSuccess(previewObject) {

// 자신이 원하는 영역(div)에 preview object를 붙인다.
myPreviewId = previewObject.id;
myParent.appendChild(previewObject);
// CSS의 visibility 속성을 이용하여 preview object를 visible로 만든다.
previewObject.style.visibility = “visible”;

try{

// 3) 현재 preview node의 출력되고 있는 내용을 image file로 저장한 뒤 
        CaptureImageSuceessCallback으로 전달한다. 
rearCamera.captureImage(onCaptureImageSuccess, onCaptureImageError
{destinationFilename:”images/a.jpg”, highRes:true});
} catch (e) {
alert(“exception occur while taking picture”);
 
}

// CameraArraySuccessCallback
function onCameraObtainedSuccess(cameras) {

alert(“number of camera  : ” + cameras.length);

// Hold Camera Objects
rearCamera = cameras[0];
if (cameras.length > 1) {
frontCamera = cameras[1];
}
try {
// 2) createPreviewNode Method를 통해 미리보기 영역을 생성한다.
rearCamera.createPreviewNode(onCreatePreviewNodeSuccess, 
 
onCreatePreviewNodeError);
} catch (e) {
alert(“exception occur while obtaining Preview Node : ” + e.message);
}

// ErrorCallback
function onCameraObtainedError(error) {

alert(error.message);
}

function onCreatePreviewNodeError(error) {

alert(error.message);
}

function onCaptureImageError(error) {

alert(error.message);
}

try {

// 1) getCameras() Method를 통해 Camera Object를 얻는다.
// 성공적으로 함수를 수행하였을 경우  onCameraObtainedSuccess 콜백이 호출된다.
var pendingOP = devicesapis.cameramanager.getCameras(
 onCameraObtainedSuccess, onCameraObtainedError);
} catch (exp) {
alert(“exception occur while obtaining Cameras : ” + exp.message);
}

간단한 흐름
1) getCameras Method를 호출하여 Camera Object를 얻는다.
2) createPreviewNode Method를 호출하여 미리보기 영역을 생성한다. (Optional)
3) Camera Object로 captureImage Method를 호출하면 이미지가 저장된다.

1 Comment

  1. 저 죄송한대 티스토리 초대장좀 주실수 없나요?
    잘꾸밀 자신있습니다!
    dydgmlwnr@naver.com

답글 남기기

© 2017 Regular Motion

Theme by Anders NorenUp ↑