blob: 823426c83489fb5c3d1db287ad080567bebc1034 [file] [log] [blame]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>assign_values (2 coordinate values)</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Geometry 1.0">
<link rel="up" href="../assign.html" title="assign">
<link rel="prev" href="assign_points.html" title="assign_points">
<link rel="next" href="assign_values_5_4_coordinate_values.html" title="assign_values (4 coordinate values)">
</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="assign_points.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../assign.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="assign_values_5_4_coordinate_values.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.algorithms.assign.assign_values_3_2_coordinate_values"></a><a class="link" href="assign_values_3_2_coordinate_values.html" title="assign_values (2 coordinate values)">assign_values
(2 coordinate values)</a>
</h5></div></div></div>
<p>
<a class="indexterm" name="id830085"></a>
Assign two coordinates to a geometry (usually a 2D point)
</p>
<a name="geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.synopsis"></a><h6>
<a name="geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.synopsis-heading"></a>
<a class="link" href="assign_values_3_2_coordinate_values.html#geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.synopsis">Synopsis</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Geometry</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Type</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">assign_values</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="special">&amp;</span> <span class="identifier">geometry</span><span class="special">,</span> <span class="identifier">Type</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">c1</span><span class="special">,</span> <span class="identifier">Type</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">c2</span><span class="special">)</span></pre>
<p>
</p>
<a name="geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.parameters"></a><h6>
<a name="geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.parameters-heading"></a>
<a class="link" href="assign_values_3_2_coordinate_values.html#geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.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>
Geometry &amp;
</p>
</td>
<td>
<p>
Any type fulfilling a Geometry Concept
</p>
</td>
<td>
<p>
geometry
</p>
</td>
<td>
<p>
A model of the specified concept
</p>
</td>
</tr>
<tr>
<td>
<p>
Type const &amp;
</p>
</td>
<td>
<p>
numerical type (int, double, ttmath, ...) to specify the coordinates
</p>
</td>
<td>
<p>
c1
</p>
</td>
<td>
<p>
First coordinate (usually x-coordinate)
</p>
</td>
</tr>
<tr>
<td>
<p>
Type const &amp;
</p>
</td>
<td>
<p>
numerical type (int, double, ttmath, ...) to specify the coordinates
</p>
</td>
<td>
<p>
c2
</p>
</td>
<td>
<p>
Second coordinate (usually y-coordinate)
</p>
</td>
</tr>
</tbody>
</table></div>
<a name="geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.header"></a><h6>
<a name="geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.header-heading"></a>
<a class="link" href="assign_values_3_2_coordinate_values.html#geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.header">Header</a>
</h6>
<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">algorithms</span><span class="special">/</span><span class="identifier">detail</span><span class="special">/</span><span class="identifier">assign_values</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<a name="geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.example"></a><h6>
<a name="geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.example-heading"></a>
<a class="link" href="assign_values_3_2_coordinate_values.html#geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.example">Example</a>
</h6>
<p>
Shows the usage of assign to set point coordinates, and, besides that,
shows how you can initialize ttmath points with high precision
</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">iomanip</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="preprocessor">#if</span> <span class="identifier">defined</span><span class="special">(</span><span class="identifier">HAVE_TTMATH</span><span class="special">)</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">extensions</span><span class="special">/</span><span class="identifier">contrib</span><span class="special">/</span><span class="identifier">ttmath_stub</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#endif</span>
<span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span>
<span class="special">{</span>
<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">assign_values</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">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">p1</span><span class="special">;</span>
<span class="identifier">assign_values</span><span class="special">(</span><span class="identifier">p1</span><span class="special">,</span> <span class="number">1.2345</span><span class="special">,</span> <span class="number">2.3456</span><span class="special">);</span>
<span class="preprocessor">#if</span> <span class="identifier">defined</span><span class="special">(</span><span class="identifier">HAVE_TTMATH</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">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="identifier">ttmath</span><span class="special">::</span><span class="identifier">Big</span><span class="special">&lt;</span><span class="number">1</span><span class="special">,</span><span class="number">4</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">p2</span><span class="special">;</span>
<span class="identifier">assign_values</span><span class="special">(</span><span class="identifier">p2</span><span class="special">,</span> <span class="string">"1.2345"</span><span class="special">,</span> <span class="string">"2.3456"</span><span class="special">);</span> <a class="co" name="geometry9co" href="assign_values_3_2_coordinate_values.html#geometry9"><img src="../../../../../../../../doc/src/images/callouts/1.png" alt="1" border="0"></a>
<span class="preprocessor">#endif</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span>
<span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">setprecision</span><span class="special">(</span><span class="number">20</span><span class="special">)</span>
<span class="special">&lt;&lt;</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><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>
<span class="preprocessor">#if</span> <span class="identifier">defined</span><span class="special">(</span><span class="identifier">HAVE_TTMATH</span><span class="special">)</span>
<span class="special">&lt;&lt;</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><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>
<span class="preprocessor">#endif</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>
<div class="calloutlist"><table border="0" summary="Callout list"><tr>
<td width="5%" valign="top" align="left"><p><a name="geometry9"></a><a href="#geometry9co"><img src="../../../../../../../../doc/src/images/callouts/1.png" alt="1" border="0"></a> </p></td>
<td valign="top" align="left"><p>
It is possible to assign coordinates with other types than the coordinate
type. For ttmath, you can e.g. conveniently use strings. The advantage
is that it then has higher precision, because if doubles are used
for assignments the double-precision is used.
</p></td>
</tr></table></div>
<p>
Output:
</p>
<pre class="programlisting">(1.2344999999999999, 2.3456000000000001)
(1.2345, 2.3456)
</pre>
<a name="geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.see_also"></a><h6>
<a name="geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.see_also-heading"></a>
<a class="link" href="assign_values_3_2_coordinate_values.html#geometry.reference.algorithms.assign.assign_values_3_2_coordinate_values.see_also">See
also</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
<a class="link" href="../make/make_2_2_coordinate_values.html" title="make (2 coordinate values)">make</a>
</li></ul></div>
</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; 2011 Barend Gehrels, Bruno Lalande, Mateusz Loskot<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="assign_points.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../assign.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="assign_values_5_4_coordinate_values.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>