# HOpCreateCircle

## Functions

| `HOpCreateCircle`
| `~HOpCreateCircle`
const char * | `GetName`
int | `OnLButtonUp`
HBaseOperator * | `Clone`

## Detailed Description

class HOpCreateCircle : public HOpConstructCircle

  The HOpCreateCircle class draws a circle.

  HOpCreateCircle maps the event information to the HOOPS routine #HC_Insert_Circle_By_Radius. This provides the basic functionality for drawing a temporary, overlayed 2-D box outline in the view plane based on first and last pointer positions. Once the operation is finalized, a circle will be inserted into the model. The operation consists of the following steps:

  1. Left Button Down: Identifies the center point of the circle.

  2. Left Button Down and Drag: Rubberband circle to desired dimensions.

  3. Left Button Up: Circle finalized, the polyline primitive used to represent the circle is flushed from the scene and a new one is created in the model.

  More Detailed Description: see event methods.

  Public Functions

  HOpCreateCircle(HBaseView *view, int DoRepeat = 0, int DoCapture = 1, bool UseCenterMarker = true)

    Constructs an HOpCreateCircle object.

    Parameters

      - 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.

      - UseCenterMarker – Pass true if you want HOOPS to draw a mark at the center.

  virtual ~HOpCreateCircle()
  virtual const char *GetName()
    Returns

      A pointer to a character string denoting the name of the operator, which is ‘HOpConstructCircle’.

  virtual int OnLButtonUp(HEventInfo &hevent)

    OnLButtonUp finalizes the size of the circle, cleans up the geometry draw under the construction key and inserts a circle into the current model using #HC_Insert_Circle_By_Radius.

    Parameters

      hevent – An HEventInfo object containing information about the current event.

    Returns

      An HOperatorReturn indicating the status of the event.

  virtual HBaseOperator *Clone()

    Creates a new operator which is a copy of the current operator. The user is responsible for deleting the newly created operator.

    Returns

      A pointer to the newly created HOpCreateCircle object.