vtkLabelPlacer Class Reference

#include <vtkLabelPlacer.h>

Inheritance diagram for vtkLabelPlacer:

Inheritance graph
[legend]
Collaboration diagram for vtkLabelPlacer:

Collaboration graph
[legend]

List of all members.


Detailed Description

place a prioritized hierarchy of labels in screen space

This class is deprecated and will be removed from VTK in a future release. Use vtkLabelPlacementMapper instead.

This should probably be a mapper unto itself (given that the polydata output could be large and will realistically always be iterated over exactly once before being tossed for the next frame of the render).

In any event, it takes as input one (or more, eventually) vtkLabelHierarchies that represent prioritized lists of labels sorted by their placement in space. As output, it provides vtkPolyData containing only VTK_QUAD cells, each representing a single label from the input. Each quadrilateral has cell data indicating what label in the input it corresponds to (via an array named "LabelId").

Tests:
vtkLabelPlacer (Tests)

Definition at line 53 of file vtkLabelPlacer.h.


Public Types

enum  LabelGravity {
  VerticalBottomBit = 1, VerticalBaselineBit = 2, VerticalCenterBit = 4, VerticalTopBit = 8,
  HorizontalLeftBit = 16, HorizontalCenterBit = 32, HorizontalRightBit = 64, VerticalBitMask = 15,
  HorizontalBitMask = 112, LowerLeft = 17, LowerCenter = 33, LowerRight = 65,
  BaselineLeft = 18, BaselineCenter = 34, BaselineRight = 66, CenterLeft = 20,
  CenterCenter = 36, CenterRight = 68, UpperLeft = 24, UpperCenter = 40,
  UpperRight = 72
}
 Specifications for the placement of the label relative to an anchor point. More...
enum  OutputCoordinates { WORLD = 0, DISPLAY = 1 }
 Coordinate systems that output dataset may use. More...
typedef vtkPolyDataAlgorithm Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
virtual void PrintSelf (ostream &os, vtkIndent indent)
virtual vtkRendererGetRenderer ()
virtual void SetRenderer (vtkRenderer *)
virtual vtkCoordinateGetAnchorTransform ()
virtual unsigned long GetMTime ()
virtual void SetGravity (int gravity)
virtual int GetGravity ()
virtual void SetMaximumLabelFraction (double)
virtual double GetMaximumLabelFraction ()
virtual void SetIteratorType (int)
virtual int GetIteratorType ()
virtual void SetUseUnicodeStrings (bool)
virtual bool GetUseUnicodeStrings ()
virtual void UseUnicodeStringsOn ()
virtual void UseUnicodeStringsOff ()
virtual bool GetPositionsAsNormals ()
virtual void SetPositionsAsNormals (bool)
virtual void PositionsAsNormalsOn ()
virtual void PositionsAsNormalsOff ()
virtual bool GetGeneratePerturbedLabelSpokes ()
virtual void SetGeneratePerturbedLabelSpokes (bool)
virtual void GeneratePerturbedLabelSpokesOn ()
virtual void GeneratePerturbedLabelSpokesOff ()
virtual bool GetUseDepthBuffer ()
virtual void SetUseDepthBuffer (bool)
virtual void UseDepthBufferOn ()
virtual void UseDepthBufferOff ()
virtual bool GetOutputTraversedBounds ()
virtual void SetOutputTraversedBounds (bool)
virtual void OutputTraversedBoundsOn ()
virtual void OutputTraversedBoundsOff ()
virtual int GetOutputCoordinateSystem ()
virtual void SetOutputCoordinateSystem (int)
void OutputCoordinateSystemWorld ()
void OutputCoordinateSystemDisplay ()

Static Public Member Functions

static vtkLabelPlacerNew ()
static int IsTypeOf (const char *type)
static vtkLabelPlacerSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkLabelPlacer ()
virtual ~vtkLabelPlacer ()
virtual void SetAnchorTransform (vtkCoordinate *)
int FillInputPortInformation (int port, vtkInformation *info)
virtual int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)

