Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

PeriodicBinaryTransform.h

Go to the documentation of this file.
00001 /* -*- mode: c++ -*- */
00002 
00014 #ifndef _PeriodicBinaryTransform_H_
00015 #define _PeriodicBinaryTransform_H_
00016 
00017 #ifdef _MSC_VER
00018 #include "msdevstudio/MSconfig.h" // for CLONE_DEFECT
00019 #endif
00020 
00021 #include "BinaryTransform.h"
00022 
00023 #include "axes/Range.h"
00024 
00031 class MDL_HIPPOPLOT_API PeriodicBinaryTransform : public BinaryTransform
00032 {
00033 
00034 protected:
00035   
00037   Range m_x_limits;
00038   
00040   Range m_y_limits;
00041   
00043   double m_x_offset;
00044   
00046   double m_y_offset;
00047 
00049   PeriodicBinaryTransform();
00050 
00057   PeriodicBinaryTransform ( UnaryTransform *, bool = false, bool  = false,
00058                             bool  = true, bool  = true,
00059                             double = -180, double = +180,
00060                             double =  -90, double =  +90);
00061   
00063   PeriodicBinaryTransform ( const PeriodicBinaryTransform & );
00064   
00065 public:
00066   
00068   virtual ~PeriodicBinaryTransform();
00069 
00071   virtual const Range & limitX() const;
00072 
00074   virtual const Range & limitY() const;
00075 
00077   double xOffset() const; 
00078 
00080   void setXOffset ( double x_offset ); 
00081 
00083   double yOffset() const;
00084 
00086   void setYOffset( double y_offset );
00087 
00089   double moduloAdd ( double a1, double a2, hippodraw::Axes::Type axis ) const;
00090   
00092   double moduloSub ( double s1, double s2, hippodraw::Axes::Type axis ) const; 
00093   
00095   double moduloAddX ( double x1, double x2 ) const;
00096 
00098   double moduloAddY ( double y1, double y2 ) const;
00099 
00101   double moduloSubX ( double x1, double x2 ) const;
00102 
00104   double moduloSubY ( double y1, double y2 ) const;
00105 
00106 };
00107 
00108 #endif // _PeriodicBinaryTransform_H_

Generated for HippoDraw-1.14.8.5 by doxygen 1.4.3