1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
<html xmlns="http://www.w3.org/1999/xhtml">
4
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
3
5
<title>Ipelib: ipe::Path Class Reference</title>
4
<link href="tabs.css" rel="stylesheet" type="text/css">
5
<link href="doxygen.css" rel="stylesheet" type="text/css">
7
<!-- Generated by Doxygen 1.5.8 -->
8
<div class="navigation" id="top">
11
<li><a href="index.html"><span>Main Page</span></a></li>
6
<link href="tabs.css" rel="stylesheet" type="text/css"/>
7
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
10
<!-- Generated by Doxygen 1.7.3 -->
13
<table cellspacing="0" cellpadding="0">
15
<tr style="height: 56px;">
16
<td style="padding-left: 0.5em;">
17
<div id="projectname">Ipelib</div>
23
<div id="navrow1" class="tabs">
25
<li><a href="index.html"><span>Main Page</span></a></li>
12
26
<li><a href="modules.html"><span>Modules</span></a></li>
13
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
14
27
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
30
<div id="navrow2" class="tabs2">
32
<li><a href="annotated.html"><span>Class List</span></a></li>
33
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
34
<li><a href="functions.html"><span>Class Members</span></a></li>
37
<div id="nav-path" class="navpath">
19
<li><a href="annotated.html"><span>Class List</span></a></li>
20
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
21
<li><a href="functions.html"><span>Class Members</span></a></li>
24
<div class="navpath"><a class="el" href="namespaceipe.html">ipe</a>::<a class="el" href="classipe_1_1_path.html">Path</a>
39
<li class="navelem"><b>ipe</b> </li>
40
<li class="navelem"><a class="el" href="classipe_1_1_path.html">Path</a> </li>
44
<a href="#pub-methods">Public Member Functions</a> |
45
<a href="#pub-static-methods">Static Public Member Functions</a> </div>
46
<div class="headertitle">
47
<h1>ipe::Path Class Reference<div class="ingroups"><a class="el" href="group__obj.html">Ipe Objects</a></div></h1> </div>
27
49
<div class="contents">
28
<h1>ipe::Path Class Reference<br>
30
[<a class="el" href="group__obj.html">Ipe Objects</a>]</small>
31
</h1><!-- doxytag: class="ipe::Path" --><!-- doxytag: inherits="ipe::Object" -->The path object (polylines, polygons, and generalizations).
32
<a href="#_details">More...</a>
34
<code>#include <ipepath.h></code>
36
Inherits <a class="el" href="classipe_1_1_object.html">ipe::Object</a>.
40
<a href="classipe_1_1_path-members.html">List of all members.</a><h2>Public Member Functions</h2>
42
<li><a class="el" href="classipe_1_1_path.html#84c0e9f0e7be7d8faceda7a427f563cc">Path</a> (const <a class="el" href="classipe_1_1_all_attributes.html">AllAttributes</a> &attr, const <a class="el" href="classipe_1_1_shape.html">Shape</a> &shape, bool withArrows=false)
43
<li>virtual <a class="el" href="classipe_1_1_object.html">Object</a> * <a class="el" href="classipe_1_1_path.html#df3bd9a6f977ad5b6e78564820303372">clone</a> () const
44
<li>virtual <a class="el" href="classipe_1_1_path.html">Path</a> * <a class="el" href="classipe_1_1_path.html#ebf144e887c6e05e5ea90f86ae3805d9">asPath</a> ()
45
<li>virtual <a class="el" href="classipe_1_1_object.html#037ce2be9769f2ab8f20509ab18c67d6">Type</a> <a class="el" href="classipe_1_1_path.html#49233442aae6e0b2298d68e22027cf43">type</a> () const
46
<li>void <a class="el" href="classipe_1_1_path.html#a3013444262dfe27f8db0ad5689dfc7c">setPathMode</a> (<a class="el" href="group__attr.html#g40b15a8cc8f66dc518621289ed4f1cd6">TPathMode</a> pm)
47
<li>void <a class="el" href="classipe_1_1_path.html#d1b4fa879ecaa47ecfae5320a362fbe7">setStroke</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> stroke)
48
<li>void <a class="el" href="classipe_1_1_path.html#e249ea8277e89955d8c7460218e25d68">setFill</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> fill)
49
<li>void <a class="el" href="classipe_1_1_path.html#c86c3ccb9fe06d61b4213ed7d55b0011">setPen</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> pen)
50
<li>void <a class="el" href="classipe_1_1_path.html#0697147928ac962e7ca71f3faea37b7e">setDashStyle</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> dash)
51
<li>void <a class="el" href="classipe_1_1_path.html#08ebf0d5ee538fa2409372c9da2ed1cc">setLineCap</a> (<a class="el" href="group__attr.html#g2a173ffa6945f9033fffd786ada441b5">TLineCap</a> s)
52
<li>void <a class="el" href="classipe_1_1_path.html#91b7c30892f83b0ee4297f2af94693f1">setLineJoin</a> (<a class="el" href="group__attr.html#ge5ab4b7143ab5ed05efcdbe4bbb9dd93">TLineJoin</a> s)
53
<li>void <a class="el" href="classipe_1_1_path.html#0982ee9bfab209f5918e0af81e9889b7">setFillRule</a> (<a class="el" href="group__attr.html#g4defbee452ac9648e94eee7878214647">TFillRule</a> s)
54
<li>void <a class="el" href="classipe_1_1_path.html#f780da685088674aba1593639ae5b225">setOpacity</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> opaq)
55
<li>void <a class="el" href="classipe_1_1_path.html#fe0a30295a75dee77cafa25015e580fe">setTiling</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> a)
56
<li>void <a class="el" href="classipe_1_1_path.html#91dc9b7c86529a70a4a20d9efe3e71a7">setGradient</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> a)
57
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#dc707fcc11e1bbb6fb997ed6055ad02b">opacity</a> () const
58
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#da19b9c0e69bda4b4577211251db1697">tiling</a> () const
59
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#4c745d7cc5b2a6caee690b9c2d8ea9f6">gradient</a> () const
60
<li><a class="el" href="group__attr.html#g40b15a8cc8f66dc518621289ed4f1cd6">TPathMode</a> <a class="el" href="classipe_1_1_path.html#c8c9509c5184d2e0d6350585549fbc17">pathMode</a> () const
61
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#601b8bc15316e359fc6e598430149cb0">stroke</a> () const
62
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#ef9db36793d75802a62f0541f13774a3">fill</a> () const
63
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#a58c4d73032847b9aa64b46c9dfde340">pen</a> () const
64
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#3e4d7b3569e60d688b4c829f7187f93f">dashStyle</a> () const
65
<li><a class="el" href="group__attr.html#g2a173ffa6945f9033fffd786ada441b5">TLineCap</a> <a class="el" href="classipe_1_1_path.html#04834903484817bd93cdf5618858301f">lineCap</a> () const
66
<li><a class="el" href="group__attr.html#ge5ab4b7143ab5ed05efcdbe4bbb9dd93">TLineJoin</a> <a class="el" href="classipe_1_1_path.html#699c5754614ce044bf1a31a89d1bf246">lineJoin</a> () const
67
<li><a class="el" href="group__attr.html#g4defbee452ac9648e94eee7878214647">TFillRule</a> <a class="el" href="classipe_1_1_path.html#c1ab6e6e58ef6ce5e8c81ba15abcf914">fillRule</a> () const
68
<li>virtual void <a class="el" href="classipe_1_1_path.html#5bd2ff7d9b5c2f3c22203f97e318e299">saveAsXml</a> (<a class="el" href="classipe_1_1_stream.html">Stream</a> &stream, <a class="el" href="classipe_1_1_string.html">String</a> layer) const
69
<li>virtual void <a class="el" href="classipe_1_1_path.html#2b47a6f8de5c400821032d37bc652c1d">draw</a> (<a class="el" href="classipe_1_1_painter.html">Painter</a> &painter) const
70
<li>virtual void <a class="el" href="classipe_1_1_path.html#853c4634c4144607f4c27c72e8d719e3">drawSimple</a> (<a class="el" href="classipe_1_1_painter.html">Painter</a> &painter) const
71
<li>virtual void <a class="el" href="classipe_1_1_path.html#6e43f929f0cec8c7912fc95a7643e8bc">accept</a> (<a class="el" href="classipe_1_1_visitor.html">Visitor</a> &visitor) const
72
<li>virtual void <a class="el" href="classipe_1_1_path.html#5dc03ed6dd35e8ab9bcf75aed6b6d9df">addToBBox</a> (<a class="el" href="classipe_1_1_rect.html">Rect</a> &box, const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> &m, bool cp) const
73
<li>virtual double <a class="el" href="classipe_1_1_path.html#346882ca252e24317a0dd9e6bed700b4">distance</a> (const <a class="el" href="classipe_1_1_vector.html">Vector</a> &v, const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> &m, double bound) const
74
<li>virtual void <a class="el" href="classipe_1_1_path.html#ddc7bdf796ddc49456ab6e8626cc30ab">snapVtx</a> (const <a class="el" href="classipe_1_1_vector.html">Vector</a> &mouse, const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> &m, <a class="el" href="classipe_1_1_vector.html">Vector</a> &pos, double &bound) const
75
<li>virtual void <a class="el" href="classipe_1_1_path.html#56de14d8b2a3ada8101d2c630b6f59e5">snapBnd</a> (const <a class="el" href="classipe_1_1_vector.html">Vector</a> &mouse, const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> &m, <a class="el" href="classipe_1_1_vector.html">Vector</a> &pos, double &bound) const
76
<li>virtual void <a class="el" href="classipe_1_1_path.html#9eabfc43680c2059fac88f3d715da53c">checkStyle</a> (const <a class="el" href="classipe_1_1_cascade.html">Cascade</a> *sheet, <a class="el" href="group__attr.html#g724109aa4dbab072ea067cc5ed471e02">AttributeSeq</a> &seq) const
77
<li>virtual bool <a class="el" href="classipe_1_1_path.html#81166665a45d05a219324754f0cf0e62">setAttribute</a> (<a class="el" href="group__attr.html#gc50c1b1c913f9551a97e37ef29eb462f">Property</a> prop, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> value, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> stroke, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> fill)
78
<li>virtual <a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#c0b24cf2aa0badea5fd7073d37e64435">getAttribute</a> (<a class="el" href="group__attr.html#gc50c1b1c913f9551a97e37ef29eb462f">Property</a> prop)
79
<li>bool <a class="el" href="classipe_1_1_path.html#e4424f1b2ff2b6534924ea5c5e52ebc8">arrow</a> () const
80
<li>bool <a class="el" href="classipe_1_1_path.html#2d4470e2d1be1bc90b3c3a4084c5dfd7">rArrow</a> () const
81
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#b2eb23018ffa5f621aae5ff34350fda9">arrowShape</a> () const
82
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#6dc4f8283de7e0cff9a57ddda227d162">rArrowShape</a> () const
83
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#1167a8662140e5d744dfe3c0868da0ed">arrowSize</a> () const
84
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#b8296bfa56b0156206d43667ab620a72">rArrowSize</a> () const
85
<li>void <a class="el" href="classipe_1_1_path.html#67bcd47d6e5c5f4ad12df2114a7732ee">setArrow</a> (bool arrow, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> shape, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> size)
86
<li>void <a class="el" href="classipe_1_1_path.html#03e234a4ca96e75160e0c855d493e178">setRarrow</a> (bool arrow, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> shape, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> size)
87
<li>const <a class="el" href="classipe_1_1_shape.html">Shape</a> & <a class="el" href="classipe_1_1_path.html#574acee6d796ed4f45970cb190a1121e">shape</a> () const
88
<li>void <a class="el" href="classipe_1_1_path.html#e7014f62d96b8688d91c8d2ad39fca9d">setShape</a> (const <a class="el" href="classipe_1_1_shape.html">Shape</a> &shape)
90
<h2>Static Public Member Functions</h2>
92
<li>static <a class="el" href="classipe_1_1_path.html">Path</a> * <a class="el" href="classipe_1_1_path.html#9afc013a3a45fc31484e4f121b0a1c91">create</a> (const <a class="el" href="classipe_1_1_xml_attributes.html">XmlAttributes</a> &attr, <a class="el" href="classipe_1_1_string.html">String</a> data)
93
<li>static void <a class="el" href="classipe_1_1_path.html#6000b9ab135128f960b40418c764e2e9">drawArrow</a> (<a class="el" href="classipe_1_1_painter.html">Painter</a> &painter, <a class="el" href="classipe_1_1_vector.html">Vector</a> pos, <a class="el" href="classipe_1_1_angle.html">Angle</a> alpha, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> shape, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> size, double radius)
95
<hr><a name="_details"></a><h2>Detailed Description</h2>
96
The path object (polylines, polygons, and generalizations).
98
This object represents any vector graphics. The geometry is contained in a <a class="el" href="classipe_1_1_shape.html" title="A geometric shape, consisting of several (open or closed) subpaths.">Shape</a>.<p>
99
The filling algorithm is the <b>even-odd rule</b> of PDF: To determine whether a point lies inside the filled shape, draw a ray from that point in any direction, and count the number of path segments that cross the ray. If this number is odd, the point is inside; if even, the point is outside. (<a class="el" href="classipe_1_1_path.html" title="The path object (polylines, polygons, and generalizations).">Path</a> objects can also render using the <b>winding fill rule</b> by setting the fillRule attribute. This isn't really supported by the Ipe user interface, which doesn't show the orientation of paths.) <hr><h2>Constructor & Destructor Documentation</h2>
100
<a class="anchor" name="84c0e9f0e7be7d8faceda7a427f563cc"></a><!-- doxytag: member="ipe::Path::Path" ref="84c0e9f0e7be7d8faceda7a427f563cc" args="(const AllAttributes &attr, const Shape &shape, bool withArrows=false)" -->
101
<div class="memitem">
102
<div class="memproto">
103
<table class="memname">
105
<td class="memname">Path::Path </td>
107
<td class="paramtype">const <a class="el" href="classipe_1_1_all_attributes.html">AllAttributes</a> & </td>
108
<td class="paramname"> <em>attr</em>, </td>
111
<td class="paramkey"></td>
113
<td class="paramtype">const <a class="el" href="classipe_1_1_shape.html">Shape</a> & </td>
114
<td class="paramname"> <em>shape</em>, </td>
117
<td class="paramkey"></td>
119
<td class="paramtype">bool </td>
120
<td class="paramname"> <em>withArrows</em> = <code>false</code></td><td> </td>
125
<td></td><td></td><td><code> [explicit]</code></td>
132
Create for given shape.
137
<hr><h2>Member Function Documentation</h2>
138
<a class="anchor" name="9afc013a3a45fc31484e4f121b0a1c91"></a><!-- doxytag: member="ipe::Path::create" ref="9afc013a3a45fc31484e4f121b0a1c91" args="(const XmlAttributes &attr, String data)" -->
139
<div class="memitem">
140
<div class="memproto">
141
<table class="memname">
143
<td class="memname"><a class="el" href="classipe_1_1_path.html">Path</a> * Path::create </td>
145
<td class="paramtype">const <a class="el" href="classipe_1_1_xml_attributes.html">XmlAttributes</a> & </td>
146
<td class="paramname"> <em>attr</em>, </td>
149
<td class="paramkey"></td>
151
<td class="paramtype"><a class="el" href="classipe_1_1_string.html">String</a> </td>
152
<td class="paramname"> <em>data</em></td><td> </td>
157
<td></td><td></td><td><code> [static]</code></td>
164
Construct from XML data.
169
<a class="anchor" name="df3bd9a6f977ad5b6e78564820303372"></a><!-- doxytag: member="ipe::Path::clone" ref="df3bd9a6f977ad5b6e78564820303372" args="() const " -->
170
<div class="memitem">
171
<div class="memproto">
172
<table class="memname">
174
<td class="memname"><a class="el" href="classipe_1_1_object.html">Object</a> * Path::clone </td>
176
<td class="paramname"> </td>
177
<td> ) </td>
178
<td> const<code> [virtual]</code></td>
185
Return a clone (constant-time).
188
<p>Implements <a class="el" href="classipe_1_1_object.html#c6289d8762c8cfad2526d7e299ee4829">ipe::Object</a>.</p>
192
<a class="anchor" name="ebf144e887c6e05e5ea90f86ae3805d9"></a><!-- doxytag: member="ipe::Path::asPath" ref="ebf144e887c6e05e5ea90f86ae3805d9" args="()" -->
193
<div class="memitem">
194
<div class="memproto">
195
<table class="memname">
197
<td class="memname"><a class="el" href="classipe_1_1_path.html">Path</a> * Path::asPath </td>
199
<td class="paramname"> </td>
200
<td> ) </td>
201
<td><code> [virtual]</code></td>
208
Return pointer to this object.
211
<p>Reimplemented from <a class="el" href="classipe_1_1_object.html#c589cb8ae9e6aeb6489580fab7a1f373">ipe::Object</a>.</p>
215
<a class="anchor" name="49233442aae6e0b2298d68e22027cf43"></a><!-- doxytag: member="ipe::Path::type" ref="49233442aae6e0b2298d68e22027cf43" args="() const " -->
216
<div class="memitem">
217
<div class="memproto">
218
<table class="memname">
220
<td class="memname"><a class="el" href="classipe_1_1_object.html#037ce2be9769f2ab8f20509ab18c67d6">Object::Type</a> Path::type </td>
222
<td class="paramname"> </td>
223
<td> ) </td>
224
<td> const<code> [virtual]</code></td>
232
<p>Implements <a class="el" href="classipe_1_1_object.html#7e619fb9163e86ffd9d764d442c7a724">ipe::Object</a>.</p>
236
<a class="anchor" name="a3013444262dfe27f8db0ad5689dfc7c"></a><!-- doxytag: member="ipe::Path::setPathMode" ref="a3013444262dfe27f8db0ad5689dfc7c" args="(TPathMode pm)" -->
237
<div class="memitem">
238
<div class="memproto">
239
<table class="memname">
241
<td class="memname">void Path::setPathMode </td>
243
<td class="paramtype"><a class="el" href="group__attr.html#g40b15a8cc8f66dc518621289ed4f1cd6">TPathMode</a> </td>
244
<td class="paramname"> <em>pm</em> </td>
245
<td> ) </td>
253
Set whether object will be stroked and filled.
258
<a class="anchor" name="d1b4fa879ecaa47ecfae5320a362fbe7"></a><!-- doxytag: member="ipe::Path::setStroke" ref="d1b4fa879ecaa47ecfae5320a362fbe7" args="(Attribute stroke)" -->
259
<div class="memitem">
260
<div class="memproto">
261
<table class="memname">
263
<td class="memname">void Path::setStroke </td>
265
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
266
<td class="paramname"> <em>stroke</em> </td>
267
<td> ) </td>
280
<a class="anchor" name="e249ea8277e89955d8c7460218e25d68"></a><!-- doxytag: member="ipe::Path::setFill" ref="e249ea8277e89955d8c7460218e25d68" args="(Attribute fill)" -->
281
<div class="memitem">
282
<div class="memproto">
283
<table class="memname">
285
<td class="memname">void Path::setFill </td>
287
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
288
<td class="paramname"> <em>fill</em> </td>
289
<td> ) </td>
302
<a class="anchor" name="c86c3ccb9fe06d61b4213ed7d55b0011"></a><!-- doxytag: member="ipe::Path::setPen" ref="c86c3ccb9fe06d61b4213ed7d55b0011" args="(Attribute pen)" -->
303
<div class="memitem">
304
<div class="memproto">
305
<table class="memname">
307
<td class="memname">void Path::setPen </td>
309
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
310
<td class="paramname"> <em>pen</em> </td>
311
<td> ) </td>
324
<a class="anchor" name="0697147928ac962e7ca71f3faea37b7e"></a><!-- doxytag: member="ipe::Path::setDashStyle" ref="0697147928ac962e7ca71f3faea37b7e" args="(Attribute dash)" -->
325
<div class="memitem">
326
<div class="memproto">
327
<table class="memname">
329
<td class="memname">void Path::setDashStyle </td>
331
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
332
<td class="paramname"> <em>dash</em> </td>
333
<td> ) </td>
346
<a class="anchor" name="08ebf0d5ee538fa2409372c9da2ed1cc"></a><!-- doxytag: member="ipe::Path::setLineCap" ref="08ebf0d5ee538fa2409372c9da2ed1cc" args="(TLineCap s)" -->
347
<div class="memitem">
348
<div class="memproto">
349
<table class="memname">
351
<td class="memname">void Path::setLineCap </td>
353
<td class="paramtype"><a class="el" href="group__attr.html#g2a173ffa6945f9033fffd786ada441b5">TLineCap</a> </td>
354
<td class="paramname"> <em>s</em> </td>
355
<td> ) </td>
368
<a class="anchor" name="91b7c30892f83b0ee4297f2af94693f1"></a><!-- doxytag: member="ipe::Path::setLineJoin" ref="91b7c30892f83b0ee4297f2af94693f1" args="(TLineJoin s)" -->
369
<div class="memitem">
370
<div class="memproto">
371
<table class="memname">
373
<td class="memname">void Path::setLineJoin </td>
375
<td class="paramtype"><a class="el" href="group__attr.html#ge5ab4b7143ab5ed05efcdbe4bbb9dd93">TLineJoin</a> </td>
376
<td class="paramname"> <em>s</em> </td>
377
<td> ) </td>
390
<a class="anchor" name="0982ee9bfab209f5918e0af81e9889b7"></a><!-- doxytag: member="ipe::Path::setFillRule" ref="0982ee9bfab209f5918e0af81e9889b7" args="(TFillRule s)" -->
391
<div class="memitem">
392
<div class="memproto">
393
<table class="memname">
395
<td class="memname">void Path::setFillRule </td>
397
<td class="paramtype"><a class="el" href="group__attr.html#g4defbee452ac9648e94eee7878214647">TFillRule</a> </td>
398
<td class="paramname"> <em>s</em> </td>
399
<td> ) </td>
412
<a class="anchor" name="f780da685088674aba1593639ae5b225"></a><!-- doxytag: member="ipe::Path::setOpacity" ref="f780da685088674aba1593639ae5b225" args="(Attribute opaq)" -->
413
<div class="memitem">
414
<div class="memproto">
415
<table class="memname">
417
<td class="memname">void Path::setOpacity </td>
419
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
420
<td class="paramname"> <em>opaq</em> </td>
421
<td> ) </td>
429
Set opacity of the object.
434
<a class="anchor" name="fe0a30295a75dee77cafa25015e580fe"></a><!-- doxytag: member="ipe::Path::setTiling" ref="fe0a30295a75dee77cafa25015e580fe" args="(Attribute a)" -->
435
<div class="memitem">
436
<div class="memproto">
437
<table class="memname">
439
<td class="memname">void Path::setTiling </td>
441
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
442
<td class="paramname"> <em>til</em> </td>
443
<td> ) </td>
451
Set tiling pattern of the object.
453
Resets gradient fill.
456
<a class="anchor" name="91dc9b7c86529a70a4a20d9efe3e71a7"></a><!-- doxytag: member="ipe::Path::setGradient" ref="91dc9b7c86529a70a4a20d9efe3e71a7" args="(Attribute a)" -->
457
<div class="memitem">
458
<div class="memproto">
459
<table class="memname">
461
<td class="memname">void Path::setGradient </td>
463
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
464
<td class="paramname"> <em>grad</em> </td>
465
<td> ) </td>
473
Set gradient fill of the object.
475
Resets tiling pattern.
478
<a class="anchor" name="dc707fcc11e1bbb6fb997ed6055ad02b"></a><!-- doxytag: member="ipe::Path::opacity" ref="dc707fcc11e1bbb6fb997ed6055ad02b" args="() const " -->
479
<div class="memitem">
480
<div class="memproto">
481
<table class="memname">
483
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::opacity </td>
485
<td class="paramname"> </td>
486
<td> ) </td>
487
<td> const<code> [inline]</code></td>
494
Return opacity of the opject.
499
<a class="anchor" name="da19b9c0e69bda4b4577211251db1697"></a><!-- doxytag: member="ipe::Path::tiling" ref="da19b9c0e69bda4b4577211251db1697" args="() const " -->
500
<div class="memitem">
501
<div class="memproto">
502
<table class="memname">
504
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::tiling </td>
506
<td class="paramname"> </td>
507
<td> ) </td>
508
<td> const<code> [inline]</code></td>
515
Return tiling pattern.
520
<a class="anchor" name="4c745d7cc5b2a6caee690b9c2d8ea9f6"></a><!-- doxytag: member="ipe::Path::gradient" ref="4c745d7cc5b2a6caee690b9c2d8ea9f6" args="() const " -->
521
<div class="memitem">
522
<div class="memproto">
523
<table class="memname">
525
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::gradient </td>
527
<td class="paramname"> </td>
528
<td> ) </td>
529
<td> const<code> [inline]</code></td>
536
Return gradient fill.
541
<a class="anchor" name="c8c9509c5184d2e0d6350585549fbc17"></a><!-- doxytag: member="ipe::Path::pathMode" ref="c8c9509c5184d2e0d6350585549fbc17" args="() const " -->
542
<div class="memitem">
543
<div class="memproto">
544
<table class="memname">
546
<td class="memname"><a class="el" href="group__attr.html#g40b15a8cc8f66dc518621289ed4f1cd6">TPathMode</a> ipe::Path::pathMode </td>
548
<td class="paramname"> </td>
549
<td> ) </td>
550
<td> const<code> [inline]</code></td>
557
Is the object stroked and filled?
562
<a class="anchor" name="601b8bc15316e359fc6e598430149cb0"></a><!-- doxytag: member="ipe::Path::stroke" ref="601b8bc15316e359fc6e598430149cb0" args="() const " -->
563
<div class="memitem">
564
<div class="memproto">
565
<table class="memname">
567
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::stroke </td>
569
<td class="paramname"> </td>
570
<td> ) </td>
571
<td> const<code> [inline]</code></td>
583
<a class="anchor" name="ef9db36793d75802a62f0541f13774a3"></a><!-- doxytag: member="ipe::Path::fill" ref="ef9db36793d75802a62f0541f13774a3" args="() const " -->
584
<div class="memitem">
585
<div class="memproto">
586
<table class="memname">
588
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::fill </td>
590
<td class="paramname"> </td>
591
<td> ) </td>
592
<td> const<code> [inline]</code></td>
599
Return object fill color.
604
<a class="anchor" name="a58c4d73032847b9aa64b46c9dfde340"></a><!-- doxytag: member="ipe::Path::pen" ref="a58c4d73032847b9aa64b46c9dfde340" args="() const " -->
605
<div class="memitem">
606
<div class="memproto">
607
<table class="memname">
609
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::pen </td>
611
<td class="paramname"> </td>
612
<td> ) </td>
613
<td> const<code> [inline]</code></td>
625
<a class="anchor" name="3e4d7b3569e60d688b4c829f7187f93f"></a><!-- doxytag: member="ipe::Path::dashStyle" ref="3e4d7b3569e60d688b4c829f7187f93f" args="() const " -->
626
<div class="memitem">
627
<div class="memproto">
628
<table class="memname">
630
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::dashStyle </td>
632
<td class="paramname"> </td>
633
<td> ) </td>
634
<td> const<code> [inline]</code></td>
641
Return object line style.
646
<a class="anchor" name="04834903484817bd93cdf5618858301f"></a><!-- doxytag: member="ipe::Path::lineCap" ref="04834903484817bd93cdf5618858301f" args="() const " -->
647
<div class="memitem">
648
<div class="memproto">
649
<table class="memname">
651
<td class="memname"><a class="el" href="group__attr.html#g2a173ffa6945f9033fffd786ada441b5">TLineCap</a> ipe::Path::lineCap </td>
653
<td class="paramname"> </td>
654
<td> ) </td>
655
<td> const<code> [inline]</code></td>
662
Return line cap style.
667
<a class="anchor" name="699c5754614ce044bf1a31a89d1bf246"></a><!-- doxytag: member="ipe::Path::lineJoin" ref="699c5754614ce044bf1a31a89d1bf246" args="() const " -->
668
<div class="memitem">
669
<div class="memproto">
670
<table class="memname">
672
<td class="memname"><a class="el" href="group__attr.html#ge5ab4b7143ab5ed05efcdbe4bbb9dd93">TLineJoin</a> ipe::Path::lineJoin </td>
674
<td class="paramname"> </td>
675
<td> ) </td>
676
<td> const<code> [inline]</code></td>
683
Return line join style.
688
<a class="anchor" name="c1ab6e6e58ef6ce5e8c81ba15abcf914"></a><!-- doxytag: member="ipe::Path::fillRule" ref="c1ab6e6e58ef6ce5e8c81ba15abcf914" args="() const " -->
689
<div class="memitem">
690
<div class="memproto">
691
<table class="memname">
693
<td class="memname"><a class="el" href="group__attr.html#g4defbee452ac9648e94eee7878214647">TFillRule</a> ipe::Path::fillRule </td>
695
<td class="paramname"> </td>
696
<td> ) </td>
697
<td> const<code> [inline]</code></td>
709
<a class="anchor" name="5bd2ff7d9b5c2f3c22203f97e318e299"></a><!-- doxytag: member="ipe::Path::saveAsXml" ref="5bd2ff7d9b5c2f3c22203f97e318e299" args="(Stream &stream, String layer) const " -->
710
<div class="memitem">
711
<div class="memproto">
712
<table class="memname">
714
<td class="memname">void Path::saveAsXml </td>
716
<td class="paramtype"><a class="el" href="classipe_1_1_stream.html">Stream</a> & </td>
717
<td class="paramname"> <em>stream</em>, </td>
720
<td class="paramkey"></td>
722
<td class="paramtype"><a class="el" href="classipe_1_1_string.html">String</a> </td>
723
<td class="paramname"> <em>layer</em></td><td> </td>
728
<td></td><td></td><td> const<code> [virtual]</code></td>
735
Save the object in XML format.
738
<p>Implements <a class="el" href="classipe_1_1_object.html#e0ff925816acb7f88791c8c828c1ae6d">ipe::Object</a>.</p>
742
<a class="anchor" name="2b47a6f8de5c400821032d37bc652c1d"></a><!-- doxytag: member="ipe::Path::draw" ref="2b47a6f8de5c400821032d37bc652c1d" args="(Painter &painter) const " -->
743
<div class="memitem">
744
<div class="memproto">
745
<table class="memname">
747
<td class="memname">void Path::draw </td>
749
<td class="paramtype"><a class="el" href="classipe_1_1_painter.html">Painter</a> & </td>
750
<td class="paramname"> <em>painter</em> </td>
751
<td> ) </td>
752
<td> const<code> [virtual]</code></td>
762
<p>Implements <a class="el" href="classipe_1_1_object.html#3638c929c74354b20be0fcbbddd58c78">ipe::Object</a>.</p>
766
<a class="anchor" name="853c4634c4144607f4c27c72e8d719e3"></a><!-- doxytag: member="ipe::Path::drawSimple" ref="853c4634c4144607f4c27c72e8d719e3" args="(Painter &painter) const " -->
767
<div class="memitem">
768
<div class="memproto">
769
<table class="memname">
771
<td class="memname">void Path::drawSimple </td>
773
<td class="paramtype"><a class="el" href="classipe_1_1_painter.html">Painter</a> & </td>
774
<td class="paramname"> <em>painter</em> </td>
775
<td> ) </td>
776
<td> const<code> [virtual]</code></td>
783
Draw simple version for selecting and transforming.
786
<p>Implements <a class="el" href="classipe_1_1_object.html#866b9683feb280cefb0b163ecb9f4bdd">ipe::Object</a>.</p>
790
<a class="anchor" name="6e43f929f0cec8c7912fc95a7643e8bc"></a><!-- doxytag: member="ipe::Path::accept" ref="6e43f929f0cec8c7912fc95a7643e8bc" args="(Visitor &visitor) const " -->
791
<div class="memitem">
792
<div class="memproto">
793
<table class="memname">
795
<td class="memname">void Path::accept </td>
797
<td class="paramtype"><a class="el" href="classipe_1_1_visitor.html">Visitor</a> & </td>
798
<td class="paramname"> <em>visitor</em> </td>
799
<td> ) </td>
800
<td> const<code> [virtual]</code></td>
807
Call visitPath of visitor.
810
<p>Implements <a class="el" href="classipe_1_1_object.html#a69d47bc571b7f7ef78f041d8bc994fd">ipe::Object</a>.</p>
814
<a class="anchor" name="5dc03ed6dd35e8ab9bcf75aed6b6d9df"></a><!-- doxytag: member="ipe::Path::addToBBox" ref="5dc03ed6dd35e8ab9bcf75aed6b6d9df" args="(Rect &box, const Matrix &m, bool cp) const " -->
815
<div class="memitem">
816
<div class="memproto">
817
<table class="memname">
819
<td class="memname">void Path::addToBBox </td>
821
<td class="paramtype"><a class="el" href="classipe_1_1_rect.html">Rect</a> & </td>
822
<td class="paramname"> <em>box</em>, </td>
825
<td class="paramkey"></td>
827
<td class="paramtype">const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> & </td>
828
<td class="paramname"> <em>m</em>, </td>
831
<td class="paramkey"></td>
833
<td class="paramtype">bool </td>
834
<td class="paramname"> <em>cp</em></td><td> </td>
839
<td></td><td></td><td> const<code> [virtual]</code></td>
846
Extend <em>box</em> to include the object transformed by <em>m</em>.
848
For objects in a page, don't call this directly. The <a class="el" href="classipe_1_1_page.html" title="An Ipe document page.">Page</a> caches the bounding box of each object, so it is far more efficient to call <a class="el" href="classipe_1_1_page.html#fd3572a1f0bd7d55cc2ceb54804bbfa5" title="Return a bounding box for the object at index i.">Page::bbox</a>.<p>
849
Control points that lie outside the visual object are included if <em>cp</em> is true.<p>
850
If called with an empty box and <em>cp</em> == <code>false</code>, the result of this function is a tight bounding box for the object, with a little leeway in case the boundary is determined by a spline (it has to be approximated to perform this operation).
851
<p>Implements <a class="el" href="classipe_1_1_object.html#bf86969debbc7a737b0c689ae37d6595">ipe::Object</a>.</p>
855
<a class="anchor" name="346882ca252e24317a0dd9e6bed700b4"></a><!-- doxytag: member="ipe::Path::distance" ref="346882ca252e24317a0dd9e6bed700b4" args="(const Vector &v, const Matrix &m, double bound) const " -->
856
<div class="memitem">
857
<div class="memproto">
858
<table class="memname">
860
<td class="memname">double Path::distance </td>
862
<td class="paramtype">const <a class="el" href="classipe_1_1_vector.html">Vector</a> & </td>
863
<td class="paramname"> <em>v</em>, </td>
866
<td class="paramkey"></td>
868
<td class="paramtype">const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> & </td>
869
<td class="paramname"> <em>m</em>, </td>
872
<td class="paramkey"></td>
874
<td class="paramtype">double </td>
875
<td class="paramname"> <em>bound</em></td><td> </td>
880
<td></td><td></td><td> const<code> [virtual]</code></td>
887
Return distance of transformed object to point <em>v</em>. If larger than <em>bound</em>, can just return <em>bound</em>.
888
<p>Implements <a class="el" href="classipe_1_1_object.html#b1839318060c6b051256f6e189f1f967">ipe::Object</a>.</p>
892
<a class="anchor" name="ddc7bdf796ddc49456ab6e8626cc30ab"></a><!-- doxytag: member="ipe::Path::snapVtx" ref="ddc7bdf796ddc49456ab6e8626cc30ab" args="(const Vector &mouse, const Matrix &m, Vector &pos, double &bound) const " -->
893
<div class="memitem">
894
<div class="memproto">
895
<table class="memname">
897
<td class="memname">void Path::snapVtx </td>
899
<td class="paramtype">const <a class="el" href="classipe_1_1_vector.html">Vector</a> & </td>
900
<td class="paramname"> <em>mouse</em>, </td>
903
<td class="paramkey"></td>
905
<td class="paramtype">const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> & </td>
906
<td class="paramname"> <em>m</em>, </td>
909
<td class="paramkey"></td>
911
<td class="paramtype"><a class="el" href="classipe_1_1_vector.html">Vector</a> & </td>
912
<td class="paramname"> <em>pos</em>, </td>
915
<td class="paramkey"></td>
917
<td class="paramtype">double & </td>
918
<td class="paramname"> <em>bound</em></td><td> </td>
923
<td></td><td></td><td> const<code> [virtual]</code></td>
930
Compute possible vertex snapping position for transformed object.
932
Looks only for positions closer than <em>bound</em>. If successful, modify <em>pos</em> and <em>bound</em>.
933
<p>Implements <a class="el" href="classipe_1_1_object.html#69d9cb72fcffab2eda5650e31f030c42">ipe::Object</a>.</p>
937
<a class="anchor" name="56de14d8b2a3ada8101d2c630b6f59e5"></a><!-- doxytag: member="ipe::Path::snapBnd" ref="56de14d8b2a3ada8101d2c630b6f59e5" args="(const Vector &mouse, const Matrix &m, Vector &pos, double &bound) const " -->
938
<div class="memitem">
939
<div class="memproto">
940
<table class="memname">
942
<td class="memname">void Path::snapBnd </td>
944
<td class="paramtype">const <a class="el" href="classipe_1_1_vector.html">Vector</a> & </td>
945
<td class="paramname"> <em>mouse</em>, </td>
948
<td class="paramkey"></td>
950
<td class="paramtype">const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> & </td>
951
<td class="paramname"> <em>m</em>, </td>
954
<td class="paramkey"></td>
956
<td class="paramtype"><a class="el" href="classipe_1_1_vector.html">Vector</a> & </td>
957
<td class="paramname"> <em>pos</em>, </td>
960
<td class="paramkey"></td>
962
<td class="paramtype">double & </td>
963
<td class="paramname"> <em>bound</em></td><td> </td>
968
<td></td><td></td><td> const<code> [virtual]</code></td>
975
Compute boundary snapping position for transformed object.
977
Looks only for positions closer than <em>bound</em>. If successful, modify <em>pos</em> and <em>bound</em>. The default implementation does nothing.
978
<p>Reimplemented from <a class="el" href="classipe_1_1_object.html#a620ebe63576035b0a65edfe38a356b2">ipe::Object</a>.</p>
982
<a class="anchor" name="9eabfc43680c2059fac88f3d715da53c"></a><!-- doxytag: member="ipe::Path::checkStyle" ref="9eabfc43680c2059fac88f3d715da53c" args="(const Cascade *sheet, AttributeSeq &seq) const " -->
983
<div class="memitem">
984
<div class="memproto">
985
<table class="memname">
987
<td class="memname">void Path::checkStyle </td>
989
<td class="paramtype">const <a class="el" href="classipe_1_1_cascade.html">Cascade</a> * </td>
990
<td class="paramname"> <em>sheet</em>, </td>
993
<td class="paramkey"></td>
995
<td class="paramtype"><a class="el" href="group__attr.html#g724109aa4dbab072ea067cc5ed471e02">AttributeSeq</a> & </td>
996
<td class="paramname"> <em>seq</em></td><td> </td>
1001
<td></td><td></td><td> const<code> [virtual]</code></td>
1005
<div class="memdoc">
1008
Check all symbolic attributes.
1011
<p>Reimplemented from <a class="el" href="classipe_1_1_object.html#0949920a49f82e1a8df6af5d2a7d71e4">ipe::Object</a>.</p>
1015
<a class="anchor" name="81166665a45d05a219324754f0cf0e62"></a><!-- doxytag: member="ipe::Path::setAttribute" ref="81166665a45d05a219324754f0cf0e62" args="(Property prop, Attribute value, Attribute stroke, Attribute fill)" -->
1016
<div class="memitem">
1017
<div class="memproto">
1018
<table class="memname">
1020
<td class="memname">bool Path::setAttribute </td>
1022
<td class="paramtype"><a class="el" href="group__attr.html#gc50c1b1c913f9551a97e37ef29eb462f">Property</a> </td>
1023
<td class="paramname"> <em>prop</em>, </td>
1026
<td class="paramkey"></td>
1028
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1029
<td class="paramname"> <em>value</em>, </td>
1032
<td class="paramkey"></td>
1034
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1035
<td class="paramname"> <em>stroke</em>, </td>
1038
<td class="paramkey"></td>
1040
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1041
<td class="paramname"> <em>fill</em></td><td> </td>
1046
<td></td><td></td><td><code> [virtual]</code></td>
1050
<div class="memdoc">
1053
Set an attribute on this object.
1055
Returns true if an attribute was actually changed. The arguments <em>stroke</em> and <em>fill</em> are only used then <em>prop</em> is <em>EPropPathMode</em>, and stroking or filling is added to an object that didn't have it before.
1056
<p>Reimplemented from <a class="el" href="classipe_1_1_object.html#dbcb419378b3301121e10793dc344ea2">ipe::Object</a>.</p>
1060
<a class="anchor" name="c0b24cf2aa0badea5fd7073d37e64435"></a><!-- doxytag: member="ipe::Path::getAttribute" ref="c0b24cf2aa0badea5fd7073d37e64435" args="(Property prop)" -->
1061
<div class="memitem">
1062
<div class="memproto">
1063
<table class="memname">
1065
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> Path::getAttribute </td>
1067
<td class="paramtype"><a class="el" href="group__attr.html#gc50c1b1c913f9551a97e37ef29eb462f">Property</a> </td>
1068
<td class="paramname"> <em>prop</em> </td>
1069
<td> ) </td>
1070
<td><code> [virtual]</code></td>
1074
<div class="memdoc">
1077
Get setting of an attribute of this object.
1079
If object does not have this attribute, returnes "undefined" attribute.
1080
<p>Reimplemented from <a class="el" href="classipe_1_1_object.html#f60ffe98d9699dc9463d33f64b7ef98e">ipe::Object</a>.</p>
1084
<a class="anchor" name="e4424f1b2ff2b6534924ea5c5e52ebc8"></a><!-- doxytag: member="ipe::Path::arrow" ref="e4424f1b2ff2b6534924ea5c5e52ebc8" args="() const " -->
1085
<div class="memitem">
1086
<div class="memproto">
1087
<table class="memname">
1089
<td class="memname">bool ipe::Path::arrow </td>
1091
<td class="paramname"> </td>
1092
<td> ) </td>
1093
<td> const<code> [inline]</code></td>
1097
<div class="memdoc">
1100
Does object have an arrow?
1105
<a class="anchor" name="2d4470e2d1be1bc90b3c3a4084c5dfd7"></a><!-- doxytag: member="ipe::Path::rArrow" ref="2d4470e2d1be1bc90b3c3a4084c5dfd7" args="() const " -->
1106
<div class="memitem">
1107
<div class="memproto">
1108
<table class="memname">
1110
<td class="memname">bool ipe::Path::rArrow </td>
1112
<td class="paramname"> </td>
1113
<td> ) </td>
1114
<td> const<code> [inline]</code></td>
1118
<div class="memdoc">
1121
Does object have a reverse arrow?
1126
<a class="anchor" name="b2eb23018ffa5f621aae5ff34350fda9"></a><!-- doxytag: member="ipe::Path::arrowShape" ref="b2eb23018ffa5f621aae5ff34350fda9" args="() const " -->
1127
<div class="memitem">
1128
<div class="memproto">
1129
<table class="memname">
1131
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::arrowShape </td>
1133
<td class="paramname"> </td>
1134
<td> ) </td>
1135
<td> const<code> [inline]</code></td>
1139
<div class="memdoc">
1142
Return shape of arrow.
1147
<a class="anchor" name="6dc4f8283de7e0cff9a57ddda227d162"></a><!-- doxytag: member="ipe::Path::rArrowShape" ref="6dc4f8283de7e0cff9a57ddda227d162" args="() const " -->
1148
<div class="memitem">
1149
<div class="memproto">
1150
<table class="memname">
1152
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::rArrowShape </td>
1154
<td class="paramname"> </td>
1155
<td> ) </td>
1156
<td> const<code> [inline]</code></td>
1160
<div class="memdoc">
1163
Return shape of reverse arrow.
1168
<a class="anchor" name="1167a8662140e5d744dfe3c0868da0ed"></a><!-- doxytag: member="ipe::Path::arrowSize" ref="1167a8662140e5d744dfe3c0868da0ed" args="() const " -->
1169
<div class="memitem">
1170
<div class="memproto">
1171
<table class="memname">
1173
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::arrowSize </td>
1175
<td class="paramname"> </td>
1176
<td> ) </td>
1177
<td> const<code> [inline]</code></td>
1181
<div class="memdoc">
1184
Return size of arrow.
1189
<a class="anchor" name="b8296bfa56b0156206d43667ab620a72"></a><!-- doxytag: member="ipe::Path::rArrowSize" ref="b8296bfa56b0156206d43667ab620a72" args="() const " -->
1190
<div class="memitem">
1191
<div class="memproto">
1192
<table class="memname">
1194
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::rArrowSize </td>
1196
<td class="paramname"> </td>
1197
<td> ) </td>
1198
<td> const<code> [inline]</code></td>
1202
<div class="memdoc">
1205
Return size of reverse arrow.
1210
<a class="anchor" name="67bcd47d6e5c5f4ad12df2114a7732ee"></a><!-- doxytag: member="ipe::Path::setArrow" ref="67bcd47d6e5c5f4ad12df2114a7732ee" args="(bool arrow, Attribute shape, Attribute size)" -->
1211
<div class="memitem">
1212
<div class="memproto">
1213
<table class="memname">
1215
<td class="memname">void Path::setArrow </td>
1217
<td class="paramtype">bool </td>
1218
<td class="paramname"> <em>arrow</em>, </td>
1221
<td class="paramkey"></td>
1223
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1224
<td class="paramname"> <em>shape</em>, </td>
1227
<td class="paramkey"></td>
1229
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1230
<td class="paramname"> <em>size</em></td><td> </td>
1235
<td></td><td></td><td></td>
1239
<div class="memdoc">
1247
<a class="anchor" name="03e234a4ca96e75160e0c855d493e178"></a><!-- doxytag: member="ipe::Path::setRarrow" ref="03e234a4ca96e75160e0c855d493e178" args="(bool arrow, Attribute shape, Attribute size)" -->
1248
<div class="memitem">
1249
<div class="memproto">
1250
<table class="memname">
1252
<td class="memname">void Path::setRarrow </td>
1254
<td class="paramtype">bool </td>
1255
<td class="paramname"> <em>arrow</em>, </td>
1258
<td class="paramkey"></td>
1260
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1261
<td class="paramname"> <em>shape</em>, </td>
1264
<td class="paramkey"></td>
1266
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1267
<td class="paramname"> <em>size</em></td><td> </td>
1272
<td></td><td></td><td></td>
1276
<div class="memdoc">
1279
Set backward arrow (if the object can take it).
1284
<a class="anchor" name="6000b9ab135128f960b40418c764e2e9"></a><!-- doxytag: member="ipe::Path::drawArrow" ref="6000b9ab135128f960b40418c764e2e9" args="(Painter &painter, Vector pos, Angle alpha, Attribute shape, Attribute size, double radius)" -->
1285
<div class="memitem">
1286
<div class="memproto">
1287
<table class="memname">
1289
<td class="memname">void Path::drawArrow </td>
1291
<td class="paramtype"><a class="el" href="classipe_1_1_painter.html">Painter</a> & </td>
1292
<td class="paramname"> <em>painter</em>, </td>
1295
<td class="paramkey"></td>
1297
<td class="paramtype"><a class="el" href="classipe_1_1_vector.html">Vector</a> </td>
1298
<td class="paramname"> <em>pos</em>, </td>
1301
<td class="paramkey"></td>
1303
<td class="paramtype"><a class="el" href="classipe_1_1_angle.html">Angle</a> </td>
1304
<td class="paramname"> <em>alpha</em>, </td>
1307
<td class="paramkey"></td>
1309
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1310
<td class="paramname"> <em>shape</em>, </td>
1313
<td class="paramkey"></td>
1315
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1316
<td class="paramname"> <em>size</em>, </td>
1319
<td class="paramkey"></td>
1321
<td class="paramtype">double </td>
1322
<td class="paramname"> <em>radius</em></td><td> </td>
1327
<td></td><td></td><td><code> [static]</code></td>
1331
<div class="memdoc">
1334
Draw an arrow of <em>size</em> with tip at <em>v1</em> directed from <em>v0</em> to <em>v1</em>.
1339
<a class="anchor" name="574acee6d796ed4f45970cb190a1121e"></a><!-- doxytag: member="ipe::Path::shape" ref="574acee6d796ed4f45970cb190a1121e" args="() const " -->
1340
<div class="memitem">
1341
<div class="memproto">
1342
<table class="memname">
1344
<td class="memname">const <a class="el" href="classipe_1_1_shape.html">Shape</a>& ipe::Path::shape </td>
1346
<td class="paramname"> </td>
1347
<td> ) </td>
1348
<td> const<code> [inline]</code></td>
1352
<div class="memdoc">
1355
Return shape of the path object.
1360
<a class="anchor" name="e7014f62d96b8688d91c8d2ad39fca9d"></a><!-- doxytag: member="ipe::Path::setShape" ref="e7014f62d96b8688d91c8d2ad39fca9d" args="(const Shape &shape)" -->
1361
<div class="memitem">
1362
<div class="memproto">
1363
<table class="memname">
1365
<td class="memname">void Path::setShape </td>
1367
<td class="paramtype">const <a class="el" href="classipe_1_1_shape.html">Shape</a> & </td>
1368
<td class="paramname"> <em>shape</em> </td>
1369
<td> ) </td>
1374
<div class="memdoc">
1380
<hr>The documentation for this class was generated from the following files:<ul>
1381
<li>ipepath.h<li>ipepath.cpp</ul>
50
<!-- doxytag: class="ipe::Path" --><!-- doxytag: inherits="ipe::Object" -->
51
<p>The path object (polylines, polygons, and generalizations).
52
<a href="#_details">More...</a></p>
54
<p><code>#include <ipepath.h></code></p>
56
<p>Inherits <a class="el" href="classipe_1_1_object.html">ipe::Object</a>.</p>
58
<p><a href="classipe_1_1_path-members.html">List of all members.</a></p>
59
<h2><a name="pub-methods"></a>
60
Public Member Functions</h2>
62
<li><a class="el" href="classipe_1_1_path.html#a84c0e9f0e7be7d8faceda7a427f563cc">Path</a> (const <a class="el" href="classipe_1_1_all_attributes.html">AllAttributes</a> &attr, const <a class="el" href="classipe_1_1_shape.html">Shape</a> &shape, bool withArrows=false)
63
<li>virtual <a class="el" href="classipe_1_1_object.html">Object</a> * <a class="el" href="classipe_1_1_path.html#adf3bd9a6f977ad5b6e78564820303372">clone</a> () const
64
<li>virtual <a class="el" href="classipe_1_1_path.html">Path</a> * <a class="el" href="classipe_1_1_path.html#aebf144e887c6e05e5ea90f86ae3805d9">asPath</a> ()
65
<li>virtual <a class="el" href="classipe_1_1_object.html#a037ce2be9769f2ab8f20509ab18c67d6">Type</a> <a class="el" href="classipe_1_1_path.html#a49233442aae6e0b2298d68e22027cf43">type</a> () const
66
<li>void <a class="el" href="classipe_1_1_path.html#aa3013444262dfe27f8db0ad5689dfc7c">setPathMode</a> (<a class="el" href="group__attr.html#ga40b15a8cc8f66dc518621289ed4f1cd6">TPathMode</a> pm)
67
<li>void <a class="el" href="classipe_1_1_path.html#ad1b4fa879ecaa47ecfae5320a362fbe7">setStroke</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> stroke)
68
<li>void <a class="el" href="classipe_1_1_path.html#ae249ea8277e89955d8c7460218e25d68">setFill</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> fill)
69
<li>void <a class="el" href="classipe_1_1_path.html#ac86c3ccb9fe06d61b4213ed7d55b0011">setPen</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> pen)
70
<li>void <a class="el" href="classipe_1_1_path.html#a0697147928ac962e7ca71f3faea37b7e">setDashStyle</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> dash)
71
<li>void <a class="el" href="classipe_1_1_path.html#a08ebf0d5ee538fa2409372c9da2ed1cc">setLineCap</a> (<a class="el" href="group__attr.html#ga2a173ffa6945f9033fffd786ada441b5">TLineCap</a> s)
72
<li>void <a class="el" href="classipe_1_1_path.html#a91b7c30892f83b0ee4297f2af94693f1">setLineJoin</a> (<a class="el" href="group__attr.html#gae5ab4b7143ab5ed05efcdbe4bbb9dd93">TLineJoin</a> s)
73
<li>void <a class="el" href="classipe_1_1_path.html#a0982ee9bfab209f5918e0af81e9889b7">setFillRule</a> (<a class="el" href="group__attr.html#ga4defbee452ac9648e94eee7878214647">TFillRule</a> s)
74
<li>void <a class="el" href="classipe_1_1_path.html#af780da685088674aba1593639ae5b225">setOpacity</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> opaq)
75
<li>void <a class="el" href="classipe_1_1_path.html#afe0a30295a75dee77cafa25015e580fe">setTiling</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> a)
76
<li>void <a class="el" href="classipe_1_1_path.html#a91dc9b7c86529a70a4a20d9efe3e71a7">setGradient</a> (<a class="el" href="classipe_1_1_attribute.html">Attribute</a> a)
77
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#adc707fcc11e1bbb6fb997ed6055ad02b">opacity</a> () const
78
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#ada19b9c0e69bda4b4577211251db1697">tiling</a> () const
79
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#a4c745d7cc5b2a6caee690b9c2d8ea9f6">gradient</a> () const
80
<li><a class="el" href="group__attr.html#ga40b15a8cc8f66dc518621289ed4f1cd6">TPathMode</a> <a class="el" href="classipe_1_1_path.html#ac8c9509c5184d2e0d6350585549fbc17">pathMode</a> () const
81
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#a601b8bc15316e359fc6e598430149cb0">stroke</a> () const
82
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#aef9db36793d75802a62f0541f13774a3">fill</a> () const
83
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#aa58c4d73032847b9aa64b46c9dfde340">pen</a> () const
84
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#a3e4d7b3569e60d688b4c829f7187f93f">dashStyle</a> () const
85
<li><a class="el" href="group__attr.html#ga2a173ffa6945f9033fffd786ada441b5">TLineCap</a> <a class="el" href="classipe_1_1_path.html#a04834903484817bd93cdf5618858301f">lineCap</a> () const
86
<li><a class="el" href="group__attr.html#gae5ab4b7143ab5ed05efcdbe4bbb9dd93">TLineJoin</a> <a class="el" href="classipe_1_1_path.html#a699c5754614ce044bf1a31a89d1bf246">lineJoin</a> () const
87
<li><a class="el" href="group__attr.html#ga4defbee452ac9648e94eee7878214647">TFillRule</a> <a class="el" href="classipe_1_1_path.html#ac1ab6e6e58ef6ce5e8c81ba15abcf914">fillRule</a> () const
88
<li>virtual void <a class="el" href="classipe_1_1_path.html#a5bd2ff7d9b5c2f3c22203f97e318e299">saveAsXml</a> (<a class="el" href="classipe_1_1_stream.html">Stream</a> &stream, <a class="el" href="classipe_1_1_string.html">String</a> layer) const
89
<li>virtual void <a class="el" href="classipe_1_1_path.html#a2b47a6f8de5c400821032d37bc652c1d">draw</a> (<a class="el" href="classipe_1_1_painter.html">Painter</a> &painter) const
90
<li>virtual void <a class="el" href="classipe_1_1_path.html#a853c4634c4144607f4c27c72e8d719e3">drawSimple</a> (<a class="el" href="classipe_1_1_painter.html">Painter</a> &painter) const
91
<li>virtual void <a class="el" href="classipe_1_1_path.html#a6e43f929f0cec8c7912fc95a7643e8bc">accept</a> (<a class="el" href="classipe_1_1_visitor.html">Visitor</a> &visitor) const
92
<li>virtual void <a class="el" href="classipe_1_1_path.html#a5dc03ed6dd35e8ab9bcf75aed6b6d9df">addToBBox</a> (<a class="el" href="classipe_1_1_rect.html">Rect</a> &box, const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> &m, bool cp) const
93
<li>virtual double <a class="el" href="classipe_1_1_path.html#a346882ca252e24317a0dd9e6bed700b4">distance</a> (const <a class="el" href="classipe_1_1_vector.html">Vector</a> &v, const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> &m, double bound) const
94
<li>virtual void <a class="el" href="classipe_1_1_path.html#addc7bdf796ddc49456ab6e8626cc30ab">snapVtx</a> (const <a class="el" href="classipe_1_1_vector.html">Vector</a> &mouse, const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> &m, <a class="el" href="classipe_1_1_vector.html">Vector</a> &pos, double &bound) const
95
<li>virtual void <a class="el" href="classipe_1_1_path.html#a56de14d8b2a3ada8101d2c630b6f59e5">snapBnd</a> (const <a class="el" href="classipe_1_1_vector.html">Vector</a> &mouse, const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> &m, <a class="el" href="classipe_1_1_vector.html">Vector</a> &pos, double &bound) const
96
<li>virtual void <a class="el" href="classipe_1_1_path.html#a9eabfc43680c2059fac88f3d715da53c">checkStyle</a> (const <a class="el" href="classipe_1_1_cascade.html">Cascade</a> *sheet, <a class="el" href="group__attr.html#ga724109aa4dbab072ea067cc5ed471e02">AttributeSeq</a> &seq) const
97
<li>virtual bool <a class="el" href="classipe_1_1_path.html#a81166665a45d05a219324754f0cf0e62">setAttribute</a> (<a class="el" href="group__attr.html#gac50c1b1c913f9551a97e37ef29eb462f">Property</a> prop, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> value, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> stroke, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> fill)
98
<li>virtual <a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#ac0b24cf2aa0badea5fd7073d37e64435">getAttribute</a> (<a class="el" href="group__attr.html#gac50c1b1c913f9551a97e37ef29eb462f">Property</a> prop)
99
<li>bool <a class="el" href="classipe_1_1_path.html#ae4424f1b2ff2b6534924ea5c5e52ebc8">arrow</a> () const
100
<li>bool <a class="el" href="classipe_1_1_path.html#a2d4470e2d1be1bc90b3c3a4084c5dfd7">rArrow</a> () const
101
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#ab2eb23018ffa5f621aae5ff34350fda9">arrowShape</a> () const
102
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#a6dc4f8283de7e0cff9a57ddda227d162">rArrowShape</a> () const
103
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#a1167a8662140e5d744dfe3c0868da0ed">arrowSize</a> () const
104
<li><a class="el" href="classipe_1_1_attribute.html">Attribute</a> <a class="el" href="classipe_1_1_path.html#ab8296bfa56b0156206d43667ab620a72">rArrowSize</a> () const
105
<li>void <a class="el" href="classipe_1_1_path.html#a67bcd47d6e5c5f4ad12df2114a7732ee">setArrow</a> (bool arrow, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> shape, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> size)
106
<li>void <a class="el" href="classipe_1_1_path.html#a03e234a4ca96e75160e0c855d493e178">setRarrow</a> (bool arrow, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> shape, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> size)
107
<li>const <a class="el" href="classipe_1_1_shape.html">Shape</a> & <a class="el" href="classipe_1_1_path.html#a574acee6d796ed4f45970cb190a1121e">shape</a> () const
108
<li>void <a class="el" href="classipe_1_1_path.html#ae7014f62d96b8688d91c8d2ad39fca9d">setShape</a> (const <a class="el" href="classipe_1_1_shape.html">Shape</a> &shape)
110
<h2><a name="pub-static-methods"></a>
111
Static Public Member Functions</h2>
113
<li>static <a class="el" href="classipe_1_1_path.html">Path</a> * <a class="el" href="classipe_1_1_path.html#a9afc013a3a45fc31484e4f121b0a1c91">create</a> (const <a class="el" href="classipe_1_1_xml_attributes.html">XmlAttributes</a> &attr, <a class="el" href="classipe_1_1_string.html">String</a> data)
114
<li>static void <a class="el" href="classipe_1_1_path.html#a6000b9ab135128f960b40418c764e2e9">drawArrow</a> (<a class="el" href="classipe_1_1_painter.html">Painter</a> &painter, <a class="el" href="classipe_1_1_vector.html">Vector</a> pos, <a class="el" href="classipe_1_1_angle.html">Angle</a> alpha, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> shape, <a class="el" href="classipe_1_1_attribute.html">Attribute</a> size, double radius)
116
<hr/><a name="_details"></a><h2>Detailed Description</h2>
117
<div class="textblock"><p>The path object (polylines, polygons, and generalizations). </p>
118
<p>This object represents any vector graphics. The geometry is contained in a <a class="el" href="classipe_1_1_shape.html" title="A geometric shape, consisting of several (open or closed) subpaths.">Shape</a>.</p>
119
<p>The filling algorithm is the <b>even-odd rule</b> of PDF: To determine whether a point lies inside the filled shape, draw a ray from that point in any direction, and count the number of path segments that cross the ray. If this number is odd, the point is inside; if even, the point is outside. (<a class="el" href="classipe_1_1_path.html" title="The path object (polylines, polygons, and generalizations).">Path</a> objects can also render using the <b>winding fill rule</b> by setting the fillRule attribute. This isn't really supported by the Ipe user interface, which doesn't show the orientation of paths.)</p>
120
<p>If the path consists of a single line segment and is filled only, then it is not drawn at all. This can be used to draw arrow heads without bodies. The fill color is used to draw the arrows in this case. </p>
121
</div><hr/><h2>Constructor & Destructor Documentation</h2>
122
<a class="anchor" id="a84c0e9f0e7be7d8faceda7a427f563cc"></a><!-- doxytag: member="ipe::Path::Path" ref="a84c0e9f0e7be7d8faceda7a427f563cc" args="(const AllAttributes &attr, const Shape &shape, bool withArrows=false)" -->
123
<div class="memitem">
124
<div class="memproto">
125
<table class="memname">
127
<td class="memname">Path::Path </td>
129
<td class="paramtype">const <a class="el" href="classipe_1_1_all_attributes.html">AllAttributes</a> & </td>
130
<td class="paramname"><em>attr</em>, </td>
133
<td class="paramkey"></td>
135
<td class="paramtype">const <a class="el" href="classipe_1_1_shape.html">Shape</a> & </td>
136
<td class="paramname"><em>shape</em>, </td>
139
<td class="paramkey"></td>
141
<td class="paramtype">bool </td>
142
<td class="paramname"><em>withArrows</em> = <code>false</code> </td>
147
<td></td><td><code> [explicit]</code></td>
153
<p>Create for given shape. </p>
157
<hr/><h2>Member Function Documentation</h2>
158
<a class="anchor" id="a9afc013a3a45fc31484e4f121b0a1c91"></a><!-- doxytag: member="ipe::Path::create" ref="a9afc013a3a45fc31484e4f121b0a1c91" args="(const XmlAttributes &attr, String data)" -->
159
<div class="memitem">
160
<div class="memproto">
161
<table class="memname">
163
<td class="memname"><a class="el" href="classipe_1_1_path.html">Path</a> * Path::create </td>
165
<td class="paramtype">const <a class="el" href="classipe_1_1_xml_attributes.html">XmlAttributes</a> & </td>
166
<td class="paramname"><em>attr</em>, </td>
169
<td class="paramkey"></td>
171
<td class="paramtype"><a class="el" href="classipe_1_1_string.html">String</a> </td>
172
<td class="paramname"><em>data</em> </td>
177
<td></td><td><code> [static]</code></td>
183
<p>Construct from XML data. </p>
187
<a class="anchor" id="adf3bd9a6f977ad5b6e78564820303372"></a><!-- doxytag: member="ipe::Path::clone" ref="adf3bd9a6f977ad5b6e78564820303372" args="() const " -->
188
<div class="memitem">
189
<div class="memproto">
190
<table class="memname">
192
<td class="memname"><a class="el" href="classipe_1_1_object.html">Object</a> * Path::clone </td>
194
<td class="paramname"></td><td>)</td>
195
<td> const<code> [virtual]</code></td>
201
<p>Return a clone (constant-time). </p>
203
<p>Implements <a class="el" href="classipe_1_1_object.html#ac6289d8762c8cfad2526d7e299ee4829">ipe::Object</a>.</p>
207
<a class="anchor" id="aebf144e887c6e05e5ea90f86ae3805d9"></a><!-- doxytag: member="ipe::Path::asPath" ref="aebf144e887c6e05e5ea90f86ae3805d9" args="()" -->
208
<div class="memitem">
209
<div class="memproto">
210
<table class="memname">
212
<td class="memname"><a class="el" href="classipe_1_1_path.html">Path</a> * Path::asPath </td>
214
<td class="paramname"></td><td>)</td>
215
<td><code> [virtual]</code></td>
221
<p>Return pointer to this object. </p>
223
<p>Reimplemented from <a class="el" href="classipe_1_1_object.html#ac589cb8ae9e6aeb6489580fab7a1f373">ipe::Object</a>.</p>
227
<a class="anchor" id="a49233442aae6e0b2298d68e22027cf43"></a><!-- doxytag: member="ipe::Path::type" ref="a49233442aae6e0b2298d68e22027cf43" args="() const " -->
228
<div class="memitem">
229
<div class="memproto">
230
<table class="memname">
232
<td class="memname"><a class="el" href="classipe_1_1_object.html#a037ce2be9769f2ab8f20509ab18c67d6">Object::Type</a> Path::type </td>
234
<td class="paramname"></td><td>)</td>
235
<td> const<code> [virtual]</code></td>
241
<p>Implements <a class="el" href="classipe_1_1_object.html#a7e619fb9163e86ffd9d764d442c7a724">ipe::Object</a>.</p>
245
<a class="anchor" id="aa3013444262dfe27f8db0ad5689dfc7c"></a><!-- doxytag: member="ipe::Path::setPathMode" ref="aa3013444262dfe27f8db0ad5689dfc7c" args="(TPathMode pm)" -->
246
<div class="memitem">
247
<div class="memproto">
248
<table class="memname">
250
<td class="memname">void Path::setPathMode </td>
252
<td class="paramtype"><a class="el" href="group__attr.html#ga40b15a8cc8f66dc518621289ed4f1cd6">TPathMode</a> </td>
253
<td class="paramname"><em>pm</em></td><td>)</td>
260
<p>Set whether object will be stroked and filled. </p>
264
<a class="anchor" id="ad1b4fa879ecaa47ecfae5320a362fbe7"></a><!-- doxytag: member="ipe::Path::setStroke" ref="ad1b4fa879ecaa47ecfae5320a362fbe7" args="(Attribute stroke)" -->
265
<div class="memitem">
266
<div class="memproto">
267
<table class="memname">
269
<td class="memname">void Path::setStroke </td>
271
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
272
<td class="paramname"><em>stroke</em></td><td>)</td>
279
<p>Set stroke color. </p>
283
<a class="anchor" id="ae249ea8277e89955d8c7460218e25d68"></a><!-- doxytag: member="ipe::Path::setFill" ref="ae249ea8277e89955d8c7460218e25d68" args="(Attribute fill)" -->
284
<div class="memitem">
285
<div class="memproto">
286
<table class="memname">
288
<td class="memname">void Path::setFill </td>
290
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
291
<td class="paramname"><em>fill</em></td><td>)</td>
298
<p>Set fill color. </p>
302
<a class="anchor" id="ac86c3ccb9fe06d61b4213ed7d55b0011"></a><!-- doxytag: member="ipe::Path::setPen" ref="ac86c3ccb9fe06d61b4213ed7d55b0011" args="(Attribute pen)" -->
303
<div class="memitem">
304
<div class="memproto">
305
<table class="memname">
307
<td class="memname">void Path::setPen </td>
309
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
310
<td class="paramname"><em>pen</em></td><td>)</td>
321
<a class="anchor" id="a0697147928ac962e7ca71f3faea37b7e"></a><!-- doxytag: member="ipe::Path::setDashStyle" ref="a0697147928ac962e7ca71f3faea37b7e" args="(Attribute dash)" -->
322
<div class="memitem">
323
<div class="memproto">
324
<table class="memname">
326
<td class="memname">void Path::setDashStyle </td>
328
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
329
<td class="paramname"><em>dash</em></td><td>)</td>
336
<p>Set dash style. </p>
340
<a class="anchor" id="a08ebf0d5ee538fa2409372c9da2ed1cc"></a><!-- doxytag: member="ipe::Path::setLineCap" ref="a08ebf0d5ee538fa2409372c9da2ed1cc" args="(TLineCap s)" -->
341
<div class="memitem">
342
<div class="memproto">
343
<table class="memname">
345
<td class="memname">void Path::setLineCap </td>
347
<td class="paramtype"><a class="el" href="group__attr.html#ga2a173ffa6945f9033fffd786ada441b5">TLineCap</a> </td>
348
<td class="paramname"><em>s</em></td><td>)</td>
355
<p>Set line cap style. </p>
359
<a class="anchor" id="a91b7c30892f83b0ee4297f2af94693f1"></a><!-- doxytag: member="ipe::Path::setLineJoin" ref="a91b7c30892f83b0ee4297f2af94693f1" args="(TLineJoin s)" -->
360
<div class="memitem">
361
<div class="memproto">
362
<table class="memname">
364
<td class="memname">void Path::setLineJoin </td>
366
<td class="paramtype"><a class="el" href="group__attr.html#gae5ab4b7143ab5ed05efcdbe4bbb9dd93">TLineJoin</a> </td>
367
<td class="paramname"><em>s</em></td><td>)</td>
374
<p>Set line join style. </p>
378
<a class="anchor" id="a0982ee9bfab209f5918e0af81e9889b7"></a><!-- doxytag: member="ipe::Path::setFillRule" ref="a0982ee9bfab209f5918e0af81e9889b7" args="(TFillRule s)" -->
379
<div class="memitem">
380
<div class="memproto">
381
<table class="memname">
383
<td class="memname">void Path::setFillRule </td>
385
<td class="paramtype"><a class="el" href="group__attr.html#ga4defbee452ac9648e94eee7878214647">TFillRule</a> </td>
386
<td class="paramname"><em>s</em></td><td>)</td>
393
<p>Set fill rule. </p>
397
<a class="anchor" id="af780da685088674aba1593639ae5b225"></a><!-- doxytag: member="ipe::Path::setOpacity" ref="af780da685088674aba1593639ae5b225" args="(Attribute opaq)" -->
398
<div class="memitem">
399
<div class="memproto">
400
<table class="memname">
402
<td class="memname">void Path::setOpacity </td>
404
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
405
<td class="paramname"><em>opaq</em></td><td>)</td>
412
<p>Set opacity of the object. </p>
416
<a class="anchor" id="afe0a30295a75dee77cafa25015e580fe"></a><!-- doxytag: member="ipe::Path::setTiling" ref="afe0a30295a75dee77cafa25015e580fe" args="(Attribute a)" -->
417
<div class="memitem">
418
<div class="memproto">
419
<table class="memname">
421
<td class="memname">void Path::setTiling </td>
423
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
424
<td class="paramname"><em>til</em></td><td>)</td>
431
<p>Set tiling pattern of the object. </p>
432
<p>Resets gradient fill. </p>
436
<a class="anchor" id="a91dc9b7c86529a70a4a20d9efe3e71a7"></a><!-- doxytag: member="ipe::Path::setGradient" ref="a91dc9b7c86529a70a4a20d9efe3e71a7" args="(Attribute a)" -->
437
<div class="memitem">
438
<div class="memproto">
439
<table class="memname">
441
<td class="memname">void Path::setGradient </td>
443
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
444
<td class="paramname"><em>grad</em></td><td>)</td>
451
<p>Set gradient fill of the object. </p>
452
<p>Resets tiling pattern. </p>
456
<a class="anchor" id="adc707fcc11e1bbb6fb997ed6055ad02b"></a><!-- doxytag: member="ipe::Path::opacity" ref="adc707fcc11e1bbb6fb997ed6055ad02b" args="() const " -->
457
<div class="memitem">
458
<div class="memproto">
459
<table class="memname">
461
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::opacity </td>
463
<td class="paramname"></td><td>)</td>
464
<td> const<code> [inline]</code></td>
470
<p>Return opacity of the opject. </p>
474
<a class="anchor" id="ada19b9c0e69bda4b4577211251db1697"></a><!-- doxytag: member="ipe::Path::tiling" ref="ada19b9c0e69bda4b4577211251db1697" args="() const " -->
475
<div class="memitem">
476
<div class="memproto">
477
<table class="memname">
479
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::tiling </td>
481
<td class="paramname"></td><td>)</td>
482
<td> const<code> [inline]</code></td>
488
<p>Return tiling pattern. </p>
492
<a class="anchor" id="a4c745d7cc5b2a6caee690b9c2d8ea9f6"></a><!-- doxytag: member="ipe::Path::gradient" ref="a4c745d7cc5b2a6caee690b9c2d8ea9f6" args="() const " -->
493
<div class="memitem">
494
<div class="memproto">
495
<table class="memname">
497
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::gradient </td>
499
<td class="paramname"></td><td>)</td>
500
<td> const<code> [inline]</code></td>
506
<p>Return gradient fill. </p>
510
<a class="anchor" id="ac8c9509c5184d2e0d6350585549fbc17"></a><!-- doxytag: member="ipe::Path::pathMode" ref="ac8c9509c5184d2e0d6350585549fbc17" args="() const " -->
511
<div class="memitem">
512
<div class="memproto">
513
<table class="memname">
515
<td class="memname"><a class="el" href="group__attr.html#ga40b15a8cc8f66dc518621289ed4f1cd6">TPathMode</a> ipe::Path::pathMode </td>
517
<td class="paramname"></td><td>)</td>
518
<td> const<code> [inline]</code></td>
524
<p>Is the object stroked and filled? </p>
528
<a class="anchor" id="a601b8bc15316e359fc6e598430149cb0"></a><!-- doxytag: member="ipe::Path::stroke" ref="a601b8bc15316e359fc6e598430149cb0" args="() const " -->
529
<div class="memitem">
530
<div class="memproto">
531
<table class="memname">
533
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::stroke </td>
535
<td class="paramname"></td><td>)</td>
536
<td> const<code> [inline]</code></td>
542
<p>Return stroke color. </p>
546
<a class="anchor" id="aef9db36793d75802a62f0541f13774a3"></a><!-- doxytag: member="ipe::Path::fill" ref="aef9db36793d75802a62f0541f13774a3" args="() const " -->
547
<div class="memitem">
548
<div class="memproto">
549
<table class="memname">
551
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::fill </td>
553
<td class="paramname"></td><td>)</td>
554
<td> const<code> [inline]</code></td>
560
<p>Return object fill color. </p>
564
<a class="anchor" id="aa58c4d73032847b9aa64b46c9dfde340"></a><!-- doxytag: member="ipe::Path::pen" ref="aa58c4d73032847b9aa64b46c9dfde340" args="() const " -->
565
<div class="memitem">
566
<div class="memproto">
567
<table class="memname">
569
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::pen </td>
571
<td class="paramname"></td><td>)</td>
572
<td> const<code> [inline]</code></td>
578
<p>Return object pen. </p>
582
<a class="anchor" id="a3e4d7b3569e60d688b4c829f7187f93f"></a><!-- doxytag: member="ipe::Path::dashStyle" ref="a3e4d7b3569e60d688b4c829f7187f93f" args="() const " -->
583
<div class="memitem">
584
<div class="memproto">
585
<table class="memname">
587
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::dashStyle </td>
589
<td class="paramname"></td><td>)</td>
590
<td> const<code> [inline]</code></td>
596
<p>Return object line style. </p>
600
<a class="anchor" id="a04834903484817bd93cdf5618858301f"></a><!-- doxytag: member="ipe::Path::lineCap" ref="a04834903484817bd93cdf5618858301f" args="() const " -->
601
<div class="memitem">
602
<div class="memproto">
603
<table class="memname">
605
<td class="memname"><a class="el" href="group__attr.html#ga2a173ffa6945f9033fffd786ada441b5">TLineCap</a> ipe::Path::lineCap </td>
607
<td class="paramname"></td><td>)</td>
608
<td> const<code> [inline]</code></td>
614
<p>Return line cap style. </p>
618
<a class="anchor" id="a699c5754614ce044bf1a31a89d1bf246"></a><!-- doxytag: member="ipe::Path::lineJoin" ref="a699c5754614ce044bf1a31a89d1bf246" args="() const " -->
619
<div class="memitem">
620
<div class="memproto">
621
<table class="memname">
623
<td class="memname"><a class="el" href="group__attr.html#gae5ab4b7143ab5ed05efcdbe4bbb9dd93">TLineJoin</a> ipe::Path::lineJoin </td>
625
<td class="paramname"></td><td>)</td>
626
<td> const<code> [inline]</code></td>
632
<p>Return line join style. </p>
636
<a class="anchor" id="ac1ab6e6e58ef6ce5e8c81ba15abcf914"></a><!-- doxytag: member="ipe::Path::fillRule" ref="ac1ab6e6e58ef6ce5e8c81ba15abcf914" args="() const " -->
637
<div class="memitem">
638
<div class="memproto">
639
<table class="memname">
641
<td class="memname"><a class="el" href="group__attr.html#ga4defbee452ac9648e94eee7878214647">TFillRule</a> ipe::Path::fillRule </td>
643
<td class="paramname"></td><td>)</td>
644
<td> const<code> [inline]</code></td>
650
<p>Return fill rule. </p>
654
<a class="anchor" id="a5bd2ff7d9b5c2f3c22203f97e318e299"></a><!-- doxytag: member="ipe::Path::saveAsXml" ref="a5bd2ff7d9b5c2f3c22203f97e318e299" args="(Stream &stream, String layer) const " -->
655
<div class="memitem">
656
<div class="memproto">
657
<table class="memname">
659
<td class="memname">void Path::saveAsXml </td>
661
<td class="paramtype"><a class="el" href="classipe_1_1_stream.html">Stream</a> & </td>
662
<td class="paramname"><em>stream</em>, </td>
665
<td class="paramkey"></td>
667
<td class="paramtype"><a class="el" href="classipe_1_1_string.html">String</a> </td>
668
<td class="paramname"><em>layer</em> </td>
673
<td></td><td> const<code> [virtual]</code></td>
679
<p>Save the object in XML format. </p>
681
<p>Implements <a class="el" href="classipe_1_1_object.html#ae0ff925816acb7f88791c8c828c1ae6d">ipe::Object</a>.</p>
685
<a class="anchor" id="a2b47a6f8de5c400821032d37bc652c1d"></a><!-- doxytag: member="ipe::Path::draw" ref="a2b47a6f8de5c400821032d37bc652c1d" args="(Painter &painter) const " -->
686
<div class="memitem">
687
<div class="memproto">
688
<table class="memname">
690
<td class="memname">void Path::draw </td>
692
<td class="paramtype"><a class="el" href="classipe_1_1_painter.html">Painter</a> & </td>
693
<td class="paramname"><em>painter</em></td><td>)</td>
694
<td> const<code> [virtual]</code></td>
700
<p>Draw the object. </p>
702
<p>Implements <a class="el" href="classipe_1_1_object.html#a3638c929c74354b20be0fcbbddd58c78">ipe::Object</a>.</p>
706
<a class="anchor" id="a853c4634c4144607f4c27c72e8d719e3"></a><!-- doxytag: member="ipe::Path::drawSimple" ref="a853c4634c4144607f4c27c72e8d719e3" args="(Painter &painter) const " -->
707
<div class="memitem">
708
<div class="memproto">
709
<table class="memname">
711
<td class="memname">void Path::drawSimple </td>
713
<td class="paramtype"><a class="el" href="classipe_1_1_painter.html">Painter</a> & </td>
714
<td class="paramname"><em>painter</em></td><td>)</td>
715
<td> const<code> [virtual]</code></td>
721
<p>Draw simple version for selecting and transforming. </p>
723
<p>Implements <a class="el" href="classipe_1_1_object.html#a866b9683feb280cefb0b163ecb9f4bdd">ipe::Object</a>.</p>
727
<a class="anchor" id="a6e43f929f0cec8c7912fc95a7643e8bc"></a><!-- doxytag: member="ipe::Path::accept" ref="a6e43f929f0cec8c7912fc95a7643e8bc" args="(Visitor &visitor) const " -->
728
<div class="memitem">
729
<div class="memproto">
730
<table class="memname">
732
<td class="memname">void Path::accept </td>
734
<td class="paramtype"><a class="el" href="classipe_1_1_visitor.html">Visitor</a> & </td>
735
<td class="paramname"><em>visitor</em></td><td>)</td>
736
<td> const<code> [virtual]</code></td>
742
<p>Call visitPath of visitor. </p>
744
<p>Implements <a class="el" href="classipe_1_1_object.html#aa69d47bc571b7f7ef78f041d8bc994fd">ipe::Object</a>.</p>
748
<a class="anchor" id="a5dc03ed6dd35e8ab9bcf75aed6b6d9df"></a><!-- doxytag: member="ipe::Path::addToBBox" ref="a5dc03ed6dd35e8ab9bcf75aed6b6d9df" args="(Rect &box, const Matrix &m, bool cp) const " -->
749
<div class="memitem">
750
<div class="memproto">
751
<table class="memname">
753
<td class="memname">void Path::addToBBox </td>
755
<td class="paramtype"><a class="el" href="classipe_1_1_rect.html">Rect</a> & </td>
756
<td class="paramname"><em>box</em>, </td>
759
<td class="paramkey"></td>
761
<td class="paramtype">const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> & </td>
762
<td class="paramname"><em>m</em>, </td>
765
<td class="paramkey"></td>
767
<td class="paramtype">bool </td>
768
<td class="paramname"><em>cp</em> </td>
773
<td></td><td> const<code> [virtual]</code></td>
779
<p>Extend <em>box</em> to include the object transformed by <em>m</em>. </p>
780
<p>For objects in a page, don't call this directly. The <a class="el" href="classipe_1_1_page.html" title="An Ipe document page.">Page</a> caches the bounding box of each object, so it is far more efficient to call <a class="el" href="classipe_1_1_page.html#afd3572a1f0bd7d55cc2ceb54804bbfa5" title="Return a bounding box for the object at index i.">Page::bbox</a>.</p>
781
<p>Control points that lie outside the visual object are included if <em>cp</em> is true.</p>
782
<p>If called with an empty box and <em>cp</em> == <code>false</code>, the result of this function is a tight bounding box for the object, with a little leeway in case the boundary is determined by a spline (it has to be approximated to perform this operation). </p>
784
<p>Implements <a class="el" href="classipe_1_1_object.html#abf86969debbc7a737b0c689ae37d6595">ipe::Object</a>.</p>
788
<a class="anchor" id="a346882ca252e24317a0dd9e6bed700b4"></a><!-- doxytag: member="ipe::Path::distance" ref="a346882ca252e24317a0dd9e6bed700b4" args="(const Vector &v, const Matrix &m, double bound) const " -->
789
<div class="memitem">
790
<div class="memproto">
791
<table class="memname">
793
<td class="memname">double Path::distance </td>
795
<td class="paramtype">const <a class="el" href="classipe_1_1_vector.html">Vector</a> & </td>
796
<td class="paramname"><em>v</em>, </td>
799
<td class="paramkey"></td>
801
<td class="paramtype">const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> & </td>
802
<td class="paramname"><em>m</em>, </td>
805
<td class="paramkey"></td>
807
<td class="paramtype">double </td>
808
<td class="paramname"><em>bound</em> </td>
813
<td></td><td> const<code> [virtual]</code></td>
818
<p>Return distance of transformed object to point <em>v</em>. If larger than <em>bound</em>, can just return <em>bound</em>. </p>
820
<p>Implements <a class="el" href="classipe_1_1_object.html#ab1839318060c6b051256f6e189f1f967">ipe::Object</a>.</p>
824
<a class="anchor" id="addc7bdf796ddc49456ab6e8626cc30ab"></a><!-- doxytag: member="ipe::Path::snapVtx" ref="addc7bdf796ddc49456ab6e8626cc30ab" args="(const Vector &mouse, const Matrix &m, Vector &pos, double &bound) const " -->
825
<div class="memitem">
826
<div class="memproto">
827
<table class="memname">
829
<td class="memname">void Path::snapVtx </td>
831
<td class="paramtype">const <a class="el" href="classipe_1_1_vector.html">Vector</a> & </td>
832
<td class="paramname"><em>mouse</em>, </td>
835
<td class="paramkey"></td>
837
<td class="paramtype">const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> & </td>
838
<td class="paramname"><em>m</em>, </td>
841
<td class="paramkey"></td>
843
<td class="paramtype"><a class="el" href="classipe_1_1_vector.html">Vector</a> & </td>
844
<td class="paramname"><em>pos</em>, </td>
847
<td class="paramkey"></td>
849
<td class="paramtype">double & </td>
850
<td class="paramname"><em>bound</em> </td>
855
<td></td><td> const<code> [virtual]</code></td>
861
<p>Compute possible vertex snapping position for transformed object. </p>
862
<p>Looks only for positions closer than <em>bound</em>. If successful, modify <em>pos</em> and <em>bound</em>. </p>
864
<p>Implements <a class="el" href="classipe_1_1_object.html#a69d9cb72fcffab2eda5650e31f030c42">ipe::Object</a>.</p>
868
<a class="anchor" id="a56de14d8b2a3ada8101d2c630b6f59e5"></a><!-- doxytag: member="ipe::Path::snapBnd" ref="a56de14d8b2a3ada8101d2c630b6f59e5" args="(const Vector &mouse, const Matrix &m, Vector &pos, double &bound) const " -->
869
<div class="memitem">
870
<div class="memproto">
871
<table class="memname">
873
<td class="memname">void Path::snapBnd </td>
875
<td class="paramtype">const <a class="el" href="classipe_1_1_vector.html">Vector</a> & </td>
876
<td class="paramname"><em>mouse</em>, </td>
879
<td class="paramkey"></td>
881
<td class="paramtype">const <a class="el" href="classipe_1_1_matrix.html">Matrix</a> & </td>
882
<td class="paramname"><em>m</em>, </td>
885
<td class="paramkey"></td>
887
<td class="paramtype"><a class="el" href="classipe_1_1_vector.html">Vector</a> & </td>
888
<td class="paramname"><em>pos</em>, </td>
891
<td class="paramkey"></td>
893
<td class="paramtype">double & </td>
894
<td class="paramname"><em>bound</em> </td>
899
<td></td><td> const<code> [virtual]</code></td>
905
<p>Compute boundary snapping position for transformed object. </p>
906
<p>Looks only for positions closer than <em>bound</em>. If successful, modify <em>pos</em> and <em>bound</em>. The default implementation does nothing. </p>
908
<p>Reimplemented from <a class="el" href="classipe_1_1_object.html#aa620ebe63576035b0a65edfe38a356b2">ipe::Object</a>.</p>
912
<a class="anchor" id="a9eabfc43680c2059fac88f3d715da53c"></a><!-- doxytag: member="ipe::Path::checkStyle" ref="a9eabfc43680c2059fac88f3d715da53c" args="(const Cascade *sheet, AttributeSeq &seq) const " -->
913
<div class="memitem">
914
<div class="memproto">
915
<table class="memname">
917
<td class="memname">void Path::checkStyle </td>
919
<td class="paramtype">const <a class="el" href="classipe_1_1_cascade.html">Cascade</a> * </td>
920
<td class="paramname"><em>sheet</em>, </td>
923
<td class="paramkey"></td>
925
<td class="paramtype"><a class="el" href="group__attr.html#ga724109aa4dbab072ea067cc5ed471e02">AttributeSeq</a> & </td>
926
<td class="paramname"><em>seq</em> </td>
931
<td></td><td> const<code> [virtual]</code></td>
937
<p>Check all symbolic attributes. </p>
939
<p>Reimplemented from <a class="el" href="classipe_1_1_object.html#a0949920a49f82e1a8df6af5d2a7d71e4">ipe::Object</a>.</p>
943
<a class="anchor" id="a81166665a45d05a219324754f0cf0e62"></a><!-- doxytag: member="ipe::Path::setAttribute" ref="a81166665a45d05a219324754f0cf0e62" args="(Property prop, Attribute value, Attribute stroke, Attribute fill)" -->
944
<div class="memitem">
945
<div class="memproto">
946
<table class="memname">
948
<td class="memname">bool Path::setAttribute </td>
950
<td class="paramtype"><a class="el" href="group__attr.html#gac50c1b1c913f9551a97e37ef29eb462f">Property</a> </td>
951
<td class="paramname"><em>prop</em>, </td>
954
<td class="paramkey"></td>
956
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
957
<td class="paramname"><em>value</em>, </td>
960
<td class="paramkey"></td>
962
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
963
<td class="paramname"><em>stroke</em>, </td>
966
<td class="paramkey"></td>
968
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
969
<td class="paramname"><em>fill</em> </td>
974
<td></td><td><code> [virtual]</code></td>
980
<p>Set an attribute on this object. </p>
981
<p>Returns true if an attribute was actually changed. The arguments <em>stroke</em> and <em>fill</em> are only used then <em>prop</em> is <em>EPropPathMode</em>, and stroking or filling is added to an object that didn't have it before. </p>
983
<p>Reimplemented from <a class="el" href="classipe_1_1_object.html#adbcb419378b3301121e10793dc344ea2">ipe::Object</a>.</p>
987
<a class="anchor" id="ac0b24cf2aa0badea5fd7073d37e64435"></a><!-- doxytag: member="ipe::Path::getAttribute" ref="ac0b24cf2aa0badea5fd7073d37e64435" args="(Property prop)" -->
988
<div class="memitem">
989
<div class="memproto">
990
<table class="memname">
992
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> Path::getAttribute </td>
994
<td class="paramtype"><a class="el" href="group__attr.html#gac50c1b1c913f9551a97e37ef29eb462f">Property</a> </td>
995
<td class="paramname"><em>prop</em></td><td>)</td>
996
<td><code> [virtual]</code></td>
1000
<div class="memdoc">
1002
<p>Get setting of an attribute of this object. </p>
1003
<p>If object does not have this attribute, returnes "undefined" attribute. </p>
1005
<p>Reimplemented from <a class="el" href="classipe_1_1_object.html#af60ffe98d9699dc9463d33f64b7ef98e">ipe::Object</a>.</p>
1009
<a class="anchor" id="ae4424f1b2ff2b6534924ea5c5e52ebc8"></a><!-- doxytag: member="ipe::Path::arrow" ref="ae4424f1b2ff2b6534924ea5c5e52ebc8" args="() const " -->
1010
<div class="memitem">
1011
<div class="memproto">
1012
<table class="memname">
1014
<td class="memname">bool ipe::Path::arrow </td>
1016
<td class="paramname"></td><td>)</td>
1017
<td> const<code> [inline]</code></td>
1021
<div class="memdoc">
1023
<p>Does object have an arrow? </p>
1027
<a class="anchor" id="a2d4470e2d1be1bc90b3c3a4084c5dfd7"></a><!-- doxytag: member="ipe::Path::rArrow" ref="a2d4470e2d1be1bc90b3c3a4084c5dfd7" args="() const " -->
1028
<div class="memitem">
1029
<div class="memproto">
1030
<table class="memname">
1032
<td class="memname">bool ipe::Path::rArrow </td>
1034
<td class="paramname"></td><td>)</td>
1035
<td> const<code> [inline]</code></td>
1039
<div class="memdoc">
1041
<p>Does object have a reverse arrow? </p>
1045
<a class="anchor" id="ab2eb23018ffa5f621aae5ff34350fda9"></a><!-- doxytag: member="ipe::Path::arrowShape" ref="ab2eb23018ffa5f621aae5ff34350fda9" args="() const " -->
1046
<div class="memitem">
1047
<div class="memproto">
1048
<table class="memname">
1050
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::arrowShape </td>
1052
<td class="paramname"></td><td>)</td>
1053
<td> const<code> [inline]</code></td>
1057
<div class="memdoc">
1059
<p>Return shape of arrow. </p>
1063
<a class="anchor" id="a6dc4f8283de7e0cff9a57ddda227d162"></a><!-- doxytag: member="ipe::Path::rArrowShape" ref="a6dc4f8283de7e0cff9a57ddda227d162" args="() const " -->
1064
<div class="memitem">
1065
<div class="memproto">
1066
<table class="memname">
1068
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::rArrowShape </td>
1070
<td class="paramname"></td><td>)</td>
1071
<td> const<code> [inline]</code></td>
1075
<div class="memdoc">
1077
<p>Return shape of reverse arrow. </p>
1081
<a class="anchor" id="a1167a8662140e5d744dfe3c0868da0ed"></a><!-- doxytag: member="ipe::Path::arrowSize" ref="a1167a8662140e5d744dfe3c0868da0ed" args="() const " -->
1082
<div class="memitem">
1083
<div class="memproto">
1084
<table class="memname">
1086
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::arrowSize </td>
1088
<td class="paramname"></td><td>)</td>
1089
<td> const<code> [inline]</code></td>
1093
<div class="memdoc">
1095
<p>Return size of arrow. </p>
1099
<a class="anchor" id="ab8296bfa56b0156206d43667ab620a72"></a><!-- doxytag: member="ipe::Path::rArrowSize" ref="ab8296bfa56b0156206d43667ab620a72" args="() const " -->
1100
<div class="memitem">
1101
<div class="memproto">
1102
<table class="memname">
1104
<td class="memname"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> ipe::Path::rArrowSize </td>
1106
<td class="paramname"></td><td>)</td>
1107
<td> const<code> [inline]</code></td>
1111
<div class="memdoc">
1113
<p>Return size of reverse arrow. </p>
1117
<a class="anchor" id="a67bcd47d6e5c5f4ad12df2114a7732ee"></a><!-- doxytag: member="ipe::Path::setArrow" ref="a67bcd47d6e5c5f4ad12df2114a7732ee" args="(bool arrow, Attribute shape, Attribute size)" -->
1118
<div class="memitem">
1119
<div class="memproto">
1120
<table class="memname">
1122
<td class="memname">void Path::setArrow </td>
1124
<td class="paramtype">bool </td>
1125
<td class="paramname"><em>arrow</em>, </td>
1128
<td class="paramkey"></td>
1130
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1131
<td class="paramname"><em>shape</em>, </td>
1134
<td class="paramkey"></td>
1136
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1137
<td class="paramname"><em>size</em> </td>
1146
<div class="memdoc">
1148
<p>Set forward arrow. </p>
1152
<a class="anchor" id="a03e234a4ca96e75160e0c855d493e178"></a><!-- doxytag: member="ipe::Path::setRarrow" ref="a03e234a4ca96e75160e0c855d493e178" args="(bool arrow, Attribute shape, Attribute size)" -->
1153
<div class="memitem">
1154
<div class="memproto">
1155
<table class="memname">
1157
<td class="memname">void Path::setRarrow </td>
1159
<td class="paramtype">bool </td>
1160
<td class="paramname"><em>arrow</em>, </td>
1163
<td class="paramkey"></td>
1165
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1166
<td class="paramname"><em>shape</em>, </td>
1169
<td class="paramkey"></td>
1171
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1172
<td class="paramname"><em>size</em> </td>
1181
<div class="memdoc">
1183
<p>Set backward arrow (if the object can take it). </p>
1187
<a class="anchor" id="a6000b9ab135128f960b40418c764e2e9"></a><!-- doxytag: member="ipe::Path::drawArrow" ref="a6000b9ab135128f960b40418c764e2e9" args="(Painter &painter, Vector pos, Angle alpha, Attribute shape, Attribute size, double radius)" -->
1188
<div class="memitem">
1189
<div class="memproto">
1190
<table class="memname">
1192
<td class="memname">void Path::drawArrow </td>
1194
<td class="paramtype"><a class="el" href="classipe_1_1_painter.html">Painter</a> & </td>
1195
<td class="paramname"><em>painter</em>, </td>
1198
<td class="paramkey"></td>
1200
<td class="paramtype"><a class="el" href="classipe_1_1_vector.html">Vector</a> </td>
1201
<td class="paramname"><em>pos</em>, </td>
1204
<td class="paramkey"></td>
1206
<td class="paramtype"><a class="el" href="classipe_1_1_angle.html">Angle</a> </td>
1207
<td class="paramname"><em>angle</em>, </td>
1210
<td class="paramkey"></td>
1212
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1213
<td class="paramname"><em>shape</em>, </td>
1216
<td class="paramkey"></td>
1218
<td class="paramtype"><a class="el" href="classipe_1_1_attribute.html">Attribute</a> </td>
1219
<td class="paramname"><em>size</em>, </td>
1222
<td class="paramkey"></td>
1224
<td class="paramtype">double </td>
1225
<td class="paramname"><em>radius</em> </td>
1230
<td></td><td><code> [static]</code></td>
1234
<div class="memdoc">
1235
<p>Draw an arrow of <em>size</em> with tip at <em>pos</em> directed in direction <em>angle</em>. </p>
1239
<a class="anchor" id="a574acee6d796ed4f45970cb190a1121e"></a><!-- doxytag: member="ipe::Path::shape" ref="a574acee6d796ed4f45970cb190a1121e" args="() const " -->
1240
<div class="memitem">
1241
<div class="memproto">
1242
<table class="memname">
1244
<td class="memname">const <a class="el" href="classipe_1_1_shape.html">Shape</a>& ipe::Path::shape </td>
1246
<td class="paramname"></td><td>)</td>
1247
<td> const<code> [inline]</code></td>
1251
<div class="memdoc">
1253
<p>Return shape of the path object. </p>
1257
<a class="anchor" id="ae7014f62d96b8688d91c8d2ad39fca9d"></a><!-- doxytag: member="ipe::Path::setShape" ref="ae7014f62d96b8688d91c8d2ad39fca9d" args="(const Shape &shape)" -->
1258
<div class="memitem">
1259
<div class="memproto">
1260
<table class="memname">
1262
<td class="memname">void Path::setShape </td>
1264
<td class="paramtype">const <a class="el" href="classipe_1_1_shape.html">Shape</a> & </td>
1265
<td class="paramname"><em>shape</em></td><td>)</td>
1270
<div class="memdoc">
1274
<hr/>The documentation for this class was generated from the following files:<ul>
1276
<li>ipepath.cpp</li>