This commit is contained in:
parent
a4c9a86772
commit
a6b92a4505
@ -46,7 +46,7 @@ export default class RetrieveMetadataLoader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (loaders.next().done && !result) {
|
if (loaders.next().done && !result) {
|
||||||
throw 'cant find data';
|
throw new Error('RetrieveMetadataLoader failed');
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@ -67,6 +67,12 @@ function processSingleframe(instances) {
|
|||||||
if (instances.length > 2) {
|
if (instances.length > 2) {
|
||||||
const firstIpp = _getImagePositionPatient(firstImage);
|
const firstIpp = _getImagePositionPatient(firstImage);
|
||||||
const lastIpp = _getImagePositionPatient(instances[instances.length - 1]);
|
const lastIpp = _getImagePositionPatient(instances[instances.length - 1]);
|
||||||
|
|
||||||
|
// We can't reconstruct if we are missing imagePositionPatient values
|
||||||
|
if (!firstIpp || !lastIpp) {
|
||||||
|
return { value: false };
|
||||||
|
}
|
||||||
|
|
||||||
const averageSpacingBetweenFrames =
|
const averageSpacingBetweenFrames =
|
||||||
_getPerpendicularDistance(firstIpp, lastIpp) / (instances.length - 1);
|
_getPerpendicularDistance(firstIpp, lastIpp) / (instances.length - 1);
|
||||||
|
|
||||||
@ -136,8 +142,13 @@ function _getSpacingIssue(spacing, averageSpacing) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function _getImagePositionPatient(instance) {
|
function _getImagePositionPatient(instance) {
|
||||||
return instance
|
const tagValue = instance
|
||||||
.getTagValue('x00200032')
|
.getTagValue('x00200032');
|
||||||
|
if (!tagValue) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
return tagValue
|
||||||
.split('\\')
|
.split('\\')
|
||||||
.map(element => Number(element));
|
.map(element => Number(element));
|
||||||
}
|
}
|
||||||
|
|||||||
@ -253,6 +253,7 @@ function ViewerRetrieveStudyData({
|
|||||||
.catch(error => {
|
.catch(error => {
|
||||||
if (error && !error.isCanceled) {
|
if (error && !error.isCanceled) {
|
||||||
setError(true);
|
setError(true);
|
||||||
|
log.error(error);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -290,11 +291,13 @@ function ViewerRetrieveStudyData({
|
|||||||
.catch(error => {
|
.catch(error => {
|
||||||
if (error && !error.isCanceled) {
|
if (error && !error.isCanceled) {
|
||||||
setError(true);
|
setError(true);
|
||||||
|
log.error(error);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
if (error) {
|
if (error) {
|
||||||
setError(true);
|
setError(true);
|
||||||
|
log.error(error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user