40#include "vtkRenderingCoreModule.h"
50#define VTK_WIREFRAME 1
62class 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);
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);
297 vtkGetMacro(LineStippleRepeatFactor,
int);
306 vtkGetMacro(PointSize,
float);
315 vtkGetMacro(BackfaceCulling,
int);
326 vtkGetMacro(FrontfaceCulling,
int);
344 vtkGetMacro(Shading,
int);
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);
462 VTK_TEXTURE_UNIT_0 = 0,
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);
521 void operator=(
const vtkProperty&) VTK_DELETE_FUNCTION;
523 vtkPropertyInternals* Internals;
represents an object (geometry & properties) in a rendered scene
a simple class to control print indentation
abstract base class for most VTK objects
represent surface properties of a geometric object
void SetTexture(int unit, vtkTexture *texture)
Set/Get the texture object to control rendering texture maps.
static vtkProperty * New()
Construct object with object color, ambient color, diffuse color, specular color, and edge color whit...
vtkTexture * GetTextureAtIndex(int index)
virtual void AddShaderVariable(const char *name, int numVars, int *x)
Provide values to initialize shader variables.
void SetRepresentationToPoints()
void SetTexture(const char *name, vtkTexture *texture)
Set/Get the texture object to control rendering texture maps.
void SetRepresentationToWireframe()
int LineStippleRepeatFactor
vtkTexture * GetTexture(int unit)
static void ComputeCompositeColor(double result[3], double ambient, const double ambient_color[3], double diffuse, const double diffuse_color[3], double specular, const double specular_color[3])
Computes composite color.
virtual void SetColor(double a[3])
void AddShaderVariable(const char *name, double v1, double v2)
virtual void BackfaceRender(vtkActor *, vtkRenderer *)
This method renders the property as a backface property.
int GetNumberOfTextures()
Returns the number of textures in this property.
void SetInterpolationToFlat()
void RemoveAllTextures()
Remove all the textures.
int GetTextureUnit(const char *name)
void GetColor(double &r, double &g, double &b)
void SetInterpolationToGouraud()
void DeepCopy(vtkProperty *p)
Assign one property to another.
vtkTexture * GetTexture(const char *name)
virtual vtkShaderDeviceAdapter2 * GetShaderDeviceAdapter2()
Get the vtkShaderDeviceAdapter2 if set, returns null otherwise.
void AddShaderVariable(const char *name, double v)
virtual void Render(vtkActor *, vtkRenderer *)
This method causes the property to set up whatever is required for its instance variables.
const char * GetInterpolationAsString()
Return the method of shading as a descriptive character string.
void SetRepresentationToSurface()
void SetInterpolationToPhong()
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
void AddShaderVariable(const char *name, double v1, double v2, double v3)
bool RenderPointsAsSpheres
virtual void AddShaderVariable(const char *name, int numVars, float *x)
void AddShaderVariable(const char *name, int v1, int v2, int v3)
void RemoveTexture(int unit)
virtual void SetColor(double r, double g, double b)
Set the color of the object.
void AddShaderVariable(const char *name, float v1, float v2, float v3)
virtual void ReleaseGraphicsResources(vtkWindow *win)
Release any graphics resources that are being consumed by this property.
void AddShaderVariable(const char *name, int v)
Methods to provide to add shader variables from tcl.
void RemoveTexture(const char *name)
Remove a texture from the collection.
void AddShaderVariable(const char *name, float v1, float v2)
virtual void AddShaderVariable(const char *name, int numVars, double *x)
void GetColor(double rgb[3])
virtual void PostRender(vtkActor *, vtkRenderer *)
This method is called after the actor has been rendered.
VTKTextureUnit
Used to specify which texture unit a texture will use.
void AddShaderVariable(const char *name, int v1, int v2)
int GetTextureUnitAtIndex(int index)
const char * GetRepresentationAsString()
Return the method of shading as a descriptive character string.
void AddShaderVariable(const char *name, float v)
abstract specification for renderers
an adapter to pass generic vertex attributes to the rendering pipeline.
The ShaderProgram uses one or more Shader objects.
handles properties associated with a texture map
window superclass for vtkRenderWindow
Represents an XML element and those nested inside.
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.