30#ifndef vtkBorderRepresentation_h 
   31#define vtkBorderRepresentation_h 
   35#include "vtkInteractionWidgetsModule.h"  
   41VTK_ABI_NAMESPACE_BEGIN
 
   77  vtkViewportCoordinateMacro(Position);
 
   78  vtkViewportCoordinateMacro(Position2);
 
  115  vtkSetClampMacro(ShowVerticalBorder, 
int, BORDER_OFF, BORDER_ACTIVE);
 
  116  vtkGetMacro(ShowVerticalBorder, 
int);
 
  125  vtkSetClampMacro(ShowHorizontalBorder, 
int, BORDER_OFF, BORDER_ACTIVE);
 
  126  vtkGetMacro(ShowHorizontalBorder, 
int);
 
  155  vtkSetClampMacro(ShowPolygonBackground, 
int, BORDER_OFF, BORDER_ACTIVE);
 
  156  vtkGetMacro(ShowPolygonBackground, 
int);
 
  198  vtkSetVector2Macro(MinimumNormalizedViewportSize, 
double);
 
  199  vtkGetVector2Macro(MinimumNormalizedViewportSize, 
double);
 
  210  vtkSetVector2Macro(MinimumSize, 
int);
 
  211  vtkGetVector2Macro(MinimumSize, 
int);
 
  212  vtkSetVector2Macro(MaximumSize, 
int);
 
  213  vtkGetVector2Macro(MaximumSize, 
int);
 
  224  vtkSetClampMacro(Tolerance, 
int, 1, 10);
 
  225  vtkGetMacro(Tolerance, 
int);
 
  233  vtkGetVectorMacro(SelectionPoint, 
double, 2);
 
  271  vtkGetMacro(WindowLocation, 
int);
 
  298#if !defined(VTK_LEGACY_REMOVE) 
  303  vtkSetClampMacro(InteractionState, 
int, 0, AdjustingE3);
 
  341    "SetBWActorDisplayOverlay is deprecated. Use " 
  342    "SetBWActorDisplayOverlayEdges or SetBWActorDisplayOverlayPolygon instead.")
 
  343  void SetBWActorDisplayOverlay(
bool);
 
  345  void SetBWActorDisplayOverlayEdges(
bool);
 
  346  void SetBWActorDisplayOverlayPolygon(
bool);
 
  353  vtkSetVector3Macro(BorderColor, 
double);
 
  354  vtkGetVector3Macro(BorderColor, 
double);
 
  363  vtkGetMacro(BorderThickness, 
float);
 
  375  vtkSetClampMacro(CornerRadiusStrength, 
double, 0.0, 1.0);
 
  376  vtkGetMacro(CornerRadiusStrength, 
double);
 
  385  vtkSetClampMacro(CornerResolution, 
int, 0, 1000);
 
  386  vtkGetMacro(CornerResolution, 
int);
 
  394  vtkSetVector3Macro(PolygonColor, 
double);
 
  395  vtkGetVector3Macro(PolygonColor, 
double);
 
  403  vtkSetClampMacro(PolygonOpacity, 
double, 0.0, 1.0);
 
  404  vtkGetMacro(PolygonOpacity, 
double);
 
  411  void SetPolygonRGBA(
double rgba[4]);
 
  412  void SetPolygonRGBA(
double r, 
double g, 
double b, 
double a);
 
  417  void GetPolygonRGBA(
double rgba[4]);
 
  418  void GetPolygonRGBA(
double& r, 
double& g, 
double& b, 
double& a);
 
  426  int ShowVerticalBorder = BORDER_ON;
 
  427  int ShowHorizontalBorder = BORDER_ON;
 
  428  int ShowPolygonBackground = BORDER_ON;
 
  435  double SelectionPoint[2] = { 0.0, 0.0 };
 
  442  int WindowLocation = AnyLocation;
 
  455  double StartPosition[2];
 
  471  double MinimumNormalizedViewportSize[2] = { 0.0, 0.0 };
 
  472  int MinimumSize[2] = { 1, 1 };
 
  476  double BorderColor[3] = { 1.0, 1.0, 1.0 };
 
  477  float BorderThickness = 1.0;
 
  478  double CornerRadiusStrength = 0.0;
 
  479  int CornerResolution = 20;
 
  482  double PolygonColor[3] = { 1.0, 1.0, 1.0 };
 
  483  double PolygonOpacity = 0.0;
 
a actor that draws 2D data
 
