59 #ifndef vtkScalarBarActor_h
60 #define vtkScalarBarActor_h
64 #include "vtkRenderingAnnotationModule.h"
78 #define VTK_ORIENT_HORIZONTAL 0
79 #define VTK_ORIENT_VERTICAL 1
120 virtual void GetScalarBarRect(
int rect[4],
vtkViewport* viewport);
152 vtkSetClampMacro(MaximumNumberOfColors,
int, 2,
VTK_INT_MAX);
153 vtkGetMacro(MaximumNumberOfColors,
int);
160 vtkSetClampMacro(NumberOfLabels,
int, 0, 64);
161 vtkGetMacro(NumberOfLabels,
int);
177 vtkGetMacro(UseCustomLabels,
bool);
178 vtkSetMacro(UseCustomLabels,
bool);
179 vtkBooleanMacro(UseCustomLabels,
bool);
187 vtkGetMacro(Orientation,
int);
221 vtkSetStringMacro(LabelFormat);
222 vtkGetStringMacro(LabelFormat);
229 vtkSetStringMacro(Title);
230 vtkGetStringMacro(Title);
237 vtkSetStringMacro(ComponentTitle);
238 vtkGetStringMacro(ComponentTitle);
250 vtkSetMacro(TextureGridWidth,
double);
251 vtkGetMacro(TextureGridWidth,
double);
263 PrecedeScalarBar = 0,
276 vtkSetClampMacro(TextPosition,
int, PrecedeScalarBar, SucceedScalarBar);
277 vtkGetMacro(TextPosition,
int);
296 vtkSetMacro(MaximumWidthInPixels,
int);
297 vtkGetMacro(MaximumWidthInPixels,
int);
298 vtkSetMacro(MaximumHeightInPixels,
int);
299 vtkGetMacro(MaximumHeightInPixels,
int);
308 vtkSetMacro(AnnotationLeaderPadding,
double);
309 vtkGetMacro(AnnotationLeaderPadding,
double);
340 vtkSetMacro(DrawBelowRangeSwatch,
bool);
341 vtkGetMacro(DrawBelowRangeSwatch,
bool);
342 vtkBooleanMacro(DrawBelowRangeSwatch,
bool);
349 vtkSetStringMacro(BelowRangeAnnotation);
350 vtkGetStringMacro(BelowRangeAnnotation);
359 vtkSetMacro(DrawAboveRangeSwatch,
bool);
360 vtkGetMacro(DrawAboveRangeSwatch,
bool);
361 vtkBooleanMacro(DrawAboveRangeSwatch,
bool);
368 vtkSetStringMacro(AboveRangeAnnotation);
369 vtkGetStringMacro(AboveRangeAnnotation);
380 vtkSetMacro(FixedAnnotationLeaderLineColor,
vtkTypeBool);
381 vtkGetMacro(FixedAnnotationLeaderLineColor,
vtkTypeBool);
382 vtkBooleanMacro(FixedAnnotationLeaderLineColor,
vtkTypeBool);
389 vtkSetStringMacro(NanAnnotation);
390 vtkGetStringMacro(NanAnnotation);
404 vtkBooleanMacro(AnnotationTextScaling,
vtkTypeBool);
467 vtkGetMacro(TextPad,
int);
468 vtkSetMacro(TextPad,
int);
477 vtkGetMacro(VerticalTitleSeparation,
int);
478 vtkSetMacro(VerticalTitleSeparation,
int);
486 vtkGetMacro(BarRatio,
double);
487 vtkSetClampMacro(BarRatio,
double, 0., 1.);
497 vtkGetMacro(TitleRatio,
double);
498 vtkSetClampMacro(TitleRatio,
double, 0., 1.);
508 vtkSetMacro(UnconstrainedFontSize,
bool);
509 vtkGetMacro(UnconstrainedFontSize,
bool);
510 vtkBooleanMacro(UnconstrainedFontSize,
bool);
548 virtual int RebuildLayoutIfNeeded(
vtkViewport* viewport);
553 virtual void FreeLayoutStorage();
563 virtual void ComputeFrame();
574 virtual void ComputeScalarBarThickness();
579 virtual void ComputeSwatchPad();
583 virtual void LayoutNanSwatch();
591 virtual void LayoutBelowRangeSwatch();
599 virtual void LayoutAboveRangeSwatch();
607 virtual void LayoutAboveRangeSwatchPosn();
612 virtual void PrepareTitleText();
624 virtual void LayoutTitle();
630 virtual void LayoutForUnconstrainedFont();
640 virtual void ComputeScalarBarLength();
653 virtual void LayoutTicks();
662 virtual void LayoutAnnotations();
667 virtual void ConfigureAnnotations();
672 virtual void ConfigureFrame();
677 virtual void DrawBoxes();
682 virtual void ConfigureScalarBar();
687 virtual void ConfigureTitle();
692 virtual void ConfigureTicks();
700 virtual void ConfigureNanSwatch();
706 virtual void ConfigureAboveBelowRangeSwatch(
bool above);
723 virtual void SizeTitle(
double* titleSize,
int*
size,
vtkViewport* viewport);
728 int MapAnnotationLabels(
734 int PlaceAnnotationsVertically(
735 double barX,
double barY,
double barWidth,
double barHeight,
double delta,
double pad);
740 int PlaceAnnotationsHorizontally(
741 double barX,
double barY,
double barWidth,
double barHeight,
double delta,
double pad);
750 bool UseCustomLabels =
false;
abstract superclass for all actors, volumes and annotations
int TextPad
User-changeable settings.
int MaximumWidthInPixels
User-changeable settings.
virtual void EditAnnotations()
Subclasses may override this method to alter this->P->Labels, allowing the addition and removal of an...
double TitleRatio
User-changeable settings.
int RenderOverlay(vtkViewport *viewport) override
Support the standard render methods.
vtkTypeBool FixedAnnotationLeaderLineColor
User-changeable settings.
actor that draws 2D data with texture support
vtkPolyDataMapper2D * ScalarBarMapper
Mapper for ScalarBar.
abstract specification for Viewports
virtual void SetTextPositionToPrecedeScalarBar()
Should the title and tick marks precede the scalar bar or succeed it? This is measured along the view...
vtkScalarsToColors * LookupTable
The object this actor illustrates.
vtkPolyDataMapper2D * BackgroundMapper
Mapper for Background.
a actor that draws 2D data
record modification and/or execution time
Internal state for the scalar bar actor shared with subclasses.
int NumberOfLabelsBuilt
User-changeable settings.
vtkActor2D * FrameActor
Actor for Frame.
Create a scalar bar with labels.
int VerticalTitleSeparation
User-changeable settings.
char * AboveRangeAnnotation
User-changeable settings.
concrete dataset represents vertices, lines, polygons, and triangle strips
double TextureGridWidth
User-changeable settings.
void ShallowCopy(vtkProp *prop) override
Shallow copy of this vtkActor2D.
vtkTexture * Texture
Color data for TexturePolyData.
vtkTypeBool AnnotationTextScaling
User-changeable settings.
vtkTypeBool DrawAnnotations
User-changeable settings.
dynamic, self-adjusting array of double
char * BelowRangeAnnotation
User-changeable settings.
char * ComponentTitle
User-changeable settings.
#define VTK_ORIENT_VERTICAL
int MaximumHeightInPixels
User-changeable settings.
int RenderTranslucentPolygonalGeometry(vtkViewport *) override
Draw the scalar bar and annotation text to the screen.
char * Title
User-changeable settings.
Superclass for mapping scalar values to colors.
window superclass for vtkRenderWindow
vtkActor2D * BackgroundActor
Actor for Background.
An actor that displays text.
#define VTK_ORIENT_HORIZONTAL
Some derived classes for the different colors commonly used.
void ReleaseGraphicsResources(vtkWindow *) override
Release any graphics resources that are being consumed by this actor.
a simple class to control print indentation
char * LabelFormat
User-changeable settings.
vtkScalarBarActorInternal * P
Containers shared with subclasses.
int NumberOfLabels
User-changeable settings.
static vtkActor2D * New()
Creates an actor2D with the following defaults: position (0,0) (coordinate system is viewport); at la...
double AnnotationLeaderPadding
User-changeable settings.
handles properties associated with a texture map
int Orientation
User-changeable settings.
int TextPosition
User-changeable settings.
vtkPolyData * ScalarBar
Polygon(s) colored by LookupTable.
vtkTypeBool UseOpacity
User-changeable settings.
bool DrawBelowRangeSwatch
User-changeable settings.
vtkProperty2D * BackgroundProperty
User-changeable settings.
vtkActor2D * ScalarBarActor
Actor for ScalarBar.
represent text properties.
vtkPolyData * Background
Polygon used to fill the background.
vtkTextProperty * LabelTextProperty
Font for tick labels.
vtkTimeStamp BuildTime
Internal state used for rendering.
vtkTextProperty * TitleTextProperty
Font for the legend title.
int MaximumNumberOfColors
User-changeable settings.
vtkTypeBool HasTranslucentPolygonalGeometry() override
Does this prop have some translucent polygonal geometry?
char * NanAnnotation
User-changeable settings.
vtkTypeBool DrawBackground
User-changeable settings.
vtkTypeBool DrawColorBar
User-changeable settings.
double BarRatio
User-changeable settings.
vtkTypeBool DrawFrame
User-changeable settings.
int RenderOpaqueGeometry(vtkViewport *viewport) override
Support the standard render methods.
vtkTextProperty * AnnotationTextProperty
Font for annotation labels.
vtkTextActor * TitleActor
The legend title text renderer.
vtkPolyDataMapper2D * FrameMapper
Mapper for Frame.
represent surface properties of a 2D image
virtual void SetTextPositionToSucceedScalarBar()
Should the title and tick marks precede the scalar bar or succeed it? This is measured along the view...
void SetOrientationToVertical()
Control the orientation of the scalar bar.
bool DrawAboveRangeSwatch
User-changeable settings.
void SetOrientationToHorizontal()
Control the orientation of the scalar bar.
vtkProperty2D * FrameProperty
User-changeable settings.
bool UnconstrainedFontSize
User-changeable settings.
vtkPolyData * Frame
Polyline used to highlight frame.
vtkTypeBool DrawTickLabels
User-changeable settings.
draw vtkPolyData onto the image plane
vtkPolyData * TexturePolyData
Polygon colored when UseOpacity is true.
vtkTypeBool DrawNanAnnotation
User-changeable settings.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkTexturedActor2D * TextureActor
Actor for TexturePolyData.