38 #ifndef vtkLineRepresentation_h 39 #define vtkLineRepresentation_h 41 #include "vtkInteractionWidgetsModule.h" 80 void GetPoint1WorldPosition(
double pos[3]);
82 void GetPoint1DisplayPosition(
double pos[3]);
84 void SetPoint1WorldPosition(
double pos[3]);
85 void SetPoint1DisplayPosition(
double pos[3]);
86 void GetPoint2DisplayPosition(
double pos[3]);
88 void GetPoint2WorldPosition(
double pos[3]);
90 void SetPoint2WorldPosition(
double pos[3]);
91 void SetPoint2DisplayPosition(
double pos[3]);
106 void InstantiateHandleRepresentation();
124 vtkGetObjectMacro(SelectedEndPointProperty,
vtkProperty);
133 vtkGetObjectMacro(SelectedEndPoint2Property,
vtkProperty);
142 vtkGetObjectMacro(SelectedLineProperty,
vtkProperty);
151 vtkSetClampMacro(Tolerance,
int,1,100);
152 vtkGetMacro(Tolerance,
int);
161 void SetResolution(
int res);
179 void PlaceWidget(
double bounds[6]) override;
180 void BuildRepresentation() override;
181 int ComputeInteractionState(
int X,
int Y,
int modify=0) override;
182 void StartWidgetInteraction(
double e[2]) override;
183 void WidgetInteraction(
double e[2]) override;
192 void ReleaseGraphicsResources(
vtkWindow*) override;
194 int RenderTranslucentPolygonalGeometry(
vtkViewport*) override;
195 int HasTranslucentPolygonalGeometry() override;
211 vtkSetClampMacro(InteractionState,
int,Outside,Scaling);
219 virtual void SetRepresentationState(
int);
220 vtkGetMacro(RepresentationState,
int);
228 void SetDirectionalLine(
bool val);
229 vtkGetMacro(DirectionalLine,
bool);
230 vtkBooleanMacro(DirectionalLine,
bool);
248 vtkSetMacro( DistanceAnnotationVisibility,
vtkTypeBool );
249 vtkGetMacro( DistanceAnnotationVisibility,
vtkTypeBool );
250 vtkBooleanMacro( DistanceAnnotationVisibility,
vtkTypeBool );
259 vtkSetStringMacro(DistanceAnnotationFormat);
260 vtkGetStringMacro(DistanceAnnotationFormat);
273 this->SetDistanceAnnotationScale(
scale);
275 virtual void SetDistanceAnnotationScale(
double scale[3] );
276 virtual double * GetDistanceAnnotationScale()
VTK_SIZEHINT(3);
282 double GetDistance();
289 void SetLineColor(
double r,
double g,
double b);
294 virtual
vtkProperty *GetDistanceAnnotationProperty();
303 enum { RestrictNone = 0, RestrictToX, RestrictToY, RestrictToZ };
309 vtkSetClampMacro(RestrictFlag,
int, RestrictNone, RestrictToZ);
343 void CreateDefaultProperties();
350 void ClampPosition(
double x[3]);
351 void HighlightPoint(
int ptId,
int highlight);
352 void HighlightLine(
int highlight);
353 int InBounds(
double x[3]);
359 double StartLineHandle[3];
361 double LastEventPosition[3];
vtkTypeBool DistanceAnnotationVisibility
represents an object (geometry & properties) in a rendered scene
represent the position of a point in 3D space
vtkTypeUInt32 vtkMTimeType
abstract specification for Viewports
represent surface properties of a geometric object
vtkPointHandleRepresentation3D * Point2Representation
vtkPolyDataMapper ** HandleMapper
void SetDistanceAnnotationScale(double x, double y, double z)
Scale text (font size along each dimension).
vtkProperty * SelectedEndPoint2Property
vtkProperty * SelectedEndPointProperty
abstract specification for renderers
vtkProperty * LineProperty
concrete dataset represents vertices, lines, polygons, and triangle strips
vtkPolyDataMapper * TextMapper
vtkCellPicker * LinePicker
vtkPointHandleRepresentation3D * Point1Representation
window superclass for vtkRenderWindow
vtkPointHandleRepresentation3D * HandleRepresentation
vtkPolyDataAlgorithm ** HandleGeometry
Superclass for algorithms that produce only polydata as output.
vtkLineSource * LineSource
vtkProperty * EndPointProperty
bool AnnotationTextScaleInitialized
a simple class to control print indentation
vtkVectorText * TextInput
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkPolyDataMapper * LineMapper
#define VTK_SIZEHINT(...)
int InitializedDisplayPosition
char * DistanceAnnotationFormat
create a line defined by two end points
map vtkPolyData to graphics primitives
a subclass of actor that always faces the camera
ray-cast cell picker for all kinds of Prop3Ds
vtkProperty * SelectedLineProperty
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
vtkProperty * EndPoint2Property
vtkPointHandleRepresentation3D * LineHandleRepresentation
implicit function for a bounding box
a class defining the representation for a vtkLineWidget2