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