VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkPiecewiseControlPointsItem.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00015 00033 #ifndef vtkPiecewiseControlPointsItem_h 00034 #define vtkPiecewiseControlPointsItem_h 00035 00036 #include "vtkChartsCoreModule.h" // For export macro 00037 #include "vtkControlPointsItem.h" 00038 00039 class vtkPiecewiseFunction; 00040 00041 class VTKCHARTSCORE_EXPORT vtkPiecewiseControlPointsItem: public vtkControlPointsItem 00042 { 00043 public: 00044 vtkTypeMacro(vtkPiecewiseControlPointsItem, vtkControlPointsItem); 00045 virtual void PrintSelf(ostream &os, vtkIndent indent); 00046 00048 static vtkPiecewiseControlPointsItem* New(); 00049 00051 virtual void SetPiecewiseFunction(vtkPiecewiseFunction* function); 00053 00054 vtkGetObjectMacro(PiecewiseFunction, vtkPiecewiseFunction); 00056 00060 virtual vtkIdType AddPoint(double* newPos); 00061 00065 virtual vtkIdType RemovePoint(double* pos); 00066 00068 00070 vtkSetMacro(StrokeMode, bool); 00072 00073 protected: 00074 vtkPiecewiseControlPointsItem(); 00075 virtual ~vtkPiecewiseControlPointsItem(); 00076 00077 virtual void emitEvent(unsigned long event, void* params = 0); 00078 00079 virtual unsigned long int GetControlPointsMTime(); 00080 00081 virtual vtkIdType GetNumberOfPoints()const; 00082 virtual void GetControlPoint(vtkIdType index, double *point)const; 00083 virtual void SetControlPoint(vtkIdType index, double *point); 00084 virtual void EditPoint(float tX, float tY); 00085 00086 vtkPiecewiseFunction* PiecewiseFunction; 00087 00088 private: 00089 vtkPiecewiseControlPointsItem(const vtkPiecewiseControlPointsItem &); // Not implemented. 00090 void operator=(const vtkPiecewiseControlPointsItem &); // Not implemented. 00091 }; 00092 00093 #endif