/** * Obtain an imageId for Cornerstone based on the WADO-RS scheme * * @param instance * @returns {string} The imageId to be used by Cornerstone */ getWADORSImageId = function(instance) { var columnPixelSpacing = 1.0; var rowPixelSpacing = 1.0; if (instance.pixelSpacing) { var split = instance.pixelSpacing.split('\\'); rowPixelSpacing = parseFloat(split[0]); columnPixelSpacing = parseFloat(split[1]); } var windowWidth; var windowCenter; if (instance.windowWidth && instance.windowCenter) { windowWidth = parseFloat(instance.windowWidth.split('\\')[0]); windowCenter = parseFloat(instance.windowCenter.split('\\')[0]); } var image = { uri: instance.wadorsuri, //imageId : '', //minPixelValue : 0, //maxPixelValue : 255, slope: instance.rescaleSlope, intercept: instance.rescaleIntercept, samplesPerPixel: instance.samplesPerPixel, imageOrientationPatient: instance.imageOrientationPatient, imagePositionPatient: instance.imagePositionPatient, sopClassUid: instance.sopClassUid, instanceNumber: instance.instanceNumber, frameOfReferenceUID: instance.frameOfReferenceUID, windowCenter: windowCenter, windowWidth: windowWidth, //render: cornerstone.renderColorImage, //getPixelData: getPixelData, //getImageData: getImageData, //getCanvas: getCanvas, rows: instance.rows, columns: instance.columns, height: instance.rows, width: instance.columns, color: false, columnPixelSpacing: columnPixelSpacing, rowPixelSpacing: rowPixelSpacing, invert: false, sizeInBytes: instance.rows * instance.columns * (instance.bitsAllocated / 8), instance: instance }; var imageId = cornerstoneWADOImageLoader.imageManager.add(image); log.info('WADO-RS ImageID: ' + imageId); return imageId; };