Public Member Functions | Protected Member Functions | List of all members
HPS.CuttingSectionOperator Class Reference

More...

Inheritance diagram for HPS.CuttingSectionOperator:
HPS.SelectOperator HPS.Operator HPS.Sprocket HPS.Object

Public Member Functions

override void Dispose ()
 
 CuttingSectionOperator (HPS.MouseButtons in_mouse_trigger, HPS.ModifierKeys in_modifier_trigger)
 
 CuttingSectionOperator (HPS.MouseButtons in_mouse_trigger)
 
override string GetName ()
 Returns the name of the operator. More...
 
override void OnModelAttached ()
 This function is called whenever a model is attached to the view that is attached to this operator. If no view is attached to this operator, this function will not be called. More...
 
override void OnViewAttached ()
 This function is called whenever a view is attached to this operator. More...
 
override void OnViewDetached ()
 This function is called whenever a view is detached from this operator. More...
 
void SetPlanes (HPS.Plane[] in_planes)
 
HPS.Plane[] GetPlanes ()
 
override bool OnMouseDown (HPS.MouseState in_state)
 This function is called whenever HPS receives a MouseEvent that signals a mouse button was pressed. This function starts the operator and computes the position of the starting point. When the operator is first started, this function inserts a cutting section. More...
 
override bool OnMouseUp (HPS.MouseState in_state)
 This function is called whenever HPS receives a MouseEvent that signals a mouse button was released. More...
 
override bool OnMouseMove (HPS.MouseState in_state)
 This function is called whenever HPS receives a MouseEvent that signals the mouse moved When the operator is first started this function displays a normal indicator when the user mouses over geometry. After a cutting section has been inserted this function allows the user to translate a cutting section along its normal More...
 
override bool OnTouchDown (HPS.TouchState in_state)
 This function is called whenever HPS receives a TouchEvent that signals the device was touched. This function starts the operator and computes the position of the starting point. When the operator is first started, this function inserts a cutting section. More...
 
override bool OnTouchUp (HPS.TouchState in_state)
 This function is called whenever HPS receives a TouchEvent that signals a point of contact has been released. More...
 
override bool OnTouchMove (HPS.TouchState in_state)
 This function is called whenever HPS receives a TouchEvent that signals a point of contact has moved. After a cutting section has been inserted this function allows the user to translate a cutting section along its normal More...
 
override bool OnTimerTick (HPS.TimerTickEvent in_event)
 This function is called whenever HPS receives a TimerTickEvent This function moves the camera More...
 
float GetIndicatorScale ()
 Returns the scale used for the normal indicator displayed while mousing over the model when the operator is first started. More...
 
void SetIndicatorScale (float in_scale)
 Sets the scale of the normal indicator displayed while mousing over the model when the operator is first started. More...
 
HPS.MaterialMappingKit GetPlaneMaterial ()
 Returns the material mapping kit applied to the cutting plane geometry. More...
 
void SetPlaneMaterial (HPS.MaterialMappingKit in_plane_material)
 Sets the material mapping kit applied to the cutting plane geometry. More...
 
HPS.HighlightOptionsKit GetPlaneHighlightOptions ()
 Returns the highlight options kit used when hovering over geometry, when mouse-over highlighting is enabled. More...
 
void SetPlaneHighlightOptions (HPS.HighlightOptionsKit in_highlight_options)
 Sets the highlight options kit used when hovering over geometry, when mouse-over highlighting is enabled. More...
 
bool GetMouseOverHighlighting ()
 Whether mouse-over highlighting is enabled More...
 
void SetMouseOverHighlighting (bool in_enable_mouse_over_highlighting)
 Sets the mouse-over highlighting behavior More...
 
void SetSectioning (bool in_sectioning)
 Sets the sectioning behavior When sectioning is turned on the cutting planes are grouped together into a section More...
 
bool GetSectioning ()
 Whether sectioning is enabled More...
 
void SetIndicatorVisibility (bool in_use_indicator)
 This function allows the user to pick a cutting sections through the aid of a normal indicator when moving the mouse By default this mode is active when the operator is fist attached to a View More...
 
bool GetIndicatorVisibility ()
 Whether the plane normal indicator is visible More...
 
void SetPlaneVisibility (bool in_visibility)
 Sets the visibility of cutting sections plane representation The cutting sections plane representation visibility is on by default. More...
 
