/usr/share/doc/libgnatcoll-doc/html/geometry.html is in libgnatcoll-doc 1.7gpl2015-2.
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 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>15. Geometry: primitive geometric operations — GNATColl 1.7gpl2015 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
VERSION: '1.7gpl2015',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="shortcut icon" href="_static/favicon.ico"/>
<link rel="top" title="GNATColl 1.7gpl2015 documentation" href="index.html" />
<link rel="next" title="16. Projects: manipulating gpr files" href="projects.html" />
<link rel="prev" title="14. Tribooleans: Three state logic" href="tribooleans.html" />
</head>
<body role="document">
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="projects.html" title="16. Projects: manipulating gpr files"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="tribooleans.html" title="14. Tribooleans: Three state logic"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">GNATColl 1.7gpl2015 documentation</a> »</li>
</ul>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<p class="logo"><a href="index.html">
<img class="logo" src="_static/adacore_transparent.png" alt="Logo"/>
</a></p>
<h4>Previous topic</h4>
<p class="topless"><a href="tribooleans.html"
title="previous chapter">14. <strong>Tribooleans</strong>: Three state logic</a></p>
<h4>Next topic</h4>
<p class="topless"><a href="projects.html"
title="next chapter">16. <strong>Projects</strong>: manipulating gpr files</a></p>
<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
<div><input type="text" name="q" /></div>
<div><input type="submit" value="Go" /></div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="section" id="geometry-primitive-geometric-operations">
<h1>15. <strong>Geometry</strong>: primitive geometric operations<a class="headerlink" href="#geometry-primitive-geometric-operations" title="Permalink to this headline">ΒΆ</a></h1>
<p>GNATColl provides the package <cite>GNATCOLL.Geometry</cite>. This
package includes a number of primitive operations on geometric figures
like points, segments, lines, circles, rectangles and polygons.
In particular, you can compute their intersections, the distances,...</p>
<p>This package is generic, so that you can specify the type of coordinates
you wish to handle:</p>
<div class="highlight-ada"><div class="highlight"><pre><span></span><span class="kr">declare</span>
<span class="kd">package</span> <span class="nc">Float_Geometry</span> <span class="kr">is new</span> <span class="nc">GNATCOLL.Geometry</span> <span class="p">(</span>Float<span class="p">);</span>
<span class="kn">use</span> <span class="nn">Float_Geometry</span><span class="p">;</span>
<span class="no">P1</span> <span class="p">:</span> <span class="kr">constant</span> <span class="n">Point</span> <span class="p">:=</span> <span class="p">(</span><span class="mf">1.0</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">);</span>
<span class="no">P2</span> <span class="p">:</span> <span class="kr">constant</span> <span class="n">Point</span> <span class="p">:=</span> <span class="p">(</span><span class="mf">2.0</span><span class="p">,</span> <span class="mf">3.0</span><span class="p">);</span>
<span class="kr">begin</span>
<span class="n">Put_Line</span> <span class="p">(</span><span class="s">"Distance P1-P2 is"</span> <span class="o">&</span> <span class="n">Distance</span> <span class="p">(</span><span class="n">P1</span><span class="p">,</span> <span class="n">P2</span><span class="p">)'</span><span class="na">Img</span><span class="p">);</span>
<span class="c1">-- Will print 2.23607</span>
<span class="kr">end</span><span class="p">;</span>
</pre></div>
</div>
<p>Or some operations involving a polygon:</p>
<div class="highlight-ada"><div class="highlight"><pre><span></span><span class="kr">declare</span>
<span class="no">P3</span> <span class="p">:</span> <span class="kr">constant</span> <span class="n">Point</span> <span class="p">:=</span> <span class="p">(</span><span class="mf">3.7</span><span class="p">,</span> <span class="mf">2.0</span><span class="p">);</span>
<span class="no">P</span> <span class="p">:</span> <span class="kr">constant</span> <span class="n">Polygon</span> <span class="p">:=</span>
<span class="p">((</span><span class="mf">2.0</span><span class="p">,</span> <span class="mf">1.3</span><span class="p">),</span> <span class="p">(</span><span class="mf">4.1</span><span class="p">,</span> <span class="mf">3.0</span><span class="p">),</span> <span class="p">(</span><span class="mf">5.3</span><span class="p">,</span> <span class="mf">2.6</span><span class="p">),</span> <span class="p">(</span><span class="mf">2.9</span><span class="p">,</span> <span class="mf">0.7</span><span class="p">),</span> <span class="p">(</span><span class="mf">2.0</span><span class="p">,</span> <span class="mf">1.3</span><span class="p">));</span>
<span class="kr">begin</span>
<span class="n">Put_Line</span> <span class="p">(</span><span class="s">"Area of polygon:"</span> <span class="o">&</span> <span class="n">Area</span> <span class="p">(</span><span class="n">P</span><span class="p">));</span> <span class="c1">-- 3.015</span>
<span class="n">Put_Line</span> <span class="p">(</span><span class="s">"P3 inside polygon ? "</span> <span class="o">&</span> <span class="n">Inside</span> <span class="p">(</span><span class="n">P3</span><span class="p">,</span> <span class="n">P</span><span class="p">)'</span><span class="na">Img</span><span class="p">);</span> <span class="c1">-- True</span>
<span class="kr">end</span><span class="p">;</span>
</pre></div>
</div>
</div>
</div>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
>index</a></li>
<li class="right" >
<a href="projects.html" title="16. Projects: manipulating gpr files"
>next</a> |</li>
<li class="right" >
<a href="tribooleans.html" title="14. Tribooleans: Three state logic"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">GNATColl 1.7gpl2015 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
© Copyright 2007-2016, AdaCore.
</div>
</body>
</html>
|