Protected Attributes

Internal * Buckets
vtkRendererRenderer
vtkCoordinateAnchorTransform
vtkSelectVisiblePointsVisiblePoints
int Gravity
double MaximumLabelFraction
bool PositionsAsNormals
bool OutputTraversedBounds
bool GeneratePerturbedLabelSpokes
bool UseDepthBuffer
bool UseUnicodeStrings
int LastRendererSize [2]
double LastCameraPosition [3]
double LastCameraFocalPoint [3]
double LastCameraViewUp [3]
double LastCameraParallelScale
int IteratorType
int OutputCoordinateSystem

Member Typedef Documentation

Reimplemented from vtkPolyDataAlgorithm.

Definition at line 57 of file vtkLabelPlacer.h.


Member Enumeration Documentation

Specifications for the placement of the label relative to an anchor point.

Enumerator:
VerticalBottomBit 
VerticalBaselineBit 
VerticalCenterBit 
VerticalTopBit 
HorizontalLeftBit 
HorizontalCenterBit 
HorizontalRightBit 
VerticalBitMask 
HorizontalBitMask 
LowerLeft  The anchor is at the lower left corner of the label's bounding box.
LowerCenter  The anchor is centered left-to-right at the lower edge of the bounding box.
LowerRight  The anchor is at the lower right corner of the label's bounding box.
BaselineLeft  The anchor is on the text baseline (or bottom for images) at the left edge of the label's bounding box.
BaselineCenter  The anchor is centered left-to-right at the text baseline of the bounding box, or the bottom for images.
BaselineRight  The anchor is on the text baseline (or bottom for images) at the right edge of the label's bounding box.
CenterLeft  The anchor is at the far left edge of the label at the vertical center of the bounding box.
CenterCenter  The anchor is centered left-to-right at the vertical midpoint of the bounding box.
CenterRight  The anchor is at the far right edge of the label at the vertical center of the bounding box.
UpperLeft  The anchor is at the upper left corner of the label's bounding box.
UpperCenter  The anchor is centered left-to-right at the top edge of the bounding box.
UpperRight  The anchor is at the upper right corner of the label's bounding box.

Definition at line 67 of file vtkLabelPlacer.h.

Coordinate systems that output dataset may use.

Enumerator:
WORLD  Output 3-D world-space coordinates for each label anchor.
DISPLAY  Output 2-D display coordinates for each label anchor (3 components but only 2 are significant).

Definition at line 97 of file vtkLabelPlacer.h.


Constructor & Destructor Documentation

vtkLabelPlacer::vtkLabelPlacer (  )  [protected]

virtual vtkLabelPlacer::~vtkLabelPlacer (  )  [protected, virtual]


Member Function Documentation

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

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkPolyDataAlgorithm.

virtual const char* vtkLabelPlacer::GetClassName (  )  [virtual]

Reimplemented from vtkPolyDataAlgorithm.

static int vtkLabelPlacer::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 vtkPolyDataAlgorithm.

virtual int vtkLabelPlacer::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 vtkPolyDataAlgorithm.

static vtkLabelPlacer* vtkLabelPlacer::SafeDownCast ( vtkObject o  )  [static]

Reimplemented from vtkPolyDataAlgorithm.

virtual void vtkLabelPlacer::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 vtkPolyDataAlgorithm.

virtual vtkRenderer* vtkLabelPlacer::GetRenderer (  )  [virtual]

virtual void vtkLabelPlacer::SetRenderer ( vtkRenderer  )  [virtual]

virtual vtkCoordinate* vtkLabelPlacer::GetAnchorTransform (  )  [virtual]

virtual void vtkLabelPlacer::SetGravity ( int  gravity  )  [virtual]

The placement of the label relative to the anchor point.

virtual int vtkLabelPlacer::GetGravity (  )  [virtual]

The placement of the label relative to the anchor point.

