<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>HippoDraw Class Library</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> <link rel="shortcut icon" href="hippoApp.ico"> </head><body> <!-- Generated by Doxygen 1.6.2 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li><a href="dirs.html"><span>Directories</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>File Members</span></a></li> </ul> </div> <div class="navpath"><a class="el" href="dir_eff62de51072964fc77c85daa9c2b3ad.html">transforms</a> </div> </div> <div class="contents"> <h1>XYTransform.cxx</h1><a href="XYTransform_8cxx.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <a name="l00012"></a>00012 <span class="preprocessor">#ifdef _MSC_VER</span> <a name="l00013"></a>00013 <span class="preprocessor"></span><span class="preprocessor">#include "msdevstudio/MSconfig.h"</span> <span class="comment">// for CLONE_DEFECT</span> <a name="l00014"></a>00014 <span class="preprocessor">#endif</span> <a name="l00015"></a>00015 <span class="preprocessor"></span> <a name="l00016"></a>00016 <span class="preprocessor">#include "<a class="code" href="XYTransform_8h.html" title="hippodraw::XYTransform class interface">XYTransform.h</a>"</span> <a name="l00017"></a>00017 <a name="l00018"></a>00018 <span class="preprocessor">#include "<a class="code" href="UnaryTransform_8h.html" title="UnaryTransform class interface.">UnaryTransform.h</a>"</span> <a name="l00019"></a>00019 <a name="l00020"></a>00020 <span class="preprocessor">#include "<a class="code" href="Rectangle_8h.html" title="hippodrw::Rect class interface">graphics/Rectangle.h</a>"</span> <a name="l00021"></a>00021 <a name="l00022"></a>00022 <span class="keyword">using</span> std::vector; <a name="l00023"></a>00023 <a name="l00024"></a>00024 <span class="keyword">using namespace </span>hippodraw; <a name="l00025"></a>00025 <a name="l00026"></a><a class="code" href="classhippodraw_1_1XYTransform.html#a609d3f0f6759617dc144955617be714f">00026</a> XYTransform::XYTransform ( <a class="code" href="classhippodraw_1_1UnaryTransform.html" title="A transform that transforms coordinates in one dimension from one coordinate system...">UnaryTransform</a> * x, <a name="l00027"></a>00027 <a class="code" href="classhippodraw_1_1UnaryTransform.html" title="A transform that transforms coordinates in one dimension from one coordinate system...">UnaryTransform</a> * y, <a name="l00028"></a>00028 <a class="code" href="classhippodraw_1_1UnaryTransform.html" title="A transform that transforms coordinates in one dimension from one coordinate system...">UnaryTransform</a> * z ) <a name="l00029"></a>00029 : <a class="code" href="classhippodraw_1_1BinaryTransform.html" title="A transform that transforms coordinates from one 2D coordinate system to another...">BinaryTransform</a> ( z ) <a name="l00030"></a>00030 { <a name="l00031"></a>00031 <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a> = x; <a name="l00032"></a>00032 <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a> = y; <a name="l00033"></a>00033 <span class="comment">// The following verboseness for VC++ in debug mode.</span> <a name="l00034"></a>00034 <span class="keyword">const</span> std::string xname = <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a>-><a class="code" href="classhippodraw_1_1TransformBase.html#a11c23a386abb9eb8a42f0c2c2835d640" title="Returns the name of the Transform.">name</a> (); <a name="l00035"></a>00035 <span class="keyword">const</span> std::string yname = <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a>-><a class="code" href="classhippodraw_1_1TransformBase.html#a11c23a386abb9eb8a42f0c2c2835d640" title="Returns the name of the Transform.">name</a> (); <a name="l00036"></a>00036 <span class="keyword">const</span> std::string zname = z-><a class="code" href="classhippodraw_1_1TransformBase.html#a11c23a386abb9eb8a42f0c2c2835d640" title="Returns the name of the Transform.">name</a> (); <a name="l00037"></a>00037 <a class="code" href="classhippodraw_1_1TransformBase.html#adb41893ba19e889e56c559f25fc1a68a" title="Name of the Transform.">m_name</a> = xname; <a name="l00038"></a>00038 <a class="code" href="classhippodraw_1_1TransformBase.html#adb41893ba19e889e56c559f25fc1a68a" title="Name of the Transform.">m_name</a> += <span class="stringliteral">" "</span>; <a name="l00039"></a>00039 <a class="code" href="classhippodraw_1_1TransformBase.html#adb41893ba19e889e56c559f25fc1a68a" title="Name of the Transform.">m_name</a> += yname; <a name="l00040"></a>00040 <a class="code" href="classhippodraw_1_1TransformBase.html#adb41893ba19e889e56c559f25fc1a68a" title="Name of the Transform.">m_name</a> += <span class="stringliteral">" "</span>; <a name="l00041"></a>00041 <a class="code" href="classhippodraw_1_1TransformBase.html#adb41893ba19e889e56c559f25fc1a68a" title="Name of the Transform.">m_name</a> += zname; <a name="l00042"></a>00042 } <a name="l00043"></a>00043 <a name="l00044"></a><a class="code" href="classhippodraw_1_1XYTransform.html#a4e96ab5a3526e822c9341d226c609635">00044</a> <a class="code" href="classhippodraw_1_1XYTransform.html#a4e96ab5a3526e822c9341d226c609635" title="The virtual destructor.">XYTransform::~XYTransform</a> () <a name="l00045"></a>00045 { <a name="l00046"></a>00046 <span class="keyword">delete</span> <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a>; <a name="l00047"></a>00047 <span class="keyword">delete</span> <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a>; <a name="l00048"></a>00048 } <a name="l00049"></a>00049 <a name="l00050"></a><a class="code" href="classhippodraw_1_1XYTransform.html#ae356dac4b20583744a09588ddc97b9ec">00050</a> <a class="code" href="classhippodraw_1_1XYTransform.html#a609d3f0f6759617dc144955617be714f" title="The following constructor takes three base constructors as arguments.">XYTransform::XYTransform</a> ( <span class="keyword">const</span> <a class="code" href="classhippodraw_1_1XYTransform.html" title="A transform that transforms the X and Y coordinates independently.">XYTransform</a> & t ) <a name="l00051"></a>00051 : <a class="code" href="classhippodraw_1_1BinaryTransform.html" title="A transform that transforms coordinates from one 2D coordinate system to another...">BinaryTransform</a> ( t ) <a name="l00052"></a>00052 { <a name="l00053"></a>00053 <span class="preprocessor">#ifdef CLONE_DEFECT</span> <a name="l00054"></a>00054 <span class="preprocessor"></span> <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a> = dynamic_cast < <a class="code" href="classhippodraw_1_1UnaryTransform.html" title="A transform that transforms coordinates in one dimension from one coordinate system...">UnaryTransform</a> * > ( t.<a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#a62f01e28f2e165c8984769315fc996b3" title="Function to make copy of object.">clone</a> () ); <a name="l00055"></a>00055 <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a> = dynamic_cast < <a class="code" href="classhippodraw_1_1UnaryTransform.html" title="A transform that transforms coordinates in one dimension from one coordinate system...">UnaryTransform</a> * > ( t.<a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#a62f01e28f2e165c8984769315fc996b3" title="Function to make copy of object.">clone</a> () ); <a name="l00056"></a>00056 <span class="preprocessor">#else</span> <a name="l00057"></a>00057 <span class="preprocessor"></span> <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a> = t.<a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#a62f01e28f2e165c8984769315fc996b3" title="Function to make copy of object.">clone</a> (); <a name="l00058"></a>00058 m_y = t.<a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#a62f01e28f2e165c8984769315fc996b3" title="Function to make copy of object.">clone</a> (); <a name="l00059"></a>00059 <span class="preprocessor">#endif</span> <a name="l00060"></a>00060 <span class="preprocessor"></span>} <a name="l00061"></a>00061 <a name="l00062"></a>00062 <span class="preprocessor">#ifdef CLONE_DEFECT</span> <a name="l00063"></a>00063 <span class="preprocessor"></span><a class="code" href="classhippodraw_1_1TransformBase.html" title="A transform that transforms coordinates from one coordinate system to another.">TransformBase</a> * <a class="code" href="classhippodraw_1_1XYTransform.html#abcbab7177e1f5e5ac5dbd04748949dd7" title="Creates a new Transform object by copying an existing one.">XYTransform::clone</a> () const <a name="l00064"></a>00064 <span class="preprocessor">#else</span> <a name="l00065"></a><a class="code" href="classhippodraw_1_1XYTransform.html#abcbab7177e1f5e5ac5dbd04748949dd7">00065</a> <span class="preprocessor"></span><a class="code" href="classhippodraw_1_1XYTransform.html" title="A transform that transforms the X and Y coordinates independently.">XYTransform</a> * <a class="code" href="classhippodraw_1_1XYTransform.html#abcbab7177e1f5e5ac5dbd04748949dd7" title="Creates a new Transform object by copying an existing one.">XYTransform::clone</a> () const <a name="l00066"></a>00066 <span class="preprocessor">#endif</span> <a name="l00067"></a>00067 <span class="preprocessor"></span>{ <a name="l00068"></a>00068 <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classhippodraw_1_1XYTransform.html" title="A transform that transforms the X and Y coordinates independently.">XYTransform</a> ( *<span class="keyword">this</span> ); <a name="l00069"></a>00069 } <a name="l00070"></a>00070 <a name="l00071"></a>00071 <span class="keywordtype">bool</span> <a name="l00072"></a>00072 <a class="code" href="classhippodraw_1_1XYTransform.html#aa8cc334c554916aa03510fb6ba690688" title="Returns true if the transform would be one to one on both the X and Y axes.">XYTransform::</a> <a name="l00073"></a><a class="code" href="classhippodraw_1_1XYTransform.html#aa8cc334c554916aa03510fb6ba690688">00073</a> <a class="code" href="classhippodraw_1_1XYTransform.html#aa8cc334c554916aa03510fb6ba690688" title="Returns true if the transform would be one to one on both the X and Y axes.">isLinearInXY</a> ( )<span class="keyword"> const</span> <a name="l00074"></a>00074 <span class="keyword"></span>{ <a name="l00075"></a>00075 <span class="keywordflow">return</span> <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a> -> isLinear () && <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a> -> isLinear (); <a name="l00076"></a>00076 } <a name="l00077"></a>00077 <a name="l00078"></a>00078 <span class="comment">/* virtual */</span> <a name="l00079"></a><a class="code" href="classhippodraw_1_1XYTransform.html#a793c064266f4c801c9ac41d6006c0616">00079</a> <span class="keywordtype">void</span> <a class="code" href="classhippodraw_1_1XYTransform.html#a793c064266f4c801c9ac41d6006c0616" title="Transform the coordinates on the X and Y axes.">XYTransform::transform</a> ( <span class="keywordtype">double</span> & x, <a name="l00080"></a>00080 <span class="keywordtype">double</span> & y )<span class="keyword"> const</span> <a name="l00081"></a>00081 <span class="keyword"></span>{ <a name="l00082"></a>00082 <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#ab35684b7c3ddc8d8410e3b74cff8633b" title="Transforms the coordinate x.">transform</a> ( x ); <a name="l00083"></a>00083 <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#ab35684b7c3ddc8d8410e3b74cff8633b" title="Transforms the coordinate x.">transform</a> ( y ); <a name="l00084"></a>00084 } <a name="l00085"></a>00085 <a name="l00086"></a>00086 <span class="keywordtype">bool</span> <a name="l00087"></a>00087 <a class="code" href="classhippodraw_1_1XYTransform.html#a6d898212087821aca5f2daa9fb81c74f" title="Transform the transformed coordinates on X and Y axis back to the original true data...">XYTransform::</a> <a name="l00088"></a><a class="code" href="classhippodraw_1_1XYTransform.html#a6d898212087821aca5f2daa9fb81c74f">00088</a> <a class="code" href="classhippodraw_1_1XYTransform.html#a6d898212087821aca5f2daa9fb81c74f" title="Transform the transformed coordinates on X and Y axis back to the original true data...">inverseTransform</a> ( <span class="keywordtype">double</span> & x, <span class="keywordtype">double</span> & y )<span class="keyword"> const</span> <a name="l00089"></a>00089 <span class="keyword"></span>{ <a name="l00090"></a>00090 <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#acf7aa275bf7a223fa206670e58397002" title="Inverse transforms the coordinate x.">inverseTransform</a> ( x ); <a name="l00091"></a>00091 <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#acf7aa275bf7a223fa206670e58397002" title="Inverse transforms the coordinate x.">inverseTransform</a> ( y ); <a name="l00092"></a>00092 <a name="l00093"></a>00093 <span class="comment">// Always return true because the return value only</span> <a name="l00094"></a>00094 <span class="comment">// make sense with WCSLIB.</span> <a name="l00095"></a>00095 <span class="keywordflow">return</span> <span class="keyword">true</span>; <a name="l00096"></a>00096 } <a name="l00097"></a>00097 <a name="l00098"></a>00098 <span class="comment">/* virtual */</span> <a name="l00099"></a>00099 <span class="keywordtype">void</span> <a name="l00100"></a>00100 <a class="code" href="classhippodraw_1_1XYTransform.html#a793c064266f4c801c9ac41d6006c0616" title="Transform the coordinates on the X and Y axes.">XYTransform::</a> <a name="l00101"></a><a class="code" href="classhippodraw_1_1XYTransform.html#a0765f9526fbf7228f25ea0669d9ae75b">00101</a> <a class="code" href="classhippodraw_1_1XYTransform.html#a793c064266f4c801c9ac41d6006c0616" title="Transform the coordinates on the X and Y axes.">transform</a> ( std::vector< double > & x, <a name="l00102"></a>00102 std::vector< double > & y )<span class="keyword"> const</span> <a name="l00103"></a>00103 <span class="keyword"></span>{ <a name="l00104"></a>00104 <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#ab35684b7c3ddc8d8410e3b74cff8633b" title="Transforms the coordinate x.">transform</a> ( x ); <a name="l00105"></a>00105 <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#ab35684b7c3ddc8d8410e3b74cff8633b" title="Transforms the coordinate x.">transform</a> ( y ); <a name="l00106"></a>00106 } <a name="l00107"></a>00107 <a name="l00108"></a><a class="code" href="classhippodraw_1_1XYTransform.html#a299aa8f5d7a9f67aaf79055093c635c9">00108</a> <span class="keywordtype">double</span> <a class="code" href="classhippodraw_1_1XYTransform.html#a299aa8f5d7a9f67aaf79055093c635c9" title="Returns the aspect ratio.">XYTransform::aspectRatio</a> ()<span class="keyword"> const</span> <a name="l00109"></a>00109 <span class="keyword"></span>{ <a name="l00110"></a>00110 <span class="keywordflow">return</span> 0.0; <a name="l00111"></a>00111 } <a name="l00112"></a>00112 <a name="l00113"></a><a class="code" href="classhippodraw_1_1XYTransform.html#a0da1450badf30043c862df5729ba9b7b">00113</a> <a class="code" href="classhippodraw_1_1Rect.html" title="Class representing a rectangle.">Rect</a> <a class="code" href="classhippodraw_1_1XYTransform.html#a0da1450badf30043c862df5729ba9b7b" title="Returns a rectangle enclosing the transformed data space.">XYTransform::calcRectangle</a> ( <span class="keyword">const</span> <a class="code" href="classhippodraw_1_1Range.html" title="Expresses a range of values.">Range</a> & x, <a name="l00114"></a>00114 <span class="keyword">const</span> <a class="code" href="classhippodraw_1_1Range.html" title="Expresses a range of values.">Range</a> & y ) <a name="l00115"></a>00115 { <a name="l00116"></a>00116 <span class="keywordtype">double</span> x_lo = x.<a class="code" href="classhippodraw_1_1Range.html#a3865c37c86de4e4eafc43b6b40ef05b9" title="Returns the minimum of the range object.">low</a> (); <a name="l00117"></a>00117 <span class="keywordtype">double</span> x_hi = x.<a class="code" href="classhippodraw_1_1Range.html#a10f7231db7f0fe0855fc344e98575714" title="Returns the maximum of the range object.">high</a> (); <a name="l00118"></a>00118 <span class="keywordtype">double</span> y_lo = y.<a class="code" href="classhippodraw_1_1Range.html#a3865c37c86de4e4eafc43b6b40ef05b9" title="Returns the minimum of the range object.">low</a> (); <a name="l00119"></a>00119 <span class="keywordtype">double</span> y_hi = y.<a class="code" href="classhippodraw_1_1Range.html#a10f7231db7f0fe0855fc344e98575714" title="Returns the maximum of the range object.">high</a> (); <a name="l00120"></a>00120 <a name="l00121"></a>00121 <a class="code" href="classhippodraw_1_1XYTransform.html#a793c064266f4c801c9ac41d6006c0616" title="Transform the coordinates on the X and Y axes.">transform</a> ( x_lo, y_lo ); <a name="l00122"></a>00122 <a class="code" href="classhippodraw_1_1XYTransform.html#a793c064266f4c801c9ac41d6006c0616" title="Transform the coordinates on the X and Y axes.">transform</a> ( x_hi, y_hi ); <a name="l00123"></a>00123 <a name="l00124"></a>00124 <span class="keywordflow">return</span> <a class="code" href="classhippodraw_1_1Rect.html" title="Class representing a rectangle.">Rect</a> ( x_lo, y_lo, x_hi - x_lo, y_hi - y_lo ); <a name="l00125"></a>00125 } <a name="l00126"></a>00126 <a name="l00127"></a>00127 <span class="comment">/* virtual */</span> <a name="l00128"></a><a class="code" href="classhippodraw_1_1XYTransform.html#a851f143817f463f0bfb3d13952d1f955">00128</a> <span class="keywordtype">void</span> <a class="code" href="classhippodraw_1_1XYTransform.html#a851f143817f463f0bfb3d13952d1f955" title="Validates the Ranges.">XYTransform::validate</a> ( <a class="code" href="classhippodraw_1_1Range.html" title="Expresses a range of values.">Range</a> & x, <a class="code" href="classhippodraw_1_1Range.html" title="Expresses a range of values.">Range</a> & y )<span class="keyword"> const</span> <a name="l00129"></a>00129 <span class="keyword"></span>{ <a name="l00130"></a>00130 <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#ab362d0229c423c904412d08303d30ff6" title="Validates the Range.">validate</a> ( x ); <a name="l00131"></a>00131 <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#ab362d0229c423c904412d08303d30ff6" title="Validates the Range.">validate</a> ( y ); <a name="l00132"></a>00132 } <a name="l00133"></a>00133 <a name="l00134"></a>00134 <span class="comment">/* virtual */</span> <a name="l00135"></a><a class="code" href="classhippodraw_1_1XYTransform.html#a946a9faad8079120e02e91cb6e997d4d">00135</a> <span class="keyword">const</span> <a class="code" href="classhippodraw_1_1Range.html" title="Expresses a range of values.">Range</a> & <a class="code" href="classhippodraw_1_1XYTransform.html#a946a9faad8079120e02e91cb6e997d4d" title="Returns a Range whose values are the limits on the X coordinate.">XYTransform::limitX</a> ()<span class="keyword"> const</span> <a name="l00136"></a>00136 <span class="keyword"></span>{ <a name="l00137"></a>00137 <span class="keywordflow">return</span> <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#a13cb9ad6f1bda804d728eac5fff636e7" title="Returns a Range whose values are the limits on the coordinate.">limits</a> (); <a name="l00138"></a>00138 } <a name="l00139"></a>00139 <a name="l00140"></a><a class="code" href="classhippodraw_1_1XYTransform.html#acbafa397b9e8ffa2805041c66e2d725c">00140</a> <span class="keyword">const</span> <a class="code" href="classhippodraw_1_1Range.html" title="Expresses a range of values.">Range</a> & <a class="code" href="classhippodraw_1_1XYTransform.html#acbafa397b9e8ffa2805041c66e2d725c" title="Returns a Range whose values are the limits on the Y coordinate.">XYTransform::limitY</a> ()<span class="keyword"> const</span> <a name="l00141"></a>00141 <span class="keyword"></span>{ <a name="l00142"></a>00142 <span class="keywordflow">return</span> <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a>-><a class="code" href="classhippodraw_1_1UnaryTransform.html#a13cb9ad6f1bda804d728eac5fff636e7" title="Returns a Range whose values are the limits on the coordinate.">limits</a> (); <a name="l00143"></a>00143 } <a name="l00144"></a>00144 <a name="l00145"></a><a class="code" href="classhippodraw_1_1XYTransform.html#acdcbf68e0c8fbc6c0ca8372967e0b796">00145</a> <a class="code" href="classhippodraw_1_1TransformBase.html" title="A transform that transforms coordinates from one coordinate system to another.">TransformBase</a> * <a class="code" href="classhippodraw_1_1XYTransform.html#acdcbf68e0c8fbc6c0ca8372967e0b796" title="Returns the transform function on the X axis.">XYTransform::xTransform</a> ()<span class="keyword"> const</span> <a name="l00146"></a>00146 <span class="keyword"></span>{ <a name="l00147"></a>00147 <span class="keywordflow">return</span> <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a>; <a name="l00148"></a>00148 } <a name="l00149"></a>00149 <a name="l00150"></a><a class="code" href="classhippodraw_1_1XYTransform.html#a5daaa2214ba1793a175878f22a262ea3">00150</a> <a class="code" href="classhippodraw_1_1TransformBase.html" title="A transform that transforms coordinates from one coordinate system to another.">TransformBase</a> * <a class="code" href="classhippodraw_1_1XYTransform.html#a5daaa2214ba1793a175878f22a262ea3" title="Returns the transform function on the Y axis.">XYTransform::yTransform</a> ()<span class="keyword"> const</span> <a name="l00151"></a>00151 <span class="keyword"></span>{ <a name="l00152"></a>00152 <span class="keywordflow">return</span> <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a>; <a name="l00153"></a>00153 } <a name="l00154"></a>00154 <a name="l00155"></a>00155 <span class="keyword">const</span> vector < AxisTick > & <a name="l00156"></a>00156 <a class="code" href="classhippodraw_1_1XYTransform.html#aa77d61aa1845f1b2ceeb65b869117a67" title="Sets and return the axis ticks on specified axis.">XYTransform::</a> <a name="l00157"></a><a class="code" href="classhippodraw_1_1XYTransform.html#aa77d61aa1845f1b2ceeb65b869117a67">00157</a> <a class="code" href="classhippodraw_1_1XYTransform.html#aa77d61aa1845f1b2ceeb65b869117a67" title="Sets and return the axis ticks on specified axis.">setTicks</a> ( <a class="code" href="classhippodraw_1_1AxisModelBase.html" title="The AxisModelBase class maintains the Range and scaling of an axis.">AxisModelBase</a> & model, <a class="code" href="namespacehippodraw_1_1Axes.html#a1d1cfd8ffb84e947f82999c682b666a7" title="Axes constants.">hippodraw::Axes::Type</a> axis ) <a name="l00158"></a>00158 { <a name="l00159"></a>00159 <span class="keywordflow">if</span> ( axis == <a class="code" href="namespacehippodraw_1_1Axes.html#a1d1cfd8ffb84e947f82999c682b666a7a58833a3110c570fb05130d40c365d1e4" title="X axis.">Axes::X</a> ) { <a name="l00160"></a>00160 <span class="keywordflow">return</span> <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a> -> <a class="code" href="classhippodraw_1_1XYTransform.html#aa77d61aa1845f1b2ceeb65b869117a67" title="Sets and return the axis ticks on specified axis.">setTicks</a> ( model ); <a name="l00161"></a>00161 } <a name="l00162"></a>00162 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( axis == <a class="code" href="namespacehippodraw_1_1Axes.html#a1d1cfd8ffb84e947f82999c682b666a7a5596231eabd6cf29050967d5ac83ad84" title="Y axis.">Axes::Y</a> ) { <a name="l00163"></a>00163 <span class="keywordflow">return</span> <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a> -> <a class="code" href="classhippodraw_1_1XYTransform.html#aa77d61aa1845f1b2ceeb65b869117a67" title="Sets and return the axis ticks on specified axis.">setTicks</a> ( model ); <a name="l00164"></a>00164 } <a name="l00165"></a>00165 <span class="keywordflow">else</span> { <a name="l00166"></a>00166 <span class="keywordflow">return</span> <a class="code" href="classhippodraw_1_1BinaryTransform.html#a08e3b80cfc9b2bd537dd0998da5087c4" title="The transform on the Z axis.">m_z</a> -><a class="code" href="classhippodraw_1_1UnaryTransform.html#a5b2b7ddc9c21b19b9b8f98375fbc7459" title="Sets the vector of ticks along the axis to which this unary transform is applied...">setTicks</a> ( model ); <a name="l00167"></a>00167 } <a name="l00168"></a>00168 } <a name="l00169"></a>00169 <a name="l00170"></a>00170 <span class="keywordtype">void</span> <a name="l00171"></a>00171 <a class="code" href="classhippodraw_1_1XYTransform.html#a708d3cf2546b86b8f38fa17fd396e7c1" title="Sets the range of given axis to be a new &quot;nice&quot; within the limits given...">XYTransform::</a> <a name="l00172"></a><a class="code" href="classhippodraw_1_1XYTransform.html#a708d3cf2546b86b8f38fa17fd396e7c1">00172</a> <a class="code" href="classhippodraw_1_1XYTransform.html#a708d3cf2546b86b8f38fa17fd396e7c1" title="Sets the range of given axis to be a new &quot;nice&quot; within the limits given...">adjustValues</a> ( <a class="code" href="classhippodraw_1_1AxisModelBase.html" title="The AxisModelBase class maintains the Range and scaling of an axis.">AxisModelBase</a> & model, <a name="l00173"></a>00173 <a class="code" href="namespacehippodraw_1_1Axes.html#a1d1cfd8ffb84e947f82999c682b666a7" title="Axes constants.">hippodraw::Axes::Type</a> axes, <a name="l00174"></a>00174 <span class="keyword">const</span> <a class="code" href="classhippodraw_1_1Range.html" title="Expresses a range of values.">Range</a> & limit ) <a name="l00175"></a>00175 { <a name="l00176"></a>00176 <span class="keywordflow">if</span> ( axes == <a class="code" href="namespacehippodraw_1_1Axes.html#a1d1cfd8ffb84e947f82999c682b666a7a58833a3110c570fb05130d40c365d1e4" title="X axis.">Axes::X</a> ) <a name="l00177"></a>00177 <a class="code" href="classhippodraw_1_1XYTransform.html#aba34ccd9a889b5366ae2cb589c650985" title="The transform on the X axis.">m_x</a> -> <a class="code" href="classhippodraw_1_1XYTransform.html#a708d3cf2546b86b8f38fa17fd396e7c1" title="Sets the range of given axis to be a new &quot;nice&quot; within the limits given...">adjustValues</a> ( model, limit ); <a name="l00178"></a>00178 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( axes == <a class="code" href="namespacehippodraw_1_1Axes.html#a1d1cfd8ffb84e947f82999c682b666a7a5596231eabd6cf29050967d5ac83ad84" title="Y axis.">Axes::Y</a> ) <a name="l00179"></a>00179 <a class="code" href="classhippodraw_1_1XYTransform.html#add3bd3d25152ddfda77022275cbd4c27" title="The transform on the Y axis.">m_y</a> -> <a class="code" href="classhippodraw_1_1XYTransform.html#a708d3cf2546b86b8f38fa17fd396e7c1" title="Sets the range of given axis to be a new &quot;nice&quot; within the limits given...">adjustValues</a> ( model, limit ); <a name="l00180"></a>00180 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( axes == <a class="code" href="namespacehippodraw_1_1Axes.html#a1d1cfd8ffb84e947f82999c682b666a7aa70478ce277ffc322f8e1e3418e07355" title="Z axis.">Axes::Z</a> ) <a name="l00181"></a>00181 <a class="code" href="classhippodraw_1_1BinaryTransform.html#a08e3b80cfc9b2bd537dd0998da5087c4" title="The transform on the Z axis.">m_z</a> -> <a class="code" href="classhippodraw_1_1XYTransform.html#a708d3cf2546b86b8f38fa17fd396e7c1" title="Sets the range of given axis to be a new &quot;nice&quot; within the limits given...">adjustValues</a> ( model, limit ); <a name="l00182"></a>00182 } </pre></div></div> <hr size="1"><address style="align: right;"><small> Generated for HippoDraw Class Library by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border=0> </a> </small></address> </body> </html>