1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3
<title>Ipelib: IpeLine class Reference</title>
4
<link href="doxygen.css" rel="stylesheet" type="text/css">
6
<!-- Generated by Doxygen 1.3.4 -->
7
<div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="functions.html">Class Members</a></div>
8
<h1>IpeLine Class Reference<br>
10
[<a class="el" href="group__geo.html">Ipe Geometry</a>]</small>
12
<a href="#_details">More...</a>
14
<a href="class_ipe_line-members.html">List of all members.</a><h2>Public Member Functions</h2>
16
<li><a class="el" href="class_ipe_line.html#a0">IpeLine</a> ()
17
<li><a class="el" href="class_ipe_line.html#a1">IpeLine</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &p, const <a class="el" href="class_ipe_vector.html">IpeVector</a> &dir)
18
<li>double <a class="el" href="class_ipe_line.html#a2">Side</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &p) const
19
<li><a class="el" href="class_ipe_vector.html">IpeVector</a> <a class="el" href="class_ipe_line.html#a3">Normal</a> () const
20
<li>double <a class="el" href="class_ipe_line.html#a4">Distance</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &v) const
21
<li>bool <a class="el" href="class_ipe_line.html#a5">Intersects</a> (const <a class="el" href="class_ipe_line.html">IpeLine</a> &line, <a class="el" href="class_ipe_vector.html">IpeVector</a> &pt)
22
<li><a class="el" href="class_ipe_vector.html">IpeVector</a> <a class="el" href="class_ipe_line.html#a6">Project</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &v) const
23
<li><a class="el" href="class_ipe_vector.html">IpeVector</a> <a class="el" href="class_ipe_line.html#a7">Dir</a> () const
25
<h2>Static Public Member Functions</h2>
27
<li><a class="el" href="class_ipe_line.html">IpeLine</a> <a class="el" href="class_ipe_line.html#e0">Through</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &p, const <a class="el" href="class_ipe_vector.html">IpeVector</a> &q)
29
<h2>Public Attributes</h2>
31
<li><a class="el" href="class_ipe_vector.html">IpeVector</a> <a class="el" href="class_ipe_line.html#o0">iP</a>
33
<hr><a name="_details"></a><h2>Detailed Description</h2>
36
<hr><h2>Constructor & Destructor Documentation</h2>
37
<a class="anchor" name="a0" doxytag="IpeLine::IpeLine" ></a><p>
38
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
41
<table cellpadding="0" cellspacing="0" border="0">
43
<td class="md" nowrap valign="top"> IpeLine::IpeLine </td>
44
<td class="md" valign="top">( </td>
45
<td class="mdname1" valign="top" nowrap> </td>
46
<td class="md" valign="top"> ) </td>
47
<td class="md" nowrap><code> [inline, explicit]</code></td>
54
<table cellspacing=5 cellpadding=0 border=0>
62
Create default line (x-axis).
67
<a class="anchor" name="a1" doxytag="IpeLine::IpeLine" ></a><p>
68
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
71
<table cellpadding="0" cellspacing="0" border="0">
73
<td class="md" nowrap valign="top"> IpeLine::IpeLine </td>
74
<td class="md" valign="top">( </td>
75
<td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
76
<td class="mdname" nowrap> <em>p</em>, </td>
81
<td class="md" nowrap>const <a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
82
<td class="mdname" nowrap> <em>dir</em></td>
86
<td class="md">) </td>
87
<td class="md" colspan="2"><code> [explicit]</code></td>
94
<table cellspacing=5 cellpadding=0 border=0>
102
Construct a line from <em>p</em> with direction <em>dir</em>.
104
Asserts unit length of <em>dir</em>. </td>
107
<hr><h2>Member Function Documentation</h2>
108
<a class="anchor" name="e0" doxytag="IpeLine::Through" ></a><p>
109
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
112
<table cellpadding="0" cellspacing="0" border="0">
114
<td class="md" nowrap valign="top"> <a class="el" href="class_ipe_line.html">IpeLine</a> IpeLine::Through </td>
115
<td class="md" valign="top">( </td>
116
<td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
117
<td class="mdname" nowrap> <em>p</em>, </td>
122
<td class="md" nowrap>const <a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
123
<td class="mdname" nowrap> <em>q</em></td>
127
<td class="md">) </td>
128
<td class="md" colspan="2"><code> [static]</code></td>
135
<table cellspacing=5 cellpadding=0 border=0>
143
Construct a line through two points.
148
<a class="anchor" name="a2" doxytag="IpeLine::Side" ></a><p>
149
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
152
<table cellpadding="0" cellspacing="0" border="0">
154
<td class="md" nowrap valign="top"> double IpeLine::Side </td>
155
<td class="md" valign="top">( </td>
156
<td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
157
<td class="mdname1" valign="top" nowrap> <em>p</em> </td>
158
<td class="md" valign="top"> ) </td>
159
<td class="md" nowrap> const</td>
166
<table cellspacing=5 cellpadding=0 border=0>
174
Result is > 0, = 0, < 0 if point lies to the left, on, to the right.
179
<a class="anchor" name="a3" doxytag="IpeLine::Normal" ></a><p>
180
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
183
<table cellpadding="0" cellspacing="0" border="0">
185
<td class="md" nowrap valign="top"> <a class="el" href="class_ipe_vector.html">IpeVector</a> IpeLine::Normal </td>
186
<td class="md" valign="top">( </td>
187
<td class="mdname1" valign="top" nowrap> </td>
188
<td class="md" valign="top"> ) </td>
189
<td class="md" nowrap> const<code> [inline]</code></td>
196
<table cellspacing=5 cellpadding=0 border=0>
204
Return a normal vector pointing to the left of the directed line.
209
<a class="anchor" name="a4" doxytag="IpeLine::Distance" ></a><p>
210
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
213
<table cellpadding="0" cellspacing="0" border="0">
215
<td class="md" nowrap valign="top"> double IpeLine::Distance </td>
216
<td class="md" valign="top">( </td>
217
<td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
218
<td class="mdname1" valign="top" nowrap> <em>v</em> </td>
219
<td class="md" valign="top"> ) </td>
220
<td class="md" nowrap> const</td>
227
<table cellspacing=5 cellpadding=0 border=0>
235
Returns distance between line and <em>v</em>.
240
<a class="anchor" name="a5" doxytag="IpeLine::Intersects" ></a><p>
241
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
244
<table cellpadding="0" cellspacing="0" border="0">
246
<td class="md" nowrap valign="top"> bool IpeLine::Intersects </td>
247
<td class="md" valign="top">( </td>
248
<td class="md" nowrap valign="top">const <a class="el" href="class_ipe_line.html">IpeLine</a> & </td>
249
<td class="mdname" nowrap> <em>line</em>, </td>
254
<td class="md" nowrap><a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
255
<td class="mdname" nowrap> <em>pt</em></td>
259
<td class="md">) </td>
260
<td class="md" colspan="2"></td>
267
<table cellspacing=5 cellpadding=0 border=0>
275
Does this line intersect <em>line</em>? If so, computes intersection point.
280
<a class="anchor" name="a6" doxytag="IpeLine::Project" ></a><p>
281
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
284
<table cellpadding="0" cellspacing="0" border="0">
286
<td class="md" nowrap valign="top"> <a class="el" href="class_ipe_vector.html">IpeVector</a> IpeLine::Project </td>
287
<td class="md" valign="top">( </td>
288
<td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
289
<td class="mdname1" valign="top" nowrap> <em>v</em> </td>
290
<td class="md" valign="top"> ) </td>
291
<td class="md" nowrap> const</td>
298
<table cellspacing=5 cellpadding=0 border=0>
306
Orthogonally project point <em>v</em> onto the line.
311
<a class="anchor" name="a7" doxytag="IpeLine::Dir" ></a><p>
312
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
315
<table cellpadding="0" cellspacing="0" border="0">
317
<td class="md" nowrap valign="top"> <a class="el" href="class_ipe_vector.html">IpeVector</a> IpeLine::Dir </td>
318
<td class="md" valign="top">( </td>
319
<td class="mdname1" valign="top" nowrap> </td>
320
<td class="md" valign="top"> ) </td>
321
<td class="md" nowrap> const<code> [inline]</code></td>
328
<table cellspacing=5 cellpadding=0 border=0>
336
Return direction of line.
341
<hr><h2>Member Data Documentation</h2>
342
<a class="anchor" name="o0" doxytag="IpeLine::iP" ></a><p>
343
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
346
<table cellpadding="0" cellspacing="0" border="0">
348
<td class="md" nowrap valign="top"> <a class="el" href="class_ipe_vector.html">IpeVector</a> <a class="el" href="class_ipe_line.html#o0">IpeLine::iP</a>
353
<table cellspacing=5 cellpadding=0 border=0>
366
<hr>The documentation for this class was generated from the following files:<ul>
367
<li>ipegeo.h<li>ipegeo.cpp</ul>