13 #ifndef _MITK_MATERIAL_H_ 14 #define _MITK_MATERIAL_H_ 17 #include <itkObject.h> 18 #include <itkRGBPixel.h> 19 #include <itkVectorContainer.h> 22 #include <vtkSystemIncludes.h> 39 typedef itk::RGBPixel<double>
Color;
67 smartPtr->UnRegister();
85 smartPtr->UnRegister();
101 static Pointer New(
double red,
double green,
double blue,
double opacity = 1.0f)
104 smartPtr->UnRegister();
129 double colorCoefficient,
130 double specularCoefficient,
131 double specularPower,
134 Pointer smartPtr =
new Material(red, green, blue, colorCoefficient, specularCoefficient, specularPower, opacity);
135 smartPtr->UnRegister();
158 Color color,
double colorCoefficient,
double specularCoefficient,
double specularPower,
double opacity)
160 Pointer smartPtr =
new Material(color, colorCoefficient, specularCoefficient, specularPower, opacity);
161 smartPtr->UnRegister();
175 const Material &property,
double red,
double green,
double blue,
double opacity = 1.0, std::string name =
"")
177 Pointer smartPtr =
new Material(property, red, green, blue, opacity, name);
178 smartPtr->UnRegister();
182 virtual bool Assignable(
const Material &other)
const;
189 virtual void SetColor(Color color);
198 virtual void SetColor(
double red,
double green,
double blue);
205 virtual void SetColorCoefficient(
double coefficient);
212 virtual void SetSpecularColor(Color color);
220 virtual void SetSpecularColor(
double red,
double green,
double blue);
228 virtual void SetSpecularCoefficient(
double specularCoefficient);
236 virtual void SetSpecularPower(
double specularPower);
244 virtual void SetOpacity(
double opacity);
267 virtual void SetLineWidth(
float lineWidth);
272 virtual Color GetColor()
const;
277 virtual double GetColorCoefficient()
const;
283 virtual Color GetSpecularColor()
const;
288 virtual double GetSpecularCoefficient()
const;
293 virtual double GetSpecularPower()
const;
298 virtual double GetOpacity()
const;
314 virtual int GetVtkInterpolation()
const;
320 virtual int GetVtkRepresentation()
const;
325 virtual float GetLineWidth()
const;
333 virtual void Initialize(
const Material &property);
344 void PrintSelf(std::ostream &os, itk::Indent)
const override;
351 itkSetMacro(Name, std::string);
356 itkGetConstMacro(Name, std::string);
381 Material(Color color,
double opacity = 1.0f);
395 Material(
double red,
double green,
double blue,
double opacity = 1.0f);
418 double colorCoefficient,
419 double specularCoefficient,
420 double specularPower,
441 Material(Color color,
double colorCoefficient,
double specularCoefficient,
double specularPower,
double opacity);
453 const Material &property,
double red,
double green,
double blue,
double opacity = 1.0, std::string name =
"");
455 virtual void InitializeStandardValues();
Class for storing surfaces (vtkPolyData).
double m_ColorCoefficient
#define mitkNewMacro1Param(classname, type)
InterpolationType m_Interpolation
static void Update(vtkPolyData *)
DataCollection - Class to facilitate loading/accessing structured data.
static Pointer New(const Material &property, double red, double green, double blue, double opacity=1.0, std::string name="")
double m_SpecularCoefficient
MITKCORE_EXPORT bool operator==(const InteractionEvent &a, const InteractionEvent &b)
static Pointer New(Color color, double colorCoefficient, double specularCoefficient, double specularPower, double opacity)
#define mitkClassMacroItkParent(className, SuperClassName)
itk::VectorContainer< unsigned int, Material::Pointer > MaterialVectorContainer
static Pointer New(Color color, double opacity=1.0f)
itk::RGBPixel< float > Color
Color Standard RGB color typedef (float)
static Pointer New(double red, double green, double blue, double opacity=1.0f)
RepresentationType m_Representation
static Pointer New(double red, double green, double blue, double colorCoefficient, double specularCoefficient, double specularPower, double opacity)