bool GetPlaneVisibility ()
 Whether the cutting sections plane representations are visible More...
 
- Public Member Functions inherited from HPS.SelectOperator
override void Dispose ()
 
 SelectOperator (HPS.MouseButtons in_mouse_trigger, HPS.ModifierKeys in_modifier_trigger)
 SelectOperator constructor. The operator is not active until it is attached to a HPS::View. Even after being attached, operator must remain in scope until you're done using it. More...
 
 SelectOperator (HPS.MouseButtons in_mouse_trigger)
 SelectOperator constructor. The operator is not active until it is attached to a HPS::View. Even after being attached, operator must remain in scope until you're done using it. More...
 
 SelectOperator ()
 SelectOperator constructor. The operator is not active until it is attached to a HPS::View. Even after being attached, operator must remain in scope until you're done using it. More...
 
override string GetName ()
 Returns the name of the Operator. More...
 
override bool OnMouseDown (HPS.MouseState in_state)
 This function is called whenever HPS receives a MouseEvent that signals a mouse button was pressed. More...
 
override bool OnTouchDown (HPS.TouchState in_state)
 This function is called whenever HPS receives a TouchEvent that signals the device was touched. More...
 
HPS.SelectionResults GetActiveSelection ()
 This method returns the results of the last selection action. If no objects were selected, the SelectionResults object returned will be have a count of 0. More...
 
void SetSelectionOptions (HPS.SelectionOptionsKit in_options)
 Accepts a SelectionOptionsKit that defines the parameters that will be used for selection. More...
 
HPS.SelectionOptionsKit GetSelectionOptions ()
 Gets the HPS::SelectionOptionsKit that has been set on this operator. More...
 
delegate int SelectOperatorDelegate_0 (int ret_maxsize, IntPtr ret_str)
 
delegate bool SelectOperatorDelegate_1 (IntPtr in_state)
 
delegate bool SelectOperatorDelegate_2 (IntPtr in_state)
 
delegate HPS.Type SelectOperatorDelegate_3 ()
 
delegate void SelectOperatorDelegate_4 (IntPtr in_that)
 
delegate bool SelectOperatorDelegate_5 (IntPtr in_that)
 
delegate bool SelectOperatorDelegate_6 (IntPtr in_state)
 
delegate bool SelectOperatorDelegate_7 (IntPtr in_state)
 
delegate bool SelectOperatorDelegate_8 (IntPtr in_state)
 
delegate bool SelectOperatorDelegate_9 (IntPtr in_state)
 
delegate bool SelectOperatorDelegate_10 (IntPtr in_state)
 
delegate bool SelectOperatorDelegate_11 (IntPtr in_state)
 
delegate bool SelectOperatorDelegate_12 (IntPtr in_state)
 
delegate bool SelectOperatorDelegate_13 (IntPtr in_state)
 
delegate bool SelectOperatorDelegate_14 (IntPtr in_state)
 
delegate bool SelectOperatorDelegate_15 (IntPtr in_event)
 
delegate void SelectOperatorDelegate_16 ()
 
delegate void SelectOperatorDelegate_17 ()
 
delegate void SelectOperatorDelegate_18 ()
 
delegate void SelectOperatorDelegate_19 ()
 
delegate bool SelectOperatorDelegate_20 (IntPtr in_state)
 
delegate bool SelectOperatorDelegate_21 ()
 
delegate void SelectOperatorDelegate_22 ()
 
- Public Member Functions inherited from HPS.Operator
 Operator (HPS.MouseButtons in_mouse_trigger, HPS.ModifierKeys in_modifier_trigger)
 
 Operator (HPS.MouseButtons in_mouse_trigger)
 
 Operator (HPS.Operator in_that)
 
override HPS.Type ObjectType ()
 This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object. More...
 
virtual void Assign (HPS.Operator in_that)
 Assigns the parameter in_that to this operator, resulting in a clone. More...
 
override bool Equals (System.Object obj)
 
override int GetHashCode ()
 
virtual bool Equals (HPS.Operator in_that)
 Tests this operator for equality against the parameter in_that. Same as Operator::operator== More...
 
void DetachView ()
 Detaches the Operator from the View it was previously attached to. More...
 
HPS.View GetAttachedView ()
 Returns the View the Operator is currently attached to. More...
 
