#include <vtkControlPointsItem.h>
vtkControlPointsItem provides control point painting and management for subclasses that provide points (typically control points of a transfer function)
Definition at line 38 of file vtkControlPointsItem.h.
Public Types | |
enum | { CurrentPointChangedEvent = vtkCommand::UserEvent, CurrentPointEditEvent } |
typedef vtkPlot | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
virtual void | PrintSelf (ostream &os, vtkIndent indent) |
virtual void | GetBounds (double bounds[4]) |
virtual bool | Paint (vtkContext2D *painter) |
void | SelectPoint (vtkIdType pointId) |
void | SelectPoint (double *currentPoint) |
void | SelectAllPoints () |
void | DeselectPoint (vtkIdType pointId) |
void | DeselectPoint (double *currentPoint) |
void | DeselectAllPoints () |
void | ToggleSelectPoint (vtkIdType pointId) |
void | ToggleSelectPoint (double *currentPoint) |
virtual bool | SelectPoints (const vtkVector2f &min, const vtkVector2f &max) |
vtkIdType | FindPoint (double *pos) |
bool | IsOverPoint (double *pos, vtkIdType pointId) |
vtkIdType | GetControlPointId (double *pos) |
virtual vtkIdType | AddPoint (double *newPos) |
virtual vtkIdType | RemovePoint (double *pos) |
virtual int | GetNumberOfPoints () const =0 |
vtkIdType | GetCurrentPoint () const |
void | SetCurrentPoint (vtkIdType index) |
void | ResetBounds () |
virtual void | SetUserBounds (double, double, double, double) |
virtual void | SetUserBounds (double[4]) |
virtual double * | GetUserBounds () |
virtual void | GetUserBounds (double &, double &, double &, double &) |
virtual void | GetUserBounds (double[4]) |
virtual bool | GetStrokeMode () |
virtual void | SetSwitchPointsMode (bool) |
virtual bool | GetSwitchPointsMode () |
virtual void | GetControlPoint (vtkIdType index, double *point)=0 |
virtual void | SetControlPoint (vtkIdType index, double *point)=0 |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkControlPointsItem * | SafeDownCast (vtkObject *o) |
Protected Member Functions | |
vtkControlPointsItem () | |
virtual | ~vtkControlPointsItem () |
virtual bool | Hit (const vtkContextMouseEvent &mouse) |
bool | ClampPos (double pos[2]) |
virtual bool | MouseMoveEvent (const vtkContextMouseEvent &mouse) |
void | MoveCurrentPoint (const vtkVector2f &newPos) |
vtkIdType | MovePoint (vtkIdType point, const vtkVector2f &newPos) |
void | MovePoints (float tX, float tY) |
void | Stroke (const vtkVector2f &newPos) |
virtual void | EditPoint (float vtkNotUsed(tX), float vtkNotUsed(tY)) |
virtual bool | MouseButtonReleaseEvent (const vtkContextMouseEvent &mouse) |
virtual void | ComputePoints () |
virtual unsigned long int | GetControlPointsMTime ()=0 |
void | DrawUnselectedPoints (vtkContext2D *painter) |
void | DrawSelectedPoints (vtkContext2D *painter) |
virtual void | DrawPoint (vtkContext2D *painter, vtkIdType index) |
virtual bool | MouseButtonPressEvent (const vtkContextMouseEvent &mouse) |
virtual bool | MouseDoubleClickEvent (const vtkContextMouseEvent &mouse) |
Static Protected Member Functions | |
static void | CallComputePoints (vtkObject *sender, unsigned long event, void *receiver, void *params) |
Protected Attributes | |
vtkCallbackCommand * | Callback |
vtkIdType | CurrentPoint |
double | Bounds [4] |
double | UserBounds [4] |
vtkTransform2D * | Transform |
float | ScreenPointRadius |
float | ItemPointRadius2 |
bool | StrokeMode |
bool | SwitchPointsMode |
bool | MouseMoved |
bool | EnforceValidFunction |
vtkIdType | PointToDelete |
bool | PointAboutToBeDeleted |
vtkIdType | PointToToggle |
bool | PointAboutToBeToggled |
Reimplemented from vtkPlot.
Reimplemented in vtkColorTransferControlPointsItem, vtkCompositeControlPointsItem, and vtkPiecewiseControlPointsItem.
Definition at line 41 of file vtkControlPointsItem.h.
anonymous enum |
Definition at line 44 of file vtkControlPointsItem.h.
vtkControlPointsItem::vtkControlPointsItem | ( | ) | [protected] |
virtual vtkControlPointsItem::~vtkControlPointsItem | ( | ) | [protected, virtual] |
virtual const char* vtkControlPointsItem::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkPlot.
Reimplemented in vtkColorTransferControlPointsItem, vtkCompositeControlPointsItem, and vtkPiecewiseControlPointsItem.
static int vtkControlPointsItem::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkPlot.
Reimplemented in vtkColorTransferControlPointsItem, vtkCompositeControlPointsItem, and vtkPiecewiseControlPointsItem.
virtual int vtkControlPointsItem::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkPlot.
Reimplemented in vtkColorTransferControlPointsItem, vtkCompositeControlPointsItem, and vtkPiecewiseControlPointsItem.
static vtkControlPointsItem* vtkControlPointsItem::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkPlot.
Reimplemented in vtkColorTransferControlPointsItem, vtkCompositeControlPointsItem, and vtkPiecewiseControlPointsItem.
virtual void vtkControlPointsItem::PrintSelf | ( | ostream & | os, | |
vtkIndent | indent | |||
) | [virtual] |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkPlot.
Reimplemented in vtkColorTransferControlPointsItem, vtkCompositeControlPointsItem, and vtkPiecewiseControlPointsItem.
virtual void vtkControlPointsItem::GetBounds | ( | double | bounds[4] | ) | [virtual] |
Bounds of the item, typically the bound of all the control points except if custom bounds have been set
Reimplemented from vtkPlot.
virtual void vtkControlPointsItem::SetUserBounds | ( | double | , | |
double | , | |||
double | , | |||
double | ||||
) | [virtual] |
Set custom bounds, except if bounds are invalid, bounds will be automatically computed based on the range of the control points Invalid bounds by default.
virtual void vtkControlPointsItem::SetUserBounds | ( | double | [4] | ) | [virtual] |
Set custom bounds, except if bounds are invalid, bounds will be automatically computed based on the range of the control points Invalid bounds by default.
virtual double* vtkControlPointsItem::GetUserBounds | ( | ) | [virtual] |
Set custom bounds, except if bounds are invalid, bounds will be automatically computed based on the range of the control points Invalid bounds by default.
virtual void vtkControlPointsItem::GetUserBounds | ( | double & | , | |
double & | , | |||
double & | , | |||
double & | ||||
) | [virtual] |
Set custom bounds, except if bounds are invalid, bounds will be automatically computed based on the range of the control points Invalid bounds by default.
virtual void vtkControlPointsItem::GetUserBounds | ( | double | [4] | ) | [virtual] |
Set custom bounds, except if bounds are invalid, bounds will be automatically computed based on the range of the control points Invalid bounds by default.
virtual bool vtkControlPointsItem::Paint | ( | vtkContext2D * | painter | ) | [virtual] |
Paint the points with a fixed size (cosmetic) which doesn't depend on the scene zoom factor. Selected and unselected points are drawn with a different color.
Reimplemented from vtkAbstractContextItem.
void vtkControlPointsItem::SelectPoint | ( | vtkIdType | pointId | ) |
Select a point by its ID
void vtkControlPointsItem::SelectPoint | ( | double * | currentPoint | ) |
Utility function that selects a point providing its coordinates. To be found, the position of the point must be no further away than its painted point size
void vtkControlPointsItem::SelectAllPoints | ( | ) |
Select all the points
void vtkControlPointsItem::DeselectPoint | ( | vtkIdType | pointId | ) |
Unselect a point by its ID
void vtkControlPointsItem::DeselectPoint | ( | double * | currentPoint | ) |
Utility function that unselects a point providing its coordinates. To be found, the position of the point must be no further away than its painted point size
void vtkControlPointsItem::DeselectAllPoints | ( | ) |
Unselect all the previously selected points
void vtkControlPointsItem::ToggleSelectPoint | ( | vtkIdType | pointId | ) |
Toggle the selection of a point by its ID. If the point was selected then unselect it, otherwise select it.
void vtkControlPointsItem::ToggleSelectPoint | ( | double * | currentPoint | ) |
Utility function that toggles the selection a point providing its coordinates. To be found, the position of the point must be no further away than its painted point size
virtual bool vtkControlPointsItem::SelectPoints | ( | const vtkVector2f & | min, | |
const vtkVector2f & | max | |||
) | [virtual] |
Select all points in the specified rectangle.
Reimplemented from vtkPlot.
vtkIdType vtkControlPointsItem::FindPoint | ( | double * | pos | ) |
Returns the vtkIdType of the point given its coordinates and a tolerance based on the screen point size.
bool vtkControlPointsItem::IsOverPoint | ( | double * | pos, | |
vtkIdType | pointId | |||
) |
Returns true if pos is above the pointId point, false otherwise. It uses the size of the drawn point. To search what point is under the pos, use the more efficient
vtkIdType vtkControlPointsItem::GetControlPointId | ( | double * | pos | ) |
Returns the id of the control point exactly matching pos, -1 if not found.
virtual bool vtkControlPointsItem::GetStrokeMode | ( | ) | [virtual] |
Controls whether or not control points are drawn (true) or clicked and moved (false). False by default.
virtual void vtkControlPointsItem::SetSwitchPointsMode | ( | bool | ) | [virtual] |
If DrawPoints is false, SwitchPoints controls the behavior when a control point is dragged past another point. The crossed point becomes current (true) or the current point is blocked/stopped (false). False by default.
virtual bool vtkControlPointsItem::GetSwitchPointsMode | ( | ) | [virtual] |
If DrawPoints is false, SwitchPoints controls the behavior when a control point is dragged past another point. The crossed point becomes current (true) or the current point is blocked/stopped (false). False by default.
virtual vtkIdType vtkControlPointsItem::AddPoint | ( | double * | newPos | ) | [virtual] |
Add a point to the function. Returns the index of the point (0 based), or -1 on error. Subclasses should reimplement this function to do the actual work.
Reimplemented in vtkColorTransferControlPointsItem, vtkCompositeControlPointsItem, and vtkPiecewiseControlPointsItem.
virtual vtkIdType vtkControlPointsItem::RemovePoint | ( | double * | pos | ) | [virtual] |
Remove a point of the function. Returns the index of the point (0 based), or -1 on error. Subclasses should reimplement this function to do the actual work.
Reimplemented in vtkColorTransferControlPointsItem, vtkCompositeControlPointsItem, and vtkPiecewiseControlPointsItem.
virtual int vtkControlPointsItem::GetNumberOfPoints | ( | ) | const [pure virtual] |
Returns the total number of points
Implemented in vtkColorTransferControlPointsItem, and vtkPiecewiseControlPointsItem.
virtual void vtkControlPointsItem::GetControlPoint | ( | vtkIdType | index, | |
double * | point | |||
) | [pure virtual] |
Returns the x and y coordinates as well as the midpoint and sharpness of the control point corresponding to the index.
Implemented in vtkColorTransferControlPointsItem, vtkCompositeControlPointsItem, and vtkPiecewiseControlPointsItem.
virtual void vtkControlPointsItem::SetControlPoint | ( | vtkIdType | index, | |
double * | point | |||
) | [pure virtual] |
Returns the x and y coordinates as well as the midpoint and sharpness of the control point corresponding to the index.
Implemented in vtkColorTransferControlPointsItem, vtkCompositeControlPointsItem, and vtkPiecewiseControlPointsItem.
vtkIdType vtkControlPointsItem::GetCurrentPoint | ( | ) | const |
Returns the current point selected.
void vtkControlPointsItem::SetCurrentPoint | ( | vtkIdType | index | ) |
Sets the current point selected.
void vtkControlPointsItem::ResetBounds | ( | ) |
Recompute the bounds next time they are requested. You shouldn't have to call it but it is provided for rare cases.
static void vtkControlPointsItem::CallComputePoints | ( | vtkObject * | sender, | |
unsigned long | event, | |||
void * | receiver, | |||
void * | params | |||
) | [static, protected] |
virtual void vtkControlPointsItem::ComputePoints | ( | ) | [protected, virtual] |
Must be reimplemented by subclasses to calculate the points to draw. It's subclass responsibility to call ComputePoints() via the callback
Reimplemented in vtkCompositeControlPointsItem.
virtual unsigned long int vtkControlPointsItem::GetControlPointsMTime | ( | ) | [protected, pure virtual] |
Must be reimplemented by subclasses to calculate the points to draw. It's subclass responsibility to call ComputePoints() via the callback
Implemented in vtkColorTransferControlPointsItem, vtkCompositeControlPointsItem, and vtkPiecewiseControlPointsItem.
virtual bool vtkControlPointsItem::Hit | ( | const vtkContextMouseEvent & | mouse | ) | [protected, virtual] |
Returns true if the supplied x, y coordinate is on a control point.
Reimplemented from vtkAbstractContextItem.
bool vtkControlPointsItem::ClampPos | ( | double | pos[2] | ) | [protected] |
Clamp the given 2D pos into the bounds of the function. Return true if the pos has been clamped, false otherwise.
void vtkControlPointsItem::DrawUnselectedPoints | ( | vtkContext2D * | painter | ) | [protected] |
Internal function that paints a collection of points and optionally excludes some.
void vtkControlPointsItem::DrawSelectedPoints | ( | vtkContext2D * | painter | ) | [protected] |
Internal function that paints a collection of points and optionally excludes some.
virtual void vtkControlPointsItem::DrawPoint | ( | vtkContext2D * | painter, | |
vtkIdType | index | |||
) | [protected, virtual] |
Internal function that paints a collection of points and optionally excludes some.
Reimplemented in vtkColorTransferControlPointsItem.
virtual bool vtkControlPointsItem::MouseButtonPressEvent | ( | const vtkContextMouseEvent & | mouse | ) | [protected, virtual] |
Mouse button down event.
Reimplemented from vtkAbstractContextItem.
virtual bool vtkControlPointsItem::MouseDoubleClickEvent | ( | const vtkContextMouseEvent & | mouse | ) | [protected, virtual] |
Mouse button down event.
Reimplemented from vtkAbstractContextItem.
virtual bool vtkControlPointsItem::MouseMoveEvent | ( | const vtkContextMouseEvent & | mouse | ) | [protected, virtual] |
Mouse move event.
Reimplemented from vtkAbstractContextItem.
void vtkControlPointsItem::MoveCurrentPoint | ( | const vtkVector2f & | newPos | ) | [protected] |
vtkIdType vtkControlPointsItem::MovePoint | ( | vtkIdType | point, | |
const vtkVector2f & | newPos | |||
) | [protected] |
void vtkControlPointsItem::MovePoints | ( | float | tX, | |
float | tY | |||
) | [protected] |
void vtkControlPointsItem::Stroke | ( | const vtkVector2f & | newPos | ) | [protected] |
virtual void vtkControlPointsItem::EditPoint | ( | float | vtkNotUsedtX, | |
float | vtkNotUsedtY | |||
) | [protected, virtual] |
virtual bool vtkControlPointsItem::MouseButtonReleaseEvent | ( | const vtkContextMouseEvent & | mouse | ) | [protected, virtual] |
Mouse button release event.
Reimplemented from vtkAbstractContextItem.
vtkCallbackCommand* vtkControlPointsItem::Callback [protected] |
Definition at line 206 of file vtkControlPointsItem.h.
vtkIdType vtkControlPointsItem::CurrentPoint [protected] |
Definition at line 207 of file vtkControlPointsItem.h.
double vtkControlPointsItem::Bounds[4] [protected] |
Definition at line 209 of file vtkControlPointsItem.h.
double vtkControlPointsItem::UserBounds[4] [protected] |
Definition at line 210 of file vtkControlPointsItem.h.
vtkTransform2D* vtkControlPointsItem::Transform [protected] |
Definition at line 212 of file vtkControlPointsItem.h.
float vtkControlPointsItem::ScreenPointRadius [protected] |
Definition at line 213 of file vtkControlPointsItem.h.
float vtkControlPointsItem::ItemPointRadius2 [protected] |
Definition at line 214 of file vtkControlPointsItem.h.
bool vtkControlPointsItem::StrokeMode [protected] |
Definition at line 216 of file vtkControlPointsItem.h.
bool vtkControlPointsItem::SwitchPointsMode [protected] |
Definition at line 217 of file vtkControlPointsItem.h.
bool vtkControlPointsItem::MouseMoved [protected] |
Definition at line 218 of file vtkControlPointsItem.h.
bool vtkControlPointsItem::EnforceValidFunction [protected] |
Definition at line 219 of file vtkControlPointsItem.h.
vtkIdType vtkControlPointsItem::PointToDelete [protected] |
Definition at line 220 of file vtkControlPointsItem.h.
bool vtkControlPointsItem::PointAboutToBeDeleted [protected] |
Definition at line 221 of file vtkControlPointsItem.h.
vtkIdType vtkControlPointsItem::PointToToggle [protected] |
Definition at line 222 of file vtkControlPointsItem.h.
bool vtkControlPointsItem::PointAboutToBeToggled [protected] |
Definition at line 223 of file vtkControlPointsItem.h.