Rogue Wave Views
Manager Package API Reference Guide
Product Documentation:

Rogue Wave Views
Documentation Home
List of all members | Public Member Functions
IlvMakeFilledSplineInteractor Class Reference

Manager interactor class. More...

#include <ilviews/manager/mkpolyin.h>

Inheritance diagram for IlvMakeFilledSplineInteractor:
IlvMakeSplineInteractor IlvMakePolyPointsInteractor IlvManagerViewInteractor IlvValueInterface IlvMakeClosedSplineInteractor

Public Member Functions

 IlvMakeFilledSplineInteractor (IlvManager *manager, IlvView *view)
 Constructor. More...
 
void commit (IlBoolean removeExtraPoints)
 
virtual void doIt (IlUInt count, IlvPoint *points)
 Finalizes the interaction by creating an IlvFilledSpline object. More...
 
virtual void drawGhost ()
 Visual feedback during interaction. More...
 
void react (IlvPoint &p, IlUShort modifier=0)
 Ensures the Bezier spline stays continuously derivable as new points are entered. More...
 
- Public Member Functions inherited from IlvMakeSplineInteractor
 IlvMakeSplineInteractor (IlvManager *manager, IlvView *view)
 Constructor. More...
 
IlBoolean accept (IlvPoint &p)
 Lets the interactor accept or refuse a new point location. More...
 
IlBoolean displayIntermediatePoints ()
 
void displayIntermediatePoints (IlBoolean d)
 
virtual void drawHull ()
 draws the control points of the Bezier curve. More...
 
- Public Member Functions inherited from IlvMakePolyPointsInteractor
 IlvMakePolyPointsInteractor (IlvManager *manager, IlvView *view)
 Constructor. More...
 
void abort ()
 Aborts the interaction. More...
 
IlUInt count ()
 Returns the number of elements in the current array of points. More...
 
IlUShort getThreshold () const
 Returns the threshold. More...
 
virtual IlBoolean handleEvent (IlvEvent &event)
 Handles events for the manager view. More...
 
void init ()
 Initialization, when the interactor is attached to a view. More...
 
IlvPointpoints ()
 Returns the current array of points. More...
 
void setThreshold (IlUShort val)
 Sets the threshold. More...
 
- Public Member Functions inherited from IlvManagerViewInteractor
 IlvManagerViewInteractor (IlvManager *manager, IlvView *view)
 Initializes a new IlvManagerViewInteractor. More...
 
virtual void ensureVisible (const IlvPoint &point)
 Ensures the visibility of a given location. More...
 
IlvDisplaygetDisplay () const
 Returns the display of the manager view. More...
 
IlvManagergetManager () const
 Returns the manager. More...
 
IlvTransformergetTransformer () const
 Returns the transformer used with the manager view. More...
 
IlvViewgetView () const
 Returns the manager view. More...
 
virtual void handleExpose (IlvRegion *clip=0)
 Called when the manager view receives an expose event. More...
 

Additional Inherited Members

- Protected Member Functions inherited from IlvMakePolyPointsInteractor
IlvPointtransformPoints () const
 Returns the array of points in the coordinate system of the view. More...
 

Detailed Description

Manager interactor class.

Library: ilvmgr

Use this class to create IlvFilledSpline objects in a view controlled by a manager. The virtual member function handleEvent monitors mouse events. To draw a filled spline, the user:

  1. Clicks and drag the left mouse button to add a point and set its tangents and tension.
  2. Presses the return or space key, or double clicks to finish.

If the user presses the Control modifier while dragging the left mouse button, the left and right tangents at the current point are dissociated, letting the user create cusps on the Bezier spline.

See also
IlvFilledSpline, IlvPolySelectInteractor, IlvMakeClosedSplineInteractor.

Constructor & Destructor Documentation

IlvMakeFilledSplineInteractor::IlvMakeFilledSplineInteractor ( IlvManager manager,
IlvView view 
)

Constructor.

Initializes a new instance of the IlvMakeFilledSplineInteractor class.

Parameters
managerThe manager.
viewThe manager view.

Member Function Documentation

void IlvMakeFilledSplineInteractor::commit ( IlBoolean  removeExtraPoints)
virtual

Called by handleEvent when the polypoint is terminated. This method should call doIt() and post an undoable command if need be.

Parameters
removeExtraPointsWhen the curve entry is terminated by a double click, it may be desirable to remove the extra points that have been added in succession by the double click. This flag is set to tell the method that it should get rid of the extraneous points before calling doIt().

Reimplemented from IlvMakeSplineInteractor.

virtual void IlvMakeFilledSplineInteractor::doIt ( IlUInt  count,
IlvPoint points 
)
virtual

Finalizes the interaction by creating an IlvFilledSpline object.

Creates an IlvFilledSpline in the manager from the array of points provided during the interaction.

Parameters
countThe number of points in the array.
pointsThe array of points, in the object coordinate system.

Reimplemented from IlvMakeSplineInteractor.

Reimplemented in IlvMakeClosedSplineInteractor.

virtual void IlvMakeFilledSplineInteractor::drawGhost ( )
virtual

Visual feedback during interaction.

Draws a filled spline in XOR mode.

Reimplemented from IlvMakeSplineInteractor.

Reimplemented in IlvMakeClosedSplineInteractor.

void IlvMakeFilledSplineInteractor::react ( IlvPoint p,
IlUShort  modifier = 0 
)
virtual

Ensures the Bezier spline stays continuously derivable as new points are entered.

When a new control point is added, the default implementation realigns the previous control points if needed, to ensure that the Bezier remains continuous at each control point, including the start and end points.

Reimplemented from IlvMakeSplineInteractor.


© Copyright 2016, Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.