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: IpeSegment 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>IpeSegment Class Reference<br>
10
[<a class="el" href="group__geo.html">Ipe Geometry</a>]</small>
11
</h1>A directed line segment.
12
<a href="#_details">More...</a>
14
<a href="class_ipe_segment-members.html">List of all members.</a><h2>Public Member Functions</h2>
16
<li><a class="el" href="class_ipe_segment.html#a0">IpeSegment</a> ()
17
<li><a class="anchor" name="a1" doxytag="IpeSegment::IpeSegment" ></a>
18
<b>IpeSegment</b> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &p, const <a class="el" href="class_ipe_vector.html">IpeVector</a> &q)
19
<li><a class="el" href="class_ipe_line.html">IpeLine</a> <a class="el" href="class_ipe_segment.html#a2">Line</a> () const
20
<li>double <a class="el" href="class_ipe_segment.html#a3">Distance</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &v, double bound) const
21
<li>double <a class="el" href="class_ipe_segment.html#a4">Distance</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &v) const
22
<li>bool <a class="el" href="class_ipe_segment.html#a5">Project</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &v, <a class="el" href="class_ipe_vector.html">IpeVector</a> &projection) const
23
<li>bool <a class="el" href="class_ipe_segment.html#a6">Intersects</a> (const <a class="el" href="class_ipe_segment.html">IpeSegment</a> &seg, <a class="el" href="class_ipe_vector.html">IpeVector</a> &pt) const
24
<li>bool <a class="el" href="class_ipe_segment.html#a7">Intersects</a> (const <a class="el" href="class_ipe_line.html">IpeLine</a> &l, <a class="el" href="class_ipe_vector.html">IpeVector</a> &pt) const
26
<h2>Public Attributes</h2>
28
<li><a class="el" href="class_ipe_vector.html">IpeVector</a> <a class="el" href="class_ipe_segment.html#o0">iP</a>
29
<li><a class="el" href="class_ipe_vector.html">IpeVector</a> <a class="el" href="class_ipe_segment.html#o1">iQ</a>
31
<hr><a name="_details"></a><h2>Detailed Description</h2>
32
A directed line segment.
34
<hr><h2>Constructor & Destructor Documentation</h2>
35
<a class="anchor" name="a0" doxytag="IpeSegment::IpeSegment" ></a><p>
36
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
39
<table cellpadding="0" cellspacing="0" border="0">
41
<td class="md" nowrap valign="top"> IpeSegment::IpeSegment </td>
42
<td class="md" valign="top">( </td>
43
<td class="mdname1" valign="top" nowrap> </td>
44
<td class="md" valign="top"> ) </td>
45
<td class="md" nowrap><code> [inline]</code></td>
52
<table cellspacing=5 cellpadding=0 border=0>
60
Create default segment.
65
<hr><h2>Member Function Documentation</h2>
66
<a class="anchor" name="a2" doxytag="IpeSegment::Line" ></a><p>
67
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
70
<table cellpadding="0" cellspacing="0" border="0">
72
<td class="md" nowrap valign="top"> <a class="el" href="class_ipe_line.html">IpeLine</a> IpeSegment::Line </td>
73
<td class="md" valign="top">( </td>
74
<td class="mdname1" valign="top" nowrap> </td>
75
<td class="md" valign="top"> ) </td>
76
<td class="md" nowrap> const<code> [inline]</code></td>
83
<table cellspacing=5 cellpadding=0 border=0>
91
Return directed line supporting the segment.
96
<a class="anchor" name="a3" doxytag="IpeSegment::Distance" ></a><p>
97
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
100
<table cellpadding="0" cellspacing="0" border="0">
102
<td class="md" nowrap valign="top"> double IpeSegment::Distance </td>
103
<td class="md" valign="top">( </td>
104
<td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
105
<td class="mdname" nowrap> <em>v</em>, </td>
110
<td class="md" nowrap>double </td>
111
<td class="mdname" nowrap> <em>bound</em></td>
115
<td class="md">) </td>
116
<td class="md" colspan="2"> const</td>
123
<table cellspacing=5 cellpadding=0 border=0>
131
Returns distance between segment and point <em>v</em>, but may just return <em>bound</em> when its larger than <em>bound</em>. </td>
134
<a class="anchor" name="a4" doxytag="IpeSegment::Distance" ></a><p>
135
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
138
<table cellpadding="0" cellspacing="0" border="0">
140
<td class="md" nowrap valign="top"> double IpeSegment::Distance </td>
141
<td class="md" valign="top">( </td>
142
<td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
143
<td class="mdname1" valign="top" nowrap> <em>v</em> </td>
144
<td class="md" valign="top"> ) </td>
145
<td class="md" nowrap> const</td>
152
<table cellspacing=5 cellpadding=0 border=0>
160
Returns distance between segment and point <em>v</em> </td>
163
<a class="anchor" name="a5" doxytag="IpeSegment::Project" ></a><p>
164
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
167
<table cellpadding="0" cellspacing="0" border="0">
169
<td class="md" nowrap valign="top"> bool IpeSegment::Project </td>
170
<td class="md" valign="top">( </td>
171
<td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
172
<td class="mdname" nowrap> <em>v</em>, </td>
177
<td class="md" nowrap><a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
178
<td class="mdname" nowrap> <em>projection</em></td>
182
<td class="md">) </td>
183
<td class="md" colspan="2"> const</td>
190
<table cellspacing=5 cellpadding=0 border=0>
198
Project point <em>v</em> orthogonally on segment. Returns false if the point falls outside the segment. </td>
201
<a class="anchor" name="a6" doxytag="IpeSegment::Intersects" ></a><p>
202
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
205
<table cellpadding="0" cellspacing="0" border="0">
207
<td class="md" nowrap valign="top"> bool IpeSegment::Intersects </td>
208
<td class="md" valign="top">( </td>
209
<td class="md" nowrap valign="top">const <a class="el" href="class_ipe_segment.html">IpeSegment</a> & </td>
210
<td class="mdname" nowrap> <em>seg</em>, </td>
215
<td class="md" nowrap><a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
216
<td class="mdname" nowrap> <em>pt</em></td>
220
<td class="md">) </td>
221
<td class="md" colspan="2"> const</td>
228
<table cellspacing=5 cellpadding=0 border=0>
236
Compute intersection point. Return <code>false</code> if segs don't intersect.
241
<a class="anchor" name="a7" doxytag="IpeSegment::Intersects" ></a><p>
242
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
245
<table cellpadding="0" cellspacing="0" border="0">
247
<td class="md" nowrap valign="top"> bool IpeSegment::Intersects </td>
248
<td class="md" valign="top">( </td>
249
<td class="md" nowrap valign="top">const <a class="el" href="class_ipe_line.html">IpeLine</a> & </td>
250
<td class="mdname" nowrap> <em>l</em>, </td>
255
<td class="md" nowrap><a class="el" href="class_ipe_vector.html">IpeVector</a> & </td>
256
<td class="mdname" nowrap> <em>pt</em></td>
260
<td class="md">) </td>
261
<td class="md" colspan="2"> const</td>
268
<table cellspacing=5 cellpadding=0 border=0>
276
Compute intersection point. Return <code>false</code> if no intersection.
281
<hr><h2>Member Data Documentation</h2>
282
<a class="anchor" name="o0" doxytag="IpeSegment::iP" ></a><p>
283
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
286
<table cellpadding="0" cellspacing="0" border="0">
288
<td class="md" nowrap valign="top"> <a class="el" href="class_ipe_vector.html">IpeVector</a> <a class="el" href="class_ipe_segment.html#o0">IpeSegment::iP</a>
293
<table cellspacing=5 cellpadding=0 border=0>
306
<a class="anchor" name="o1" doxytag="IpeSegment::iQ" ></a><p>
307
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
310
<table cellpadding="0" cellspacing="0" border="0">
312
<td class="md" nowrap valign="top"> <a class="el" href="class_ipe_vector.html">IpeVector</a> <a class="el" href="class_ipe_segment.html#o1">IpeSegment::iQ</a>
317
<table cellspacing=5 cellpadding=0 border=0>
330
<hr>The documentation for this class was generated from the following files:<ul>
331
<li>ipegeo.h<li>ipegeo.cpp</ul>