AcDbEntity::getGripPoints   

ACDBCORE2D_PORT ADESK_SEALED_VIRTUAL Acad::ErrorStatus getGripPoints(
    AcDbGripDataPtrArray& grips, 
    const double curViewUnitSize, 
    const int gripSize, 
    const AcGeVector3d& curViewDir, 
    const int bitflags
) const;
Parameters
Parameters 
Description 
AcDbGripDataPtrArray& grips 
Array of pointers to dynamically allocated AcDbGripData objects, one for each grip point in the entity 
const double curViewUnitSize 
Size, in pixels, of one drawing unit in the current viewport 
const int gripSize 
Current grip size, in pixels 
const AcGeVector3d& curViewDir 
Vector describing the view direction in the current viewport 
const int bitflags 
Bitmap of one or more flags specified by the GetGripPointsFlags enumeration 
Description

Function usage 

This function gets the grip points and supporting information about the grips for this entity. It is not intended to be called by ObjectARX applications. However, it is possible to do so. 

Function implementation in derived classes 

The grips array cannot be empty, so it is important to append to it rather than assign to any existing objects in the array. If you wish to preallocate space for the elements to be appended, be sure to include the existing array logical length when calculating a new physical length for the array. 

The caller is responsible for freeing the AcDbGripData objects whose pointers are in the grips array. 

After appending pointers to all desired AcDbGripData objects, the method should return Acad::eOk. The default implementation of this method returns Acad::eNotImplemented. When Acad::eNotImplemented is returned, the application should call the other overload of this method:

 virtual Acad::ErrorStatus   getGripPoints(
        AcGePoint3dArray&  gripPoints,
        AcDbIntArray&  osnapModes,
        AcDbIntArray&  geomIds) const;

If an value other than Acad::eOk or Acad::eNotImplemented is returned, grips are not activated for this entity. 

When a custom entity is displayed as part of a block reference, only the getGripPoints() method is called on the entity . The moveGripPointsAt() is not called and none of the custom functionality implemented by this overload is used. getGripPoints() is called with the bitflags argument's kGripPointsOnly bit set to indicate that only the grip points will be used. The grip points are displayed as standard "old style"grips, if they are displayed at all (see the GRIPBLOCK sysvar) and none of the callbacks pointed to by the grips array are invoked.

Links