23 #include <vtkSmartPointer.h> 32 if (!doseNode)
return;
36 if (doseImage !=
nullptr)
50 if (showColorWashGlobal)
53 vtkSmartPointer<vtkColorTransferFunction> transferFunction = vtkSmartPointer<vtkColorTransferFunction>::New();
57 float *hsv =
new float[3];
59 vtkSmartPointer<vtkMath> cCalc = vtkSmartPointer<vtkMath>::New();
60 if (itIsoDoseLevel->GetVisibleColorWash()){
61 cCalc->RGBToHSV(itIsoDoseLevel->GetColor()[0], itIsoDoseLevel->GetColor()[1], itIsoDoseLevel->GetColor()[2], &hsv[0], &hsv[1], &hsv[2]);
62 transferFunction->AddHSVPoint(itIsoDoseLevel->GetDoseValue()*referenceDose, hsv[0], hsv[1], hsv[2], 1.0, 1.0);
68 mitkTransFunc->SetColorTransferFunction(transferFunction);
69 mitkTransFuncProp->SetValue(mitkTransFunc);
71 doseNode->
SetProperty(
"Image Rendering.Transfer Function", mitkTransFuncProp);
80 doseNode->
SetProperty(
"Image Rendering.Mode", renderingModeProp);
88 if (doseOutlineNode !=
nullptr)
92 if (doseImage !=
nullptr)
96 mitk::IsoDoseLevelVector::Pointer levelVector = mitk::IsoDoseLevelVector::New();
113 doseOutlineNode->
SetMapper(1, contourMapper);
void MITKDICOMRT_EXPORT ConfigureNodeAsIsoLineNode(mitk::DataNode *doseOutlineNode, const mitk::IsoDoseLevelSet *colorPreset, mitk::DoseValueAbs referenceDose, bool showIsolinesGlobal=true)
Stores values needed for the representation/visualization of dose iso levels.
virtual void SetMapper(MapperSlotId id, mitk::Mapper *mapper)
static const std::string REFERENCE_DOSE_PROPERTY_NAME
static const std::string DOSE_FREE_ISO_VALUES_PROPERTY_NAME
static const std::string DOSE_ISO_LEVELS_PROPERTY_NAME
void SetProperty(const std::string &propertyKey, BaseProperty *property, const std::string &contextName="", bool fallBackOnDefaultContext=false) override
Add new or change existent property.
void MITKDICOMRT_EXPORT ConfigureNodeAsDoseNode(mitk::DataNode *doseNode, const mitk::IsoDoseLevelSet *colorPreset, mitk::DoseValueAbs referenceDose, bool showColorWashGlobal=true)
void SetFloatProperty(const char *propertyKey, float floatValue, const mitk::BaseRenderer *renderer=nullptr)
Convenience method for setting float properties (instances of FloatProperty)
BaseData * GetData() const
Get the data object (instance of BaseData, e.g., an Image) managed by this DataNode.
Image class for storing images.
void SetBoolProperty(const char *propertyKey, bool boolValue, const mitk::BaseRenderer *renderer=nullptr)
Convenience method for setting boolean properties (instances of BoolProperty)
ConstIterator Begin(void) const
static const std::string DOSE_SHOW_COLORWASH_PROPERTY_NAME
static const std::string DOSE_SHOW_ISOLINES_PROPERTY_NAME
double DoseValueAbs
Represents absolute dose values (in Gy).
Class for nodes of the DataTree.
ConstIterator End(void) const