Go to the documentation of this file.
29 #ifndef vtkProp3DAxisFollower_h
30 #define vtkProp3DAxisFollower_h
32 #include "vtkRenderingAnnotationModule.h"
81 vtkSetMacro(EnableDistanceLOD,
int);
82 vtkGetMacro(EnableDistanceLOD,
int);
91 vtkSetClampMacro(DistanceLODThreshold,
double, 0.0, 1.0);
92 vtkGetMacro(DistanceLODThreshold,
double);
101 vtkSetMacro(EnableViewAngleLOD,
int);
102 vtkGetMacro(EnableViewAngleLOD,
int);
111 vtkSetClampMacro(ViewAngleLODThreshold,
double, 0.0, 1.0);
112 vtkGetMacro(ViewAngleLODThreshold,
double);
128 vtkSetVector2Macro(ScreenOffsetVector,
double);
129 vtkGetVector2Macro(ScreenOffsetVector,
double);
148 double screenSize,
double position[3]);
173 double Rx[3],
double Ry[3],
double Rz[3],
193 double ScreenOffsetVector [2];
202 int VisibleAtCurrentViewAngle;
static vtkProp3DAxisFollower * New()
Creates a follower with no camera set.
vtkWeakPointer< vtkViewport > Viewport
int TestDistanceVisibility()
Create an axis with tick marks and labels.
~vtkProp3DAxisFollower() override
double DistanceLODThreshold
void ShallowCopy(vtkProp *prop) override
Shallow copy of a follower.
bool IsTextUpsideDown(double *a, double *b)
virtual void SetViewport(vtkViewport *viewport)
a vtkProp3D that always faces the camera
vtkWeakPointer< vtkAxisActor > Axis
int RenderTranslucentPolygonalGeometry(vtkViewport *viewport) override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
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 CalculateOrthogonalVectors(double Rx[3], double Ry[3], double Rz[3], vtkAxisActor *axis1, double *dop, vtkViewport *ren)
a simple class to control print indentation
void ExecuteViewAngleVisibility(double normal[3])
a virtual camera for 3D rendering
virtual void SetAxis(vtkAxisActor *)
Set axis that needs to be followed.
void ComputerAutoCenterTranslation(const double &autoScaleFactor, double translation[3])
double GetScreenOffset()
Set/Get the desired screen vertical offset from the axis.
abstract specification for Viewports
void ComputeMatrix() override
Generate the matrix based on ivars.
abstract superclass for all actors, volumes and annotations
virtual vtkViewport * GetViewport()
virtual vtkAxisActor * GetAxis()
void ComputeRotationAndTranlation(vtkViewport *ren, double translation[3], double Rx[3], double Ry[3], double Rz[3], vtkAxisActor *axis)
int RenderVolumetricGeometry(vtkViewport *viewport) override
double ViewAngleLODThreshold
a subclass of vtkProp3DFollower that ensures that data is always parallel to the axis defined by a vt...
void SetScreenOffset(double offset)
int RenderOpaqueGeometry(vtkViewport *viewport) override
This causes the actor to be rendered.