Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
86 changes: 85 additions & 1 deletion src/utilities/TID300/Polyline.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,10 @@ export default class Polyline extends TID300Measurement {
use3DSpatialCoordinates = false,
perimeter,
unit = "mm",
stdDev,
mean,
max,
modalityUnit,
ReferencedFrameOfReferenceUID
} = this.props;

Expand All @@ -19,8 +23,88 @@ export default class Polyline extends TID300Measurement {
use3DSpatialCoordinates
});

// TODO: Add Mean and STDev value of (modality?) pixels
return this.getMeasurement([
{
RelationshipType: "CONTAINS",
ValueType: "NUM",
ConceptNameCodeSequence: {
CodeValue: "56851009",
CodingSchemeDesignator: "SCT",
CodeMeaning: "Maximum"
},
MeasuredValueSequence: {
MeasurementUnitsCodeSequence:
unit2CodingValue(modalityUnit),
NumericValue: max
},
ContentSequence: {
RelationshipType: "INFERRED FROM",
ValueType: use3DSpatialCoordinates ? "SCOORD3D" : "SCOORD",
GraphicType: "POLYLINE",
GraphicData,
ContentSequence: use3DSpatialCoordinates
? undefined
: {
RelationshipType: "SELECTED FROM",
ValueType: "IMAGE",
ReferencedSOPSequence
}
}
},
{
RelationshipType: "CONTAINS",
ValueType: "NUM",
ConceptNameCodeSequence: {
CodeValue: "386136009",
CodingSchemeDesignator: "SCT",
CodeMeaning: "Standard Deviation"
},
MeasuredValueSequence: {
MeasurementUnitsCodeSequence:
unit2CodingValue(modalityUnit),
NumericValue: stdDev
},
ContentSequence: {
RelationshipType: "INFERRED FROM",
ValueType: use3DSpatialCoordinates ? "SCOORD3D" : "SCOORD",
GraphicType: "POLYLINE",
GraphicData,
ContentSequence: use3DSpatialCoordinates
? undefined
: {
RelationshipType: "SELECTED FROM",
ValueType: "IMAGE",
ReferencedSOPSequence
}
}
},
{
RelationshipType: "CONTAINS",
ValueType: "NUM",
ConceptNameCodeSequence: {
CodeValue: "373098007",
CodingSchemeDesignator: "SCT",
CodeMeaning: "Mean"
},
MeasuredValueSequence: {
MeasurementUnitsCodeSequence:
unit2CodingValue(modalityUnit),
NumericValue: mean
},
ContentSequence: {
RelationshipType: "INFERRED FROM",
ValueType: use3DSpatialCoordinates ? "SCOORD3D" : "SCOORD",
GraphicType: "POLYLINE",
GraphicData,
ContentSequence: use3DSpatialCoordinates
? undefined
: {
RelationshipType: "SELECTED FROM",
ValueType: "IMAGE",
ReferencedSOPSequence
}
}
},
{
RelationshipType: "CONTAINS",
ValueType: "NUM",
Expand Down
10 changes: 9 additions & 1 deletion src/utilities/TID300/unit2CodingValue.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,22 @@ const NO_UNIT = {
CodeMeaning: "px"
};

const HU_UNIT = {
CodeValue: "HU",
CodingSchemeDesignator: "UCUM",
CodingSchemeVersion: "1.4",
CodeMeaning: "HU"
};

const NO2_UNIT = NO_UNIT;

const measurementMap = {
px: NO_UNIT,
mm: MM_UNIT,
mm2: MM2_UNIT,
"mm\xB2": MM2_UNIT,
"px\xB2": NO2_UNIT
"px\xB2": NO2_UNIT,
HU: HU_UNIT
};

/** Converts the given unit into the
Expand Down
Loading