represent a vtkBorderWidget
 
virtual void GetSize(double size[2])
Subclasses should implement these methods.
 
void ComputeOneRoundCorner(vtkCellArray *polys, vtkPoints *points, double radius, vtkIdType xPt, vtkIdType yPt, double startAngle)
Create a quarter circle centered in point[idCenterX].x, point[idCenterY].y), of radius 'radius' with ...
 
int RenderTranslucentPolygonalGeometry(vtkViewport *) override
These methods are necessary to make this representation behave as a vtkProp.
 
virtual int GetShowBorderMinValue()
Specify when and if the border should appear.
 
vtkNew< vtkPolyDataMapper2D > BWMapperEdges
 
void SetShowPolygonToOn()
Specify when and if the border's polygon background should appear.
 
vtkNew< vtkActor2D > BWActorPolygon
 
void SetShowBorderToActive()
Specify when and if the border should appear.
 
void WidgetInteraction(double eventPos[2]) override
Subclasses should implement these methods.
 
void GetActors2D(vtkPropCollection *) override
These methods are necessary to make this representation behave as a vtkProp.
 
void SetShowPolygonToOff()
Specify when and if the border's polygon background should appear.
 
virtual void SetWindowLocation(int enumLocation)
Set the representation position, by enumeration ( AnyLocation = 0, LowerLeftCorner,...
 
static vtkBorderRepresentation * New()
Instantiate this class.
 
vtkNew< vtkCoordinate > PositionCoordinate
 
void ComputeRoundCorners()
Create all 4 round corners with the specified radius and resolution.
 
vtkNew< vtkCoordinate > Position2Coordinate
 
virtual void NegotiateLayout()
 
vtkTypeBool HasTranslucentPolygonalGeometry() override
These methods are necessary to make this representation behave as a vtkProp.
 
int ComputeInteractionState(int X, int Y, int modify=0) override
Subclasses should implement these methods.
 
void SetShowBorderToOn()
Specify when and if the border should appear.
 
InteractionStateType
Define the various states that the representation can be in.
 
virtual void SetShowBorder(int border)
Specify when and if the border should appear.
 
void StartWidgetInteraction(double eventPos[2]) override
Subclasses should implement these methods.
 
vtkNew< vtkTransform > BWTransform
 
int RenderOpaqueGeometry(vtkViewport *) override
These methods are necessary to make this representation behave as a vtkProp.
 
virtual int GetShowPolygon()
Specify when and if the border's polygon background should appear.
 
virtual int GetShowBorderMaxValue()
Specify when and if the border should appear.
 
void PrintSelf(ostream &os, vtkIndent indent) override
Define standard methods.
 
vtkNew< vtkPoints > BWPoints
 
virtual void UpdateWindowLocation()
Update window location if a window location is set.
 
void SetShowPolygonToActive()
Specify when and if the border's polygon background should appear.
 
vtkNew< vtkPolyDataMapper2D > BWMapperPolygon
 
int RenderOverlay(vtkViewport *) override
These methods are necessary to make this representation behave as a vtkProp.
 
void BuildRepresentation() override
Subclasses should implement these methods.
 
virtual void SetShowPolygon(int border)
Specify when and if the border's polygon background should appear.
 
virtual int GetShowBorder()
Specify when and if the border should appear.
 
vtkNew< vtkPolyData > PolyDataEdges
 
vtkNew< vtkActor2D > BWActorEdges
 
vtkNew< vtkTransformPolyDataFilter > BWTransformFilter
 
vtkNew< vtkPolyData > BWPolyData
 
void SetShowBorderToOff()
Specify when and if the border should appear.
 
vtkNew< vtkPolyData > PolyDataPolygon
 
void ReleaseGraphicsResources(vtkWindow *) override
These methods are necessary to make this representation behave as a vtkProp.
 
vtkMTimeType GetMTime() override
Return the MTime of this object.
 
virtual void UpdateShowBorder()
 
object to represent cell connectivity
 
a simple class to control print indentation
 
Allocate and hold a VTK object.
 
represent and manipulate 3D points
 
draw vtkPolyData onto the image plane
 
concrete dataset represents vertices, lines, polygons, and triangle strips
 
represent surface properties of a 2D image
 
abstract specification for Viewports
 
window superclass for vtkRenderWindow
 
#define VTK_DEPRECATED_IN_9_2_0(reason)
 
vtkTypeUInt32 vtkMTimeType