VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkAxisFollower Class Reference

a subclass of vtkFollower that ensures that data is always parallel to the axis defined by a vtkAxisActor. More...

#include <vtkAxisFollower.h>

Inheritance diagram for vtkAxisFollower:
Inheritance graph
[legend]
Collaboration diagram for vtkAxisFollower:
Collaboration graph
[legend]

List of all members.

Public Types

typedef vtkFollower Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkAxisFollowerNewInstance () const
virtual void PrintSelf (ostream &os, vtkIndent indent)
virtual void ComputeTransformMatrix (vtkRenderer *ren)
void ShallowCopy (vtkProp *prop)
virtual void SetAxis (vtkAxisActor *)
virtual vtkAxisActorGetAxis ()
virtual void SetAutoCenter (int)
virtual int GetAutoCenter ()
virtual void AutoCenterOn ()
virtual void AutoCenterOff ()
virtual void SetEnableDistanceLOD (int)
virtual int GetEnableDistanceLOD ()
virtual void SetDistanceLODThreshold (double)
virtual double GetDistanceLODThreshold ()
virtual void SetEnableViewAngleLOD (int)
virtual int GetEnableViewAngleLOD ()
virtual void SetViewAngleLODThreshold (double)
virtual double GetViewAngleLODThreshold ()
virtual void SetScreenOffset (double)
virtual double GetScreenOffset ()
virtual int RenderOpaqueGeometry (vtkViewport *viewport)
virtual int RenderTranslucentPolygonalGeometry (vtkViewport *viewport)
virtual void Render (vtkRenderer *ren)

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkAxisFollowerSafeDownCast (vtkObjectBase *o)
static vtkAxisFollowerNew ()
static double AutoScale (vtkViewport *viewport, vtkCamera *camera, double screenSize, double position[3])

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkAxisFollower ()
 ~vtkAxisFollower ()
void CalculateOrthogonalVectors (double Rx[3], double Ry[3], double Rz[3], vtkAxisActor *axis1, double *dop, vtkRenderer *ren)
void ComputeRotationAndTranlation (vtkRenderer *ren, double translation[3], double Rx[3], double Ry[3], double Rz[3], vtkAxisActor *axis)
void ComputerAutoCenterTranslation (const double &autoScaleFactor, double translation[3])
int TestDistanceVisibility ()
void ExecuteViewAngleVisibility (double normal[3])
bool IsTextUpsideDown (double *a, double *b)

Protected Attributes

int AutoCenter
int EnableDistanceLOD
double DistanceLODThreshold
int EnableViewAngleLOD
double ViewAngleLODThreshold
double ScreenOffset
vtkWeakPointer< vtkAxisActorAxis

Detailed Description

a subclass of vtkFollower that ensures that data is always parallel to the axis defined by a vtkAxisActor.

vtkAxisFollower is a subclass of vtkFollower that always follows its specified axis. More specifically it will not change its position or scale, but it will continually update its orientation so that it is aliged with the axis and facing at angle to the camera to provide maximum visibilty. This is typically used for text labels for 3d plots.

See also:
vtkActor vtkFollower vtkCamera vtkAxisActor vtkCubeAxesActor

Definition at line 40 of file vtkAxisFollower.h.


Member Typedef Documentation

Reimplemented from vtkFollower.

Definition at line 43 of file vtkAxisFollower.h.


Constructor & Destructor Documentation


Member Function Documentation

