• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<html>
2<head>
3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
4<title>get (with index)</title>
5<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7<link rel="home" href="../../../../index.html" title="Chapter 1. Geometry">
8<link rel="up" href="../get.html" title="get">
9<link rel="prev" href="get_1.html" title="get">
10<link rel="next" href="get_as_radian_1.html" title="get_as_radian">
11</head>
12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
13<table cellpadding="2" width="100%"><tr>
14<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
15<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
16<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
17<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
18<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
19<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
20</tr></table>
21<hr>
22<div class="spirit-nav">
23<a accesskey="p" href="get_1.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_as_radian_1.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
24</div>
25<div class="section">
26<div class="titlepage"><div><div><h5 class="title">
27<a name="geometry.reference.access.get.get_1_with_index"></a><a class="link" href="get_1_with_index.html" title="get (with index)">get
28          (with index)</a>
29</h5></div></div></div>
30<p>
31            <a class="indexterm" name="idm45635712834784"></a>
32get coordinate value of a Box or Segment
33          </p>
34<h6>
35<a name="geometry.reference.access.get.get_1_with_index.h0"></a>
36            <span class="phrase"><a name="geometry.reference.access.get.get_1_with_index.description"></a></span><a class="link" href="get_1_with_index.html#geometry.reference.access.get.get_1_with_index.description">Description</a>
37          </h6>
38<p>
39            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
40            Boost.Geometry, both within the library, as also for the library user.
41            With these two functions you normally get and set coordinate values from
42            and for a point, box, segment or sphere.
43          </p>
44<h6>
45<a name="geometry.reference.access.get.get_1_with_index.h1"></a>
46            <span class="phrase"><a name="geometry.reference.access.get.get_1_with_index.synopsis"></a></span><a class="link" href="get_1_with_index.html#geometry.reference.access.get.get_1_with_index.synopsis">Synopsis</a>
47          </h6>
48<p>
49</p>
50<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">Index</span><span class="special">,</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>
51<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>
52<p>
53          </p>
54<h6>
55<a name="geometry.reference.access.get.get_1_with_index.h2"></a>
56            <span class="phrase"><a name="geometry.reference.access.get.get_1_with_index.parameters"></a></span><a class="link" href="get_1_with_index.html#geometry.reference.access.get.get_1_with_index.parameters">Parameters</a>
57          </h6>
58<div class="informaltable"><table class="table">
59<colgroup>
60<col>
61<col>
62<col>
63<col>
64</colgroup>
65<thead><tr>
66<th>
67                    <p>
68                      Type
69                    </p>
70                  </th>
71<th>
72                    <p>
73                      Concept
74                    </p>
75                  </th>
76<th>
77                    <p>
78                      Name
79                    </p>
80                  </th>
81<th>
82                    <p>
83                      Description
84                    </p>
85                  </th>
86</tr></thead>
87<tbody>
88<tr>
89<td>
90                    <p>
91                      Index
92                    </p>
93                  </td>
94<td>
95                    <p>
96                      Index, this template parameter is required. For a Box: either
97                      min_corner or max_corner. For a Segment: either 0 or 1 for
98                      first or last point.
99                    </p>
100                  </td>
101<td>
102                    <p>
103                      -
104                    </p>
105                  </td>
106<td>
107                    <p>
108                      Must be specified
109                    </p>
110                  </td>
111</tr>
112<tr>
113<td>
114                    <p>
115                      Dimension
116                    </p>
117                  </td>
118<td>
119                    <p>
120                      Dimension, this template parameter is required. Should contain
121                      [0 .. n-1] for an n-dimensional geometry
122                    </p>
123                  </td>
124<td>
125                    <p>
126                      -
127                    </p>
128                  </td>
129<td>
130                    <p>
131                      Must be specified
132                    </p>
133                  </td>
134</tr>
135<tr>
136<td>
137                    <p>
138                      Geometry const &amp;
139                    </p>
140                  </td>
141<td>
142                    <p>
143                      Any type fulfilling a Box Concept or a Segment Concept
144                    </p>
145                  </td>
146<td>
147                    <p>
148                      geometry
149                    </p>
150                  </td>
151<td>
152                    <p>
153                      A model of the specified concept
154                    </p>
155                  </td>
156</tr>
157</tbody>
158</table></div>
159<h6>
160<a name="geometry.reference.access.get.get_1_with_index.h3"></a>
161            <span class="phrase"><a name="geometry.reference.access.get.get_1_with_index.returns"></a></span><a class="link" href="get_1_with_index.html#geometry.reference.access.get.get_1_with_index.returns">Returns</a>
162          </h6>
163<p>
164            coordinate value
165          </p>
166<h6>
167<a name="geometry.reference.access.get.get_1_with_index.h4"></a>
168            <span class="phrase"><a name="geometry.reference.access.get.get_1_with_index.header"></a></span><a class="link" href="get_1_with_index.html#geometry.reference.access.get.get_1_with_index.header">Header</a>
169          </h6>
170<p>
171            Either
172          </p>
173<p>
174            <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>
175          </p>
176<p>
177            Or
178          </p>
179<p>
180            <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>
181          </p>
182<h6>
183<a name="geometry.reference.access.get.get_1_with_index.h5"></a>
184            <span class="phrase"><a name="geometry.reference.access.get.get_1_with_index.behavior"></a></span><a class="link" href="get_1_with_index.html#geometry.reference.access.get.get_1_with_index.behavior">Behavior</a>
185          </h6>
186<div class="informaltable"><table class="table">
187<colgroup>
188<col>
189<col>
190</colgroup>
191<thead><tr>
192<th>
193                    <p>
194                      Case
195                    </p>
196                  </th>
197<th>
198                    <p>
199                      Behavior
200                    </p>
201                  </th>
202</tr></thead>
203<tbody>
204<tr>
205<td>
206                    <p>
207                      Box
208                    </p>
209                  </td>
210<td>
211                    <p>
212                      Returns the coordinate of a box (use min_corner, max_corner
213                      to specify which of the points to get)
214                    </p>
215                  </td>
216</tr>
217<tr>
218<td>
219                    <p>
220                      Segment
221                    </p>
222                  </td>
223<td>
224                    <p>
225                      Returns the coordinate of a segment (use 0, 1 to specify which
226                      of the two points to get)
227                    </p>
228                  </td>
229</tr>
230</tbody>
231</table></div>
232<h6>
233<a name="geometry.reference.access.get.get_1_with_index.h6"></a>
234            <span class="phrase"><a name="geometry.reference.access.get.get_1_with_index.complexity"></a></span><a class="link" href="get_1_with_index.html#geometry.reference.access.get.get_1_with_index.complexity">Complexity</a>
235          </h6>
236<p>
237            Constant
238          </p>
239<h6>
240<a name="geometry.reference.access.get.get_1_with_index.h7"></a>
241            <span class="phrase"><a name="geometry.reference.access.get.get_1_with_index.example"></a></span><a class="link" href="get_1_with_index.html#geometry.reference.access.get.get_1_with_index.example">Example</a>
242          </h6>
243<p>
244            Get the coordinate of a box
245          </p>
246<p>
247</p>
248<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
249
250<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>
251<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>
252
253<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>
254
255<span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span>
256<span class="special">{</span>
257    <span class="identifier">bg</span><span class="special">::</span><span class="identifier">model</span><span class="special">::</span><span class="identifier">box</span><span class="special">&lt;</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="special">&gt;</span> <span class="identifier">box</span><span class="special">;</span>
258
259    <span class="identifier">bg</span><span class="special">::</span><span class="identifier">assign_values</span><span class="special">(</span><span class="identifier">box</span><span class="special">,</span> <span class="number">1</span><span class="special">,</span> <span class="number">3</span><span class="special">,</span> <span class="number">5</span><span class="special">,</span> <span class="number">6</span><span class="special">);</span>
260
261    <span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="string">"Box:"</span>
262        <span class="special">&lt;&lt;</span> <span class="string">" "</span> <span class="special">&lt;&lt;</span> <span class="identifier">bg</span><span class="special">::</span><span class="identifier">get</span><span class="special">&lt;</span><span class="identifier">bg</span><span class="special">::</span><span class="identifier">min_corner</span><span class="special">,</span> <span class="number">0</span><span class="special">&gt;(</span><span class="identifier">box</span><span class="special">)</span>
263        <span class="special">&lt;&lt;</span> <span class="string">" "</span> <span class="special">&lt;&lt;</span> <span class="identifier">bg</span><span class="special">::</span><span class="identifier">get</span><span class="special">&lt;</span><span class="identifier">bg</span><span class="special">::</span><span class="identifier">min_corner</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;(</span><span class="identifier">box</span><span class="special">)</span>
264        <span class="special">&lt;&lt;</span> <span class="string">" "</span> <span class="special">&lt;&lt;</span> <span class="identifier">bg</span><span class="special">::</span><span class="identifier">get</span><span class="special">&lt;</span><span class="identifier">bg</span><span class="special">::</span><span class="identifier">max_corner</span><span class="special">,</span> <span class="number">0</span><span class="special">&gt;(</span><span class="identifier">box</span><span class="special">)</span>
265        <span class="special">&lt;&lt;</span> <span class="string">" "</span> <span class="special">&lt;&lt;</span> <span class="identifier">bg</span><span class="special">::</span><span class="identifier">get</span><span class="special">&lt;</span><span class="identifier">bg</span><span class="special">::</span><span class="identifier">max_corner</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;(</span><span class="identifier">box</span><span class="special">)</span>
266        <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
267
268    <span class="keyword">return</span> <span class="number">0</span><span class="special">;</span>
269<span class="special">}</span>
270</pre>
271<p>
272          </p>
273<p>
274            Output:
275          </p>
276<pre class="programlisting">Box: 1 3 5 6
277</pre>
278</div>
279<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
280<td align="left"></td>
281<td align="right"><div class="copyright-footer">Copyright © 2009-2019 Barend Gehrels, Bruno Lalande, Mateusz Loskot, Adam
282      Wulkiewicz, Oracle and/or its affiliates<p>
283        Distributed under the Boost Software License, Version 1.0. (See accompanying
284        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>)
285      </p>
286</div></td>
287</tr></table>
288<hr>
289<div class="spirit-nav">
290<a accesskey="p" href="get_1.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_as_radian_1.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
291</div>
292</body>
293</html>
294