|
| virtual int | IsA (const char *type) |
| |
| vtkImplicitPlaneWidget * | NewInstance () const |
| |
| void | PrintSelf (ostream &os, vtkIndent indent) |
| |
| virtual void | SetEnabled (int) |
| |
| virtual void | PlaceWidget (double bounds[6]) |
| |
| void | PlaceWidget () |
| |
| void | PlaceWidget (double xmin, double xmax, double ymin, double ymax, double zmin, double zmax) |
| |
| virtual void | SetOrigin (double x, double y, double z) |
| |
| virtual void | SetOrigin (double x[3]) |
| |
| double * | GetOrigin () |
| |
| void | GetOrigin (double xyz[3]) |
| |
| void | SetNormal (double x, double y, double z) |
| |
| void | SetNormal (double x[3]) |
| |
| double * | GetNormal () |
| |
| void | GetNormal (double xyz[3]) |
| |
| void | SetNormalToXAxis (int) |
| |
| virtual int | GetNormalToXAxis () |
| |
| virtual void | NormalToXAxisOn () |
| |
| virtual void | NormalToXAxisOff () |
| |
| void | SetNormalToYAxis (int) |
| |
| virtual int | GetNormalToYAxis () |
| |
| virtual void | NormalToYAxisOn () |
| |
| virtual void | NormalToYAxisOff () |
| |
| void | SetNormalToZAxis (int) |
| |
| virtual int | GetNormalToZAxis () |
| |
| virtual void | NormalToZAxisOn () |
| |
| virtual void | NormalToZAxisOff () |
| |
| virtual void | SetTubing (int) |
| |
| virtual int | GetTubing () |
| |
| virtual void | TubingOn () |
| |
| virtual void | TubingOff () |
| |
| void | SetDrawPlane (int plane) |
| |
| virtual int | GetDrawPlane () |
| |
| virtual void | DrawPlaneOn () |
| |
| virtual void | DrawPlaneOff () |
| |
| virtual void | SetOutlineTranslation (int) |
| |
| virtual int | GetOutlineTranslation () |
| |
| virtual void | OutlineTranslationOn () |
| |
| virtual void | OutlineTranslationOff () |
| |
| virtual void | SetOutsideBounds (int) |
| |
| virtual int | GetOutsideBounds () |
| |
| virtual void | OutsideBoundsOn () |
| |
| virtual void | OutsideBoundsOff () |
| |
| virtual void | SetScaleEnabled (int) |
| |
| virtual int | GetScaleEnabled () |
| |
| virtual void | ScaleEnabledOn () |
| |
| virtual void | ScaleEnabledOff () |
| |
| virtual void | SetOriginTranslation (int) |
| |
| virtual int | GetOriginTranslation () |
| |
| virtual void | OriginTranslationOn () |
| |
| virtual void | OriginTranslationOff () |
| |
| virtual void | SetDiagonalRatio (double) |
| |
| virtual double | GetDiagonalRatio () |
| |
| void | GetPolyData (vtkPolyData *pd) |
| |
| vtkPolyDataAlgorithm * | GetPolyDataAlgorithm () |
| |
| void | GetPlane (vtkPlane *plane) |
| |
| void | UpdatePlacement () |
| |
| virtual void | SizeHandles () |
| |
| virtual vtkProperty * | GetNormalProperty () |
| |
| virtual vtkProperty * | GetSelectedNormalProperty () |
| |
| virtual vtkProperty * | GetPlaneProperty () |
| |
| virtual vtkProperty * | GetSelectedPlaneProperty () |
| |
| virtual vtkProperty * | GetOutlineProperty () |
| |
| virtual vtkProperty * | GetSelectedOutlineProperty () |
| |
| virtual vtkProperty * | GetEdgesProperty () |
| |
| vtkPolyDataSourceWidget * | NewInstance () const |
| |
| void | PrintSelf (ostream &os, vtkIndent indent) |
| |
| void | PlaceWidget (double xmin, double xmax, double ymin, double ymax, double zmin, double zmax) |
| |
| vtk3DWidget * | NewInstance () const |
| |
| virtual void | SetProp3D (vtkProp3D *) |
| |
| virtual vtkProp3D * | GetProp3D () |
| |
| virtual void | SetInputData (vtkDataSet *) |
| |
| virtual void | SetInputConnection (vtkAlgorithmOutput *) |
| |
| virtual vtkDataSet * | GetInput () |
| |
| virtual void | SetPlaceFactor (double) |
| |
| virtual double | GetPlaceFactor () |
| |
| virtual void | SetHandleSize (double) |
| |
| virtual double | GetHandleSize () |
| |
| vtkInteractorObserver * | NewInstance () const |
| |
| void | PrintSelf (ostream &os, vtkIndent indent) |
| |
| int | GetEnabled () |
| |
| void | EnabledOn () |
| |
| void | EnabledOff () |
| |
| void | On () |
| |
| void | Off () |
| |
| virtual void | SetInteractor (vtkRenderWindowInteractor *iren) |
| |
| virtual vtkRenderWindowInteractor * | GetInteractor () |
| |
| virtual void | SetPriority (float) |
| |
| virtual float | GetPriority () |
| |
| virtual void | PickingManagedOn () |
| |
| virtual void | PickingManagedOff () |
| |
| virtual void | SetPickingManaged (bool) |
| |
| virtual bool | GetPickingManaged () |
| |
| virtual void | SetKeyPressActivation (int) |
| |
| virtual int | GetKeyPressActivation () |
| |
| virtual void | KeyPressActivationOn () |
| |
| virtual void | KeyPressActivationOff () |
| |
| virtual void | SetKeyPressActivationValue (char) |
| |
| virtual char | GetKeyPressActivationValue () |
| |
| virtual vtkRenderer * | GetDefaultRenderer () |
| |
| virtual void | SetDefaultRenderer (vtkRenderer *) |
| |
| virtual vtkRenderer * | GetCurrentRenderer () |
| |
| virtual void | SetCurrentRenderer (vtkRenderer *) |
| |
| virtual void | OnChar () |
| |
| void | GrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
| |
| void | ReleaseFocus () |
| |
| vtkObject * | NewInstance () const |
| |
| virtual void | DebugOn () |
| |
| virtual void | DebugOff () |
| |
| bool | GetDebug () |
| |
| void | SetDebug (bool debugFlag) |
| |
| virtual void | Modified () |
| |
| virtual unsigned long | GetMTime () |
| |
| unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
| |
| unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
| |
| vtkCommand * | GetCommand (unsigned long tag) |
| |
| void | RemoveObserver (vtkCommand *) |
| |
| void | RemoveObservers (unsigned long event, vtkCommand *) |
| |
| void | RemoveObservers (const char *event, vtkCommand *) |
| |
| int | HasObserver (unsigned long event, vtkCommand *) |
| |
| int | HasObserver (const char *event, vtkCommand *) |
| |
| void | RemoveObserver (unsigned long tag) |
| |
| void | RemoveObservers (unsigned long event) |
| |
| void | RemoveObservers (const char *event) |
| |
| void | RemoveAllObservers () |
| |
| int | HasObserver (unsigned long event) |
| |
| int | HasObserver (const char *event) |
| |
| template<class U , class T > |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
| |
| template<class U , class T > |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| |
| template<class U , class T > |
| unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| |
| int | InvokeEvent (unsigned long event, void *callData) |
| |
| int | InvokeEvent (const char *event, void *callData) |
| |
| int | InvokeEvent (unsigned long event) |
| |
| int | InvokeEvent (const char *event) |
| |
| const char * | GetClassName () const |
| |
| virtual void | Delete () |
| |
| virtual void | FastDelete () |
| |
| void | Print (ostream &os) |
| |
| virtual void | PrintHeader (ostream &os, vtkIndent indent) |
| |
| virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
| |
| virtual void | Register (vtkObjectBase *o) |
| |
| virtual void | UnRegister (vtkObjectBase *o) |
| |
| int | GetReferenceCount () |
| |
| void | SetReferenceCount (int) |
| |
| void | PrintRevisions (ostream &) |
| |
|
| virtual vtkObjectBase * | NewInstanceInternal () const |
| |
| | vtkImplicitPlaneWidget () |
| |
| | ~vtkImplicitPlaneWidget () |
| |
| void | OnLeftButtonDown () |
| |
| void | OnLeftButtonUp () |
| |
| void | OnMiddleButtonDown () |
| |
| void | OnMiddleButtonUp () |
| |
| void | OnRightButtonDown () |
| |
| void | OnRightButtonUp () |
| |
| void | OnMouseMove () |
| |
| void | UpdateRepresentation () |
| |
| void | HighlightOutline (int highlight) |
| |
| virtual void | HighlightPlane (int highlight) |
| |
| void | HighlightNormal (int highlight) |
| |
| virtual void | RegisterPickers () |
| |
| void | ConstrainOrigin (double x[3]) |
| |
| void | Rotate (int X, int Y, double *p1, double *p2, double *vpn) |
| |
| void | TranslatePlane (double *p1, double *p2) |
| |
| void | TranslateOutline (double *p1, double *p2) |
| |
| void | TranslateOrigin (double *p1, double *p2) |
| |
| void | Push (double *p1, double *p2) |
| |
| void | Scale (double *p1, double *p2, int X, int Y) |
| |
| void | CreateDefaultProperties () |
| |
| void | GeneratePlane () |
| |
| | vtkPolyDataSourceWidget () |
| |
| | vtk3DWidget () |
| |
| | ~vtk3DWidget () |
| |
| void | AdjustBounds (double bounds[6], double newBounds[6], double center[3]) |
| |
| double | SizeHandles (double factor) |
| |
| void | UpdateInput () |
| |
| | vtkInteractorObserver () |
| |
| | ~vtkInteractorObserver () |
| |
| virtual void | StartInteraction () |
| |
| virtual void | EndInteraction () |
| |
| void | ComputeDisplayToWorld (double x, double y, double z, double worldPt[4]) |
| |
| void | ComputeWorldToDisplay (double x, double y, double z, double displayPt[3]) |
| |
| void | UnRegisterPickers () |
| |
| virtual void | PickersModified () |
| |
| vtkPickingManager * | GetPickingManager () |
| |
| vtkAssemblyPath * | GetAssemblyPath (double X, double Y, double Z, vtkAbstractPropPicker *picker) |
| |
| int | RequestCursorShape (int requestedShape) |
| |
| | vtkObject () |
| |
| virtual | ~vtkObject () |
| |
| virtual void | RegisterInternal (vtkObjectBase *, int check) |
| |
| virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
| |
| void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
| |
| void | InternalReleaseFocus () |
| |
| | vtkObjectBase () |
| |
| virtual | ~vtkObjectBase () |
| |
| virtual void | CollectRevisions (ostream &) |
| |
| virtual void | ReportReferences (vtkGarbageCollector *) |
| |
| | vtkObjectBase (const vtkObjectBase &) |
| |
| void | operator= (const vtkObjectBase &) |
| |
3D widget for manipulating an infinite plane
This 3D widget defines an infinite plane that can be interactively placed in a scene. The widget is represented by a plane with a normal vector; the plane is contained by a bounding box, and where the plane intersects the bounding box the edges are shown (possibly tubed). The normal can be selected and moved to rotate the plane; the plane itself can be selected and translated in various directions. As the plane is moved, the implicit plane function and polygon (representing the plane cut against the bounding box) is updated.
To use this object, just invoke SetInteractor() with the argument of the method a vtkRenderWindowInteractor. You may also wish to invoke "PlaceWidget()" to initially position the widget. If the "i" key (for "interactor") is pressed, the vtkImplicitPlaneWidget will appear. (See superclass documentation for information about changing this behavior.) If you select the normal vector, the plane can be arbitrarily rotated. The plane can be translated along the normal by selecting the plane and moving it. The plane (the plane origin) can also be arbitrary moved by selecting the plane with the middle mouse button. The right mouse button can be used to uniformly scale the bounding box (moving "up" the box scales larger; moving "down" the box scales smaller). Events that occur outside of the widget (i.e., no part of the widget is picked) are propagated to any other registered obsevers (such as the interaction style). Turn off the widget by pressing the "i" key again (or invoke the Off() method).
The vtkImplicitPlaneWidget has several methods that can be used in conjunction with other VTK objects. The GetPolyData() method can be used to get a polygonal representation (the single polygon clipped by the bounding box). Typical usage of the widget is to make use of the StartInteractionEvent, InteractionEvent, and EndInteractionEvent events. The InteractionEvent is called on mouse motion; the other two events are called on button down and button up (either left or right button). (Note: there is also a PlaceWidgetEvent that is invoked when the widget is placed with PlaceWidget().)
Some additional features of this class include the ability to control the properties of the widget. You do this by setting property values on the normal vector (selected and unselected properties); the plane (selected and unselected properties); the outline (selected and unselected properties); and the edges. The edges may also be tubed or not.
- See also
- vtk3DWidget vtkBoxWidget vtkPlaneWidget vtkLineWidget vtkPointWidget vtkSphereWidget vtkImagePlaneWidget
- Events:
- vtkCommand::EndInteractionEvent vtkCommand::EnableEvent vtkCommand::InteractionEvent vtkCommand::DisableEvent vtkCommand::StartInteractionEvent
- Examples:
- vtkImplicitPlaneWidget (Examples)
- Tests:
- vtkImplicitPlaneWidget (Tests)
Definition at line 94 of file vtkImplicitPlaneWidget.h.