40 #include "vtkRenderingCoreModule.h"
50 #define VTK_WIREFRAME 1
62 class vtkPropertyInternals;
111 vtkGetMacro(Lighting,
bool);
123 vtkGetMacro(RenderPointsAsSpheres,
bool);
136 vtkGetMacro(RenderLinesAsTubes,
bool);
146 vtkGetMacro(Interpolation,
int);
148 { this->SetInterpolation(
VTK_FLAT); }
153 const char *GetInterpolationAsString();
161 vtkGetMacro(Representation,
int);
168 const char *GetRepresentationAsString();
177 virtual void SetColor(
double r,
double g,
double b);
178 virtual void SetColor(
double a[3]);
180 void GetColor(
double rgb[3]);
181 void GetColor(
double &r,
double &g,
double &b);
188 vtkSetClampMacro(Ambient,
double, 0.0, 1.0);
189 vtkGetMacro(Ambient,
double);
196 vtkSetClampMacro(Diffuse,
double, 0.0, 1.0);
197 vtkGetMacro(Diffuse,
double);
204 vtkSetClampMacro(Specular,
double, 0.0, 1.0);
205 vtkGetMacro(Specular,
double);
212 vtkSetClampMacro(SpecularPower,
double, 0.0, 128.0);
213 vtkGetMacro(SpecularPower,
double);
221 vtkSetClampMacro(Opacity,
double, 0.0, 1.0);
222 vtkGetMacro(Opacity,
double);
232 vtkSetVector3Macro(AmbientColor,
double);
233 vtkGetVector3Macro(AmbientColor,
double);
240 vtkSetVector3Macro(DiffuseColor,
double);
241 vtkGetVector3Macro(DiffuseColor,
double);
248 vtkSetVector3Macro(SpecularColor,
double);
249 vtkGetVector3Macro(SpecularColor,
double);
258 vtkGetMacro(EdgeVisibility,
int);
267 vtkSetVector3Macro(EdgeColor,
double);
268 vtkGetVector3Macro(EdgeColor,
double);
277 vtkGetMacro(LineWidth,
float);
287 vtkGetMacro(LineStipplePattern,
int);
296 vtkSetClampMacro(LineStippleRepeatFactor,
int, 1,
VTK_INT_MAX);
297 vtkGetMacro(LineStippleRepeatFactor,
int);
306 vtkGetMacro(PointSize,
float);
315 vtkGetMacro(BackfaceCulling,
int);
326 vtkGetMacro(FrontfaceCulling,
int);
344 vtkGetMacro(Shading,
int);
363 virtual void AddShaderVariable(
const char *
name,
int numVars,
int *x);
364 virtual void AddShaderVariable(
const char *
name,
int numVars,
float *x);
365 virtual void AddShaderVariable(
const char *
name,
int numVars,
double *x);
373 { this->AddShaderVariable(
name, 1, &v); }
375 { this->AddShaderVariable(
name, 1, &v); }
377 { this->AddShaderVariable(
name, 1, &v); }
381 this->AddShaderVariable(
name, 2, v);
385 float v[2] = {v1, v2};
386 this->AddShaderVariable(
name, 2, v);
390 double v[2] = {v1, v2};
391 this->AddShaderVariable(
name, 2, v);
395 int v[3] = {v1, v2, v3};
396 this->AddShaderVariable(
name, 3, v);
400 float v[3] = {v1, v2, v3};
401 this->AddShaderVariable(
name, 3, v);
405 double v[3] = {v1, v2, v3};
406 this->AddShaderVariable(
name, 3, v);
428 void SetTexture(
int unit,
vtkTexture* texture);
430 void RemoveTexture(
int unit);
437 void RemoveTexture(
const char*
name);
442 void RemoveAllTextures();
447 int GetNumberOfTextures();
454 virtual void ReleaseGraphicsResources(
vtkWindow *win);
462 VTK_TEXTURE_UNIT_0 = 0,
479 static void ComputeCompositeColor(
double result[3],
480 double ambient,
const double ambient_color[3],
481 double diffuse,
const double diffuse_color[3],
482 double specular,
const double specular_color[3]);
485 double AmbientColor[3];
486 double DiffuseColor[3];
487 double SpecularColor[3];
510 vtkSetStringMacro(MaterialName);
516 int GetTextureUnitAtIndex(
int index);
517 int GetTextureUnit(
const char*
name);
521 void operator=(
const vtkProperty&) VTK_DELETE_FUNCTION;
523 vtkPropertyInternals* Internals;