The HOpConstructCone class provides support for constructing a cone and inserting it into the model. More...
#include <HOpConstructCone.h>
Public Member Functions | |
virtual HBaseOperator * | Clone () |
virtual const char * | GetName () |
HOpConstructCone (HBaseView *view, int DoRepeat=0, int DoCapture=1) | |
virtual int | OnLButtonDown (HEventInfo &hevent) |
virtual int | OnLButtonDownAndMove (HEventInfo &hevent) |
virtual int | OnLButtonUp (HEventInfo &hevent) |
virtual int | OnNoButtonDownAndMove (HEventInfo &hevent) |
![]() | |
int | Capture () |
Returns whether we are currently in mouse capture mode. See this class' constructor for a more detailed description of what this means. This method has been deprecated. | |
HPoint const | GetFirstPoint (void) |
Returns the initial selection point. | |
HPoint const | GetNewPoint (void) |
Returns the current selection point. | |
HBaseView * | GetView (void) |
Returns a pointer to the view that this operator is associated with. | |
HBaseOperator (HBaseView *view, int DoRepeat=0, int DoCapture=1) | |
virtual int | OnKeyDown (HEventInfo &hevent) |
virtual int | OnKeyUp (HEventInfo &hevent) |
virtual int | OnLButtonDblClk (HEventInfo &hevent) |
virtual int | OnLRButtonDownAndMove (HEventInfo &hevent) |
virtual int | OnMButtonDblClk (HEventInfo &hevent) |
virtual int | OnMButtonDown (HEventInfo &hevent) |
virtual int | OnMButtonDownAndMove (HEventInfo &hevent) |
virtual int | OnMButtonUp (HEventInfo &hevent) |
virtual int | OnMouseMove (HEventInfo &hevent) |
virtual int | OnMouseWheel (HEventInfo &hevent) |
virtual int | OnRButtonDblClk (HEventInfo &hevent) |
virtual int | OnRButtonDown (HEventInfo &hevent) |
virtual int | OnRButtonDownAndMove (HEventInfo &hevent) |
virtual int | OnRButtonUp (HEventInfo &hevent) |
virtual int | OnTimer (HEventInfo &hevent) |
virtual int | OnTouchesDown (HEventInfo &hevent) |
virtual int | OnTouchesMove (HEventInfo &hevent) |
virtual int | OnTouchesUp (HEventInfo &hevent) |
virtual bool | OperatorStarted () |
Operator has been started if true, and has not been started if false. | |
int | Repeat () |
Returns whether the operation is repeatable. This method has been deprecated. | |
void | SetFirstPoint (HPoint const &new_point) |
Sets the initial selection point. | |
void | SetMapTouchesToMouseEvents (bool val) |
Touch Events are mapped to mouse events if true, and are not if false. | |
void | SetNewPoint (HPoint const &new_point) |
Sets the current selection point. | |
void | SetOperatorStarted (bool val) |
Operator has been started if true, and has not been started if false. | |
void | SetView (HBaseView *new_view) |
Sets the view that this operator is associated with. | |
Protected Member Functions | |
void | ConstructWireframeCone (HPoint center, float radius, float height) |
![]() | |
bool | IsSpecialKey (HC_KEY key) |
Protected Attributes | |
float | m_height |
float | m_RadiusLength |
HVector | m_WorldRadiusVector |
![]() | |
bool | m_bMapTouchesToMouseEvents |
Indicates if touch events are mapped to mouse events. | |
bool | m_bOpStarted |
Indicates whether the operator has already 'started'. More... | |
int | m_doCapture |
Integer indicating whether to capture mouse on button down and release on button up. This parameter has been deprecated. | |
int | m_doRepeat |
Integer indicating if the operator is repeatable . This parameter has been deprecated. | |
HPoint | m_ptFirst |
Initial selection point. | |
HPoint | m_ptNew |
Current selection point. | |
HBaseView * | m_pView |
The HOOPS view corresponding to this operator. | |
HCutGeometryVisibility | m_TempCutGeometryVisibility |
stores original cut geometry visibility | |
HShadowMode | m_TempShadowMode |
stores original shadow mode | |
The HOpConstructCone class provides support for constructing a cone and inserting it into the model.
HOpConstructCone implements four of the mouse button event handlers defined on the base class and maps the event information to the local methods that rubberband a cone. This class provides the basic functionality for temporarily drawing a three-dimensional, tesselated cone with a circular base and a number of triangular, facetted sides with the default being 30. The operation consists of the following steps:
More Detailed Description: see event methods.
HOpConstructCone::HOpConstructCone | ( | HBaseView * | view, |
int | DoRepeat = 0 , |
||
int | DoCapture = 1 |
||
) |
Constructs an HOpConstructCone object.
view | A pointer to an HBaseView object. |
DoRepeat | An integer denoting whether this is a repeatable operator. This parameter has been deprecated. |
DoCapture | An integer denoting whether the mouse state should be captured, which means that all mouse events should be received after a mousedown, even if it leaves the window. This parameter has been deprecated. |
|
virtual |
Creates a new operator which is a copy of the current operator. The user is responsible for deleting the newly created operator.
Reimplemented from HBaseOperator.
Reimplemented in HOpCreateCone.
|
protected |
ConstructWireframeCone transforms the pointer coordinates from screen to world space and inserts a wireframe cone into the scene. This function is called internally by OnNoButtonDownAndMove after the base dimensions have been finalized.
center | The center of the circle that forms base of the cone. |
radius | The length of the radius of the cone's base. |
height | The height of the cone. |
|
virtual |
Reimplemented from HBaseOperator.
Reimplemented in HOpCreateCone.
|
virtual |
OnLButtonDown records the first pointer position and initiates the cone-drawing mechanism. The first point is used as the center of the cone's circular base. If the drawing mechanism has already been started such as LButtonDown having been called once already, LButtonDown record the last point, calculates the height of the cone, finalizes the operator and then clear the geometry from the scene.
hevent | An HEventInfo object containing information about the current event. |
Reimplemented from HBaseOperator.
Reimplemented in HOpCreateCone.
|
virtual |
OnLButtonDownAndMove draws a rubberbanded line along the circumference of a circle centered on the first pointer position. Note that the basic drawing work is done by HUtility::CreateAxisCircle, while OnLButtonDownAndMove computes and keeps track of the radial vector that defines the base.
hevent | An HEventInfo object containing information about the current event. |
Reimplemented from HBaseOperator.
|
virtual |
OnLButtonUp finalizes the size of the base, sets the value of m_RadiusLength and m_radius_world_vector, and cleans up. This function is not called after the second call to OnLButtonDown.
hevent | An HEventInfo object containing information about the current event. |
Reimplemented from HBaseOperator.
|
virtual |
OnNoButtonDownAndMove draws rubberband lines from the circular base of the cone to the current mouse position. Note that the basic work is done by internal calls to HOpConstructCone::ConstructWireframeCone.
hevent | An HEventInfo object containing information about the current event. |
Reimplemented from HBaseOperator.
|
protected |
Height of the cone, based on first and last pointer positions
|
protected |
Magnitude of the base radius vector, in screen coordinates
|
protected |
Base radius vector in world coordinates