VTK
9.0.1
Rendering
Context2D
vtkContext3D.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkContext3D.h
5
6
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7
All rights reserved.
8
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10
This software is distributed WITHOUT ANY WARRANTY; without even
11
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12
PURPOSE. See the above copyright notice for more information.
13
14
=========================================================================*/
15
27
#ifndef vtkContext3D_h
28
#define vtkContext3D_h
29
30
#include "
vtkObject.h
"
31
#include "vtkRenderingContext2DModule.h"
// For export macro
32
#include "
vtkSmartPointer.h
"
// For SP ivars.
33
#include "
vtkVector.h
"
// For the vector coordinates.
34
35
class
vtkContextDevice3D
;
36
class
vtkPen
;
37
class
vtkBrush
;
38
class
vtkTransform
;
39
40
class
VTKRENDERINGCONTEXT2D_EXPORT
vtkContext3D
:
public
vtkObject
41
{
42
public
:
43
vtkTypeMacro(
vtkContext3D
,
vtkObject
);
44
void
PrintSelf
(ostream& os,
vtkIndent
indent)
override
;
45
49
static
vtkContext3D
*
New
();
50
56
bool
Begin(
vtkContextDevice3D
* device);
57
61
vtkContextDevice3D
* GetDevice();
62
68
bool
End();
69
73
void
DrawLine(
const
vtkVector3f
& start,
const
vtkVector3f
& end);
74
78
void
DrawPoly(
const
float
*
points
,
int
n);
79
83
void
DrawPoint(
const
vtkVector3f
&
point
);
84
88
void
DrawPoints(
const
float
*
points
,
int
n);
89
95
void
DrawPoints(
const
float
*
points
,
int
n,
unsigned
char
* colors,
int
nc_comps);
96
100
void
DrawTriangleMesh(
const
float
* mesh,
int
n,
const
unsigned
char
* colors,
int
nc);
101
107
void
ApplyPen(
vtkPen
* pen);
108
114
void
ApplyBrush(
vtkBrush
* brush);
115
121
void
SetTransform(
vtkTransform
* transform);
122
126
vtkTransform
* GetTransform();
127
134
void
AppendTransform(
vtkTransform
* transform);
135
137
141
void
PushMatrix();
142
void
PopMatrix();
144
146
153
void
EnableClippingPlane(
int
i,
double
* planeEquation);
154
void
DisableClippingPlane(
int
i);
156
157
protected
:
158
vtkContext3D
();
159
~
vtkContext3D
()
override
;
160
161
vtkSmartPointer<vtkContextDevice3D>
Device
;
// The underlying device
162
vtkSmartPointer<vtkTransform>
Transform
;
// Current transform
163
164
private
:
165
vtkContext3D
(
const
vtkContext3D
&) =
delete
;
166
void
operator=(
const
vtkContext3D
&) =
delete
;
167
};
168
169
#endif // VTKCONTEXT3D_H
vtkObject
abstract base class for most VTK objects
Definition:
vtkObject.h:62
vtkContextDevice3D
Abstract class for drawing 3D primitives.
Definition:
vtkContextDevice3D.h:41
vtkObject::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkVector3f
Definition:
vtkVector.h:475
vtkTransform
describes linear transformations via a 4x4 matrix
Definition:
vtkTransform.h:54
vtkSmartPointer< vtkContextDevice3D >
vtkContext3D::Transform
vtkSmartPointer< vtkTransform > Transform
Definition:
vtkContext3D.h:162
vtkBrush
provides a brush that fills shapes drawn by vtkContext2D.
Definition:
vtkBrush.h:37
vtkIndent
a simple class to control print indentation
Definition:
vtkIndent.h:33
vtkVector.h
vtkX3D::points
Definition:
vtkX3D.h:452
vtkPen
provides a pen that draws the outlines of shapes drawn by vtkContext2D.
Definition:
vtkPen.h:36
vtkSmartPointer.h
vtkX3D::point
Definition:
vtkX3D.h:242
vtkObject::New
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
vtkObject.h
vtkContext3D::Device
vtkSmartPointer< vtkContextDevice3D > Device
Definition:
vtkContext3D.h:161
vtkContext3D
Class for drawing 3D primitives to a graphical context.
Definition:
vtkContext3D.h:40
Generated on Sat May 28 2022 12:07:01 for VTK by
1.8.14