Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
transforms
XYTransform.h
Go to the documentation of this file.
1
/* -*- mode: c++ -*-*/
2
14
#ifndef _XYTransform_H_
15
#define _XYTransform_H_
16
17
#include "
BinaryTransform.h
"
18
19
#include <vector>
20
21
namespace
hippodraw {
22
23
class
UnaryTransform;
24
class
Range;
25
30
class
MDL_HIPPOPLOT_API
XYTransform
:
public
BinaryTransform
31
{
32
33
private
:
34
36
UnaryTransform
*
m_x
;
37
39
UnaryTransform
*
m_y
;
40
41
public
:
42
45
XYTransform
(
UnaryTransform
* x,
46
UnaryTransform
* y,
47
UnaryTransform
* z );
48
50
XYTransform
(
const
XYTransform
& );
51
53
virtual
~
XYTransform
();
54
56
#ifdef CLONE_DEFECT
57
virtual
TransformBase
*
clone
()
const
;
58
#else
59
virtual
XYTransform
*
clone
()
const
;
60
#endif
61
63
TransformBase
* xTransform ()
const
;
64
66
TransformBase
* yTransform ()
const
;
67
68
virtual
bool
isLinearInXY ()
const
;
69
70
virtual
void
transform (
double
& x,
double
& y )
const
;
71
72
virtual
bool
inverseTransform (
double
& x,
double
& y )
const
;
73
74
virtual
void
transform ( std::vector< double > & x,
75
std::vector< double > & y )
const
;
76
77
virtual
double
aspectRatio ()
const
;
78
79
virtual
Rect
calcRectangle (
const
Range
& x,
80
const
Range
& y );
81
82
virtual
void
validate (
Range
& x,
Range
& y )
const
;
83
85
virtual
const
Range
& limitX ()
const
;
86
88
virtual
const
Range
& limitY ()
const
;
89
90
virtual
const
std::vector < AxisTick > &
91
setTicks (
AxisModelBase
& axis_model,
hippodraw::Axes::Type
axis );
92
96
virtual
void
adjustValues (
AxisModelBase
& model,
97
hippodraw::Axes::Type
axes,
98
const
Range
& limit );
99
};
100
101
}
// namespace hippodraw
102
103
#endif // _XYTransform_H_
Generated for HippoDraw Class Library by