 |
VTK
9.0.1
|
Go to the documentation of this file.
38 #ifndef vtkImplicitPlaneRepresentation_h
39 #define vtkImplicitPlaneRepresentation_h
41 #include "vtkInteractionWidgetsModule.h"
87 void GetOrigin(
double xyz[3]);
94 void SetNormal(
double x,
double y,
double z);
95 void SetNormal(
double x[3]);
96 void SetNormalToCamera();
98 void GetNormal(
double xyz[3]);
186 void SetXTranslationAxisOn() { this->TranslationAxis = Axis::XAxis; }
206 vtkSetVector6Macro(WidgetBounds,
double);
207 vtkGetVector6Macro(WidgetBounds,
double);
313 vtkSetClampMacro(BumpDistance,
double, 0.000001, 1);
314 vtkGetMacro(BumpDistance,
double);
346 unsigned long event,
void* calldata)
override;
348 unsigned long event,
void* calldata)
override;
350 unsigned long event,
void* calldata,
int modify = 0)
override;
352 unsigned long event,
void* calldata)
override;
389 vtkSetClampMacro(InteractionState,
int, Outside, Scaling);
398 vtkGetMacro(RepresentationState,
int);
411 vtkGetMacro(CropPlaneToBoundingBox,
bool);
412 vtkBooleanMacro(CropPlaneToBoundingBox,
bool);
420 vtkGetMacro(SnapToAxes,
bool);
421 vtkSetMacro(SnapToAxes,
bool);
431 vtkGetMacro(AlwaysSnapToNearestAxis,
bool);
434 this->AlwaysSnapToNearestAxis = snap;
435 this->SetNormal(this->GetNormal());
446 double LastEventPosition[3];
447 double LastEventOrientation[4];
448 double StartEventOrientation[4];
455 double SnappedEventOrientation[4];
481 double WidgetBounds[6];
536 void Rotate(
double X,
double Y,
double* p1,
double* p2,
double* vpn);
541 void UpdatePose(
double* p1,
double* d1,
double* p2,
double* d2);
542 void Push(
double* p1,
double* p2);
543 void Scale(
double* p1,
double* p2,
double X,
double Y);
map vtkPolyData to graphics primitives
bool IsTranslationConstrained()
Returns true if ContrainedAxis.
perform various plane computations
void PushPlane(double distance)
Push the plane the distance specified along the normal.
void GetPolyData(vtkPolyData *pd)
Grab the polydata that defines the plane.
vtkPolyDataMapper * ConeMapper2
vtkOutlineFilter * Outline
vtkProperty * SelectedNormalProperty
virtual void SetCropPlaneToBoundingBox(bool)
Control if the plane should be drawn cropped by the bounding box or without cropping.
void RegisterPickers() override
Register internal Pickers in the Picking Manager.
vtkProperty * NormalProperty
vtkTypeBool NormalToXAxis
Cut vtkDataSet with user-specified implicit function.
void HighlightOutline(int highlight)
~vtkImplicitPlaneRepresentation() override
void SetTranslationAxisOff()
void Rotate3D(double *p1, double *p2)
vtkTypeBool ConstrainToWidgetBounds
void HighlightNormal(int highlight)
int ComputeComplexInteractionState(vtkRenderWindowInteractor *iren, vtkAbstractWidget *widget, unsigned long event, void *calldata, int modify=0) override
void EndWidgetInteraction(double newEventPos[2]) override
void SetEdgeColor(double x[3])
bool CropPlaneToBoundingBox
void Rotate(double X, double Y, double *p1, double *p2, double *vpn)
void CreateDefaultProperties()
vtkPolyDataMapper * CutMapper
create an array of quadrilaterals located in a plane
vtkProperty * EdgesProperty
virtual void SetRepresentationState(int)
Sets the visual appearance of the representation based on the state it is in.
void StartComplexInteraction(vtkRenderWindowInteractor *iren, vtkAbstractWidget *widget, unsigned long event, void *calldata) override
void SetEdgeColor(vtkLookupTable *)
Set color to the edge.
vtkProperty * PlaneProperty
vtkConeSource * ConeSource
vtkPolyDataMapper * LineMapper
void SetEdgeColor(double, double, double)
int ComputeInteractionState(int X, int Y, int modify=0) override
Methods to interface with the vtkImplicitPlaneWidget2.
vtkPolyDataMapper * SphereMapper
void EndComplexInteraction(vtkRenderWindowInteractor *iren, vtkAbstractWidget *widget, unsigned long event, void *calldata) override
window superclass for vtkRenderWindow
void StartWidgetInteraction(double eventPos[2]) override
void GetPlane(vtkPlane *plane)
Get the implicit function for the plane by copying the origin and normal of the cut plane into the pr...
a class defining the representation for a vtkImplicitPlaneWidget2
filter that generates tubes around lines
vtkTypeBool NormalToZAxis
void PlaceWidget(double bounds[6]) override
vtkPolyDataMapper * OutlineMapper
vtkPolyDataMapper * ConeMapper
vtkLineSource * LineSource2
void TranslatePlane(double *p1, double *p2)
#define VTK_SIZEHINT(...)
void SetOrigin(double x[3])
void BuildRepresentation() override
vtkProperty * SelectedOutlineProperty
void Push(double *p1, double *p2)
vtkConeSource * ConeSource2
create a polygonal sphere centered at the origin
vtkLineSource * LineSource
represents an object (geometry & properties) in a rendered scene
void SetOrigin(double x, double y, double z)
Get the origin of the plane.
topologically and geometrically regular array of data
a simple class to control print indentation
vtkPlaneSource * PlaneSource
vtkTypeBool NormalToYAxis
vtkTypeBool OutlineTranslation
extract interior, boundary, non-manifold, and/or sharp edges from polygonal data
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetYTranslationAxisOn()
void UpdatePlacement(void)
Satisfies the superclass API.
create a line defined by two end points
virtual void SetAlwaysSnapToNearestAxis(bool snap)
void HighlightPlane(int highlight)
platform-independent render window interaction including picking and frame rate control.
abstract specification for Viewports
vtkPolyDataAlgorithm * GetPolyDataAlgorithm()
Satisfies superclass API.
map scalar values into colors via a lookup table
implicit function for a bounding box
vtkTypeBool LockNormalToCamera
vtkProperty * OutlineProperty
void WidgetInteraction(double newEventPos[2]) override
concrete dataset represents vertices, lines, polygons, and triangle strips
create wireframe outline for an arbitrary data set or composite dataset
double * GetBounds() override
Methods supporting the rendering process.
static vtkImplicitPlaneRepresentation * New()
Instantiate the class.
represent surface properties of a geometric object
void UpdatePose(double *p1, double *d1, double *p2, double *d2)
void SetZTranslationAxisOn()
void BumpPlane(int dir, double factor)
Translate the plane in the direction of the normal by the specified BumpDistance.
ray-cast cell picker for all kinds of Prop3Ds
void Scale(double *p1, double *p2, double X, double Y)
void TranslateOrigin(double *p1, double *p2)
vtkTypeBool OutsideBounds
void SetPlane(vtkPlane *plane)
Alternative way to define the cutting plane.
vtkTubeFilter * EdgesTuber
vtkImplicitPlaneRepresentation()
vtkPolyDataMapper * LineMapper2
vtkPolyDataMapper * EdgesMapper
vtkProperty * SelectedPlaneProperty
void TranslateOutline(double *p1, double *p2)
bool AlwaysSnapToNearestAxis
void ComplexInteraction(vtkRenderWindowInteractor *iren, vtkAbstractWidget *widget, unsigned long event, void *calldata) override
Superclass for algorithms that produce only polydata as output.
vtkPlane * GetUnderlyingPlane()