virtual void vtkLabelPlacer::SetMaximumLabelFraction ( double   )  [virtual]

The maximum amount of screen space labels can take up before placement terminates.

virtual double vtkLabelPlacer::GetMaximumLabelFraction (  )  [virtual]

The maximum amount of screen space labels can take up before placement terminates.

virtual void vtkLabelPlacer::SetIteratorType ( int   )  [virtual]

The type of iterator used when traversing the labels. May be vtkLabelHierarchy::FRUSTUM or vtkLabelHierarchy::FULL_SORT.

virtual int vtkLabelPlacer::GetIteratorType (  )  [virtual]

The type of iterator used when traversing the labels. May be vtkLabelHierarchy::FRUSTUM or vtkLabelHierarchy::FULL_SORT.

virtual void vtkLabelPlacer::SetUseUnicodeStrings ( bool   )  [virtual]

Set whether, or not, to use unicode strings.

virtual bool vtkLabelPlacer::GetUseUnicodeStrings (  )  [virtual]

Set whether, or not, to use unicode strings.

virtual void vtkLabelPlacer::UseUnicodeStringsOn (  )  [virtual]

Set whether, or not, to use unicode strings.

virtual void vtkLabelPlacer::UseUnicodeStringsOff (  )  [virtual]

Set whether, or not, to use unicode strings.

virtual unsigned long vtkLabelPlacer::GetMTime (  )  [virtual]

Return this object's modified time.

Reimplemented from vtkObject.

virtual bool vtkLabelPlacer::GetPositionsAsNormals (  )  [virtual]

Use label anchor point coordinates as normal vectors and eliminate those pointing away from the camera. Valid only when points are on a sphere centered at the origin (such as a 3D geographic view). Off by default.

virtual void vtkLabelPlacer::SetPositionsAsNormals ( bool   )  [virtual]

Use label anchor point coordinates as normal vectors and eliminate those pointing away from the camera. Valid only when points are on a sphere centered at the origin (such as a 3D geographic view). Off by default.

virtual void vtkLabelPlacer::PositionsAsNormalsOn (  )  [virtual]

Use label anchor point coordinates as normal vectors and eliminate those pointing away from the camera. Valid only when points are on a sphere centered at the origin (such as a 3D geographic view). Off by default.

virtual void vtkLabelPlacer::PositionsAsNormalsOff (  )  [virtual]

Use label anchor point coordinates as normal vectors and eliminate those pointing away from the camera. Valid only when points are on a sphere centered at the origin (such as a 3D geographic view). Off by default.

virtual bool vtkLabelPlacer::GetGeneratePerturbedLabelSpokes (  )  [virtual]

Enable drawing spokes (lines) to anchor point coordinates that were perturbed for being coincident with other anchor point coordinates.

virtual void vtkLabelPlacer::SetGeneratePerturbedLabelSpokes ( bool   )  [virtual]

Enable drawing spokes (lines) to anchor point coordinates that were perturbed for being coincident with other anchor point coordinates.

virtual void vtkLabelPlacer::GeneratePerturbedLabelSpokesOn (  )  [virtual]

Enable drawing spokes (lines) to anchor point coordinates that were perturbed for being coincident with other anchor point coordinates.

virtual void vtkLabelPlacer::GeneratePerturbedLabelSpokesOff (  )  [virtual]

Enable drawing spokes (lines) to anchor point coordinates that were perturbed for being coincident with other anchor point coordinates.

virtual bool vtkLabelPlacer::GetUseDepthBuffer (  )  [virtual]

Use the depth buffer to test each label to see if it should not be displayed if it would be occluded by other objects in the scene. Off by default.

virtual void vtkLabelPlacer::SetUseDepthBuffer ( bool   )  [virtual]

Use the depth buffer to test each label to see if it should not be displayed if it would be occluded by other objects in the scene. Off by default.

virtual void vtkLabelPlacer::UseDepthBufferOn (  )  [virtual]

