XYTransform.h

Go to the documentation of this file.
00001 /* -*- mode: c++ -*-*/
00002 
00014 #ifndef _XYTransform_H_
00015 #define _XYTransform_H_
00016 
00017 #include "BinaryTransform.h"
00018 
00019 #include <vector>
00020 
00021 namespace hippodraw {
00022 
00023 class UnaryTransform;
00024 class Range;
00025 
00030 class MDL_HIPPOPLOT_API XYTransform : public BinaryTransform
00031 {
00032 
00033 private:
00034 
00036   UnaryTransform * m_x;
00037 
00039   UnaryTransform * m_y;
00040 
00041 public:
00042 
00045   XYTransform ( UnaryTransform * x, 
00046                 UnaryTransform * y,
00047                 UnaryTransform * z );
00048 
00050   XYTransform ( const XYTransform & );
00051 
00053   virtual ~XYTransform();
00054 
00056 #ifdef CLONE_DEFECT
00057   virtual TransformBase * clone () const;
00058 #else
00059   virtual XYTransform   * clone () const;
00060 #endif
00061 
00063   TransformBase * xTransform () const;
00064 
00066   TransformBase * yTransform () const;
00067 
00068   virtual bool isLinearInXY () const;
00069 
00070   virtual void transform ( double & x, double & y ) const;
00071 
00072   virtual bool inverseTransform ( double & x, double & y ) const;
00073 
00074   virtual void transform ( std::vector< double > & x, 
00075                            std::vector< double > & y ) const;
00076 
00077   virtual double aspectRatio () const;
00078 
00079   virtual Rect calcRectangle ( const Range & x, 
00080                                const Range & y );
00081 
00082   virtual void validate ( Range & x, Range & y ) const;
00083 
00085   virtual const Range & limitX () const;
00086 
00088   virtual const Range & limitY () const;
00089 
00090   virtual const std::vector < AxisTick > &
00091   setTicks ( AxisModelBase & axis_model, hippodraw::Axes::Type axis );
00092 
00096   virtual void adjustValues ( AxisModelBase & model,
00097                               hippodraw::Axes::Type  axes,
00098                               const Range & limit );
00099 };
00100 
00101 } // namespace hippodraw
00102 
00103 #endif // _XYTransform_H_

Generated for HippoDraw Class Library by doxygen