|
virtual int | IsA (const char *type) |
|
vtkBoxWidget * | NewInstance () const |
|
void | PrintSelf (ostream &os, vtkIndent indent) |
|
void | GetPlanes (vtkPlanes *planes) |
|
virtual void | GetTransform (vtkTransform *t) |
|
virtual void | SetTransform (vtkTransform *t) |
|
void | GetPolyData (vtkPolyData *pd) |
|
|
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 | SetInsideOut (int) |
|
virtual int | GetInsideOut () |
|
virtual void | InsideOutOn () |
|
virtual void | InsideOutOff () |
|
|
virtual vtkProperty * | GetHandleProperty () |
|
virtual vtkProperty * | GetSelectedHandleProperty () |
|
|
void | HandlesOn () |
|
void | HandlesOff () |
|
|
virtual vtkProperty * | GetFaceProperty () |
|
virtual vtkProperty * | GetSelectedFaceProperty () |
|
|
virtual vtkProperty * | GetOutlineProperty () |
|
virtual vtkProperty * | GetSelectedOutlineProperty () |
|
|
void | SetOutlineFaceWires (int) |
|
virtual int | GetOutlineFaceWires () |
|
void | OutlineFaceWiresOn () |
|
void | OutlineFaceWiresOff () |
|
|
void | SetOutlineCursorWires (int) |
|
virtual int | GetOutlineCursorWires () |
|
void | OutlineCursorWiresOn () |
|
void | OutlineCursorWiresOff () |
|
|
virtual void | SetTranslationEnabled (int) |
|
virtual int | GetTranslationEnabled () |
|
virtual void | TranslationEnabledOn () |
|
virtual void | TranslationEnabledOff () |
|
virtual void | SetScalingEnabled (int) |
|
virtual int | GetScalingEnabled () |
|
virtual void | ScalingEnabledOn () |
|
virtual void | ScalingEnabledOff () |
|
virtual void | SetRotationEnabled (int) |
|
virtual int | GetRotationEnabled () |
|
virtual void | RotationEnabledOn () |
|
virtual void | RotationEnabledOff () |
|
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) |
|
virtual void | OnChar () |
|
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 *) |
|
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 | Register (vtkObjectBase *o) |
|
virtual void | UnRegister (vtkObjectBase *o) |
|
void | SetReferenceCount (int) |
|
void | PrintRevisions (ostream &) |
|
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
|
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
|
int | GetReferenceCount () |
|
|
virtual vtkObjectBase * | NewInstanceInternal () const |
|
| vtkBoxWidget () |
|
| ~vtkBoxWidget () |
|
virtual void | OnMouseMove () |
|
virtual void | OnLeftButtonDown () |
|
virtual void | OnLeftButtonUp () |
|
virtual void | OnMiddleButtonDown () |
|
virtual void | OnMiddleButtonUp () |
|
virtual void | OnRightButtonDown () |
|
virtual void | OnRightButtonUp () |
|
virtual void | PositionHandles () |
|
int | HighlightHandle (vtkProp *prop) |
|
void | HighlightFace (int cellId) |
|
void | HighlightOutline (int highlight) |
|
void | ComputeNormals () |
|
virtual void | SizeHandles () |
|
virtual void | RegisterPickers () |
|
virtual void | Translate (double *p1, double *p2) |
|
virtual void | Scale (double *p1, double *p2, int X, int Y) |
|
virtual void | Rotate (int X, int Y, double *p1, double *p2, double *vpn) |
|
void | MovePlusXFace (double *p1, double *p2) |
|
void | MoveMinusXFace (double *p1, double *p2) |
|
void | MovePlusYFace (double *p1, double *p2) |
|
void | MoveMinusYFace (double *p1, double *p2) |
|
void | MovePlusZFace (double *p1, double *p2) |
|
void | MoveMinusZFace (double *p1, double *p2) |
|
void | MoveFace (double *p1, double *p2, double *dir, double *x1, double *x2, double *x3, double *x4, double *x5) |
|
void | GetDirection (const double Nx[3], const double Ny[3], const double Nz[3], double dir[3]) |
|
void | CreateDefaultProperties () |
|
void | GenerateOutline () |
|
| vtk3DWidget () |
|
| ~vtk3DWidget () |
|
void | AdjustBounds (double bounds[6], double newBounds[6], double center[3]) |
|
double | SizeHandles (double factor) |
|
void | UpdateInput () |
|
| vtkInteractorObserver () |
|
| ~vtkInteractorObserver () |
|
void | UnRegisterPickers () |
|
virtual void | PickersModified () |
|
vtkPickingManager * | GetPickingManager () |
|
int | RequestCursorShape (int requestedShape) |
|
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]) |
|
vtkAssemblyPath * | GetAssemblyPath (double X, double Y, double Z, vtkAbstractPropPicker *picker) |
|
| 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 &) |
|
orthogonal hexahedron 3D widget
This 3D widget defines a region of interest that is represented by an arbitrarily oriented hexahedron with interior face angles of 90 degrees (orthogonal faces). The object creates 7 handles that can be moused on and manipulated. The first six correspond to the six faces, the seventh is in the center of the hexahedron. In addition, a bounding box outline is shown, the "faces" of which can be selected for object rotation or scaling. A nice feature of the object is that the vtkBoxWidget, like any 3D widget, will work with the current interactor style. That is, if vtkBoxWidget does not handle an event, then all other registered observers (including the interactor style) have an opportunity to process the event. Otherwise, the vtkBoxWidget will terminate the processing of the event that it handles.
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. The interactor will act normally until the "i" key (for "interactor") is pressed, at which point the vtkBoxWidget will appear. (See superclass documentation for information about changing this behavior.) By grabbing the six face handles (use the left mouse button), faces can be moved. By grabbing the center handle (with the left mouse button), the entire hexahedron can be translated. (Translation can also be employed by using the "shift-left-mouse-button" combination inside of the widget.) Scaling is achieved by using the right mouse button "up" the render window (makes the widget bigger) or "down" the render window (makes the widget smaller). To rotate vtkBoxWidget, pick a face (but not a face handle) and move the left mouse. (Note: the mouse button must be held down during manipulation.) 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. (See the superclass documentation on key press activiation.)
The vtkBoxWidget is very flexible. It can be used to select, cut, clip, or perform any other operation that depends on an implicit function (use the GetPlanes() method); or it can be used to transform objects using a linear transformation (use the GetTransform() method). 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).
Some additional features of this class include the ability to control the rendered properties of the widget. You can set the properties of the selected and unselected representations of the parts of the widget. For example, you can set the property for the handles, faces, and outline in their normal and selected states.
The box widget can be oriented by specifying a transformation matrix. This transformation is applied to the initial bounding box as defined by the PlaceWidget() method. DO NOT ASSUME that the transformation is applied to a unit box centered at the origin; this is wrong!
- See also
- vtk3DWidget vtkPointWidget vtkLineWidget vtkPlaneWidget vtkImplicitPlaneWidget vtkImagePlaneWidget
- Events:
- vtkCommand::DisableEvent vtkCommand::EndInteractionEvent vtkCommand::InteractionEvent vtkCommand::StartInteractionEvent vtkCommand::EnableEvent
- Examples:
- vtkBoxWidget (Examples)
- Tests:
- vtkBoxWidget (Tests)
Definition at line 100 of file vtkBoxWidget.h.