Imported Upstream version 1.64.0
[platform/upstream/boost.git] / libs / geometry / doc / html / geometry / reference / algorithms / convert.html
1 <html>
2 <head>
3 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
4 <title>convert</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&#160;1.&#160;Geometry">
8 <link rel="up" href="../algorithms.html" title="Algorithms">
9 <link rel="prev" href="clear.html" title="clear">
10 <link rel="next" href="convex_hull.html" title="convex_hull">
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="clear.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.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="convex_hull.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
24 </div>
25 <div class="section">
26 <div class="titlepage"><div><div><h4 class="title">
27 <a name="geometry.reference.algorithms.convert"></a><a class="link" href="convert.html" title="convert">convert</a>
28 </h4></div></div></div>
29 <p>
30           <a class="indexterm" name="idp91072672"></a>
31 Converts one geometry to another geometry.
32         </p>
33 <h6>
34 <a name="geometry.reference.algorithms.convert.h0"></a>
35           <span class="phrase"><a name="geometry.reference.algorithms.convert.description"></a></span><a class="link" href="convert.html#geometry.reference.algorithms.convert.description">Description</a>
36         </h6>
37 <p>
38           The convert algorithm converts one geometry, e.g. a BOX, to another geometry,
39           e.g. a RING. This only works if it is possible and applicable. If the point-order
40           is different, or the closure is different between two geometry types, it
41           will be converted correctly by explicitly reversing the points or closing
42           or opening the polygon rings.
43         </p>
44 <h6>
45 <a name="geometry.reference.algorithms.convert.h1"></a>
46           <span class="phrase"><a name="geometry.reference.algorithms.convert.synopsis"></a></span><a class="link" href="convert.html#geometry.reference.algorithms.convert.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="keyword">typename</span> <span class="identifier">Geometry1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Geometry2</span><span class="special">&gt;</span>
51 <span class="keyword">void</span> <span class="identifier">convert</span><span class="special">(</span><span class="identifier">Geometry1</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">geometry1</span><span class="special">,</span> <span class="identifier">Geometry2</span> <span class="special">&amp;</span> <span class="identifier">geometry2</span><span class="special">)</span></pre>
52 <p>
53         </p>
54 <h6>
55 <a name="geometry.reference.algorithms.convert.h2"></a>
56           <span class="phrase"><a name="geometry.reference.algorithms.convert.parameters"></a></span><a class="link" href="convert.html#geometry.reference.algorithms.convert.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                     Geometry1 const &amp;
92                   </p>
93                 </td>
94 <td>
95                   <p>
96                     Any type fulfilling a Geometry Concept
97                   </p>
98                 </td>
99 <td>
100                   <p>
101                     geometry1
102                   </p>
103                 </td>
104 <td>
105                   <p>
106                     A model of the specified concept (source)
107                   </p>
108                 </td>
109 </tr>
110 <tr>
111 <td>
112                   <p>
113                     Geometry2 &amp;
114                   </p>
115                 </td>
116 <td>
117                   <p>
118                     Any type fulfilling a Geometry Concept
119                   </p>
120                 </td>
121 <td>
122                   <p>
123                     geometry2
124                   </p>
125                 </td>
126 <td>
127                   <p>
128                     A model of the specified concept (target)
129                   </p>
130                 </td>
131 </tr>
132 </tbody>
133 </table></div>
134 <h6>
135 <a name="geometry.reference.algorithms.convert.h3"></a>
136           <span class="phrase"><a name="geometry.reference.algorithms.convert.header"></a></span><a class="link" href="convert.html#geometry.reference.algorithms.convert.header">Header</a>
137         </h6>
138 <p>
139           Either
140         </p>
141 <p>
142           <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>
143         </p>
144 <p>
145           Or
146         </p>
147 <p>
148           <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">algorithms</span><span class="special">/</span><span class="identifier">convert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
149         </p>
150 <h6>
151 <a name="geometry.reference.algorithms.convert.h4"></a>
152           <span class="phrase"><a name="geometry.reference.algorithms.convert.conformance"></a></span><a class="link" href="convert.html#geometry.reference.algorithms.convert.conformance">Conformance</a>
153         </h6>
154 <p>
155           The function convert is not defined by OGC.
156         </p>
157 <h6>
158 <a name="geometry.reference.algorithms.convert.h5"></a>
159           <span class="phrase"><a name="geometry.reference.algorithms.convert.supported_geometries"></a></span><a class="link" href="convert.html#geometry.reference.algorithms.convert.supported_geometries">Supported
160           geometries</a>
161         </h6>
162 <div class="informaltable"><table class="table">
163 <colgroup>
164 <col>
165 <col>
166 <col>
167 <col>
168 <col>
169 <col>
170 <col>
171 <col>
172 <col>
173 <col>
174 </colgroup>
175 <thead><tr>
176 <th>
177                 </th>
178 <th>
179                   <p>
180                     Point
181                   </p>
182                 </th>
183 <th>
184                   <p>
185                     Segment
186                   </p>
187                 </th>
188 <th>
189                   <p>
190                     Box
191                   </p>
192                 </th>
193 <th>
194                   <p>
195                     Linestring
196                   </p>
197                 </th>
198 <th>
199                   <p>
200                     Ring
201                   </p>
202                 </th>
203 <th>
204                   <p>
205                     Polygon
206                   </p>
207                 </th>
208 <th>
209                   <p>
210                     MultiPoint
211                   </p>
212                 </th>
213 <th>
214                   <p>
215                     MultiLinestring
216                   </p>
217                 </th>
218 <th>
219                   <p>
220                     MultiPolygon
221                   </p>
222                 </th>
223 </tr></thead>
224 <tbody>
225 <tr>
226 <td>
227                   <p>
228                     Point
229                   </p>
230                 </td>
231 <td>
232                   <p>
233                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
234                   </p>
235                 </td>
236 <td>
237                   <p>
238                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
239                   </p>
240                 </td>
241 <td>
242                   <p>
243                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
244                   </p>
245                 </td>
246 <td>
247                   <p>
248                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
249                   </p>
250                 </td>
251 <td>
252                   <p>
253                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
254                   </p>
255                 </td>
256 <td>
257                   <p>
258                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
259                   </p>
260                 </td>
261 <td>
262                   <p>
263                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
264                   </p>
265                 </td>
266 <td>
267                   <p>
268                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
269                   </p>
270                 </td>
271 <td>
272                   <p>
273                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
274                   </p>
275                 </td>
276 </tr>
277 <tr>
278 <td>
279                   <p>
280                     Segment
281                   </p>
282                 </td>
283 <td>
284                   <p>
285                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
286                   </p>
287                 </td>
288 <td>
289                   <p>
290                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
291                   </p>
292                 </td>
293 <td>
294                   <p>
295                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
296                   </p>
297                 </td>
298 <td>
299                   <p>
300                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
301                   </p>
302                 </td>
303 <td>
304                   <p>
305                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
306                   </p>
307                 </td>
308 <td>
309                   <p>
310                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
311                   </p>
312                 </td>
313 <td>
314                   <p>
315                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
316                   </p>
317                 </td>
318 <td>
319                   <p>
320                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
321                   </p>
322                 </td>
323 <td>
324                   <p>
325                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
326                   </p>
327                 </td>
328 </tr>
329 <tr>
330 <td>
331                   <p>
332                     Box
333                   </p>
334                 </td>
335 <td>
336                   <p>
337                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
338                   </p>
339                 </td>
340 <td>
341                   <p>
342                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
343                   </p>
344                 </td>
345 <td>
346                   <p>
347                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
348                   </p>
349                 </td>
350 <td>
351                   <p>
352                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
353                   </p>
354                 </td>
355 <td>
356                   <p>
357                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
358                   </p>
359                 </td>
360 <td>
361                   <p>
362                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
363                   </p>
364                 </td>
365 <td>
366                   <p>
367                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
368                   </p>
369                 </td>
370 <td>
371                   <p>
372                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
373                   </p>
374                 </td>
375 <td>
376                   <p>
377                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
378                   </p>
379                 </td>
380 </tr>
381 <tr>
382 <td>
383                   <p>
384                     Linestring
385                   </p>
386                 </td>
387 <td>
388                   <p>
389                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
390                   </p>
391                 </td>
392 <td>
393                   <p>
394                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
395                   </p>
396                 </td>
397 <td>
398                   <p>
399                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
400                   </p>
401                 </td>
402 <td>
403                   <p>
404                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
405                   </p>
406                 </td>
407 <td>
408                   <p>
409                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
410                   </p>
411                 </td>
412 <td>
413                   <p>
414                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
415                   </p>
416                 </td>
417 <td>
418                   <p>
419                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
420                   </p>
421                 </td>
422 <td>
423                   <p>
424                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
425                   </p>
426                 </td>
427 <td>
428                   <p>
429                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
430                   </p>
431                 </td>
432 </tr>
433 <tr>
434 <td>
435                   <p>
436                     Ring
437                   </p>
438                 </td>
439 <td>
440                   <p>
441                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
442                   </p>
443                 </td>
444 <td>
445                   <p>
446                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
447                   </p>
448                 </td>
449 <td>
450                   <p>
451                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
452                   </p>
453                 </td>
454 <td>
455                   <p>
456                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
457                   </p>
458                 </td>
459 <td>
460                   <p>
461                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
462                   </p>
463                 </td>
464 <td>
465                   <p>
466                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
467                   </p>
468                 </td>
469 <td>
470                   <p>
471                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
472                   </p>
473                 </td>
474 <td>
475                   <p>
476                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
477                   </p>
478                 </td>
479 <td>
480                   <p>
481                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
482                   </p>
483                 </td>
484 </tr>
485 <tr>
486 <td>
487                   <p>
488                     Polygon
489                   </p>
490                 </td>
491 <td>
492                   <p>
493                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
494                   </p>
495                 </td>
496 <td>
497                   <p>
498                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
499                   </p>
500                 </td>
501 <td>
502                   <p>
503                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
504                   </p>
505                 </td>
506 <td>
507                   <p>
508                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
509                   </p>
510                 </td>
511 <td>
512                   <p>
513                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
514                   </p>
515                 </td>
516 <td>
517                   <p>
518                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
519                   </p>
520                 </td>
521 <td>
522                   <p>
523                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
524                   </p>
525                 </td>
526 <td>
527                   <p>
528                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
529                   </p>
530                 </td>
531 <td>
532                   <p>
533                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
534                   </p>
535                 </td>
536 </tr>
537 <tr>
538 <td>
539                   <p>
540                     MultiPoint
541                   </p>
542                 </td>
543 <td>
544                   <p>
545                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
546                   </p>
547                 </td>
548 <td>
549                   <p>
550                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
551                   </p>
552                 </td>
553 <td>
554                   <p>
555                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
556                   </p>
557                 </td>
558 <td>
559                   <p>
560                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
561                   </p>
562                 </td>
563 <td>
564                   <p>
565                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
566                   </p>
567                 </td>
568 <td>
569                   <p>
570                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
571                   </p>
572                 </td>
573 <td>
574                   <p>
575                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
576                   </p>
577                 </td>
578 <td>
579                   <p>
580                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
581                   </p>
582                 </td>
583 <td>
584                   <p>
585                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
586                   </p>
587                 </td>
588 </tr>
589 <tr>
590 <td>
591                   <p>
592                     MultiLinestring
593                   </p>
594                 </td>
595 <td>
596                   <p>
597                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
598                   </p>
599                 </td>
600 <td>
601                   <p>
602                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
603                   </p>
604                 </td>
605 <td>
606                   <p>
607                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
608                   </p>
609                 </td>
610 <td>
611                   <p>
612                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
613                   </p>
614                 </td>
615 <td>
616                   <p>
617                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
618                   </p>
619                 </td>
620 <td>
621                   <p>
622                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
623                   </p>
624                 </td>
625 <td>
626                   <p>
627                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
628                   </p>
629                 </td>
630 <td>
631                   <p>
632                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
633                   </p>
634                 </td>
635 <td>
636                   <p>
637                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
638                   </p>
639                 </td>
640 </tr>
641 <tr>
642 <td>
643                   <p>
644                     MultiPolygon
645                   </p>
646                 </td>
647 <td>
648                   <p>
649                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
650                   </p>
651                 </td>
652 <td>
653                   <p>
654                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
655                   </p>
656                 </td>
657 <td>
658                   <p>
659                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
660                   </p>
661                 </td>
662 <td>
663                   <p>
664                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
665                   </p>
666                 </td>
667 <td>
668                   <p>
669                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
670                   </p>
671                 </td>
672 <td>
673                   <p>
674                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
675                   </p>
676                 </td>
677 <td>
678                   <p>
679                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
680                   </p>
681                 </td>
682 <td>
683                   <p>
684                     <span class="inlinemediaobject"><img src="../../../img/nyi.png" alt="nyi"></span>
685                   </p>
686                 </td>
687 <td>
688                   <p>
689                     <span class="inlinemediaobject"><img src="../../../img/ok.png" alt="ok"></span>
690                   </p>
691                 </td>
692 </tr>
693 </tbody>
694 </table></div>
695 <div class="note"><table border="0" summary="Note">
696 <tr>
697 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../../doc/src/images/note.png"></td>
698 <th align="left">Note</th>
699 </tr>
700 <tr><td align="left" valign="top"><p>
701             In this status matrix above: columns are source types and rows are target
702             types. So a box can be converted to a ring, polygon or multi-polygon,
703             but not vice versa.
704           </p></td></tr>
705 </table></div>
706 <h6>
707 <a name="geometry.reference.algorithms.convert.h6"></a>
708           <span class="phrase"><a name="geometry.reference.algorithms.convert.complexity"></a></span><a class="link" href="convert.html#geometry.reference.algorithms.convert.complexity">Complexity</a>
709         </h6>
710 <p>
711           Linear
712         </p>
713 <h6>
714 <a name="geometry.reference.algorithms.convert.h7"></a>
715           <span class="phrase"><a name="geometry.reference.algorithms.convert.example"></a></span><a class="link" href="convert.html#geometry.reference.algorithms.convert.example">Example</a>
716         </h6>
717 <p>
718           Shows how to convert a geometry into another geometry
719         </p>
720 <p>
721 </p>
722 <pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
723
724 <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>
725 <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">box</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
726 <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>
727 <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">polygon</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
728 <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">adapted</span><span class="special">/</span><span class="identifier">boost_tuple</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
729
730 <span class="identifier">BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS</span><span class="special">(</span><span class="identifier">cs</span><span class="special">::</span><span class="identifier">cartesian</span><span class="special">)</span>
731
732 <span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span>
733 <span class="special">{</span>
734     <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</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>
735     <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</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">point</span><span class="special">&gt;</span> <span class="identifier">box</span><span class="special">;</span>
736     <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">model</span><span class="special">::</span><span class="identifier">polygon</span><span class="special">&lt;</span><span class="identifier">point</span><span class="special">&gt;</span> <span class="identifier">polygon</span><span class="special">;</span>
737
738     <span class="identifier">point</span> <span class="identifier">p1</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">1</span><span class="special">);</span>
739     <span class="identifier">box</span> <span class="identifier">bx</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="identifier">make</span><span class="special">&lt;</span><span class="identifier">box</span><span class="special">&gt;(</span><span class="number">1</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="number">2</span><span class="special">);</span>
740
741     <span class="comment">// Assign a box to a polygon (conversion box-&gt;poly)</span>
742     <span class="identifier">polygon</span> <span class="identifier">poly</span><span class="special">;</span>
743     <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">convert</span><span class="special">(</span><span class="identifier">bx</span><span class="special">,</span> <span class="identifier">poly</span><span class="special">);</span>
744
745     <span class="comment">// Convert a point to another point type (conversion of point-type)</span>
746     <span class="identifier">boost</span><span class="special">::</span><span class="identifier">tuple</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">p2</span><span class="special">;</span>
747     <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">convert</span><span class="special">(</span><span class="identifier">p1</span><span class="special">,</span> <span class="identifier">p2</span><span class="special">);</span> <span class="comment">// source -&gt; target</span>
748
749     <span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">dsv</span><span class="special">;</span>
750     <span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span>
751         <span class="special">&lt;&lt;</span> <span class="string">"box: "</span> <span class="special">&lt;&lt;</span> <span class="identifier">dsv</span><span class="special">(</span><span class="identifier">bx</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span>
752         <span class="special">&lt;&lt;</span> <span class="string">"polygon: "</span> <span class="special">&lt;&lt;</span> <span class="identifier">dsv</span><span class="special">(</span><span class="identifier">poly</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span>
753         <span class="special">&lt;&lt;</span> <span class="string">"point: "</span> <span class="special">&lt;&lt;</span> <span class="identifier">dsv</span><span class="special">(</span><span class="identifier">p1</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span>
754         <span class="special">&lt;&lt;</span> <span class="string">"point tuples: "</span> <span class="special">&lt;&lt;</span> <span class="identifier">dsv</span><span class="special">(</span><span class="identifier">p2</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span>
755         <span class="special">;</span>
756
757     <span class="keyword">return</span> <span class="number">0</span><span class="special">;</span>
758 <span class="special">}</span>
759 </pre>
760 <p>
761         </p>
762 <p>
763           Output:
764         </p>
765 <pre class="programlisting">box: ((1, 1), (2, 2))
766 polygon: (((1, 1), (1, 2), (2, 2), (2, 1), (1, 1)))
767 point: (1, 1)
768 point tuples: (1, 1)
769 </pre>
770 <h6>
771 <a name="geometry.reference.algorithms.convert.h8"></a>
772           <span class="phrase"><a name="geometry.reference.algorithms.convert.see_also"></a></span><a class="link" href="convert.html#geometry.reference.algorithms.convert.see_also">See
773           also</a>
774         </h6>
775 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
776               <a class="link" href="assign/assign.html" title="assign">assign</a>
777             </li></ul></div>
778 <div class="note"><table border="0" summary="Note">
779 <tr>
780 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../../doc/src/images/note.png"></td>
781 <th align="left">Note</th>
782 </tr>
783 <tr><td align="left" valign="top"><p>
784             convert is modelled as source -&gt; target (where assign is modelled
785             as target := source)
786           </p></td></tr>
787 </table></div>
788 </div>
789 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
790 <td align="left"></td>
791 <td align="right"><div class="copyright-footer">Copyright &#169; 2009-2017 Barend
792       Gehrels, Bruno Lalande, Mateusz Loskot, Adam Wulkiewicz, Oracle and/or its
793       affiliates<p>
794         Distributed under the Boost Software License, Version 1.0. (See accompanying
795         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>)
796       </p>
797 </div></td>
798 </tr></table>
799 <hr>
800 <div class="spirit-nav">
801 <a accesskey="p" href="clear.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.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="convex_hull.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
802 </div>
803 </body>
804 </html>