41 #ifndef vtkLineRepresentation_h
42 #define vtkLineRepresentation_h
44 #include "vtkInteractionWidgetsModule.h"
154 vtkSetClampMacro(Tolerance,
int,1,100);
155 vtkGetMacro(Tolerance,
int);
202 enum {Outside=0,OnP1,OnP2,TranslatingP1,TranslatingP2,
OnLine,Scaling};
214 vtkSetClampMacro(InteractionState,
int,Outside,Scaling);
223 vtkGetMacro(RepresentationState,
int);
232 vtkGetMacro(DirectionalLine,
bool);
252 vtkGetMacro( DistanceAnnotationVisibility,
int );
262 vtkSetStringMacro(DistanceAnnotationFormat);
276 this->SetDistanceAnnotationScale(
scale);
306 enum { RestrictNone = 0, RestrictToX, RestrictToY, RestrictToZ };
312 vtkSetClampMacro(RestrictFlag,
int, RestrictNone, RestrictToZ);
362 double StartLineHandle[3];
364 double LastEventPosition[3];
represents an object (geometry & properties) in a rendered scene
implicit function for a bounding box
ray-cast cell picker for all kinds of Prop3Ds
a subclass of actor that always faces the camera
a simple class to control print indentation
a class defining the representation for a vtkLineWidget2
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
virtual int RenderOpaqueGeometry(vtkViewport *)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDE...
void SetDirectionalLine(bool val)
Sets the representation to be a directional line with point 1 represented as a cone.
void CreateDefaultProperties()
virtual vtkMTimeType GetMTime()
Overload the superclasses' GetMTime() because internal classes are used to keep the state of the repr...
void InstantiateHandleRepresentation()
vtkProperty * EndPoint2Property
double * GetPoint1WorldPosition()
vtkPolyDataMapper * TextMapper
vtkProperty * LineProperty
static vtkLineRepresentation * New()
Instantiate the class.
virtual void SetDistanceAnnotationScale(double scale[3])
virtual void PlaceWidget(double bounds[6])
These are methods that satisfy vtkWidgetRepresentation's API.
virtual void BuildRepresentation()
vtkLineSource * LineSource
void GetPoint2DisplayPosition(double pos[3])
virtual double * GetBounds()
Methods to make this class behave as a vtkProp.
double * GetPoint1DisplayPosition()
void SetDistanceAnnotationScale(double x, double y, double z)
Scale text (font size along each dimension).
vtkProperty * SelectedEndPointProperty
vtkPointHandleRepresentation3D * Point1Representation
void ClampPosition(double x[3])
bool AnnotationTextScaleInitialized
vtkCellPicker * LinePicker
virtual vtkProperty * GetDistanceAnnotationProperty()
Get the distance annotation property.
virtual void SetRepresentationState(int)
Sets the visual appearance of the representation based on the state it is in.
char * DistanceAnnotationFormat
void GetPoint2WorldPosition(double pos[3])
void SetPoint1DisplayPosition(double pos[3])
int DistanceAnnotationVisibility
void SetResolution(int res)
Set/Get the resolution (number of subdivisions) of the line.
vtkPolyDataMapper * LineMapper
vtkPointHandleRepresentation3D * LineHandleRepresentation
void SetPoint1WorldPosition(double pos[3])
virtual void WidgetInteraction(double e[2])
double * GetPoint2WorldPosition()
void GetPoint1DisplayPosition(double pos[3])
double * GetPoint2DisplayPosition()
void SetHandleRepresentation(vtkPointHandleRepresentation3D *handle)
This method is used to specify the type of handle representation to use for the three internal vtkHan...
void SetLineColor(double r, double g, double b)
Convenience method to set the line color.
vtkPolyDataAlgorithm ** HandleGeometry
virtual void SetRenderer(vtkRenderer *ren)
Overridden to set the rendererer on the internal representations.
virtual void GetActors(vtkPropCollection *pc)
Methods supporting the rendering process.
virtual int HasTranslucentPolygonalGeometry()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDE...
void HighlightLine(int highlight)
virtual void ReleaseGraphicsResources(vtkWindow *)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Release any graphics resources that are being...
void HighlightPoint(int ptId, int highlight)
void GetPolyData(vtkPolyData *pd)
Retrieve the polydata (including points) that defines the line.
virtual void StartWidgetInteraction(double e[2])
double GetDistance()
Get the distance between the points.
vtkPointHandleRepresentation3D * Point2Representation
virtual int ComputeInteractionState(int X, int Y, int modify=0)
virtual double * GetDistanceAnnotationScale()
vtkPointHandleRepresentation3D * HandleRepresentation
vtkVectorText * TextInput
vtkProperty * EndPointProperty
vtkPolyDataMapper ** HandleMapper
void SetPoint2DisplayPosition(double pos[3])
int InitializedDisplayPosition
void SetPoint2WorldPosition(double pos[3])
vtkProperty * SelectedEndPoint2Property
vtkProperty * SelectedLineProperty
void GetPoint1WorldPosition(double pos[3])
Methods to Set/Get the coordinates of the two points defining this representation.
virtual int RenderTranslucentPolygonalGeometry(vtkViewport *)
int InBounds(double x[3])
create a line defined by two end points
represent the position of a point in 3D space
Superclass for algorithms that produce only polydata as output.
map vtkPolyData to graphics primitives
concrete dataset represents vertices, lines, polygons, and triangle strips
represent surface properties of a geometric object
abstract specification for renderers
abstract specification for Viewports
window superclass for vtkRenderWindow
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
vtkTypeUInt64 vtkMTimeType