56 #ifndef vtkScalarBarActor_h 57 #define vtkScalarBarActor_h 59 #include "vtkRenderingAnnotationModule.h" 74 #define VTK_ORIENT_HORIZONTAL 0 75 #define VTK_ORIENT_VERTICAL 1 116 virtual void GetScalarBarRect(
int rect[4],
vtkViewport* viewport);
148 vtkSetClampMacro(MaximumNumberOfColors,
int, 2,
VTK_INT_MAX);
149 vtkGetMacro(MaximumNumberOfColors,
int);
156 vtkSetClampMacro(NumberOfLabels,
int, 0, 64);
157 vtkGetMacro(NumberOfLabels,
int);
165 vtkGetMacro(Orientation,
int);
200 vtkSetStringMacro(LabelFormat);
201 vtkGetStringMacro(LabelFormat);
208 vtkSetStringMacro(Title);
209 vtkGetStringMacro(Title);
216 vtkSetStringMacro(ComponentTitle);
217 vtkGetStringMacro(ComponentTitle);
229 vtkSetMacro(TextureGridWidth,
double);
230 vtkGetMacro(TextureGridWidth,
double);
240 enum { PrecedeScalarBar = 0, SucceedScalarBar };
251 vtkSetClampMacro(TextPosition,
int, PrecedeScalarBar, SucceedScalarBar);
252 vtkGetMacro(TextPosition,
int);
267 vtkSetMacro(MaximumWidthInPixels,
int);
268 vtkGetMacro(MaximumWidthInPixels,
int);
269 vtkSetMacro(MaximumHeightInPixels,
int);
270 vtkGetMacro(MaximumHeightInPixels,
int);
279 vtkSetMacro(AnnotationLeaderPadding,
double);
280 vtkGetMacro(AnnotationLeaderPadding,
double);
311 vtkSetMacro(DrawBelowRangeSwatch,
bool);
312 vtkGetMacro(DrawBelowRangeSwatch,
bool);
313 vtkBooleanMacro(DrawBelowRangeSwatch,
bool);
320 vtkSetStringMacro(BelowRangeAnnotation);
321 vtkGetStringMacro(BelowRangeAnnotation);
330 vtkSetMacro(DrawAboveRangeSwatch,
bool);
331 vtkGetMacro(DrawAboveRangeSwatch,
bool);
332 vtkBooleanMacro(DrawAboveRangeSwatch,
bool);
339 vtkSetStringMacro(AboveRangeAnnotation);
340 vtkGetStringMacro(AboveRangeAnnotation);
351 vtkSetMacro(FixedAnnotationLeaderLineColor,
vtkTypeBool);
352 vtkGetMacro(FixedAnnotationLeaderLineColor,
vtkTypeBool);
353 vtkBooleanMacro(FixedAnnotationLeaderLineColor,
vtkTypeBool);
360 vtkSetStringMacro(NanAnnotation);
361 vtkGetStringMacro(NanAnnotation);
375 vtkBooleanMacro(AnnotationTextScaling,
vtkTypeBool);
438 vtkGetMacro(TextPad,
int);
439 vtkSetMacro(TextPad,
int);
448 vtkGetMacro(VerticalTitleSeparation,
int);
449 vtkSetMacro(VerticalTitleSeparation,
int);
457 vtkGetMacro(BarRatio,
double);
458 vtkSetClampMacro(BarRatio,
double, 0., 1.);
468 vtkGetMacro(TitleRatio,
double);
469 vtkSetClampMacro(TitleRatio,
double, 0., 1.);
478 vtkSetMacro(UnconstrainedFontSize,
bool);
479 vtkGetMacro(UnconstrainedFontSize,
bool);
480 vtkBooleanMacro(UnconstrainedFontSize,
bool);
518 virtual int RebuildLayoutIfNeeded(
vtkViewport* viewport);
524 virtual void FreeLayoutStorage();
534 virtual void ComputeFrame();
545 virtual void ComputeScalarBarThickness();
550 virtual void ComputeSwatchPad();
554 virtual void LayoutNanSwatch();
562 virtual void LayoutBelowRangeSwatch();
570 virtual void LayoutAboveRangeSwatch();
578 virtual void LayoutAboveRangeSwatchPosn();
583 virtual void PrepareTitleText();
595 virtual void LayoutTitle();
601 virtual void LayoutForUnconstrainedFont();
611 virtual void ComputeScalarBarLength();
622 virtual void LayoutTicks();
631 virtual void LayoutAnnotations();
636 virtual void ConfigureAnnotations();
641 virtual void ConfigureFrame();
646 virtual void DrawBoxes();
651 virtual void ConfigureScalarBar();
656 virtual void ConfigureTitle();
661 virtual void ConfigureTicks();
669 virtual void ConfigureNanSwatch();
675 virtual void ConfigureAboveBelowRangeSwatch(
bool above);
692 virtual void SizeTitle(
double* titleSize,
int*
size,
vtkViewport* viewport);
697 int MapAnnotationLabels(
703 int PlaceAnnotationsVertically(
704 double barX,
double barY,
double barWidth,
double barHeight,
705 double delta,
double pad);
709 int PlaceAnnotationsHorizontally(
710 double barX,
double barY,
double barWidth,
double barHeight,
711 double delta,
double pad);
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.
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.
int HasTranslucentPolygonalGeometry() override
Does this prop have some translucent polygonal geometry?
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.
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.