# HOpSelectPolyline

## Functions

| `HOpSelectPolyline`
| `~HOpSelectPolyline`
const char * | `GetName`
HBaseOperator * | `Clone`
int | `OnLButtonDblClk`

## Detailed Description

class HOpSelectPolyline : public HOpConstructPolyline

  The HOpSelectPolyline class computes a selection list for objects intersected by a user-defined polyline.

  HOpSelectPolyline employs all of the drawing functionality of HOpConstructPolyline to define a temporary, overlayed polyline, then maps the polyline to the HOOPS routine HC_Compute_Selection_By_Polylin. This provides the basic functionality for selecting a group of objects based on their intersection with a line. The operation consists of the following steps:

  1. Left Button Down: operation initiated, first point of the polyline recorded

  2. No Button Down and Drag: rubberband line segment to desired position of next point

  3. Left Button Down: next point in polyline recorded, etc.

  4. Left Button Double Click: polyline completed and flushed from scene, selection list computed, objects highlighted, operation ended

  More Detailed Description: see event methods Functional Note: This operator does not provide exact results for HOOPS’ Shell and Mesh primitives.

  Public Functions

  HOpSelectPolyline(HBaseView *view, int DoRepeat = 0, int DoCapture = 1)

    Constructs an HOpSelectPolyline 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.

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

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

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

  virtual int OnLButtonDblClk(HEventInfo &hevent)

    returns a pointer to a copy of the operator

    OnLButtonDblClk passes the polyline array from HOpConstructPolyline::OnLButtonDblClk into the HOOPS routine HC_Compute_Selection_By_Polyline. Currently selected items are highlighted, and items previously highlighted are de-selected.

    Parameters

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

    Returns

      A value indicating the result of the event handling.