virtual bool OnMouseWheel (HPS.MouseState in_state)
 This function is called whenever HPS receives a MouseEvent that signals the mouse wheel was scrolled. More...
 
virtual bool OnMouseEnter (HPS.MouseState in_state)
 This function is called whenever HPS receives a MouseEvent that signals the mouse entered the window. More...
 
virtual bool OnMouseLeave (HPS.MouseState in_state)
 This function is called whenever HPS receives a MouseEvent that signals the mouse left the window. More...
 
virtual bool OnKeyDown (HPS.KeyboardState in_state)
 This function is called whenever HPS receives a KeyboardEvent that signals a key was pressed. More...
 
virtual bool OnKeyUp (HPS.KeyboardState in_state)
 This function is called whenever HPS receives a KeyboardEvent that signals a key was released. More...
 
virtual void OnModelDetached ()
 This function is called whenever a model is detached from the view that is attached to this operator. If no view is attached to this operator, this function will not be called. More...
 
void SetMouseTrigger (HPS.MouseButtons in_buttons)
 Sets the mouse trigger for this operator More...
 
HPS.MouseButtons GetMouseTrigger ()
 Gets the mouse trigger associated with this operator. More...
 
void SetModifierTrigger (HPS.ModifierKeys in_modifiers)
 Sets the modifier trigger associated with this operator. More...
 
HPS.ModifierKeys GetModifierTrigger ()
 Gets the modifier trigger associated with this operator. More...
 
virtual bool IsMouseTriggered (HPS.MouseState in_state)
 Returns true if the MouseButtons and ModifierKeys are active. More...
 
delegate HPS.Type OperatorDelegate_0 ()
 
delegate void OperatorDelegate_1 (IntPtr in_that)
 
delegate bool OperatorDelegate_2 (IntPtr in_that)
 
delegate int OperatorDelegate_3 (int ret_maxsize, IntPtr ret_str)
 
delegate bool OperatorDelegate_4 (IntPtr in_state)
 
delegate bool OperatorDelegate_5 (IntPtr in_state)
 
delegate bool OperatorDelegate_6 (IntPtr in_state)
 
delegate bool OperatorDelegate_7 (IntPtr in_state)
 
delegate bool OperatorDelegate_8 (IntPtr in_state)
 
delegate bool OperatorDelegate_9 (IntPtr in_state)
 
delegate bool OperatorDelegate_10 (IntPtr in_state)
 
delegate bool OperatorDelegate_11 (IntPtr in_state)
 
delegate bool OperatorDelegate_12 (IntPtr in_state)
 
delegate bool OperatorDelegate_13 (IntPtr in_state)
 
delegate bool OperatorDelegate_14 (IntPtr in_state)
 
delegate bool OperatorDelegate_15 (IntPtr in_event)
 
delegate void OperatorDelegate_16 ()
 
delegate void OperatorDelegate_17 ()
 
delegate void OperatorDelegate_18 ()
 
delegate void OperatorDelegate_19 ()
 
delegate bool OperatorDelegate_20 (IntPtr in_state)
 
delegate bool OperatorDelegate_21 ()
 
delegate void OperatorDelegate_22 ()
 
delegate void DtorDelegate (IntPtr cPtr)
 
- Public Member Functions inherited from HPS.Sprocket
 Sprocket (HPS.Sprocket in_that)
 
- Public Member Functions inherited from HPS.Object
IntPtr GetClassID ()
 
 Object (HPS.Object in_that)
 The move constructor creates an Object by transferring the underlying impl of the rvalue reference to this Object thereby avoiding a copy and allocation. More...
 
HPS.Type Type ()
 This function returns the true type of the underlying object. This function is useful for finding the type of smart pointer objects that have been cast to more generic types. More...
 
virtual bool Empty ()
 Indicates whether this object has any values set on it. More...
 
virtual void Reset ()
 Resets this object to its initial, uninitialized state. More...
 
bool HasType (HPS.Type in_mask)
 This function indicates whether this Object has the given Type mask. More...
 
IntPtr GetInstanceID ()
 Returns an identifier that can be used to identify which instance of a class an object is. Different keys and controls will return the same value if they are backed by the same database resource. More...
 

Protected Member Functions

override void deleteCptr ()
 
- Protected Member Functions inherited from HPS.SelectOperator
override void deleteCptr ()
 
