Retrieve FrameIncrementPointer as an attribute and FrameTimeVector as a float array via DICOMWeb and DIMSE
This commit is contained in:
1 parent
255b60e2fc
commit
8e9265ab23
9 files changed
+93
-2
No files matched your search
@@ -1,3 +1,5 @@
|
||||
import { parseFloatArray } from '../../lib/parseFloatArray';
|
||||
|
||||
/**
|
||||
* Parses the SourceImageSequence, if it exists, in order
|
||||
* to return a ReferenceSOPInstanceUID. The ReferenceSOPInstanceUID
|
||||
@@ -16,6 +18,21 @@ function getSourceImageInstanceUid(instance) {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the value of the element (e.g. '00280009')
|
||||
*
|
||||
* @param element - The group/element of the element (e.g. '00280009')
|
||||
* @param defaultValue - The default value to return if the element does not exist
|
||||
* @returns {*}
|
||||
*/
|
||||
function getValue(element, defaultValue) {
|
||||
if (!element || !element.value) {
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
return element.value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Parses result data from a DIMSE search into Study MetaData
|
||||
* Returns an object populated with study metadata, including the
|
||||
@@ -102,7 +119,9 @@ function resultDataToStudyMetadata(studyInstanceUid, resultData) {
|
||||
viewPosition: instance[0x00185101],
|
||||
acquisitionDatetime: instance[0x0008002A],
|
||||
numFrames: parseFloat(instance[0x00280008]),
|
||||
frameIncrementPointer: getValue(instance[0x00280009]),
|
||||
frameTime: parseFloat(instance[0x00181063]),
|
||||
frameTimeVector: parseFloatArray(instance[0x00181065]),
|
||||
lossyImageCompression: instance[0x00282110],
|
||||
derivationDescription: instance[0x00282111],
|
||||
lossyImageCompressionRatio: instance[0x00282112],
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { remoteGetValue } from '../../lib/remoteGetValue';
|
||||
import { parseFloatArray } from '../../lib/parseFloatArray';
|
||||
|
||||
/**
|
||||
* Parses the SourceImageSequence, if it exists, in order
|
||||
@@ -97,7 +98,9 @@ function resultDataToStudyMetadata(server, studyInstanceUid, resultData) {
|
||||
viewPosition: remoteGetValue(instance['0018,5101']),
|
||||
acquisitionDatetime: remoteGetValue(instance['0008,002A']),
|
||||
numFrames: parseFloat(remoteGetValue(instance['0028,0008'])),
|
||||
frameTime: parseFloat(remoteGetValue(instance['0018,1063']))
|
||||
frameIncrementPointer: remoteGetValue(instance['0028,0009']),
|
||||
frameTime: parseFloat(remoteGetValue(instance['0018,1063'])),
|
||||
frameTimeVector: parseFloatArray(remoteGetValue(instance['0018,1065']))
|
||||
};
|
||||
|
||||
var iid = instance['xxxx,0001'].Value;
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { parseFloatArray } from '../../lib/parseFloatArray';
|
||||
|
||||
/**
|
||||
* Creates a URL for a WADO search
|
||||
*
|
||||
@@ -108,7 +110,9 @@ function resultDataToStudyMetadata(server, studyInstanceUid, resultData) {
|
||||
viewPosition: DICOMWeb.getString(instance['00185101']),
|
||||
acquisitionDatetime: DICOMWeb.getString(instance['0008002A']),
|
||||
numFrames: DICOMWeb.getNumber(instance['00280008']),
|
||||
frameIncrementPointer: DICOMWeb.getAttribute(instance['00280009']),
|
||||
frameTime: DICOMWeb.getNumber(instance['00181063']),
|
||||
frameTimeVector: parseFloatArray(DICOMWeb.getString(instance['00181065'])),
|
||||
sliceThickness: DICOMWeb.getNumber(instance['00180050']),
|
||||
lossyImageCompression: DICOMWeb.getString(instance['00282110']),
|
||||
derivationDescription: DICOMWeb.getString(instance['00282111']),
|
||||
|
||||
Reference in new issue
Block a user