49 #define VTK_WIREFRAME 1
61 class vtkPropertyInternals;
103 vtkGetMacro(Lighting,
bool);
104 vtkSetMacro(Lighting,
bool);
105 vtkBooleanMacro(Lighting,
bool);
111 vtkGetMacro(Interpolation,
int);
113 { this->SetInterpolation(
VTK_FLAT); }
118 const char *GetInterpolationAsString();
124 vtkGetMacro(Representation,
int);
131 const char *GetRepresentationAsString();
138 virtual void SetColor(
double r,
double g,
double b);
139 virtual void SetColor(
double a[3]);
141 void GetColor(
double rgb[3]);
142 void GetColor(
double &r,
double &g,
double &b);
147 vtkSetClampMacro(Ambient,
double, 0.0, 1.0);
148 vtkGetMacro(Ambient,
double);
153 vtkSetClampMacro(Diffuse,
double, 0.0, 1.0);
154 vtkGetMacro(Diffuse,
double);
159 vtkSetClampMacro(Specular,
double, 0.0, 1.0);
160 vtkGetMacro(Specular,
double);
165 vtkSetClampMacro(SpecularPower,
double, 0.0, 128.0);
166 vtkGetMacro(SpecularPower,
double);
172 vtkSetClampMacro(Opacity,
double, 0.0, 1.0);
173 vtkGetMacro(Opacity,
double);
181 vtkSetVector3Macro(AmbientColor,
double);
182 vtkGetVector3Macro(AmbientColor,
double);
187 vtkSetVector3Macro(DiffuseColor,
double);
188 vtkGetVector3Macro(DiffuseColor,
double);
193 vtkSetVector3Macro(SpecularColor,
double);
194 vtkGetVector3Macro(SpecularColor,
double);
201 vtkGetMacro(EdgeVisibility,
int);
202 vtkSetMacro(EdgeVisibility,
int);
203 vtkBooleanMacro(EdgeVisibility,
int);
208 vtkSetVector3Macro(EdgeColor,
double);
209 vtkGetVector3Macro(EdgeColor,
double);
216 vtkGetMacro(LineWidth,
float);
223 vtkSetMacro(LineStipplePattern,
int);
224 vtkGetMacro(LineStipplePattern,
int);
231 vtkSetClampMacro(LineStippleRepeatFactor,
int, 1,
VTK_INT_MAX);
232 vtkGetMacro(LineStippleRepeatFactor,
int);
239 vtkGetMacro(PointSize,
float);
246 vtkGetMacro(BackfaceCulling,
int);
247 vtkSetMacro(BackfaceCulling,
int);
248 vtkBooleanMacro(BackfaceCulling,
int);
255 vtkGetMacro(FrontfaceCulling,
int);
256 vtkSetMacro(FrontfaceCulling,
int);
257 vtkBooleanMacro(FrontfaceCulling,
int);
262 vtkGetStringMacro(MaterialName);
268 vtkSetMacro(Shading,
int);
269 vtkGetMacro(Shading,
int);
270 vtkBooleanMacro(Shading,
int);
284 virtual void AddShaderVariable(
const char *
name,
int numVars,
int *x);
285 virtual void AddShaderVariable(
const char *
name,
int numVars,
float *x);
286 virtual void AddShaderVariable(
const char *
name,
int numVars,
double *x);
292 { this->AddShaderVariable(name, 1, &v); }
294 { this->AddShaderVariable(name, 1, &v); }
296 { this->AddShaderVariable(name, 1, &v); }
300 this->AddShaderVariable(name, 2, v);
304 float v[2] = {v1, v2};
305 this->AddShaderVariable(name, 2, v);
309 double v[2] = {v1, v2};
310 this->AddShaderVariable(name, 2, v);
314 int v[3] = {v1, v2, v3};
315 this->AddShaderVariable(name, 3, v);
319 float v[3] = {v1, v2, v3};
320 this->AddShaderVariable(name, 3, v);
324 double v[3] = {v1, v2, v3};
325 this->AddShaderVariable(name, 3, v);
343 void SetTexture(
int unit,
vtkTexture* texture);
345 void RemoveTexture(
int unit);
350 void RemoveTexture(
const char*
name);
353 void RemoveAllTextures();
356 int GetNumberOfTextures();
361 virtual void ReleaseGraphicsResources(
vtkWindow *win);
369 VTK_TEXTURE_UNIT_0 = 0,
387 static void ComputeCompositeColor(
double result[3],
388 double ambient,
const double ambient_color[3],
389 double diffuse,
const double diffuse_color[3],
390 double specular,
const double specular_color[3]);
394 double AmbientColor[3];
395 double DiffuseColor[3];
396 double SpecularColor[3];
417 vtkSetStringMacro(MaterialName);
424 int GetTextureUnitAtIndex(
int index);
425 int GetTextureUnit(
const char*
name);
432 vtkPropertyInternals* Internals;
void AddShaderVariable(const char *name, float v1, float v2, float v3)
represents an object (geometry & properties) in a rendered scene
void SetInterpolationToPhong()
abstract base class for most VTK objects
void AddShaderVariable(const char *name, double v)
Represents an XML element and those nested inside.
void AddShaderVariable(const char *name, double v1, double v2, double v3)
represent surface properties of a geometric object
const char * GetRepresentationAsString()
void SetInterpolationToFlat()
void AddShaderVariable(const char *name, int v1, int v2, int v3)
void DeepCopy(vtkPistonReference *self, vtkPistonReference *other)
void AddShaderVariable(const char *name, float v)
abstract specification for renderers
void AddShaderVariable(const char *name, double v1, double v2)
void SetRepresentationToPoints()
void SetInterpolationToGouraud()
window superclass for vtkRenderWindow
void AddShaderVariable(const char *name, float v1, float v2)
virtual void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
void SetRepresentationToWireframe()
virtual vtkShaderDeviceAdapter2 * GetShaderDeviceAdapter2()
handles properties associated with a texture map
void SetRepresentationToSurface()
void AddShaderVariable(const char *name, int v)
virtual void BackfaceRender(vtkActor *, vtkRenderer *)
int LineStippleRepeatFactor
const char * GetInterpolationAsString()
#define VTKRENDERINGCORE_EXPORT
void AddShaderVariable(const char *name, int v1, int v2)
an adapter to pass generic vertex attributes to the rendering pipeline. .SECTION This class is an ada...
The ShaderProgram uses one or more Shader objects.