Rhino C++ API  8.13
Public Member Functions | Public Attributes | List of all members
CRhinoGumballDisplayConduit Class Reference

#include <rhinoSdkGumball.h>

Inheritance diagram for CRhinoGumballDisplayConduit:
CRhinoDisplayConduit

Public Member Functions

 CRhinoGumballDisplayConduit (ON::active_space, CSupportChannels channel_mask=CSupportChannels::SC_CALCBOUNDINGBOX|CSupportChannels::SC_DRAWOVERLAY)
 
virtual ~CRhinoGumballDisplayConduit ()
 
const CRhinoGumballBaseGumball () const
 
void CheckShiftAndControlKeys ()
 
void DisableAndDestroy ()
 
const ON_LineDragLine () const
 
void EnableGumballDraw (bool bEnable)
 
bool ExecConduit (CRhinoDisplayPipeline &pipeline, UINT channel, bool &terminate)
 override of virtual CRhinoDisplayConduit function More...
 
const CRhinoGumballGumball () const
 
bool GumballDrawIsEnabled () const
 
const ON_XformGumballTransform () const
 
bool PickGumball (const CRhinoPickContext &pick_context, CRhinoGetPoint *gp)
 
const ON_XformPreTransform () const
 
bool PreTransformIsIdentity () const
 
bool RelocateBaseGumball (const CRhinoGumballFrame &base_gbframe)
 
bool SetBaseGumball (const CRhinoGumball &gumball)
 
bool SetPreTransform (const ON_Xform &xform0)
 
const ON_XformTotalTransform () const
 The total transformation is GumballTransform()*PreTransformation(). More...
 
bool UpdateGumball (const CRhinoGumballFrame &gbframe)
 
bool UpdateGumball (ON_3dPoint point, ON_Line world_line)
 
void UpdateRhinoStatusBar () const
 updates Rhion status bar based on current gumball location. More...
 
- Public Member Functions inherited from CRhinoDisplayConduit
 CRhinoDisplayConduit (CSupportChannels channel_mask)
 
 CRhinoDisplayConduit (CSupportChannels channel_mask, bool enable)
 
virtual ~CRhinoDisplayConduit ()
 
bool Bind (const CRhinoDisplayPipeline &pipeline)
 Binding methods... More...
 
bool Bind (const CRhinoView &view)
 See: bool CRhinoDisplayConduit::Bind(const CRhinoDisplayPipeline& pipeline);. More...
 
bool Bind (const CRhinoViewport &viewport)
 See: bool CRhinoDisplayConduit::Bind(const CRhinoDisplayPipeline& pipeline);. More...
 
bool Bind (const ON_Viewport &viewport)
 See: bool CRhinoDisplayConduit::Bind(const CRhinoDisplayPipeline& pipeline);. More...
 
int BindingCount () const
 
bool BindingsExist () const
 
bool ChannelSupported (UINT channel) const
 Attributes... More...
 
bool ConstantBinding () const
 
void Disable ()
 
class CRhinoDocDocument () const
 
unsigned int DocumentSerialNumber () const
 
void Enable ()
 
void Enable (unsigned int docSerialNumber)
 
void EnableConstantBinding (bool enable=true)
 
unsigned int GetGeometryFilter () const
 
ON_UuidList GetObjectFilter () const
 
void GetSelectedFilter (bool &on, bool &checkSubObjects) const
 
bool InterestedInObject (const CRhinoObject *) const
 
bool IsBound (const CRhinoDisplayPipeline &pipeline, bool ignore_state=false) const
 
bool IsBound (const CRhinoView &view, bool ignore_state=false) const
 See: CRhinoDisplayConduit::IsBound( const CRhinoDisplayPipeline& pipeline, bool ignore_state = false) const;. More...
 
bool IsBound (const CRhinoViewport &viewport, bool ignore_state=false) const
 See: CRhinoDisplayConduit::IsBound( const CRhinoDisplayPipeline& pipeline, bool ignore_state = false) const;. More...
 
bool IsBound (const ON_Viewport &viewport, bool ignore_state=false) const
 See: CRhinoDisplayConduit::IsBound( const CRhinoDisplayPipeline& pipeline, bool ignore_state = false) const;. More...
 
bool IsEnabled () const
 
bool IsEnabled (unsigned int docSerialNumber) const
 
virtual void NotifyConduit (EConduitNotifiers notification_event, CRhinoDisplayPipeline &pipeline)
 Notifications... More...
 
class CRhinoPageViewPageView () const
 
unsigned int PageViewSerialNumber () const
 
bool ReplaceBinding (const CRhinoDisplayPipeline &old_pipeline, const CRhinoDisplayPipeline &new_pipeline)
 
bool ReplaceBinding (const CRhinoView &old_view, const CRhinoView &new_view)
 See: bool CRhinoDisplayConduit::ReplaceBinding(const CRhinoDisplayPipeline& old_pipeline, const CRhinoDisplayPipeline& new_pipeline);. More...
 
bool ReplaceBinding (const CRhinoViewport &old_viewport, const CRhinoViewport &new_viewport)
 See: bool CRhinoDisplayConduit::ReplaceBinding(const CRhinoDisplayPipeline& old_pipeline, const CRhinoDisplayPipeline& new_pipeline);. More...
 
bool ReplaceBinding (const ON_Viewport &old_viewport, const ON_Viewport &new_viewport)
 See: bool CRhinoDisplayConduit::ReplaceBinding(const CRhinoDisplayPipeline& old_pipeline, const CRhinoDisplayPipeline& new_pipeline);. More...
 
void SetGeometryFilter (unsigned int geometry_filter)
 
void SetObjectFilter (const ON_SimpleArray< ON_UUID > &objectIds)
 
void SetObjectFilter (ON_UUID objectId)
 
void SetSelectedFilter (bool on, bool checkSubObjects)
 
bool ToggleBinding (const CRhinoDisplayPipeline &pipeline)
 
bool ToggleBinding (const CRhinoView &view)
 See: bool CRhinoDisplayConduit::ToggleBinding(const CRhinoDisplayPipeline& pipeline);. More...
 
bool ToggleBinding (const CRhinoViewport &viewport)
 See: bool CRhinoDisplayConduit::ToggleBinding(const CRhinoDisplayPipeline& pipeline);. More...
 
bool ToggleBinding (const ON_Viewport &viewport)
 See: bool CRhinoDisplayConduit::ToggleBinding(const CRhinoDisplayPipeline& pipeline);. More...
 
bool Unbind (const CRhinoDisplayPipeline &pipeline)
 
bool Unbind (const CRhinoView &view)
 See: bool CRhinoDisplayConduit::Unbind(const CRhinoDisplayPipeline& pipeline);. More...
 
bool Unbind (const CRhinoViewport &viewport)
 See: bool CRhinoDisplayConduit::Unbind(const CRhinoDisplayPipeline& pipeline);. More...
 
bool Unbind (const ON_Viewport &viewport)
 See: bool CRhinoDisplayConduit::Unbind(const CRhinoDisplayPipeline& pipeline);. More...
 
void UnbindAll ()
 
class CRhinoViewView () const
 
class CRhinoViewportViewport () const
 
unsigned int ViewportSerialNumber () const
 
unsigned int ViewSerialNumber () const
 

Public Attributes

CRhinoGumballDragSettings m_drag_settings
 gumball relocation and snapping More...
 
CRhinoGumballPickResult m_pick_result
 The initial mouse down event sets m_pick_result. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from CRhinoDisplayConduit
static CRhinoDisplayConduitFromRuntimeSerialNumber (unsigned int display_conduit_sn)
 
static bool IsValidDisplayConduitPointer (const void *display_conduit)
 
static bool IsValidDisplayConduitReference (const CRhinoDisplayConduit &display_conduit)
 
static unsigned int RuntimeSerialNumber (const CRhinoDisplayConduit *conduit)
 
- Protected Attributes inherited from CRhinoDisplayConduit
const CSupportChannels m_Channels
 The channels that this class was constructed with. More...
 
class CChannelAttributesm_pChannelAttrs = nullptr
 
CDisplayPipelineAttributesm_pDisplayAttrs = nullptr
 
unsigned int m_rhino_doc_sn = 0
 
unsigned int m_rhino_view_sn = 0
 
unsigned int m_rhino_viewport_sn = 0
 

Constructor & Destructor Documentation

◆ CRhinoGumballDisplayConduit()

CRhinoGumballDisplayConduit::CRhinoGumballDisplayConduit ( ON::active_space  ,
CSupportChannels  channel_mask = CSupportChannels::SC_CALCBOUNDINGBOX|CSupportChannels::SC_DRAWOVERLAY 
)

◆ ~CRhinoGumballDisplayConduit()

virtual CRhinoGumballDisplayConduit::~CRhinoGumballDisplayConduit ( )
virtual

Member Function Documentation

◆ BaseGumball()

const CRhinoGumball& CRhinoGumballDisplayConduit::BaseGumball ( ) const

◆ CheckShiftAndControlKeys()

void CRhinoGumballDisplayConduit::CheckShiftAndControlKeys ( )

◆ DisableAndDestroy()

void CRhinoGumballDisplayConduit::DisableAndDestroy ( )

Description: Completely disables this CRhinoGumballDisplayConduit and sets every field as if this CRhinoGumballDisplayConduit were just constructed. Use this function when you'd like to delete a CRhinoGumballDisplayConduit but you cannot because you are inside of ExecConduit or some other function.

◆ DragLine()

const ON_Line& CRhinoGumballDisplayConduit::DragLine ( ) const

◆ EnableGumballDraw()

void CRhinoGumballDisplayConduit::EnableGumballDraw ( bool  bEnable)

◆ ExecConduit()

bool CRhinoGumballDisplayConduit::ExecConduit ( CRhinoDisplayPipeline pipeline,
UINT  channel,
bool &  terminate 
)
virtual

override of virtual CRhinoDisplayConduit function

Implements CRhinoDisplayConduit.

◆ Gumball()

const CRhinoGumball& CRhinoGumballDisplayConduit::Gumball ( ) const

◆ GumballDrawIsEnabled()

bool CRhinoGumballDisplayConduit::GumballDrawIsEnabled ( ) const

◆ GumballTransform()

const ON_Xform& CRhinoGumballDisplayConduit::GumballTransform ( ) const

The gumball transformation is the transformation calculated by comparing the current m_gumball to to the starting m_base_gumball.

◆ PickGumball()

bool CRhinoGumballDisplayConduit::PickGumball ( const CRhinoPickContext pick_context,
CRhinoGetPoint gp 
)

Command helper functions void DrawDragLine(CRhinoDisplayPipeline& dp) const;

◆ PreTransform()

const ON_Xform& CRhinoGumballDisplayConduit::PreTransform ( ) const

◆ PreTransformIsIdentity()

bool CRhinoGumballDisplayConduit::PreTransformIsIdentity ( ) const

◆ RelocateBaseGumball()

bool CRhinoGumballDisplayConduit::RelocateBaseGumball ( const CRhinoGumballFrame base_gbframe)

◆ SetBaseGumball()

bool CRhinoGumballDisplayConduit::SetBaseGumball ( const CRhinoGumball gumball)

◆ SetPreTransform()

bool CRhinoGumballDisplayConduit::SetPreTransform ( const ON_Xform xform0)

The pre-transform is a transformation that needs to be applied before the gumball transformation.

◆ TotalTransform()

const ON_Xform& CRhinoGumballDisplayConduit::TotalTransform ( ) const

The total transformation is GumballTransform()*PreTransformation().

◆ UpdateGumball() [1/2]

bool CRhinoGumballDisplayConduit::UpdateGumball ( const CRhinoGumballFrame gbframe)

◆ UpdateGumball() [2/2]

bool CRhinoGumballDisplayConduit::UpdateGumball ( ON_3dPoint  point,
ON_Line  world_line 
)

Update location of m_gumball using point and world_line. The inputs are often determined my a mouse location. Also updates m_gumball_xform, m_total_xform and then calls the virtual UpdateCallback().

◆ UpdateRhinoStatusBar()

void CRhinoGumballDisplayConduit::UpdateRhinoStatusBar ( ) const

updates Rhion status bar based on current gumball location.

Member Data Documentation

◆ m_drag_settings

CRhinoGumballDragSettings CRhinoGumballDisplayConduit::m_drag_settings

gumball relocation and snapping

◆ m_pick_result

CRhinoGumballPickResult CRhinoGumballDisplayConduit::m_pick_result

The initial mouse down event sets m_pick_result.