13 #ifndef mitkMaterial_h
14 #define mitkMaterial_h
17 #include <itkObject.h>
18 #include <itkRGBPixel.h>
19 #include <itkVectorContainer.h>
22 #include <vtkSystemIncludes.h>
39 typedef itk::RGBPixel<double>
Color;
64 smartPtr->UnRegister();
76 static Pointer
New(
Color color,
double opacity = 1.0f)
78 Pointer smartPtr =
new Material(color, opacity);
79 smartPtr->UnRegister();
92 static Pointer
New(
double red,
double green,
double blue,
double opacity = 1.0f)
94 Pointer smartPtr =
new Material(red, green, blue, opacity);
95 smartPtr->UnRegister();
114 static Pointer
New(
double red,
117 double colorCoefficient,
118 double specularCoefficient,
119 double specularPower,
122 Pointer smartPtr =
new Material(red, green, blue, colorCoefficient, specularCoefficient, specularPower, opacity);
123 smartPtr->UnRegister();
143 Color color,
double colorCoefficient,
double specularCoefficient,
double specularPower,
double opacity)
145 Pointer smartPtr =
new Material(color, colorCoefficient, specularCoefficient, specularPower, opacity);
146 smartPtr->UnRegister();
160 const Material &property,
double red,
double green,
double blue,
double opacity = 1.0, std::string name =
"")
162 Pointer smartPtr =
new Material(property, red, green, blue, opacity, name);
163 smartPtr->UnRegister();
183 virtual void SetColor(
double red,
double green,
double blue);
329 void PrintSelf(std::ostream &os, itk::Indent)
const override;
336 itkSetMacro(Name, std::string);
341 itkGetConstMacro(Name, std::string);
371 Material(
double red,
double green,
double blue,
double opacity = 1.0f);
391 double colorCoefficient,
392 double specularCoefficient,
393 double specularPower,
411 Material(
Color color,
double colorCoefficient,
double specularCoefficient,
double specularPower,
double opacity);
423 const Material &property,
double red,
double green,
double blue,
double opacity = 1.0, std::string name =
"");
static Pointer New(Color color, double opacity=1.0f)
itk::RGBPixel< double > Color
virtual double GetColorCoefficient() const
static Pointer New(double red, double green, double blue, double opacity=1.0f)
static Pointer New(Color color, double colorCoefficient, double specularCoefficient, double specularPower, double opacity)
virtual void SetSpecularCoefficient(double specularCoefficient)
static Pointer New(double red, double green, double blue, double colorCoefficient, double specularCoefficient, double specularPower, double opacity)
virtual Color GetColor() const
virtual double GetSpecularCoefficient() const
virtual RepresentationType GetRepresentation() const
Material(double red, double green, double blue, double opacity=1.0f)
virtual float GetLineWidth() const
virtual void SetSpecularPower(double specularPower)
virtual void SetColor(Color color)
virtual int GetVtkInterpolation() const
virtual void SetSpecularColor(Color color)
virtual void Initialize(const Material &property)
double m_SpecularCoefficient
InterpolationType m_Interpolation
virtual void SetOpacity(double opacity)
mitkClassMacroItkParent(Material, itk::Object)
virtual double GetOpacity() const
virtual Material & operator=(const Material &other)
virtual void SetLineWidth(float lineWidth)
static Pointer New(const Material &property, double red, double green, double blue, double opacity=1.0, std::string name="")
mitkNewMacro1Param(Material, const Material &)
virtual void SetColor(double red, double green, double blue)
void PrintSelf(std::ostream &os, itk::Indent) const override
virtual InterpolationType GetInterpolation() const
Material(const Material &property)
virtual int GetVtkRepresentation() const
virtual void SetColorCoefficient(double coefficient)
Material(const Material &property, double red, double green, double blue, double opacity=1.0, std::string name="")
RepresentationType m_Representation
Material(double red, double green, double blue, double colorCoefficient, double specularCoefficient, double specularPower, double opacity)
virtual void SetSpecularColor(double red, double green, double blue)
virtual void InitializeStandardValues()
virtual bool operator==(const Material &property) const
Material(Color color, double opacity=1.0f)
virtual void SetInterpolation(InterpolationType interpolation)
virtual void SetRepresentation(RepresentationType representation)
Material(Color color, double colorCoefficient, double specularCoefficient, double specularPower, double opacity)
virtual bool Assignable(const Material &other) const
double m_ColorCoefficient
virtual Color GetSpecularColor() const
virtual double GetSpecularPower() const
Class for storing surfaces (vtkPolyData).
Find image slices visible on a given plane.
itk::VectorContainer< unsigned int, Material::Pointer > MaterialVectorContainer