static int vtkAxisFollower::IsTypeOf ( const char *  name) [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkFollower.

virtual int vtkAxisFollower::IsA ( const char *  name) [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkFollower.

Reimplemented from vtkFollower.

virtual vtkObjectBase* vtkAxisFollower::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkFollower.

Reimplemented from vtkFollower.

virtual void vtkAxisFollower::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkFollower.

static vtkAxisFollower* vtkAxisFollower::New ( ) [static]

Creates a follower with no camera set

Reimplemented from vtkFollower.

virtual void vtkAxisFollower::SetAxis ( vtkAxisActor ) [virtual]

Set axis that needs to be followed.

virtual vtkAxisActor* vtkAxisFollower::GetAxis ( ) [virtual]

Set axis that needs to be followed.

virtual void vtkAxisFollower::SetAutoCenter ( int  ) [virtual]

Set/Get state of auto center mode where additional translation will be added to make sure the underlying geometry has its pivot point at the center of its bounds.

virtual int vtkAxisFollower::GetAutoCenter ( ) [virtual]

Set/Get state of auto center mode where additional translation will be added to make sure the underlying geometry has its pivot point at the center of its bounds.

virtual void vtkAxisFollower::AutoCenterOn ( ) [virtual]

Set/Get state of auto center mode where additional translation will be added to make sure the underlying geometry has its pivot point at the center of its bounds.

virtual void vtkAxisFollower::AutoCenterOff ( ) [virtual]

Set/Get state of auto center mode where additional translation will be added to make sure the underlying geometry has its pivot point at the center of its bounds.

virtual void vtkAxisFollower::SetEnableDistanceLOD ( int  ) [virtual]

Enable / disable use of distance based LOD. If enabled the actor will not be visible at a certain distance from the camera. Default is false.

Enable / disable use of distance based LOD. If enabled the actor will not be visible at a certain distance from the camera. Default is false.

virtual void vtkAxisFollower::SetDistanceLODThreshold ( double  ) [virtual]

Set distance LOD threshold (0.0 - 1.0).This determines at what fraction of camera far clip range, actor is not visible. Default is 0.80.

Set distance LOD threshold (0.0 - 1.0).This determines at what fraction of camera far clip range, actor is not visible. Default is 0.80.

virtual void vtkAxisFollower::SetEnableViewAngleLOD ( int  ) [virtual]

Enable / disable use of view angle based LOD. If enabled the actor will not be visible at a certain view angle. Default is true.

Enable / disable use of view angle based LOD. If enabled the actor will not be visible at a certain view angle. Default is true.

virtual void vtkAxisFollower::SetViewAngleLODThreshold ( double  ) [virtual]

Set view angle LOD threshold (0.0 - 1.0).This determines at what view angle to geometry will make the geometry not visibile. Default is 0.34.

Set view angle LOD threshold (0.0 - 1.0).This determines at what view angle to geometry will make the geometry not visibile. Default is 0.34.

virtual void vtkAxisFollower::SetScreenOffset ( double  ) [virtual]

Set/Get the desired screen offset from the axis.

Set/Get the desired screen offset from the axis.

virtual int vtkAxisFollower::RenderOpaqueGeometry ( vtkViewport viewport) [virtual]

This causes the actor to be rendered. It in turn will render the actor's property, texture map and then mapper. If a property hasn't been assigned, then the actor will create one automatically.

Reimplemented from vtkFollower.

This causes the actor to be rendered. It in turn will render the actor's property, texture map and then mapper. If a property hasn't been assigned, then the actor will create one automatically.

Reimplemented from vtkFollower.

virtual void vtkAxisFollower::Render ( vtkRenderer ren) [virtual]

This causes the actor to be rendered. It in turn will render the actor's property, texture map and then mapper. If a property hasn't been assigned, then the actor will create one automatically.

Reimplemented from vtkFollower.

virtual void vtkAxisFollower::ComputeTransformMatrix ( vtkRenderer ren) [virtual]

Generate the matrix based on ivars. This method overloads its superclasses ComputeMatrix() method due to the special vtkFollower matrix operations.

void vtkAxisFollower::ShallowCopy ( vtkProp prop) [virtual]

Shallow copy of a follower. Overloads the virtual vtkProp method.

Reimplemented from vtkFollower.

static double vtkAxisFollower::AutoScale ( vtkViewport viewport,
vtkCamera camera,
double  screenSize,
double  position[3] 
) [static]

Calculate scale factor to maintain same size of a object on the screen.

void vtkAxisFollower::CalculateOrthogonalVectors ( double  Rx[3],
double  Ry[3],
double  Rz[3],
vtkAxisActor axis1,
double dop,
vtkRenderer ren 
) [protected]
void vtkAxisFollower::ComputeRotationAndTranlation ( vtkRenderer ren,
double  translation[3],
double  Rx[3],
double  Ry[3],
double  Rz[3],
vtkAxisActor axis 
) [protected]
void vtkAxisFollower::ComputerAutoCenterTranslation ( const double autoScaleFactor,
double  translation[3] 
) [protected]
void vtkAxisFollower::ExecuteViewAngleVisibility ( double  normal[3]) [protected]
bool vtkAxisFollower::IsTextUpsideDown ( double a,
double b 
) [protected]

Member Data Documentation

Definition at line 148 of file vtkAxisFollower.h.

Definition at line 150 of file vtkAxisFollower.h.

Definition at line 151 of file vtkAxisFollower.h.

Definition at line 153 of file vtkAxisFollower.h.

Definition at line 154 of file vtkAxisFollower.h.

Definition at line 156 of file vtkAxisFollower.h.

Definition at line 158 of file vtkAxisFollower.h.


The documentation for this class was generated from the following file: