Rhino C++ API  8.6
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
CRhinoGripObject Class Reference

#include <rhinoSdkPointObject.h>

Inheritance diagram for CRhinoGripObject:
CRhinoPointObject CRhinoObject ON_Object CRhinoGripObjectEx CRhinoWidgetGrip

Public Types

enum  GRIP_TYPE : unsigned int {
  no_grip = 0, curve_cv_grip = 1, surface_cv_grip = 2, cage_cv_grip = 3,
  annotation_grip = 4, mesh_vertex_grip = 5, point_cloud_grip = 6, light_grip = 7,
  camera_grip = 8, morph_cv_grip = 9, iref_grip = 10, extrusion_grip = 11,
  hatch_grip = 12, subd_cv_grip = 13, custom_grip = 1000, custom_nodragline_grip = 1001
- Public Types inherited from CRhinoObject
  unknown_object_type = ON::object_type::unknown_object_type, point_object = ON::object_type::point_object, pointset_object = ON::object_type::pointset_object, curve_object = ON::object_type::curve_object,
  surface_object = ON::object_type::surface_object, polysrf_object = ON::object_type::polysrf_filter, edge_object = ON::object_type::edge_filter, polyedge_object = ON::object_type::polyedge_filter,
  loop_object = ON::object_type::loop_object, brepvertex_filter = ON::object_type::brepvertex_filter, mesh_object = ON::object_type::mesh_object, annotation_object = ON::object_type::annotation_object,
  light_object = ON::object_type::light_object, instance_reference = ON::object_type::instance_reference, grip_object = ON::object_type::grip_object, morph_control_object = ON::object_type::morph_control_object,
  subd_object = ON::object_type::subd_object, meshvertex_filter = ON::object_type::meshvertex_filter, meshedge_filter = ON::object_type::meshedge_filter, meshface_filter = ON::object_type::meshface_filter,
  meshcomponent_reference = ON::object_type::meshcomponent_reference, cage_object = ON::object_type::cage_object, hatch_object = ON::object_type::hatch_object, phantom_object = ON::object_type::phantom_object,
  extrusion_object = ON::object_type::extrusion_object, any_object = ON::object_type::any_object
enum  objectframe_flags : unsigned int { objectframe_standard = 0, objectframe_include_scale_transforms = 1, objectframe_return_unset = 2 }
- Public Types inherited from ON_Object
enum  UserDataConflictResolution : unsigned char {
  UserDataConflictResolution::destination_object = 0, UserDataConflictResolution::source_object = 1, UserDataConflictResolution::source_copycount_gt = 2, UserDataConflictResolution::source_copycount_ge = 3,
  UserDataConflictResolution::destination_copycount_gt = 4, UserDataConflictResolution::destination_copycount_ge = 5, UserDataConflictResolution::delete_item = 6

Public Member Functions

 CRhinoGripObject ()
 ~CRhinoGripObject ()
virtual bool AddDragConstraints (class CRhinoGetPoint &gp) const
const CRhinoObjectAttributesAttributes () const override
virtual void DragGrip (CRhinoViewport &vp, ON_Line worldLine, ON_3dVector delta)
void EnableGetGripPointXform (bool enable)
virtual bool EvaluateGripDirections (class CRhinoGripDirections &gd) const
virtual int GetCageCVIndices (ON_SimpleArray< ON_3dex > &cvndex) const
virtual bool GetCageParameters (double *u, double *v, double *w) const
virtual int GetCurveCVIndices (ON_SimpleArray< int > &cvindex) const
virtual bool GetCurveParameters (double *t) const
bool GetGripDirections (ON_3dVector &x, ON_3dVector &y, ON_3dVector &z) const
bool GetGripPointXform (ON_Xform &xform) const
int GetNeighborGrips (ON_SimpleArray< CRhinoGripObject * > &neighborGrips, bool wrap=false) const
virtual int GetSurfaceCVIndices (ON_SimpleArray< ON_2dex > &cvindex) const
virtual bool GetSurfaceParameters (double *u, double *v) const
ON_3dPoint GripBasePoint () const
ON_3dPoint GripLocation () const
virtual bool GripMoved () const
ON_UUID GripsId () const
GRIP_TYPE GripType () const
virtual bool HideGrip (bool hide) const
bool IsDeletable () const override
virtual unsigned int MeshVertexIndex () const
bool ModifyAttributes (const ON_3dmObjectAttributes &newAttributes, bool enableUndo=true, bool quiet=false) override
void MoveGrip (const CRhinoSpaceMorph &morph)
void MoveGrip (const ON_Xform &xform)
void MoveGrip (ON_3dPoint newLocation)
void MoveGrip (ON_3dVector delta)
CRhinoGripObjectNeighborGrip (int dr, int ds, int dt, bool wrap=false) const
virtual void NewLocation ()
CRhinoGripObjectNext () const
 next in CRhinoDoc::m_grip_list list More...
ON::object_type ObjectType () const override
 Returns ON::grip_object. More...
 operator const ON_3dPoint & () const
 operator ON_3dPoint () const
CRhinoGripObjectoperator= (ON_3dPoint newLocation)
CRhinoObjectOwner () const
bool PickFilter (const CRhinoGetObject &, bool) const override
CRhinoGripObjectPrev () const
 prev in CRhinoDoc::m_grip_list list More...
void SetGripDirections (CRhinoGripDirections gd)
virtual bool SetWeight (double weight)
const wchar_t * ShortDescription (bool bPlural) const override
 Returns "grip" or "grips". More...
bool SnapTo (const CRhinoSnapContext &snapContext, CRhinoSnapEvent &snapEvent) const override
virtual unsigned int SubDComponentId () const
virtual ON_SubDComponentPtr SubDComponentPtr () const
virtual void UndoMoveGrip ()
virtual double Weight () const
- Public Member Functions inherited from CRhinoPointObject
 CRhinoPointObject ()
 assigns a new object UUID More...
 CRhinoPointObject (const CRhinoPointObject &)
 copies source object UUID More...
 CRhinoPointObject (const ON_3dmObjectAttributes &)
 assigns a new object UUID More...
 ~CRhinoPointObject ()
void Draw (CRhinoDisplayPipeline &) const override
 Draws object based on pipeline display attributes... More...
void DrawV6 (class CRhinoObjectDrawContext *draw_context) const RHINO_NOEXCEPT override
 virtual CRhinoObject::DrawV6 override More...
bool GetFrame (ON_Plane &plane) const override
bool GetTightBoundingBox (ON_BoundingBox &tight_bbox, bool bGrowBox=false, const ON_Xform *xform=nullptr) const override
virtual bool IsVisibleInViewport (const CRhinoViewport &vp) const
void MemoryRelocate () override
 virtual ON_Object override More...
CRhinoPointObjectoperator= (const CRhinoPointObject &)
 copies source object UUID More...
CRhinoPointObjectoperator= (const ON_3dPoint &)
 leave attributes unchanged. More...
int Pick (const CRhinoPickContext &, CRhinoObjRefArray &) const override
bool PickFilter (const CRhinoGetObject &, bool) const override
const ON_PointPoint () const
void SetPoint (const ON_3dPoint &point)
void SetPoint (ON_Point &point)
 copies point and moves user data from argument to m_point. More...
- Public Member Functions inherited from CRhinoObject
 CRhinoObject ()
 assigns a new object UUID More...
 CRhinoObject (const CRhinoObject &)
 copies source object UUID More...
 CRhinoObject (const ON_3dmObjectAttributes &)
virtual ~CRhinoObject ()
virtual void AddToDocNotification ()
BOOL32 AttachAttributeUserData (ON_UserData *pUserData)
bool AttachGeometryUserData (ON_UserData *pUserData)
CRhinoObjectAttributesAttributes ()
virtual void BeginTransform (CRhinoDoc &doc, bool bDeleteOriginal, bool bAddNewObjectToDoc, bool bAddTransformHistory)
virtual ON_BoundingBox BoundingBox () const
virtual ON_BoundingBox BoundingBox (const class CRhinoViewport *pViewport) const
unsigned int BrepReferenceCount () const
class CRhObjectReferenceCounter * BrepReferenceCounter (void) const
void BrepReferenceCounter_DestroyRuntimeCache (bool bDelete) const
bool BrepReferenceCounterExists () const
bool CopyHistoryOnReplace () const
virtual int CreateMeshes (ON::mesh_type mesh_type, const ON_MeshParameters &mp, bool bIgnoreCustom=false)
BOOL32 DeleteAttributeUserData (ON_UUID userdata_uuid)
void DeleteDynamicTransform ()
virtual void DeleteFromDocNotification ()
bool DeleteGeometryUserData (ON_UUID userdata_uuid)
void DestroyMeshes (ON::mesh_type mesh_type)
virtual void DestroyMeshes (ON::mesh_type mesh_type, bool bDeleteMeshes)
void DestroyRuntimeCache (bool bDelete=true) override
 virtual ON_Object override More...
class CRhinoDocDocument () const
unsigned int DocumentRuntimeSerialNumber () const
void Draw (CRhinoViewport &) const
virtual void DrawGrips (class CRhinoDisplayPipeline &) const
virtual void DrawHighlightedSubObjects (class CRhinoDisplayPipeline &) const
virtual void DrawSubObject (class CRhinoDisplayPipeline &, ON_COMPONENT_INDEX) const
 Draws wireframe representation of a sub object. More...
virtual CRhinoObjectDuplicateRhinoObject () const
*enum ANALYSIS_MODE **bool EnableAnalysisMode (ON_UUID am_id, bool bEnable=true) const
 new way (not virtual) More...
virtual bool EnableCustomGrips (class CRhinoObjectGrips *custom_grips)
virtual void EnableGrips (bool bGripsOn)
virtual void EndTransform (CRhinoDoc &doc, bool bDeleteOriginal, bool bAddNewObjectToDoc, bool bAddTransformHistory)
const ON_GeometryGeometry () const
 returns a pointer to the object's geometry More...
ON_UserDataGetAttributeUserData (ON_UUID userdata_uuid) const
bool GetDynamicTransform (ON_Xform &dynamic_xform) const
ON_UserDataGetGeometryUserData (ON_UUID userdata_uuid) const
virtual int GetGrips (ON_SimpleArray< class CRhinoGripObject * > &grip_list) const
virtual int GetHighlightedSubObjects (ON_SimpleArray< ON_COMPONENT_INDEX > &component_indices) const
std::vector< std::shared_ptr< const ON_Mesh > > GetMeshes (ON::mesh_type mesh_type) const
virtual int GetMeshes (ON::mesh_type mesh_type, ON_SimpleArray< const ON_Mesh * > &meshes) const
void GetRenderMeshParameters (ON_MeshParameters &mp) const
virtual int GetSelectedSubObjects (ON_SimpleArray< ON_COMPONENT_INDEX > &component_indices) const
virtual int GetSubobjectMaterialComponents (ON_SimpleArray< ON_COMPONENT_INDEX > &components_with_subobject_materials) const
virtual int GetSubObjects (ON_SimpleArray< CRhinoObject * > &subObjects, const class CRhinoViewport *pViewport=NULL) const
virtual int GetWireframeCurves (ON_SimpleArray< ON_Curve * > &curve_list) const
const class CRhinoGripsEnablerGripsEnabler () const
int GripsOn () const
bool GripsSelected () const
bool HasCustomRenderMeshes (ON::mesh_type mt, const ON_Viewport *vp=nullptr, ON__UINT32 *flags=nullptr, const class CRhinoPlugIn *requestingPlugIn=nullptr, const class CDisplayPipelineAttributes *pAttributes=nullptr) const
 Determine if custom render meshes will be supplied for a particular object. More...
bool HasDynamicTransform () const
virtual bool HasSubobjectMaterials (void) const
bool Highlight (bool bHighlight=true) const
virtual bool HighlightRequiresRedraw () const
virtual bool HighlightSubObject (ON_COMPONENT_INDEX component_index, bool bHighlight=true) const
const CRhinoHistoryRecordHistoryRecord () const
const ON_UUID Id () const
bool InAnalysisMode () const
bool InAnalysisMode (const ON_UUID &am_id) const
 bool AnalysisMode( ANALYSIS_MODE am ) const; ///< old way More...
ON_Plane InitialObjectFrame (const CRhinoDoc &) const
const class CRhinoVisualAnalysisModeInShadedAnalysisMode () const
unsigned int IsActiveInDocument () const
virtual bool IsActiveInViewport (const class CRhinoViewport &) const
bool IsDeleted () const
virtual bool IsGroupObject () const
bool IsHidden () const
int IsHighlighted (BOOL32 bCheckSubObjects=false) const
 highlighted state (almost always = IsSelected() except in one or two commands) More...
bool IsInstanceDefinitionGeometry () const
int IsInstanceDefinitionGeometryEx () const
bool IsLocked () const
int IsMarked () const
virtual bool IsMeshable (ON::mesh_type) const
 Returns true if the object is capable of having a mesh of the specified type. More...
bool IsModelObject () const
bool IsNormal () const
bool IsPageObject () const
int IsProxy () const
bool IsReference () const
bool IsSelectable (bool bIgnoreSelectionState, bool bIgnoreGripsState, bool bIgnoreLocking, bool bIgnoreVisibility) const
bool IsSelectable (bool bIgnoreSelectionState=false, bool bIgnoreGripsState=false) const
int IsSelected (bool bCheckSubObjects=false) const
virtual bool IsSolid () const
virtual bool IsSubObjectHighlighted (ON_COMPONENT_INDEX component_index) const
 true if specified component is highlighted More...
bool IsSubObjectSelectable (ON_COMPONENT_INDEX component_index, bool bIgnoreSelectionState=false) const
virtual bool IsSubObjectSelected (ON_COMPONENT_INDEX component_index) const
bool IsValid (ON_TextLog *text_log=nullptr) const override
bool IsVisible () const
unsigned int LinkedInstanceDefinitionSerialNumber () const
void Mark (int)
virtual int MeshCount (ON::mesh_type mesh_type, const ON_MeshParameters *mp=0) const
virtual const class CDisplayPipelineAttributesMeshDisplayAttributes (int mesh_index, const ON_Mesh &mesh, const class CDisplayPipelineAttributes &display_attrs) const
const ON_ModelComponentModelComponent () const
ON_UUID ModelObjectId () const override
const ON_wString Name () const
ON_Color ObjectDrawColor (bool bIgnoreObjectState=false) const
ON_Color ObjectDrawColor (const CRhinoObjectAttributes &attributes, bool bIgnoreObjectState=false) const
ON_Color ObjectDrawColor (const CRhinoObjectAttributes &attributes, const ON_UUID &viewport_id, bool bIgnoreObjectState) const
ON_Plane ObjectFrame (const ON_COMPONENT_INDEX &ci, unsigned int objectframe_flags) const
const class CRhinoLayerObjectLayer () const
const class CRhinoLayerObjectLayerPtr () const
const CRhinoLinetypeObjectLinetype () const
const CRhinoLinetypeObjectLinetypePtr () const
virtual const CRhinoMaterialObjectMaterial () const
virtual const CRhinoMaterialObjectMaterial (const ON_3dmObjectAttributes &attrs) const
virtual const CRhinoMaterialObjectMaterial (const ON_COMPONENT_INDEX &ci, const ON_UUID &plugin_id=RhinoDefaultRendererId(), const ON_3dmObjectAttributes *attrs=NULL) const
 This is now the preferred version of the function. This should be used to get materials component-wise in all cases. More...
virtual const CRhinoMaterialObjectMaterial (const ON_UUID &plugin_id) const
virtual const CRhRdkMaterialObjectRdkMaterial (const ON_COMPONENT_INDEX &ci, const ON_UUID &plugin_id=RhinoDefaultRendererId(), const ON_3dmObjectAttributes *attrs=NULL) const
virtual ON_wString OnDoubleClick (const CRhinoDoubleClickContext &double_click_context) const
CRhinoObjectoperator= (const CRhinoObject &)
 copies source object UUID More...
bool PerViewportIsVisible (ON_UUID viewport_id) const
virtual bool PickFilter (const class CRhinoGetObject &, bool) const
virtual void PreDrawUpdate (CRhinoDisplayPipeline &dp) const
virtual bool PrepareToWrite (int archive_3dm_version)
virtual bool PromotePreviewMeshes (ON::mesh_type)
std::shared_ptr< const RhRdk::CustomRenderMeshes::IRenderMeshesRenderMeshes (ON::mesh_type mt, bool recursive, const ON_Viewport *vp=nullptr, const class CRhRdkObjectAncestry *ancestry_only_for_by_parent_attributes=nullptr, const CRhinoPlugIn *requestingPlugIn=nullptr, const CDisplayPipelineAttributes *pAttributes=nullptr, std::shared_ptr< const RhRdk::CustomRenderMeshes::IRenderMeshes > optional_initial_primitives=nullptr) const
 Returns a complete set of custom render meshes (primitives) for the object. Simple version with no need for flags. More...
std::shared_ptr< const RhRdk::CustomRenderMeshes::IRenderMeshesRenderMeshes (ON::mesh_type mt, const ON_Viewport *vp=nullptr, const class CRhRdkObjectAncestry *ancestry_only_for_by_parent_attributes=nullptr, ON__UINT32 *flags=nullptr, const CRhinoPlugIn *requestingPlugIn=nullptr, const CDisplayPipelineAttributes *pAttributes=nullptr, std::shared_ptr< const RhRdk::CustomRenderMeshes::IRenderMeshes > optional_initial_primitives=nullptr) const
 Returns a complete set of custom render meshes (primitives) for the object. More...
unsigned int RuntimeSerialNumber () const
int Select (bool bSelect, bool bSynchHighlight, bool bPersistentSelect, bool bIgnoreGripsState, bool bIgnoreLayerLocking, bool bIgnoreLayerVisibility) const
int Select (bool bSelect=true, bool bSynchHighlight=true, bool bPersistentSelect=true, bool bIgnoreGripsState=false) const
virtual int SelectSubObject (ON_COMPONENT_INDEX component_index, bool bSelect=true, bool bSynchHighlight=true, bool bPersistentSelect=false) const
bool SetCachedTextureCoordinates (const ON_TextureMapping &mapping, const ON_Xform *object_xform, bool bLazy=true) const
bool SetCachedTextureCoordinatesFromPlugIn (const ON_UUID &plugin_id) const
 Set cached texture coordinates for all mapping that require per vertex texture texture coordinates. Includes mappings referenced by object material and sub-object materials. More...
void SetCopyHistoryOnReplace (bool bCopy) const
bool SetDynamicTransform (const ON_Xform &dynamic_xform)
bool SetHistory (class CRhinoHistory &history)
void SetObjectFrame (const ON_COMPONENT_INDEX &ci, const ON_Plane &plane)
void SetObjectFrame (const ON_COMPONENT_INDEX &ci, const ON_Xform &wcs_to_ocs)
virtual bool SetRenderMeshParameters (const ON_MeshParameters &mp)
virtual bool SetTextureCoordinates (const ON_TextureMapping &mapping, const ON_Xform *object_xform, bool bLazy=true) const
virtual bool SetTextureCoordinatesFromPlugIn (const ON_UUID &plugin_id, int mapping_channel_id) const
virtual unsigned int SizeOf () const override
 returns number of bytes used by this particular instance More...
ON::active_space Space () const
virtual ON_ComponentStatus SubObjectStatus () const
virtual bool SupportsBrepProxyReferenceCounting () const
bool UndoModifyAttributes (unsigned int ur_sn=0)
virtual int UnhighlightAllSubObjects ()
 returns number of changed subobjects More...
virtual int UnselectAllSubObjects ()
 returns number of unselected subobjects More...
void UpdateBoundingBox ()
virtual bool VetoTransformObject (CRhinoDoc &doc, bool bDeleteOriginal, bool bAddNewObjectToDoc, bool bAddTransformHistory) const
unsigned int WorksessionReferenceModelSerialNumber () const
- Public Member Functions inherited from ON_Object
 ON_Object (const ON_Object &)
virtual ~ON_Object ()
virtual ON_AggregateComponentStatus AggregateComponentStatus () const
bool AttachUserData (class ON_UserData *pUserData)
unsigned int ClearAllComponentStates () const
virtual unsigned int ClearComponentStates (ON_COMPONENT_INDEX component_index, ON_ComponentStatus states_to_clear) const
virtual unsigned int ClearComponentStates (ON_ComponentStatus states_to_clear) const
void CopyUserData (const ON_Object &source_object)
unsigned int CopyUserData (const ON_Object &source_object, ON_UUID source_userdata_item_id, ON_Object::UserDataConflictResolution userdata_conflict_resolution)
virtual ON__UINT32 DataCRC (ON__UINT32 current_remainder) const
virtual bool DeleteComponents (const ON_COMPONENT_INDEX *ci_list, size_t ci_count)
bool DetachUserData (class ON_UserData *pUserData)
virtual void Dump (ON_TextLog &) const
void EmergencyDestroy ()
class ON_UserDataFirstUserData () const
virtual unsigned int GetComponentsWithSetStates (ON_ComponentStatus states_filter, bool bAllEqualStates, ON_SimpleArray< ON_COMPONENT_INDEX > &components) const
class ON_UserDataGetUserData (const ON_UUID &userdata_uuid) const
bool GetUserString (const wchar_t *key, ON_wString &string_value) const
int GetUserStringKeys (ON_ClassArray< ON_wString > &user_string_keys) const
int GetUserStrings (ON_ClassArray< ON_UserString > &user_strings) const
bool IsCorrupt (bool bRepair, bool bSilentError, class ON_TextLog *text_log) const
bool IsKindOf (const ON_ClassId *pClassId) const
virtual void MarkAggregateComponentStatusAsNotCurrent () const
void MoveUserData (ON_Object &source_object)
unsigned int MoveUserData (ON_Object &source_object, ON_UUID source_userdata_item_id, ON_Object::UserDataConflictResolution userdata_conflict_resolution, bool bDeleteAllSourceItems)
ON_Objectoperator= (const ON_Object &)
void PurgeUserData ()
virtual bool Read (ON_BinaryArchive &binary_archive)
virtual unsigned int SetComponentStates (ON_COMPONENT_INDEX component_index, ON_ComponentStatus states_to_set) const
virtual unsigned int SetComponentStatus (ON_COMPONENT_INDEX component_index, ON_ComponentStatus status_to_copy) const
bool SetUserString (const wchar_t *key, const wchar_t *string_value)
int SetUserStrings (int count, const ON_UserString *user_strings, bool bReplace)
bool ThisIsNullptr (bool bSilentError) const
void TransformUserData (const class ON_Xform &xform)
virtual bool UpdateReferencedComponents (const class ON_ComponentManifest &source_manifest, const class ON_ComponentManifest &destination_manifest, const class ON_ManifestMap &manifest_map)
int UserStringCount () const
virtual bool Write (ON_BinaryArchive &binary_archive) const

Public Attributes

ON_3dPoint m_base_point
 starting location of grip point More...
int m_grip_index
 index of grip in CRhinoObjectGrips m_grip_list array More...
 grips object that owns this grip point More...
- Public Attributes inherited from CRhinoObject
class CRhObjectSdkExtensionm__object_sdk_extension
const class CRhinoObjectVisualAnalysisModem_analysis_mode_list
 list of enabled analysis modes More...
CRhinoCacheHandle m_cache
class CRhinoObjectGripsm_grips
 managed by derived objects More...
unsigned char m_use_preview_mesh

Protected Member Functions

void MoveGripHelper (ON_3dPoint, const ON_Xform *)
- Protected Member Functions inherited from CRhinoObject
void Destroy ()
virtual bool InternalVirtual_IsSelectable (bool bIgnoreSelectionState, bool bIgnoreGripsState, bool bIgnoreLocking, bool bIgnoreVisibility) const
virtual bool IsSelectableWithGripsOn () const
 true if can be selected while grips are on More...
virtual int SubObjectsAreHighlighted () const
 returns number of highlighted subobjects More...
virtual int SubObjectsAreSelected () const
 returns number of selected subobjects More...
virtual void SynchAttributes ()
 light objects are special because they are not in the geometry lists More...

Additional Inherited Members

- Static Public Member Functions inherited from CRhinoObject
static const CRhinoObjectFromId (unsigned int rhino_doc_runtime_serial_number, ON_UUID rhino_object_id)
static const CRhinoObjectFromRuntimeSerialNumber (unsigned int rhino_doc_runtime_serial_number, unsigned int rhino_object_runtime_serial_number)
static unsigned int NextRuntimeObjectSerialNumber ()
- Static Public Attributes inherited from CRhinoObject
static int m_no_show_mark
- Protected Attributes inherited from CRhinoPointObject
ON_Point m_point
- Protected Attributes inherited from CRhinoObject
ON_BoundingBox m_bbox
 world coordinate bounding box More...
unsigned char m_geomem_type
const CRhinoHistoryRecordm_history_record

Member Enumeration Documentation


enum CRhinoGripObject::GRIP_TYPE : unsigned int

default grips (at most one per object type) default grips ids are between 1 and 999


custom grips

Don't add types for new annotations without adding those types to the section in CRhinoDoc::SnapTo( ) that checks grip->IsVisibleInViewport() because currently that only looks at annotation_type grips and if you add a type here the grips that use that type can't be filtered for IsVisibleInViewport() drag line is automatically drawn


no drag line is drawn

Constructor & Destructor Documentation

◆ CRhinoGripObject()

CRhinoGripObject::CRhinoGripObject ( )

◆ ~CRhinoGripObject()

CRhinoGripObject::~CRhinoGripObject ( )

Member Function Documentation

◆ AddDragConstraints()

virtual bool CRhinoGripObject::AddDragConstraints ( class CRhinoGetPoint gp) const

Description: When a CRhinoGripObjectEx grip drag is about to begin, the grip has the option of providing its own constraints. Returns: true - custom constraints added. false - use default constraints.

Reimplemented in CRhinoGripObjectEx.

◆ Attributes()

const CRhinoObjectAttributes& CRhinoGripObject::Attributes ( ) const

Description: virtual CRhinoObject::Attributes override returns parent object's display and layer attributes. Returns: attributes

Reimplemented from CRhinoObject.

◆ DragGrip()

virtual void CRhinoGripObject::DragGrip ( CRhinoViewport vp,
ON_Line  worldLine,
ON_3dVector  delta 

Description: Called when a grip is being dynamically dragged. Parameters: worldLine - [in] 3d world mouse line delta - [in] default translation Remarks: Default calls MoveGrip(delta)

◆ EnableGetGripPointXform()

void CRhinoGripObject::EnableGetGripPointXform ( bool  enable)

Description: If you want the grips to record the entire transformation applied by commands like Rotate and Scale, then call EnableTransformationWatching(true) in the constructor for the grip. If MoveGrip(xform) is used to move the grip, then the transformation will be saved and can be retrieved by calling GetGripTransformation().

◆ EvaluateGripDirections()

virtual bool CRhinoGripObject::EvaluateGripDirections ( class CRhinoGripDirections gd) const

Description: If a grip has "directions" (like a surface control point), this function evaluates those directions. Parameters: gd - [out] Returns: True if evaluation sets gd.

◆ GetCageCVIndices()

virtual int CRhinoGripObject::GetCageCVIndices ( ON_SimpleArray< ON_3dex > &  cvndex) const

Parameters: cvindex - [out] Control point indices are appended to this array.
Returns: Number of NURBS cage control points managed by this grip. If the grip is not a cage control point, zero is returned.

◆ GetCageParameters()

virtual bool CRhinoGripObject::GetCageParameters ( double *  u,
double *  v,
double *  w 
) const

◆ GetCurveCVIndices()

virtual int CRhinoGripObject::GetCurveCVIndices ( ON_SimpleArray< int > &  cvindex) const

Parameters: cvindex - [out] Control point indices are appended to this array.
Returns: Number of NURBS curve control points managed by this grip. If the grip is not a curve control point, zero is returned.

◆ GetCurveParameters()

virtual bool CRhinoGripObject::GetCurveParameters ( double *  t) const

◆ GetGripDirections()

bool CRhinoGripObject::GetGripDirections ( ON_3dVector x,
ON_3dVector y,
ON_3dVector z 
) const

Description: Sometimes grips have directions. These directions can have any length and do not have to be orthogonal. Parameters: x,y,z - [out] Returns: True if the grip has directions.

◆ GetGripPointXform()

bool CRhinoGripObject::GetGripPointXform ( ON_Xform xform) const

Returns: Current transformation applied to the grip. If EnableTransformationWatching(true) has not been called, the the returned transformation will always be the translation from GripBasePoint() to GripLocation() and false will be returned. If EnableTransformationWatching(true) has been called and a transformation command, like Rotate or Scale has moved the grip, then the transformation will be returned. See Also: CRhinoGripObject::GripLocation CRhinoGripObject::GripBasePoint

◆ GetNeighborGrips()

int CRhinoGripObject::GetNeighborGrips ( ON_SimpleArray< CRhinoGripObject * > &  neighborGrips,
bool  wrap = false 
) const

◆ GetSurfaceCVIndices()

virtual int CRhinoGripObject::GetSurfaceCVIndices ( ON_SimpleArray< ON_2dex > &  cvindex) const

Parameters: cvindex - [out] Control point indices are appended to this array.
Returns: Number of NURBS surface control points managed by this grip. If the grip is not a surface control point, zero is returned.

◆ GetSurfaceParameters()

virtual bool CRhinoGripObject::GetSurfaceParameters ( double *  u,
double *  v 
) const

◆ GripBasePoint()

ON_3dPoint CRhinoGripObject::GripBasePoint ( ) const

Returns: Original grip location. See Also: CRhinoGripObject::GripLocation

◆ GripLocation()

ON_3dPoint CRhinoGripObject::GripLocation ( ) const

Returns: Current grip location. See Also: CRhinoGripObject::GripBasePoint

◆ GripMoved()

virtual bool CRhinoGripObject::GripMoved ( ) const

Returns: True if grip has moved.

◆ GripsId()

ON_UUID CRhinoGripObject::GripsId ( ) const

Description: This id is used to differentiate between different types of custom grips. The default object grips (curve cvs, etc.) always have an id of ON_nil_uuid. Returns: The value of m_grips_owner->m_grips_id.

◆ GripType()

GRIP_TYPE CRhinoGripObject::GripType ( ) const

Returns: The value of m_grips_owner->m__grips_type

◆ HideGrip()

virtual bool CRhinoGripObject::HideGrip ( bool  hide) const

Description: CRhinoDoc::ShowObject and CRhinoDoc::HideObject call this function when a grip visibility is changed. If needed, override HideGrip to do any extra work that is required. For example, when mesh grips are hidden, the ON_Mesh::m_H[] array needs to be updated. Parameters: hide - [in] true mean grips is being hidden, false means grip is being shown.

◆ IsDeletable()

bool CRhinoGripObject::IsDeletable ( ) const

Description: Some objects cannot be deleted, like grips on lights and annotation objects. Returns: True if object can be deleted.

Reimplemented from CRhinoObject.

◆ MeshVertexIndex()

virtual unsigned int CRhinoGripObject::MeshVertexIndex ( ) const

Returns: If the grip is a mesh vertex grip, the mesh vertex index is returned, otherwise ON_UNSET_UINT_INDEX is returned.

◆ ModifyAttributes()

bool CRhinoGripObject::ModifyAttributes ( const ON_3dmObjectAttributes newAttributes,
bool  enableUndo = true,
bool  quiet = false 

Description: virtual CRhinoObject::ModifyAttributes override to prevent changing grip attributes. Returns: false

Reimplemented from CRhinoObject.

◆ MoveGrip() [1/4]

void CRhinoGripObject::MoveGrip ( const CRhinoSpaceMorph morph)

◆ MoveGrip() [2/4]

void CRhinoGripObject::MoveGrip ( const ON_Xform xform)

Description: Move the grip to a new location. Parameters: xform - [in] transformation applied to base point. morph - [in] transformation applied to base point. delta - [in] translation applied to base point. newLocation - [in] new location for grip point See Also: CRhinoGripObject::operator=

◆ MoveGrip() [3/4]

void CRhinoGripObject::MoveGrip ( ON_3dPoint  newLocation)

◆ MoveGrip() [4/4]

void CRhinoGripObject::MoveGrip ( ON_3dVector  delta)

◆ MoveGripHelper()

void CRhinoGripObject::MoveGripHelper ( ON_3dPoint  ,
const ON_Xform  

◆ NeighborGrip()

CRhinoGripObject* CRhinoGripObject::NeighborGrip ( int  dr,
int  ds,
int  dt,
bool  wrap = false 
) const

Description: Used to get a grip's logical neighbors, like NURBS curve, surface, and cage control point grips. Parameters: dr - [in] -1 to go back one grip, +1 to move forward one grip For curves, surfaces and cages, this is the first parameter direction. ds - [in] -1 to go back one grip, +1 to move forward one grip For surfaces and cages this is the second parameter direction. dt - [in] For cages this is the third parameter direction. Returns: Pointer to the logical neighbor or NULL if there is no logical neighbor.

◆ NewLocation()

virtual void CRhinoGripObject::NewLocation ( )

◆ Next()

CRhinoGripObject* CRhinoGripObject::Next ( ) const

next in CRhinoDoc::m_grip_list list

◆ ObjectType()

ON::object_type CRhinoGripObject::ObjectType ( ) const

Returns ON::grip_object.

Reimplemented from CRhinoPointObject.

◆ operator const ON_3dPoint &()

CRhinoGripObject::operator const ON_3dPoint & ( ) const

◆ operator ON_3dPoint()

CRhinoGripObject::operator ON_3dPoint ( ) const

◆ operator=()

CRhinoGripObject& CRhinoGripObject::operator= ( ON_3dPoint  newLocation)

Description: Sets location of grip point. Parameter: new_location - [in] See Also: CRhinoGripObject::MoveGrip

◆ Owner()

CRhinoObject* CRhinoGripObject::Owner ( ) const

Returns: Object that owns this grip

◆ PickFilter()

bool CRhinoGripObject::PickFilter ( const CRhinoGetObject ,
) const

◆ Prev()

CRhinoGripObject* CRhinoGripObject::Prev ( ) const

prev in CRhinoDoc::m_grip_list list

◆ SetGripDirections()

void CRhinoGripObject::SetGripDirections ( CRhinoGripDirections  gd)

Description: Unconditionally sets grip directions to values in gd. Parameters: gd - [in]

◆ SetWeight()

virtual bool CRhinoGripObject::SetWeight ( double  weight)

Description: Set the weight of a NURBS control point grip. double weight - [in] NURBS control point weight (>= 0 ) Returns: True if weight was changed. Base class implementation does nothing and simply returns false

◆ ShortDescription()

const wchar_t* CRhinoGripObject::ShortDescription ( bool  bPlural) const

Returns "grip" or "grips".

Reimplemented from CRhinoPointObject.

◆ SnapTo()

bool CRhinoGripObject::SnapTo ( const CRhinoSnapContext snapContext,
CRhinoSnapEvent snapEvent 
) const

Description: virtual CRhinoObject::SnapTo override pays checks for control polygon culling and then calls base class SnapTo(). Returns: attributes

Reimplemented from CRhinoPointObject.

◆ SubDComponentId()

virtual unsigned int CRhinoGripObject::SubDComponentId ( ) const

Returns: If the grip is a subd grip, the subd component id is returned, otherwise ON_UNSET_UINT_INDEX is returned.

◆ SubDComponentPtr()

virtual ON_SubDComponentPtr CRhinoGripObject::SubDComponentPtr ( ) const

◆ UndoMoveGrip()

virtual void CRhinoGripObject::UndoMoveGrip ( )

Description: Undoes any grip moves made by calling MoveGrip.

◆ Weight()

virtual double CRhinoGripObject::Weight ( ) const

Returns: The weight of a NURBS control point grip or ON_UNSET_VALUE if the grip is not a NURBS control point. Default implementation returns ON_UNSET_VALUE.

Member Data Documentation

◆ m_base_point

ON_3dPoint CRhinoGripObject::m_base_point

starting location of grip point

◆ m_grip_index

int CRhinoGripObject::m_grip_index

index of grip in CRhinoObjectGrips m_grip_list array

◆ m_grip_owner

CRhinoObjectGrips* CRhinoGripObject::m_grip_owner

grips object that owns this grip point

Expert user fields below - don't look, don't touch No support is available for these fields