Use the depth buffer to test each label to see if it should not be displayed if it would be occluded by other objects in the scene. Off by default.

virtual void vtkLabelPlacer::UseDepthBufferOff (  )  [virtual]

Use the depth buffer to test each label to see if it should not be displayed if it would be occluded by other objects in the scene. Off by default.

virtual bool vtkLabelPlacer::GetOutputTraversedBounds (  )  [virtual]

In the second output, output the geometry of the traversed octree nodes.

virtual void vtkLabelPlacer::SetOutputTraversedBounds ( bool   )  [virtual]

In the second output, output the geometry of the traversed octree nodes.

virtual void vtkLabelPlacer::OutputTraversedBoundsOn (  )  [virtual]

In the second output, output the geometry of the traversed octree nodes.

virtual void vtkLabelPlacer::OutputTraversedBoundsOff (  )  [virtual]

In the second output, output the geometry of the traversed octree nodes.

virtual int vtkLabelPlacer::GetOutputCoordinateSystem (  )  [virtual]

Set/get the coordinate system used for output labels. The output datasets may have point coordinates reported in the world space or display space.

virtual void vtkLabelPlacer::SetOutputCoordinateSystem ( int   )  [virtual]

Set/get the coordinate system used for output labels. The output datasets may have point coordinates reported in the world space or display space.

void vtkLabelPlacer::OutputCoordinateSystemWorld (  )  [inline]

Set/get the coordinate system used for output labels. The output datasets may have point coordinates reported in the world space or display space.

Definition at line 174 of file vtkLabelPlacer.h.

void vtkLabelPlacer::OutputCoordinateSystemDisplay (  )  [inline]

Set/get the coordinate system used for output labels. The output datasets may have point coordinates reported in the world space or display space.

Definition at line 175 of file vtkLabelPlacer.h.

virtual void vtkLabelPlacer::SetAnchorTransform ( vtkCoordinate  )  [protected, virtual]

int vtkLabelPlacer::FillInputPortInformation ( int  port,
vtkInformation info 
) [protected, virtual]

Fill the input port information objects for this algorithm. This is invoked by the first call to GetInputPortInformation for each port so subclasses can specify what they can handle.

Reimplemented from vtkPolyDataAlgorithm.

virtual int vtkLabelPlacer::RequestData ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

This is called by the superclass. This is the method you should override.

Reimplemented from vtkPolyDataAlgorithm.


Member Data Documentation

Internal* vtkLabelPlacer::Buckets [protected]

Definition at line 189 of file vtkLabelPlacer.h.

Definition at line 193 of file vtkLabelPlacer.h.

Definition at line 194 of file vtkLabelPlacer.h.

Definition at line 195 of file vtkLabelPlacer.h.

int vtkLabelPlacer::Gravity [protected]

Definition at line 196 of file vtkLabelPlacer.h.

Definition at line 197 of file vtkLabelPlacer.h.

Definition at line 198 of file vtkLabelPlacer.h.

Definition at line 199 of file vtkLabelPlacer.h.

Definition at line 200 of file vtkLabelPlacer.h.

Definition at line 201 of file vtkLabelPlacer.h.

Definition at line 202 of file vtkLabelPlacer.h.

Definition at line 204 of file vtkLabelPlacer.h.

double vtkLabelPlacer::LastCameraPosition[3] [protected]

Definition at line 205 of file vtkLabelPlacer.h.

double vtkLabelPlacer::LastCameraFocalPoint[3] [protected]

Definition at line 206 of file vtkLabelPlacer.h.

double vtkLabelPlacer::LastCameraViewUp[3] [protected]

Definition at line 207 of file vtkLabelPlacer.h.

Definition at line 208 of file vtkLabelPlacer.h.

Definition at line 209 of file vtkLabelPlacer.h.

Definition at line 210 of file vtkLabelPlacer.h.


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

Generated on Wed Aug 24 11:45:18 2011 for VTK by  doxygen 1.5.6