16#ifndef vtkContextDevice3D_h 
   17#define vtkContextDevice3D_h 
   21#include "vtkRenderingContext2DModule.h"  
   26VTK_ABI_NAMESPACE_BEGIN
 
   47    const float* verts, 
int n, 
const unsigned char* colors = 
nullptr, 
int nc = 0) = 0;
 
   54    const float* verts, 
int n, 
const unsigned char* colors = 
nullptr, 
int nc = 0) = 0;
 
   60    const float* verts, 
int n, 
const unsigned char* colors = 
nullptr, 
int nc = 0) = 0;
 
   62    std::uintptr_t vtkNotUsed(cacheIdentifier));
 
   67  virtual void DrawTriangleMesh(
const float* mesh, 
int n, 
const unsigned char* colors, 
int nc) = 0;
 
   69    std::uintptr_t vtkNotUsed(cacheIdentifier));
 
  140  virtual void ReleaseCache(std::uintptr_t vtkNotUsed(cacheIdentifier)) {}
 
provides a brush that fills shapes drawn by vtkContext2D.
 
Abstract class for drawing 3D primitives.
 
static vtkContextDevice3D * New()
 
virtual void DrawTriangleMesh(vtkDataArray *positions, vtkUnsignedCharArray *colors, std::uintptr_t vtkNotUsed(cacheIdentifier))
 
virtual void GetMatrix(vtkMatrix4x4 *m)=0
Set the model view matrix for the display.
 
virtual void PushMatrix()=0
Push the current matrix onto the stack.
 
virtual void EnableClipping(bool enable)=0
Enable or disable the clipping of the scene.
 
virtual void SetMatrix(vtkMatrix4x4 *m)=0
Set the model view matrix for the display.
 
virtual void ApplyBrush(vtkBrush *brush)=0
Apply the supplied brush which controls the outlines of shapes, as well as lines, points and related ...
 
virtual void SetClipping(const vtkRecti &rect)=0
Supply a float array of length 4 with x1, y1, width, height specifying clipping region for the device...
 
virtual void DrawPoly(const float *verts, int n, const unsigned char *colors=nullptr, int nc=0)=0
Draw a polyline between the specified points.
 
virtual void PopMatrix()=0
Pop the current matrix off of the stack.
 
virtual void DisableClippingPlane(int i)=0
Enable/Disable the specified clipping plane.
 
virtual void MultiplyMatrix(vtkMatrix4x4 *m)=0
Multiply the current model view matrix by the supplied one.
 
virtual void DrawTriangleMesh(const float *mesh, int n, const unsigned char *colors, int nc)=0
Draw triangles to generate the specified mesh.
 
virtual void ApplyPen(vtkPen *pen)=0
Apply the supplied pen which controls the outlines of shapes, as well as lines, points and related pr...
 
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
 
virtual void DisableClipping()
Disable clipping of the display.
 
virtual void EnableClippingPlane(int i, double *planeEquation)=0
Enable/Disable the specified clipping plane.
 
virtual void DrawPoints(vtkDataArray *positions, vtkUnsignedCharArray *colors, std::uintptr_t vtkNotUsed(cacheIdentifier))
 
~vtkContextDevice3D() override
 
virtual void DrawLines(const float *verts, int n, const unsigned char *colors=nullptr, int nc=0)=0
Draw lines defined by specified pair of points.
 
virtual void DrawPoints(const float *verts, int n, const unsigned char *colors=nullptr, int nc=0)=0
Draw points at the vertex positions specified.
 
virtual void ReleaseCache(std::uintptr_t vtkNotUsed(cacheIdentifier))
Concrete graphics implementations maintain a cache of heavy-weight buffer objects to achieve higher i...
 
abstract superclass for arrays of numeric data
 
a simple class to control print indentation
 
represent and manipulate 4x4 transformation matrices
 
abstract base class for most VTK objects
 
provides a pen that draws the outlines of shapes drawn by vtkContext2D.
 
represent and manipulate 3D points
 
dynamic, self-adjusting array of unsigned char
 
abstract specification for Viewports