override IntPtr GetNonDirectorClassID ()
 
- Protected Member Functions inherited from HPS.Operator
void DtorCallback (IntPtr p)
 

Additional Inherited Members

- Public Types inherited from HPS.Operator
enum  Priority { Low = 0, Normal = 1, High = 2 }
 
- Public Types inherited from HPS.Sprocket
enum  UpdateType { Synchronous = 0, Asynchronous = 1 }
 The type of update to perform, either synchronous or asynchronous. More...
 
- Static Public Member Functions inherited from HPS.Operator
static bool operator== (HPS.Operator a, HPS.Operator b)
 
static bool operator!= (HPS.Operator a, HPS.Operator b)
 
- Static Public Member Functions inherited from HPS.Object
static IntPtr ClassID< T > ()
 
- Protected Attributes inherited from HPS.Object
HandleRef cptr
 
HandleRef scptr
 
bool cMemOwn
 

Detailed Description

The CuttingSectionOperator class defines an operator which allows the user to insert and interact with cutting sections. This Operator works for both mouse- and touch-driven devices. Each instance of the operator supports inserting and interacting with a single cutting plane. Multiple instances of the operator can be pushed to the View’s operator stack when the user wants to add an additional cutting plane to the scene. The cutting plane associated with an instance of the operator will be removed when the operator is popped from the View’s operator stack.

Mouse-driven devices:

Action

Result

Mouse move

When the operator is first activated, moving the mouse over the model will display a indicator representing the normal of the face the user is currently hovering over. Once a cutting section has been inserted, it will be highlighted when the user hovers over it. The highlight options can also be customized, or this behavior can be disabled entirely.

Left click

When the operator is first activated, a left click will insert a cutting section at this position.

Double left click

Flips the cutting section the user double clicked on.

Left mouse down and move Translates the cutting section the user clicked on along its normal.

Touch-driven devices:

Action

Result

Touch down

Inserts a cutting section at the position of the touch.

Double tap

Flips the cutting section the user double tapped.

Touch down and drag Translates the cutting section the user tapped along its normal.

Member Function Documentation

float HPS.CuttingSectionOperator.GetIndicatorScale ( )
inline

Returns the scale used for the normal indicator displayed while mousing over the model when the operator is first started.

Returns
The scale of the normal indicator.
bool HPS.CuttingSectionOperator.GetIndicatorVisibility ( )
inline

Whether the plane normal indicator is visible

Returns
true if the plane normal indicator is visible, false otherwise.
bool HPS.CuttingSectionOperator.GetMouseOverHighlighting ( )
inline

Whether mouse-over highlighting is enabled

Returns
true if mouse-over highlighting is enabled, false otherwise.
override string HPS.CuttingSectionOperator.GetName ( )
inlinevirtual

Returns the name of the operator.

Reimplemented from HPS.Operator.

HPS.HighlightOptionsKit HPS.CuttingSectionOperator.GetPlaneHighlightOptions ( )
inline

Returns the highlight options kit used when hovering over geometry, when mouse-over highlighting is enabled.

Returns
the highlight options kit used when hovering over geometry, when mouse-over highlighting is enabled.
HPS.MaterialMappingKit HPS.CuttingSectionOperator.GetPlaneMaterial ( )
inline

Returns the material mapping kit applied to the cutting plane geometry.

Returns
The material mapping kit applied to the cutting plane geometry.
bool HPS.CuttingSectionOperator.GetPlaneVisibility ( )
inline

Whether the cutting sections plane representations are visible

Returns
true if the cutting sections plane representations are visible, false otherwise.
bool HPS.CuttingSectionOperator.GetSectioning ( )
inline

Whether sectioning is enabled

Returns
true if sectioning is enabled, false otherwise.
override void HPS.CuttingSectionOperator.OnModelAttached ( )
inlinevirtual

This function is called whenever a model is attached to the view that is attached to this operator. If no view is attached to this operator, this function will not be called.

Reimplemented from HPS.Operator.

override bool HPS.CuttingSectionOperator.OnMouseDown ( HPS.MouseState  in_state)
inlinevirtual

This function is called whenever HPS receives a MouseEvent that signals a mouse button was pressed. This function starts the operator and computes the position of the starting point. When the operator is first started, this function inserts a cutting section.

Parameters
in_stateA MouseState object describing the current mouse state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS.Operator.

