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);
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.
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
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])
virtual vtkShaderDeviceAdapter2 * GetShaderDeviceAdapter2()
Get the vtkShaderDeviceAdapter2 if set, returns null otherwise.
void AddShaderVariable(const char *name, double v1, double v2)
virtual void BackfaceRender(vtkActor *, vtkRenderer *)
This method renders the property as a backface property.
static vtkProperty * New()
Construct object with object color, ambient color, diffuse color, specular color, and edge color whit...
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.
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.
vtkTexture * GetTextureAtIndex(int index)
vtkTexture * GetTexture(const char *name)
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)
vtkTexture * GetTexture(int unit)
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.