<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <link rel="stylesheet" href="style.css" type="text/css"> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <link rel="Start" href="index.html"> <link rel="previous" href="Gg.V.html"> <link rel="next" href="Gg.M.html"> <link rel="Up" href="Gg.html"> <link title="Index of types" rel=Appendix href="index_types.html"> <link title="Index of values" rel=Appendix href="index_values.html"> <link title="Index of modules" rel=Appendix href="index_modules.html"> <link title="Index of module types" rel=Appendix href="index_module_types.html"> <link title="Gg" rel="Chapter" href="Gg.html"><link title="Constructors, accessors and constants" rel="Section" href="#cons"> <link title="Functions" rel="Section" href="#functions"> <title>Gg.P</title> </head> <body> <div class="navbar"><a class="pre" href="Gg.V.html" title="Gg.V">Previous</a> <a class="up" href="Gg.html" title="Gg">Up</a> <a class="post" href="Gg.M.html" title="Gg.M">Next</a> </div> <h1>Module type <a href="type_Gg.P.html">Gg.P</a></h1> <pre><span class="keyword">module type</span> P = <code class="code"><span class="keyword">sig</span></code> <a href="Gg.P.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> Implemented by all point types.<br> </div> <hr width="100%"> <pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> <div class="info"> The type for points.<br> </div> <pre><span id="VALdim"><span class="keyword">val</span> dim</span> : <code class="type">int</code></pre><div class="info"> <code class="code">dim</code> is the dimension of points of type <a href="Gg.P.html#TYPEt"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">P</span>.t</code></a>.<br> </div> <pre><span id="TYPEmh"><span class="keyword">type</span> <code class="type"></code>mh</span> </pre> <div class="info"> The type for matrices representing linear transformations of <a href="http://mathworld.wolfram.com/HomogeneousCoordinates.html"> <em>homogenous</em></a> <a href="Gg.P.html#VALdim"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">P</span>.dim</code></a> space.<br> </div> <br> <h1 id="cons">Constructors, accessors and constants</h1><br> <pre><span id="VALo"><span class="keyword">val</span> o</span> : <code class="type"><a href="Gg.P.html#TYPEt">t</a></code></pre><div class="info"> <code class="code">o</code> is the point whose coordinates are all zero.<br> </div> <br> <h1 id="functions">Functions</h1><br> <pre><span id="VALmid"><span class="keyword">val</span> mid</span> : <code class="type"><a href="Gg.P.html#TYPEt">t</a> -> <a href="Gg.P.html#TYPEt">t</a> -> <a href="Gg.P.html#TYPEt">t</a></code></pre><div class="info"> <code class="code">mid p q</code> is the mid point <code class="code">(p + q)/2</code>.<br> </div> <pre><span id="VALtr"><span class="keyword">val</span> tr</span> : <code class="type"><a href="Gg.P.html#TYPEmh">mh</a> -> <a href="Gg.P.html#TYPEt">t</a> -> <a href="Gg.P.html#TYPEt">t</a></code></pre><div class="info"> <code class="code">tr m p</code> is the <a href="http://mathworld.wolfram.com/AffineTransformation.html">affine transform</a> in <a href="http://mathworld.wolfram.com/HomogeneousCoordinates.html"> homogenous</a> <a href="Gg.P.html#VALdim"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">P</span>.dim</code></a> space of the <em>point</em> <code class="code">p</code> by <code class="code">m</code>. <p> <b>Note.</b> Since <code class="code">m</code> is supposed to be affine the function ignores the last row of <code class="code">m</code>. <code class="code">p</code> is treated as a finite point (its last coordinate in homogenous space is 1).<br> </div> </body></html>