override bool HPS.CuttingSectionOperator.OnMouseMove ( HPS.MouseState  in_state)
inlinevirtual

This function is called whenever HPS receives a MouseEvent that signals the mouse moved When the operator is first started this function displays a normal indicator when the user mouses over geometry. After a cutting section has been inserted this function allows the user to translate a cutting section along its normal

Parameters
in_stateA MouseState object describing the current mouse state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS.Operator.

override bool HPS.CuttingSectionOperator.OnMouseUp ( HPS.MouseState  in_state)
inlinevirtual

This function is called whenever HPS receives a MouseEvent that signals a mouse button was released.

Parameters
in_stateA MouseState object describing the current mouse state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS.Operator.

override bool HPS.CuttingSectionOperator.OnTimerTick ( HPS.TimerTickEvent  in_event)
inlinevirtual

This function is called whenever HPS receives a TimerTickEvent This function moves the camera

Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS.Operator.

override bool HPS.CuttingSectionOperator.OnTouchDown ( HPS.TouchState  in_state)
inlinevirtual

This function is called whenever HPS receives a TouchEvent that signals the device was touched. This function starts the operator and computes the position of the starting point. When the operator is first started, this function inserts a cutting section.

Parameters
in_stateA TouchState object describing the current touch state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS.Operator.

override bool HPS.CuttingSectionOperator.OnTouchMove ( HPS.TouchState  in_state)
inlinevirtual

This function is called whenever HPS receives a TouchEvent that signals a point of contact has moved. After a cutting section has been inserted this function allows the user to translate a cutting section along its normal

Parameters
in_stateA TouchState object describing the current touch state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS.Operator.

override bool HPS.CuttingSectionOperator.OnTouchUp ( HPS.TouchState  in_state)
inlinevirtual

This function is called whenever HPS receives a TouchEvent that signals a point of contact has been released.

Parameters
in_stateA TouchState object describing the current touch state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS.Operator.

override void HPS.CuttingSectionOperator.OnViewAttached ( )
inlinevirtual

This function is called whenever a view is attached to this operator.

Reimplemented from HPS.Operator.

override void HPS.CuttingSectionOperator.OnViewDetached ( )
inlinevirtual

This function is called whenever a view is detached from this operator.

Reimplemented from HPS.Operator.

void HPS.CuttingSectionOperator.SetIndicatorScale ( float  in_scale)
inline

Sets the scale of the normal indicator displayed while mousing over the model when the operator is first started.

Parameters
in_scaleThe scale of the normal indicator
void HPS.CuttingSectionOperator.SetIndicatorVisibility ( bool  in_use_indicator)
inline

This function allows the user to pick a cutting sections through the aid of a normal indicator when moving the mouse By default this mode is active when the operator is fist attached to a View

Parameters
in_use_indicatorWhether to insert cutting sections through a normal indicator.
void HPS.CuttingSectionOperator.SetMouseOverHighlighting ( bool  in_enable_mouse_over_highlighting)
inline

Sets the mouse-over highlighting behavior

Parameters
in_enable_mouse_over_highlightingWhether to enable mouse-over highlighting.
void HPS.CuttingSectionOperator.SetPlaneHighlightOptions ( HPS.HighlightOptionsKit  in_highlight_options)
inline

Sets the highlight options kit used when hovering over geometry, when mouse-over highlighting is enabled.

Parameters
in_highlight_optionsThe highlight options kit used when hovering over geometry, when mouse-over highlighting is enabled.
void HPS.CuttingSectionOperator.SetPlaneMaterial ( HPS.MaterialMappingKit  in_plane_material)
inline

Sets the material mapping kit applied to the cutting plane geometry.

Parameters
in_plane_materialThe material mapping kit applied to the cutting plane geometry.
void HPS.CuttingSectionOperator.SetPlaneVisibility ( bool  in_visibility)
inline

Sets the visibility of cutting sections plane representation The cutting sections plane representation visibility is on by default.

Parameters
in_visibilityWhether to enable the visibility of the cutting sections plane representation.
void HPS.CuttingSectionOperator.SetSectioning ( bool  in_sectioning)
inline

Sets the sectioning behavior When sectioning is turned on the cutting planes are grouped together into a section

Parameters
in_sectioningWhether to enable sectioning.

The documentation for this class was generated from the following file: