Go to the documentation of this file.
29 #ifndef vtkAxisFollower_h
30 #define vtkAxisFollower_h
32 #include "vtkRenderingAnnotationModule.h"
67 vtkGetMacro(AutoCenter,
int);
78 vtkGetMacro(EnableDistanceLOD,
int);
87 vtkSetClampMacro(DistanceLODThreshold,
double, 0.0, 1.0);
88 vtkGetMacro(DistanceLODThreshold,
double);
98 vtkGetMacro(EnableViewAngleLOD,
int);
107 vtkSetClampMacro(ViewAngleLODThreshold,
double, 0.0, 1.0);
108 vtkGetMacro(ViewAngleLODThreshold,
double);
125 vtkSetVector2Macro(ScreenOffsetVector,
double);
126 vtkGetVector2Macro(ScreenOffsetVector,
double);
156 double screenSize,
double position[3]);
167 double Rx[3],
double Ry[3],
double Rz[3],
187 double ScreenOffsetVector[2];
194 int VisibleAtCurrentViewAngle;
207 #endif // vtkAxisFollower_h
a subclass of actor that always faces the camera
bool IsTextUpsideDown(double *a, double *b)
vtkWeakPointer< vtkAxisActor > Axis
Create an axis with tick marks and labels.
void ExecuteViewAngleVisibility(double normal[3])
virtual void Render(vtkRenderer *ren)
virtual int RenderTranslucentPolygonalGeometry(vtkViewport *viewport)
double DistanceLODThreshold
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
double ViewAngleLODThreshold
void ComputerAutoCenterTranslation(const double &autoScaleFactor, double translation[3])
static double AutoScale(vtkViewport *viewport, vtkCamera *camera, double screenSize, double position[3])
Calculate scale factor to maintain same size of a object on the screen.
void SetScreenOffset(double offset)
virtual int RenderOpaqueGeometry(vtkViewport *viewport)
This causes the actor to be rendered.
void CalculateOrthogonalVectors(double Rx[3], double Ry[3], double Rz[3], vtkAxisActor *axis1, double *dop, vtkRenderer *ren)
abstract class specifies interface to map data to graphics primitives
a subclass of vtkFollower that ensures that data is always parallel to the axis defined by a vtkAxisA...
void ComputeRotationAndTranlation(vtkRenderer *ren, double translation[3], double Rx[3], double Ry[3], double Rz[3], vtkAxisActor *axis)
static vtkAxisFollower * New()
Creates a follower with no camera set.
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
a virtual camera for 3D rendering
double GetScreenOffset()
Set/Get the desired screen offset from the axis.
virtual void ComputeTransformMatrix(vtkRenderer *ren)
Generate the matrix based on ivars.
int TestDistanceVisibility()
virtual void SetAxis(vtkAxisActor *)
Set axis that needs to be followed.
abstract specification for Viewports
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
abstract superclass for all actors, volumes and annotations
abstract specification for renderers
virtual void Render(vtkRenderer *ren)
virtual vtkAxisActor * GetAxis()
void ShallowCopy(vtkProp *prop)
Shallow copy of a follower.