40 #include "vtkRenderingCoreModule.h" 51 #define VTK_WIREFRAME 1 64 class vtkPropertyInternals;
113 vtkGetMacro(Lighting,
bool);
114 vtkSetMacro(Lighting,
bool);
115 vtkBooleanMacro(Lighting,
bool);
125 vtkGetMacro(RenderPointsAsSpheres,
bool);
126 vtkSetMacro(RenderPointsAsSpheres,
bool);
127 vtkBooleanMacro(RenderPointsAsSpheres,
bool);
138 vtkGetMacro(RenderLinesAsTubes,
bool);
139 vtkSetMacro(RenderLinesAsTubes,
bool);
140 vtkBooleanMacro(RenderLinesAsTubes,
bool);
148 vtkGetMacro(Interpolation,
int);
150 { this->SetInterpolation(
VTK_FLAT); }
155 const char *GetInterpolationAsString();
163 vtkGetMacro(Representation,
int);
170 const char *GetRepresentationAsString();
179 virtual void SetColor(
double r,
double g,
double b);
180 virtual void SetColor(
double a[3]);
182 void GetColor(
double rgb[3]);
183 void GetColor(
double &r,
double &g,
double &b);
190 vtkSetClampMacro(Ambient,
double, 0.0, 1.0);
191 vtkGetMacro(Ambient,
double);
198 vtkSetClampMacro(Diffuse,
double, 0.0, 1.0);
199 vtkGetMacro(Diffuse,
double);
206 vtkSetClampMacro(Specular,
double, 0.0, 1.0);
207 vtkGetMacro(Specular,
double);
214 vtkSetClampMacro(SpecularPower,
double, 0.0, 128.0);
215 vtkGetMacro(SpecularPower,
double);
223 vtkSetClampMacro(Opacity,
double, 0.0, 1.0);
224 vtkGetMacro(Opacity,
double);
234 vtkSetVector3Macro(AmbientColor,
double);
235 vtkGetVector3Macro(AmbientColor,
double);
242 vtkSetVector3Macro(DiffuseColor,
double);
243 vtkGetVector3Macro(DiffuseColor,
double);
250 vtkSetVector3Macro(SpecularColor,
double);
251 vtkGetVector3Macro(SpecularColor,
double);
269 vtkSetVector3Macro(EdgeColor,
double);
270 vtkGetVector3Macro(EdgeColor,
double);
288 vtkSetVector3Macro(VertexColor,
double);
289 vtkGetVector3Macro(VertexColor,
double);
298 vtkGetMacro(LineWidth,
float);
307 vtkSetMacro(LineStipplePattern,
int);
308 vtkGetMacro(LineStipplePattern,
int);
317 vtkSetClampMacro(LineStippleRepeatFactor,
int, 1,
VTK_INT_MAX);
318 vtkGetMacro(LineStippleRepeatFactor,
int);
327 vtkGetMacro(PointSize,
float);
356 vtkSetStringMacro(MaterialName);
357 vtkGetStringMacro(MaterialName);
385 virtual void AddShaderVariable(
const char *
name,
int numVars,
int *x);
386 virtual void AddShaderVariable(
const char *name,
int numVars,
float *x);
387 virtual void AddShaderVariable(
const char *name,
int numVars,
double *x);
395 { this->AddShaderVariable(name, 1, &v); }
397 { this->AddShaderVariable(name, 1, &v); }
399 { this->AddShaderVariable(name, 1, &v); }
403 this->AddShaderVariable(name, 2, v);
407 float v[2] = {v1, v2};
408 this->AddShaderVariable(name, 2, v);
412 double v[2] = {v1, v2};
413 this->AddShaderVariable(name, 2, v);
417 int v[3] = {v1, v2, v3};
418 this->AddShaderVariable(name, 3, v);
422 float v[3] = {v1, v2, v3};
423 this->AddShaderVariable(name, 3, v);
427 double v[3] = {v1, v2, v3};
428 this->AddShaderVariable(name, 3, v);
441 void SetTexture(
const char* name,
vtkTexture* texture);
452 VTK_LEGACY(
void SetTexture(
int unit,
vtkTexture* texture));
454 VTK_LEGACY(
void RemoveTexture(
int unit));
460 void RemoveTexture(
const char* name);
465 void RemoveAllTextures();
470 int GetNumberOfTextures();
476 return this->Textures; }
483 virtual void ReleaseGraphicsResources(
vtkWindow *win);
486 #ifndef VTK_LEGACY_REMOVE 490 VTK_TEXTURE_UNIT_0 = 0,
516 static void ComputeCompositeColor(
double result[3],
517 double ambient,
const double ambient_color[3],
518 double diffuse,
const double diffuse_color[3],
519 double specular,
const double specular_color[3]);
522 double AmbientColor[3];
523 double DiffuseColor[3];
524 double SpecularColor[3];
526 double VertexColor[3];
567 if (this->Interpolation ==
VTK_FLAT)
void AddShaderVariable(const char *name, float v1, float v2, float v3)
Methods to provide to add shader variables from wrappers.
represents an object (geometry & properties) in a rendered scene
void SetInterpolationToPhong()
Set the shading interpolation method for an object.
abstract base class for most VTK objects
void AddShaderVariable(const char *name, double v)
Methods to provide to add shader variables from wrappers.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Represents an XML element and those nested inside.
vtkTypeBool EdgeVisibility
void AddShaderVariable(const char *name, double v1, double v2, double v3)
Methods to provide to add shader variables from wrappers.
represent surface properties of a geometric object
const char * GetRepresentationAsString()
Return the method of shading as a descriptive character string.
void SetInterpolationToFlat()
Set the shading interpolation method for an object.
void AddShaderVariable(const char *name, int v1, int v2, int v3)
Methods to provide to add shader variables from wrappers.
void AddShaderVariable(const char *name, float v)
Methods to provide to add shader variables from wrappers.
abstract specification for renderers
void AddShaderVariable(const char *name, double v1, double v2)
Methods to provide to add shader variables from wrappers.
std::map< std::string, vtkTexture * > MapOfTextures
void SetRepresentationToPoints()
Control the surface geometry representation for the object.
void SetInterpolationToGouraud()
Set the shading interpolation method for an object.
window superclass for vtkRenderWindow
void AddShaderVariable(const char *name, float v1, float v2)
Methods to provide to add shader variables from wrappers.
a simple class to control print indentation
void SetRepresentationToWireframe()
Control the surface geometry representation for the object.
virtual vtkShaderDeviceAdapter2 * GetShaderDeviceAdapter2()
Get the vtkShaderDeviceAdapter2 if set, returns null otherwise.
handles properties associated with a texture map
void SetRepresentationToSurface()
Control the surface geometry representation for the object.
#define VTK_SIZEHINT(...)
void AddShaderVariable(const char *name, int v)
Methods to provide to add shader variables from wrappers.
std::map< std::string, vtkTexture * > & GetAllTextures()
Returns all the textures in this property and their names.
virtual void BackfaceRender(vtkActor *, vtkRenderer *)
This method renders the property as a backface property.
vtkTypeBool FrontfaceCulling
int LineStippleRepeatFactor
const char * GetInterpolationAsString()
Return the method of shading as a descriptive character string.
bool RenderPointsAsSpheres
vtkTypeBool VertexVisibility
void AddShaderVariable(const char *name, int v1, int v2)
Methods to provide to add shader variables from wrappers.
an adapter to pass generic vertex attributes to the rendering pipeline.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
vtkInformation * Information
vtkTypeBool BackfaceCulling
The ShaderProgram uses one or more Shader objects.