This file is indexed.

/usr/share/doc/mlpost/html/Mlpost.Point.html is in libmlpost-ocaml-doc 0.8.1-6.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
<!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=iso-8859-1" http-equiv="Content-Type">
<link rel="Start" href="index.html">
<link rel="previous" href="Mlpost.Color.html">
<link rel="next" href="Mlpost.MetaPath.html">
<link rel="Up" href="Mlpost.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 class attributes" rel=Appendix href="index_attributes.html">
<link title="Index of class methods" rel=Appendix href="index_methods.html">
<link title="Index of classes" rel=Appendix href="index_classes.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="Mlpost" rel="Chapter" href="Mlpost.html">
<link title="Mlpost_dot" rel="Chapter" href="Mlpost_dot.html">
<link title="Mlpost_lablgtk" rel="Chapter" href="Mlpost_lablgtk.html"><link title="Operations on points" rel="Section" href="#2_Operationsonpoints">
<link title="Convenient constructors" rel="Section" href="#2_Convenientconstructors">
<title>Mlpost.Point</title>
</head>
<body>
<div class="navbar"><a class="pre" href="Mlpost.Color.html" title="Mlpost.Color">Previous</a>
&nbsp;<a class="up" href="Mlpost.html" title="Mlpost">Up</a>
&nbsp;<a class="post" href="Mlpost.MetaPath.html" title="Mlpost.MetaPath">Next</a>
</div>
<h1>Module <a href="type_Mlpost.Point.html">Mlpost.Point</a></h1>

<pre><span class="keyword">module</span> Point: <code class="code">sig</code> <a href="Mlpost.Point.html">..</a> <code class="code">end</code></pre><div class="info module top">
Points in the plane<br>
</div>
<hr width="100%">

<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> = <code class="type"><a href="Mlpost.Signature.html#TYPEpoint">Signature.point</a></code> </pre>
<div class="info ">
The abstract type for points<br>
</div>


<pre><span id="VALpt"><span class="keyword">val</span> pt</span> : <code class="type"><a href="Mlpost.Num.html#TYPEt">Num.t</a> * <a href="Mlpost.Num.html#TYPEt">Num.t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
Construct a point from two numeric values<br>
</div>
<br>
The following functions create points of length 1.
      They are especially useful to specify directions with <code class="code">Path.Vec</code><br>

<pre><span id="VALdir"><span class="keyword">val</span> dir</span> : <code class="type">float -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
<code class="code">dir f</code> is the point at angle <code class="code">f</code> on the unit circle.
      <code class="code">f</code> shall be given in degrees<br>
</div>
<br>
The unitary vectors pointing up, down, left and right<br>

<pre><span id="VALup"><span class="keyword">val</span> up</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a></code></pre>
<pre><span id="VALdown"><span class="keyword">val</span> down</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a></code></pre>
<pre><span id="VALleft"><span class="keyword">val</span> left</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a></code></pre>
<pre><span id="VALright"><span class="keyword">val</span> right</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a></code></pre>
<pre><span id="VALorigin"><span class="keyword">val</span> origin</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a></code></pre>
<pre><span id="VALlength"><span class="keyword">val</span> length</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Num.html#TYPEt">Num.t</a></code></pre><div class="info ">
<code class="code">length p</code> is the length of vector from the origin to <code class="code">p</code><br>
</div>

<pre><span id="VALxpart"><span class="keyword">val</span> xpart</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Num.html#TYPEt">Num.t</a></code></pre><div class="info ">
<code class="code">xpart p</code> is the x coordinate of point <code class="code">p</code><br>
</div>

<pre><span id="VALypart"><span class="keyword">val</span> ypart</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Num.html#TYPEt">Num.t</a></code></pre><div class="info ">
<code class="code">ypart p</code> is the y coordinate of point <code class="code">p</code><br>
</div>
<br>
<h2 id="2_Operationsonpoints">Operations on points</h2><br>

<pre><span id="VALtransform"><span class="keyword">val</span> transform</span> : <code class="type"><a href="Mlpost.Transform.html#TYPEt">Transform.t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
Apply a transformation to a point<br>
</div>

<pre><span id="VALsegment"><span class="keyword">val</span> segment</span> : <code class="type">float -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
<code class="code">segment f p1 p2</code> is the point <code class="code">(1-f)p1 + fp2</code>. Stated otherwise, if
     <code class="code">p1</code> is at <code class="code">0.</code> and <code class="code">p2</code> is at <code class="code">1.</code>, return the point that lies at <code class="code">f</code><br>
</div>

<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre>
<pre><span id="VALshift"><span class="keyword">val</span> shift</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
Sum two points<br>
</div>

<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
Substract two points<br>
</div>

