blob: bb7c7737b14a1f4d8b7c8a77863a3b41d4efe4f6 [file] [log] [blame]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>get</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Geometry">
<link rel="up" href="../get.html" title="get">
<link rel="prev" href="../get.html" title="get">
<link rel="next" href="get_1_with_index.html" title="get (with index)">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../get.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../get.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="get_1_with_index.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="geometry.reference.access.get.get_1"></a><a class="link" href="get_1.html" title="get">get</a>
</h5></div></div></div>
<p>
<a class="indexterm" name="idp101308720"></a>
Get coordinate value of a geometry (usually a point)
</p>
<h6>
<a name="geometry.reference.access.get.get_1.h0"></a>
<span class="phrase"><a name="geometry.reference.access.get.get_1.description"></a></span><a class="link" href="get_1.html#geometry.reference.access.get.get_1.description">Description</a>
</h6>
<p>
The free functions <span class="bold"><strong>get</strong></span> and <span class="bold"><strong>set</strong></span> are two of the most important functions of
Boost.Geometry, both within the library, as also for the library user.
With these two functions you normally get and set coordinate values from
and for a point, box, segment or sphere.
</p>
<h6>
<a name="geometry.reference.access.get.get_1.h1"></a>
<span class="phrase"><a name="geometry.reference.access.get.get_1.synopsis"></a></span><a class="link" href="get_1.html#geometry.reference.access.get.get_1.synopsis">Synopsis</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Dimension</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Geometry</span><span class="special">&gt;</span>
<span class="identifier">coordinate_type</span><span class="special">&lt;</span><span class="identifier">Geometry</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">get</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">geometry</span><span class="special">)</span></pre>
<p>
</p>
<h6>
<a name="geometry.reference.access.get.get_1.h2"></a>
<span class="phrase"><a name="geometry.reference.access.get.get_1.parameters"></a></span><a class="link" href="get_1.html#geometry.reference.access.get.get_1.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Type
</p>
</th>
<th>
<p>
Concept
</p>
</th>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
Dimension
</p>
</td>
<td>
<p>
Dimension, this template parameter is required. Should contain
[0 .. n-1] for an n-dimensional geometry
</p>
</td>
<td>
<p>
-
</p>
</td>
<td>
<p>
Must be specified
</p>
</td>
</tr>
<tr>
<td>
<p>
Geometry const &amp;
</p>
</td>
<td>
<p>
Any type fulfilling a Geometry Concept (usually a Point Concept)
</p>
</td>
<td>
<p>
geometry
</p>
</td>
<td>
<p>
A model of the specified concept (usually a point)
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="geometry.reference.access.get.get_1.h3"></a>
<span class="phrase"><a name="geometry.reference.access.get.get_1.returns"></a></span><a class="link" href="get_1.html#geometry.reference.access.get.get_1.returns">Returns</a>
</h6>
<p>
The coordinate value of specified dimension of specified geometry
</p>
<h6>
<a name="geometry.reference.access.get.get_1.h4"></a>
<span class="phrase"><a name="geometry.reference.access.get.get_1.header"></a></span><a class="link" href="get_1.html#geometry.reference.access.get.get_1.header">Header</a>
</h6>
<p>
Either
</p>
<p>
<code class="computeroutput"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<p>
Or
</p>
<p>
<code class="computeroutput"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">core</span><span class="special">/</span><span class="identifier">access</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<h6>
<a name="geometry.reference.access.get.get_1.h5"></a>
<span class="phrase"><a name="geometry.reference.access.get.get_1.behavior"></a></span><a class="link" href="get_1.html#geometry.reference.access.get.get_1.behavior">Behavior</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Case
</p>
</th>
<th>
<p>
Behavior
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
Point
</p>
</td>
<td>
<p>
Returns the coordinate of a point
</p>
</td>
</tr>
<tr>
<td>
<p>
Circle or Sphere
</p>
</td>
<td>
<p>
Returns the coordinate of the center of a circle or sphere
(currently in an extension)
</p>
</td>
</tr>
<tr>
<td>
<p>
Spherical
</p>
</td>
<td>
<p>
Returns the coordinate of a point, in either Radian's or Degree's,
depending on specified units
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="geometry.reference.access.get.get_1.h6"></a>
<span class="phrase"><a name="geometry.reference.access.get.get_1.complexity"></a></span><a class="link" href="get_1.html#geometry.reference.access.get.get_1.complexity">Complexity</a>
</h6>
<p>
Constant
</p>
<h6>
<a name="geometry.reference.access.get.get_1.h7"></a>
<span class="phrase"><a name="geometry.reference.access.get.get_1.example"></a></span><a class="link" href="get_1.html#geometry.reference.access.get.get_1.example">Example</a>
</h6>
<p>
Get the coordinate of a point
</p>
<p>
</p>
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">geometries</span><span class="special">/</span><span class="identifier">point_xy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="keyword">namespace</span> <span class="identifier">bg</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">;</span>
<span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span>
<span class="special">{</span>
<span class="identifier">bg</span><span class="special">::</span><span class="identifier">model</span><span class="special">::</span><span class="identifier">d2</span><span class="special">::</span><span class="identifier">point_xy</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">point</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">);</span>
<span class="keyword">double</span> <span class="identifier">x</span> <span class="special">=</span> <span class="identifier">bg</span><span class="special">::</span><span class="identifier">get</span><span class="special">&lt;</span><span class="number">0</span><span class="special">&gt;(</span><span class="identifier">point</span><span class="special">);</span>
<span class="keyword">double</span> <span class="identifier">y</span> <span class="special">=</span> <span class="identifier">bg</span><span class="special">::</span><span class="identifier">get</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">point</span><span class="special">);</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="string">"x="</span> <span class="special">&lt;&lt;</span> <span class="identifier">x</span> <span class="special">&lt;&lt;</span> <span class="string">" y="</span> <span class="special">&lt;&lt;</span> <span class="identifier">y</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
<span class="keyword">return</span> <span class="number">0</span><span class="special">;</span>
<span class="special">}</span>
</pre>
<p>
</p>
<p>
Output:
</p>
<pre class="programlisting">x=1 y=2
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2009-2015 Barend Gehrels, Bruno Lalande,
Mateusz Loskot, Adam Wulkiewicz, Oracle and/or its affiliates<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../get.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../get.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="get_1_with_index.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>