<pre><span id="VALmult"><span class="keyword">val</span> mult</span> : <code class="type"><a href="Mlpost.Num.html#TYPEt">Num.t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre>
<pre><span id="VALscale"><span class="keyword">val</span> scale</span> : <code class="type"><a href="Mlpost.Num.html#TYPEt">Num.t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
Multiply a point by a scalar<br>
</div>

<pre><span id="VALrotate"><span class="keyword">val</span> rotate</span> : <code class="type">float -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
Rotate a point by an angle in degrees<br>
</div>

<pre><span id="VALrotate_around"><span class="keyword">val</span> rotate_around</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a> -> float -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
<code class="code">rotate_around p1 f p2</code> rotates <code class="code">p2</code> around <code class="code">p1</code> by an angle <code class="code">f</code>
      in degrees<br>
</div>

<pre><span id="VALxscale"><span class="keyword">val</span> xscale</span> : <code class="type"><a href="Mlpost.Num.html#TYPEt">Num.t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
Scales the X coordinate of a point by a scalar<br>
</div>

<pre><span id="VALyscale"><span class="keyword">val</span> yscale</span> : <code class="type"><a href="Mlpost.Num.html#TYPEt">Num.t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
Scales the Y coordinate of a point by a scalar<br>
</div>

<pre><span id="VALnormalize"><span class="keyword">val</span> normalize</span> : <code class="type"><a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
Normalize the vector represented by the point.
      The origin becomes the origin<br>
</div>
<br>
<h2 id="2_Convenientconstructors">Convenient constructors</h2><br>
<br>
The following functions build a point at a
      given scale (see <a href="Mlpost.Num.html#TYPEt"><code class="code">Num.t</code></a> for scales)<br>

<pre><span id="VALbpp"><span class="keyword">val</span> bpp</span> : <code class="type">float * float -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre>
<pre><span id="VALinp"><span class="keyword">val</span> inp</span> : <code class="type">float * float -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre>
<pre><span id="VALcmp"><span class="keyword">val</span> cmp</span> : <code class="type">float * float -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre>
<pre><span id="VALmmp"><span class="keyword">val</span> mmp</span> : <code class="type">float * float -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre>
<pre><span id="VALptp"><span class="keyword">val</span> ptp</span> : <code class="type">float * float -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><br>
Same as the previous functions but build list of points<br>

<pre><span id="VALmap_bp"><span class="keyword">val</span> map_bp</span> : <code class="type">(float * float) list -> <a href="Mlpost.Point.html#TYPEt">t</a> list</code></pre>
<pre><span id="VALmap_in"><span class="keyword">val</span> map_in</span> : <code class="type">(float * float) list -> <a href="Mlpost.Point.html#TYPEt">t</a> list</code></pre>
<pre><span id="VALmap_cm"><span class="keyword">val</span> map_cm</span> : <code class="type">(float * float) list -> <a href="Mlpost.Point.html#TYPEt">t</a> list</code></pre>
<pre><span id="VALmap_mm"><span class="keyword">val</span> map_mm</span> : <code class="type">(float * float) list -> <a href="Mlpost.Point.html#TYPEt">t</a> list</code></pre>
<pre><span id="VALmap_pt"><span class="keyword">val</span> map_pt</span> : <code class="type">(float * float) list -> <a href="Mlpost.Point.html#TYPEt">t</a> list</code></pre>
<pre><span id="VALp"><span class="keyword">val</span> p</span> : <code class="type">?scale:(float -> <a href="Mlpost.Num.html#TYPEt">Num.t</a>) -> float * float -> <a href="Mlpost.Point.html#TYPEt">t</a></code></pre><div class="info ">
Builds a point from a pair of floats<br>
</div>
<div class="param_info"><code class="code">scale</code> : a scaling function to be applied to each float;
      see <a href="Mlpost.Num.html#TYPEt"><code class="code">Num.t</code></a> for scaling functions for usual units</div>

<pre><span id="VALptlist"><span class="keyword">val</span> ptlist</span> : <code class="type">?scale:(float -> <a href="Mlpost.Num.html#TYPEt">Num.t</a>) -> (float * float) list -> <a href="Mlpost.Point.html#TYPEt">t</a> list</code></pre><div class="info ">
Same as <code class="code">p</code>, but builds a list of points<br>
</div>

<pre><span id="VALdraw"><span class="keyword">val</span> draw</span> : <code class="type">?brush:<a href="Mlpost.Brush.html#TYPEt">Brush.t</a> -><br>       ?color:<a href="Mlpost.Color.html#TYPEt">Color.t</a> -><br>       ?pen:Pen.t -> <a href="Mlpost.Point.html#TYPEt">t</a> -> <a href="Mlpost.Command.html#TYPEt">Command.t</a></code></pre><div class="info ">
Draw a point<br>
</div>
<div class="param_info"><code class="code">color</code> : the color of the point; default is black</div>
<div class="param_info"><code class="code">pen</code> : the pen used to draw the pen; default is
               <code class="code">Brush.Pen.default</code></div>
</body></html>