~ubuntu-branches/ubuntu/precise/ipe/precise

« back to all changes in this revision

Viewing changes to doc/class_ipe_object.html

  • Committer: Bazaar Package Importer
  • Author(s): Steve M. Robbins
  • Date: 2007-01-09 23:14:51 UTC
  • mfrom: (3.1.4 feisty)
  • Revision ID: james.westby@ubuntu.com-20070109231451-3nd095g7ishc108l
Tags: 6.0pre27-3
* debian/gsfonts-fontmap.xml: New.  Fontmap for fonts from gsfonts package.
* debian/rules: Use gsfonts-fontmap.xml instead of tetex-fontmap.xml.
* debian/control: Add texlive-latex-base dependency as alternative to
  tetex-bin (for pdflatex) and replace tetex-extra by gsfonts (for font
  files).  Patch courtesy of Norbert Preining.  Closes: #378537.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3
 
<title>Ipelib: IpeObject class Reference</title>
 
3
<title>Ipelib: IpeObject Class Reference</title>
4
4
<link href="doxygen.css" rel="stylesheet" type="text/css">
5
5
</head><body>
6
 
<!-- Generated by Doxygen 1.3.6 -->
7
 
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
 
6
<!-- Generated by Doxygen 1.4.4 -->
 
7
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
8
8
<h1>IpeObject Class Reference<br>
9
9
<small>
10
10
[<a class="el" href="group__obj.html">Ipe Objects</a>]</small>
11
 
</h1>Base class for all Ipe objects, composite or leaf.  
 
11
</h1><!-- doxytag: class="IpeObject" -->Base class for all Ipe objects, composite or leaf.  
12
12
<a href="#_details">More...</a>
13
13
<p>
14
 
Inherited by <a class="el" href="class_ipe_fillable.html">IpeFillable</a>, <a class="el" href="class_ipe_image.html">IpeImage</a>, <a class="el" href="class_ipe_mark.html">IpeMark</a>, <a class="el" href="class_ipe_reference.html">IpeReference</a>, and <a class="el" href="class_ipe_text.html">IpeText</a>.
 
14
Inherited by <a class="el" href="class_ipe_fillable.html">IpeFillable</a>, <a class="el" href="class_ipe_image.html">IpeImage</a>, <a class="el" href="class_ipe_reference.html">IpeReference</a>, and <a class="el" href="class_ipe_text.html">IpeText</a>.
15
15
<p>
16
16
<a href="class_ipe_object-members.html">List of all members.</a><h2>Public Member Functions</h2>
17
17
<ul>
18
18
<li>virtual <a class="el" href="class_ipe_object.html#a0">~IpeObject</a> ()=0
19
 
<li>virtual void <a class="el" href="class_ipe_object.html#a1">Accept</a> (<a class="el" href="class_ipe_visitor.html">IpeVisitor</a> &amp;visitor) const=0
20
 
<li>virtual <a class="el" href="class_ipe_object.html">IpeObject</a> * <a class="el" href="class_ipe_object.html#a2">Clone</a> () const=0
 
19
<li>virtual void <a class="el" href="class_ipe_object.html#a1">Accept</a> (<a class="el" href="class_ipe_visitor.html">IpeVisitor</a> &amp;visitor) const =0
 
20
<li>virtual <a class="el" href="class_ipe_object.html">IpeObject</a> * <a class="el" href="class_ipe_object.html#a2">Clone</a> () const =0
21
21
<li>virtual <a class="el" href="class_ipe_fillable.html">IpeFillable</a> * <a class="el" href="class_ipe_object.html#a3">AsFillable</a> ()
22
22
<li>virtual <a class="el" href="class_ipe_group.html">IpeGroup</a> * <a class="el" href="class_ipe_object.html#a4">AsGroup</a> ()
23
23
<li>virtual <a class="el" href="class_ipe_text.html">IpeText</a> * <a class="el" href="class_ipe_object.html#a5">AsText</a> ()
25
25
<li>virtual <a class="el" href="class_ipe_path.html">IpePath</a> * <a class="el" href="class_ipe_object.html#a7">AsPath</a> ()
26
26
<li>virtual <a class="el" href="class_ipe_image.html">IpeImage</a> * <a class="el" href="class_ipe_object.html#a8">AsImage</a> ()
27
27
<li>virtual <a class="el" href="class_ipe_reference.html">IpeReference</a> * <a class="el" href="class_ipe_object.html#a9">AsReference</a> ()
28
 
<li>virtual void <a class="el" href="class_ipe_object.html#a10">SaveAsXml</a> (<a class="el" href="class_ipe_painter.html">IpePainter</a> &amp;painter, <a class="el" href="class_ipe_stream.html">IpeStream</a> &amp;stream, <a class="el" href="class_ipe_string.html">IpeString</a> layer) const=0
29
 
<li>virtual void <a class="el" href="class_ipe_object.html#a11">Draw</a> (<a class="el" href="class_ipe_painter.html">IpePainter</a> &amp;painter) const=0
30
 
<li>virtual double <a class="el" href="class_ipe_object.html#a12">Distance</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;v, const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;m, double bound) const=0
31
 
<li>virtual void <a class="el" href="class_ipe_object.html#a13">AddToBBox</a> (<a class="el" href="class_ipe_rect.html">IpeRect</a> &amp;box, const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;m) const=0
 
28
<li>virtual void <a class="el" href="class_ipe_object.html#a10">SaveAsXml</a> (<a class="el" href="class_ipe_painter.html">IpePainter</a> &amp;painter, <a class="el" href="class_ipe_stream.html">IpeStream</a> &amp;stream, <a class="el" href="class_ipe_string.html">IpeString</a> layer) const =0
 
29
<li>virtual void <a class="el" href="class_ipe_object.html#a11">Draw</a> (<a class="el" href="class_ipe_painter.html">IpePainter</a> &amp;painter) const =0
 
30
<li>virtual double <a class="el" href="class_ipe_object.html#a12">Distance</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;v, const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;m, double bound) const =0
 
31
<li>virtual void <a class="el" href="class_ipe_object.html#a13">AddToBBox</a> (<a class="el" href="class_ipe_rect.html">IpeRect</a> &amp;box, const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;m) const =0
32
32
<li>virtual void <a class="el" href="class_ipe_object.html#a14">AddToGraphicBBox</a> (<a class="el" href="class_ipe_rect.html">IpeRect</a> &amp;box, <a class="el" href="class_ipe_style_sheet.html">IpeStyleSheet</a> *sheet, <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;m) const 
33
 
<li>virtual void <a class="el" href="class_ipe_object.html#a15">SnapVtx</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;mouse, const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;m, <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;pos, double &amp;bound) const=0
 
33
<li>virtual void <a class="el" href="class_ipe_object.html#a15">SnapVtx</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;mouse, const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;m, <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;pos, double &amp;bound) const =0
34
34
<li>virtual void <a class="el" href="class_ipe_object.html#a16">CheckStyle</a> (const <a class="el" href="class_ipe_style_sheet.html">IpeStyleSheet</a> *sheet, <a class="el" href="group__attr.html#ga1">IpeAttributeSeq</a> &amp;seq) const 
35
35
<li>virtual void <a class="el" href="class_ipe_object.html#a17">SnapBnd</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;mouse, const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;m, <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;pos, double &amp;bound) const 
36
36
<li>void <a class="el" href="class_ipe_object.html#a18">SetStroke</a> (<a class="el" href="class_ipe_attribute.html">IpeAttribute</a> stroke)
40
40
</ul>
41
41
<h2>Static Public Member Functions</h2>
42
42
<ul>
43
 
<li>bool <a class="el" href="class_ipe_object.html#e0">SnapVertex</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;mouse, const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;v, <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;pos, double &amp;bound)
 
43
<li>static bool <a class="el" href="class_ipe_object.html#e0">SnapVertex</a> (const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;mouse, const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;v, <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;pos, double &amp;bound)
44
44
</ul>
45
45
<h2>Protected Member Functions</h2>
46
46
<ul>
52
52
</ul>
53
53
<h2>Static Protected Member Functions</h2>
54
54
<ul>
55
 
<li><a class="anchor" name="f0" doxytag="IpeObject::CheckSymbol" ></a>
56
 
void <b>CheckSymbol</b> (<a class="el" href="class_ipe_attribute.html">IpeAttribute</a> attr, const <a class="el" href="class_ipe_style_sheet.html">IpeStyleSheet</a> *sheet, <a class="el" href="group__attr.html#ga1">IpeAttributeSeq</a> &amp;seq)
 
55
<li><a class="anchor" name="f0"></a><!-- doxytag: member="IpeObject::CheckSymbol" ref="f0" args="(IpeAttribute attr, const IpeStyleSheet *sheet, IpeAttributeSeq &amp;seq)" -->
 
56
static void <b>CheckSymbol</b> (<a class="el" href="class_ipe_attribute.html">IpeAttribute</a> attr, const <a class="el" href="class_ipe_style_sheet.html">IpeStyleSheet</a> *sheet, <a class="el" href="group__attr.html#ga1">IpeAttributeSeq</a> &amp;seq)
57
57
</ul>
58
58
<hr><a name="_details"></a><h2>Detailed Description</h2>
59
59
Base class for all Ipe objects, composite or leaf. 
60
60
<p>
61
61
All Ipe objects are derived from this class. It provides functionality common to all objects, and carries the standard attributes.<p>
62
62
All IpeObject's provide a constant time copy constructor (and a virtual <a class="el" href="class_ipe_object.html#a2">IpeObject::Clone()</a> method). Objects of non-constant size realize this by separating the implementation and using reference counting. In particular, copying a composite objects does not create new copies of the components.<p>
63
 
The common attributes are stroke and fill color, line style and width, and the transformation matrix for coordinates. 
 
63
The common attributes are stroke and fill color, line style and width, and the transformation matrix for coordinates.
64
64
<p>
65
65
<hr><h2>Constructor &amp; Destructor Documentation</h2>
66
 
<a class="anchor" name="a0" doxytag="IpeObject::~IpeObject" ></a><p>
67
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
66
<a class="anchor" name="a0"></a><!-- doxytag: member="IpeObject::~IpeObject" ref="a0" args="()=0" --><p>
 
67
<table class="mdTable" cellpadding="2" cellspacing="0">
68
68
  <tr>
69
69
    <td class="mdRow">
70
70
      <table cellpadding="0" cellspacing="0" border="0">
71
71
        <tr>
72
 
          <td class="md" nowrap valign="top"> IpeObject::~<a class="el" href="class_ipe_object.html">IpeObject</a> </td>
 
72
          <td class="md" nowrap valign="top">IpeObject::~IpeObject           </td>
73
73
          <td class="md" valign="top">(&nbsp;</td>
74
74
          <td class="mdname1" valign="top" nowrap>          </td>
75
75
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
76
76
          <td class="md" nowrap><code> [pure virtual]</code></td>
77
77
        </tr>
78
 
 
79
78
      </table>
80
79
    </td>
81
80
  </tr>
82
81
</table>
83
 
<table cellspacing=5 cellpadding=0 border=0>
 
82
<table cellspacing="5" cellpadding="0" border="0">
84
83
  <tr>
85
84
    <td>
86
85
      &nbsp;
93
92
    </td>
94
93
  </tr>
95
94
</table>
96
 
<a class="anchor" name="b0" doxytag="IpeObject::IpeObject" ></a><p>
97
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
95
<a class="anchor" name="b0"></a><!-- doxytag: member="IpeObject::IpeObject" ref="b0" args="()" --><p>
 
96
<table class="mdTable" cellpadding="2" cellspacing="0">
98
97
  <tr>
99
98
    <td class="mdRow">
100
99
      <table cellpadding="0" cellspacing="0" border="0">
101
100
        <tr>
102
 
          <td class="md" nowrap valign="top"> IpeObject::IpeObject </td>
 
101
          <td class="md" nowrap valign="top">IpeObject::IpeObject           </td>
103
102
          <td class="md" valign="top">(&nbsp;</td>
104
103
          <td class="mdname1" valign="top" nowrap>          </td>
105
104
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
106
105
          <td class="md" nowrap><code> [explicit, protected]</code></td>
107
106
        </tr>
108
 
 
109
107
      </table>
110
108
    </td>
111
109
  </tr>
112
110
</table>
113
 
<table cellspacing=5 cellpadding=0 border=0>
 
111
<table cellspacing="5" cellpadding="0" border="0">
114
112
  <tr>
115
113
    <td>
116
114
      &nbsp;
121
119
Create object with null stroke and identity matrix.     </td>
122
120
  </tr>
123
121
</table>
124
 
<a class="anchor" name="b1" doxytag="IpeObject::IpeObject" ></a><p>
125
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
122
<a class="anchor" name="b1"></a><!-- doxytag: member="IpeObject::IpeObject" ref="b1" args="(const IpeAllAttributes &amp;attr)" --><p>
 
123
<table class="mdTable" cellpadding="2" cellspacing="0">
126
124
  <tr>
127
125
    <td class="mdRow">
128
126
      <table cellpadding="0" cellspacing="0" border="0">
129
127
        <tr>
130
 
          <td class="md" nowrap valign="top"> IpeObject::IpeObject </td>
 
128
          <td class="md" nowrap valign="top">IpeObject::IpeObject           </td>
131
129
          <td class="md" valign="top">(&nbsp;</td>
132
130
          <td class="md" nowrap valign="top">const <a class="el" href="class_ipe_all_attributes.html">IpeAllAttributes</a> &amp;&nbsp;</td>
133
131
          <td class="mdname1" valign="top" nowrap> <em>attr</em>          </td>
134
132
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
135
133
          <td class="md" nowrap><code> [explicit, protected]</code></td>
136
134
        </tr>
137
 
 
138
135
      </table>
139
136
    </td>
140
137
  </tr>
141
138
</table>
142
 
<table cellspacing=5 cellpadding=0 border=0>
 
139
<table cellspacing="5" cellpadding="0" border="0">
143
140
  <tr>
144
141
    <td>
145
142
      &nbsp;
150
147
Create object by taking stroke color from <em>attr</em> and setting identity matrix.     </td>
151
148
  </tr>
152
149
</table>
153
 
<a class="anchor" name="b2" doxytag="IpeObject::IpeObject" ></a><p>
154
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
150
<a class="anchor" name="b2"></a><!-- doxytag: member="IpeObject::IpeObject" ref="b2" args="(IpeRepository *rep, const IpeXmlAttributes &amp;attr)" --><p>
 
151
<table class="mdTable" cellpadding="2" cellspacing="0">
155
152
  <tr>
156
153
    <td class="mdRow">
157
154
      <table cellpadding="0" cellspacing="0" border="0">
158
155
        <tr>
159
 
          <td class="md" nowrap valign="top"> IpeObject::IpeObject </td>
 
156
          <td class="md" nowrap valign="top">IpeObject::IpeObject           </td>
160
157
          <td class="md" valign="top">(&nbsp;</td>
161
158
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_repository.html">IpeRepository</a> *&nbsp;</td>
162
159
          <td class="mdname" nowrap> <em>rep</em>, </td>
163
160
        </tr>
164
161
        <tr>
165
162
          <td class="md" nowrap align="right"></td>
166
 
          <td></td>
 
163
          <td class="md"></td>
167
164
          <td class="md" nowrap>const <a class="el" href="class_ipe_xml_attributes.html">IpeXmlAttributes</a> &amp;&nbsp;</td>
168
165
          <td class="mdname" nowrap> <em>attr</em></td>
169
166
        </tr>
170
167
        <tr>
171
 
          <td></td>
 
168
          <td class="md"></td>
172
169
          <td class="md">)&nbsp;</td>
173
170
          <td class="md" colspan="2"><code> [explicit, protected]</code></td>
174
171
        </tr>
175
 
 
176
172
      </table>
177
173
    </td>
178
174
  </tr>
179
175
</table>
180
 
<table cellspacing=5 cellpadding=0 border=0>
 
176
<table cellspacing="5" cellpadding="0" border="0">
181
177
  <tr>
182
178
    <td>
183
179
      &nbsp;
190
186
    </td>
191
187
  </tr>
192
188
</table>
193
 
<a class="anchor" name="b3" doxytag="IpeObject::IpeObject" ></a><p>
194
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
189
<a class="anchor" name="b3"></a><!-- doxytag: member="IpeObject::IpeObject" ref="b3" args="(const IpeObject &amp;rhs)" --><p>
 
190
<table class="mdTable" cellpadding="2" cellspacing="0">
195
191
  <tr>
196
192
    <td class="mdRow">
197
193
      <table cellpadding="0" cellspacing="0" border="0">
198
194
        <tr>
199
 
          <td class="md" nowrap valign="top"> IpeObject::IpeObject </td>
 
195
          <td class="md" nowrap valign="top">IpeObject::IpeObject           </td>
200
196
          <td class="md" valign="top">(&nbsp;</td>
201
197
          <td class="md" nowrap valign="top">const <a class="el" href="class_ipe_object.html">IpeObject</a> &amp;&nbsp;</td>
202
198
          <td class="mdname1" valign="top" nowrap> <em>rhs</em>          </td>
203
199
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
204
200
          <td class="md" nowrap><code> [protected]</code></td>
205
201
        </tr>
206
 
 
207
202
      </table>
208
203
    </td>
209
204
  </tr>
210
205
</table>
211
 
<table cellspacing=5 cellpadding=0 border=0>
 
206
<table cellspacing="5" cellpadding="0" border="0">
212
207
  <tr>
213
208
    <td>
214
209
      &nbsp;
222
217
  </tr>
223
218
</table>
224
219
<hr><h2>Member Function Documentation</h2>
225
 
<a class="anchor" name="a1" doxytag="IpeObject::Accept" ></a><p>
226
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
220
<a class="anchor" name="a1"></a><!-- doxytag: member="IpeObject::Accept" ref="a1" args="(IpeVisitor &amp;visitor) const =0" --><p>
 
221
<table class="mdTable" cellpadding="2" cellspacing="0">
227
222
  <tr>
228
223
    <td class="mdRow">
229
224
      <table cellpadding="0" cellspacing="0" border="0">
230
225
        <tr>
231
 
          <td class="md" nowrap valign="top"> virtual void IpeObject::Accept </td>
 
226
          <td class="md" nowrap valign="top">virtual void IpeObject::Accept           </td>
232
227
          <td class="md" valign="top">(&nbsp;</td>
233
228
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_visitor.html">IpeVisitor</a> &amp;&nbsp;</td>
234
229
          <td class="mdname1" valign="top" nowrap> <em>visitor</em>          </td>
235
230
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
236
231
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
237
232
        </tr>
238
 
 
239
233
      </table>
240
234
    </td>
241
235
  </tr>
242
236
</table>
243
 
<table cellspacing=5 cellpadding=0 border=0>
 
237
<table cellspacing="5" cellpadding="0" border="0">
244
238
  <tr>
245
239
    <td>
246
240
      &nbsp;
255
249
Implemented in <a class="el" href="class_ipe_group.html#a7">IpeGroup</a>, <a class="el" href="class_ipe_image.html#a7">IpeImage</a>, <a class="el" href="class_ipe_mark.html#a5">IpeMark</a>, <a class="el" href="class_ipe_path.html#a13">IpePath</a>, <a class="el" href="class_ipe_reference.html#a5">IpeReference</a>, and <a class="el" href="class_ipe_text.html#a8">IpeText</a>.    </td>
256
250
  </tr>
257
251
</table>
258
 
<a class="anchor" name="a2" doxytag="IpeObject::Clone" ></a><p>
259
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
252
<a class="anchor" name="a2"></a><!-- doxytag: member="IpeObject::Clone" ref="a2" args="() const =0" --><p>
 
253
<table class="mdTable" cellpadding="2" cellspacing="0">
260
254
  <tr>
261
255
    <td class="mdRow">
262
256
      <table cellpadding="0" cellspacing="0" border="0">
263
257
        <tr>
264
 
          <td class="md" nowrap valign="top"> virtual <a class="el" href="class_ipe_object.html">IpeObject</a>* IpeObject::Clone </td>
 
258
          <td class="md" nowrap valign="top">virtual <a class="el" href="class_ipe_object.html">IpeObject</a>* IpeObject::Clone           </td>
265
259
          <td class="md" valign="top">(&nbsp;</td>
266
260
          <td class="mdname1" valign="top" nowrap>          </td>
267
261
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
268
262
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
269
263
        </tr>
270
 
 
271
264
      </table>
272
265
    </td>
273
266
  </tr>
274
267
</table>
275
 
<table cellspacing=5 cellpadding=0 border=0>
 
268
<table cellspacing="5" cellpadding="0" border="0">
276
269
  <tr>
277
270
    <td>
278
271
      &nbsp;
287
280
Implemented in <a class="el" href="class_ipe_group.html#a5">IpeGroup</a>, <a class="el" href="class_ipe_image.html#a3">IpeImage</a>, <a class="el" href="class_ipe_mark.html#a3">IpeMark</a>, <a class="el" href="class_ipe_path.html#a9">IpePath</a>, <a class="el" href="class_ipe_reference.html#a3">IpeReference</a>, and <a class="el" href="class_ipe_text.html#a4">IpeText</a>.    </td>
288
281
  </tr>
289
282
</table>
290
 
<a class="anchor" name="a3" doxytag="IpeObject::AsFillable" ></a><p>
291
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
283
<a class="anchor" name="a3"></a><!-- doxytag: member="IpeObject::AsFillable" ref="a3" args="()" --><p>
 
284
<table class="mdTable" cellpadding="2" cellspacing="0">
292
285
  <tr>
293
286
    <td class="mdRow">
294
287
      <table cellpadding="0" cellspacing="0" border="0">
295
288
        <tr>
296
 
          <td class="md" nowrap valign="top"> <a class="el" href="class_ipe_fillable.html">IpeFillable</a> * IpeObject::AsFillable </td>
 
289
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_fillable.html">IpeFillable</a> * IpeObject::AsFillable           </td>
297
290
          <td class="md" valign="top">(&nbsp;</td>
298
291
          <td class="mdname1" valign="top" nowrap>          </td>
299
292
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
300
293
          <td class="md" nowrap><code> [virtual]</code></td>
301
294
        </tr>
302
 
 
303
295
      </table>
304
296
    </td>
305
297
  </tr>
306
298
</table>
307
 
<table cellspacing=5 cellpadding=0 border=0>
 
299
<table cellspacing="5" cellpadding="0" border="0">
308
300
  <tr>
309
301
    <td>
310
302
      &nbsp;
319
311
Reimplemented in <a class="el" href="class_ipe_fillable.html#a0">IpeFillable</a>.    </td>
320
312
  </tr>
321
313
</table>
322
 
<a class="anchor" name="a4" doxytag="IpeObject::AsGroup" ></a><p>
323
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
314
<a class="anchor" name="a4"></a><!-- doxytag: member="IpeObject::AsGroup" ref="a4" args="()" --><p>
 
315
<table class="mdTable" cellpadding="2" cellspacing="0">
324
316
  <tr>
325
317
    <td class="mdRow">
326
318
      <table cellpadding="0" cellspacing="0" border="0">
327
319
        <tr>
328
 
          <td class="md" nowrap valign="top"> <a class="el" href="class_ipe_group.html">IpeGroup</a> * IpeObject::AsGroup </td>
 
320
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_group.html">IpeGroup</a> * IpeObject::AsGroup           </td>
329
321
          <td class="md" valign="top">(&nbsp;</td>
330
322
          <td class="mdname1" valign="top" nowrap>          </td>
331
323
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
332
324
          <td class="md" nowrap><code> [virtual]</code></td>
333
325
        </tr>
334
 
 
335
326
      </table>
336
327
    </td>
337
328
  </tr>
338
329
</table>
339
 
<table cellspacing=5 cellpadding=0 border=0>
 
330
<table cellspacing="5" cellpadding="0" border="0">
340
331
  <tr>
341
332
    <td>
342
333
      &nbsp;
351
342
Reimplemented in <a class="el" href="class_ipe_group.html#a6">IpeGroup</a>.    </td>
352
343
  </tr>
353
344
</table>
354
 
<a class="anchor" name="a5" doxytag="IpeObject::AsText" ></a><p>
355
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
345
<a class="anchor" name="a5"></a><!-- doxytag: member="IpeObject::AsText" ref="a5" args="()" --><p>
 
346
<table class="mdTable" cellpadding="2" cellspacing="0">
356
347
  <tr>
357
348
    <td class="mdRow">
358
349
      <table cellpadding="0" cellspacing="0" border="0">
359
350
        <tr>
360
 
          <td class="md" nowrap valign="top"> <a class="el" href="class_ipe_text.html">IpeText</a> * IpeObject::AsText </td>
 
351
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_text.html">IpeText</a> * IpeObject::AsText           </td>
361
352
          <td class="md" valign="top">(&nbsp;</td>
362
353
          <td class="mdname1" valign="top" nowrap>          </td>
363
354
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
364
355
          <td class="md" nowrap><code> [virtual]</code></td>
365
356
        </tr>
366
 
 
367
357
      </table>
368
358
    </td>
369
359
  </tr>
370
360
</table>
371
 
<table cellspacing=5 cellpadding=0 border=0>
 
361
<table cellspacing="5" cellpadding="0" border="0">
372
362
  <tr>
373
363
    <td>
374
364
      &nbsp;
383
373
Reimplemented in <a class="el" href="class_ipe_text.html#a5">IpeText</a>.    </td>
384
374
  </tr>
385
375
</table>
386
 
<a class="anchor" name="a6" doxytag="IpeObject::AsMark" ></a><p>
387
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
376
<a class="anchor" name="a6"></a><!-- doxytag: member="IpeObject::AsMark" ref="a6" args="()" --><p>
 
377
<table class="mdTable" cellpadding="2" cellspacing="0">
388
378
  <tr>
389
379
    <td class="mdRow">
390
380
      <table cellpadding="0" cellspacing="0" border="0">
391
381
        <tr>
392
 
          <td class="md" nowrap valign="top"> <a class="el" href="class_ipe_mark.html">IpeMark</a> * IpeObject::AsMark </td>
 
382
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_mark.html">IpeMark</a> * IpeObject::AsMark           </td>
393
383
          <td class="md" valign="top">(&nbsp;</td>
394
384
          <td class="mdname1" valign="top" nowrap>          </td>
395
385
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
396
386
          <td class="md" nowrap><code> [virtual]</code></td>
397
387
        </tr>
398
 
 
399
388
      </table>
400
389
    </td>
401
390
  </tr>
402
391
</table>
403
 
<table cellspacing=5 cellpadding=0 border=0>
 
392
<table cellspacing="5" cellpadding="0" border="0">
404
393
  <tr>
405
394
    <td>
406
395
      &nbsp;
415
404
Reimplemented in <a class="el" href="class_ipe_mark.html#a4">IpeMark</a>.    </td>
416
405
  </tr>
417
406
</table>
418
 
<a class="anchor" name="a7" doxytag="IpeObject::AsPath" ></a><p>
419
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
407
<a class="anchor" name="a7"></a><!-- doxytag: member="IpeObject::AsPath" ref="a7" args="()" --><p>
 
408
<table class="mdTable" cellpadding="2" cellspacing="0">
420
409
  <tr>
421
410
    <td class="mdRow">
422
411
      <table cellpadding="0" cellspacing="0" border="0">
423
412
        <tr>
424
 
          <td class="md" nowrap valign="top"> <a class="el" href="class_ipe_path.html">IpePath</a> * IpeObject::AsPath </td>
 
413
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_path.html">IpePath</a> * IpeObject::AsPath           </td>
425
414
          <td class="md" valign="top">(&nbsp;</td>
426
415
          <td class="mdname1" valign="top" nowrap>          </td>
427
416
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
428
417
          <td class="md" nowrap><code> [virtual]</code></td>
429
418
        </tr>
430
 
 
431
419
      </table>
432
420
    </td>
433
421
  </tr>
434
422
</table>
435
 
<table cellspacing=5 cellpadding=0 border=0>
 
423
<table cellspacing="5" cellpadding="0" border="0">
436
424
  <tr>
437
425
    <td>
438
426
      &nbsp;
447
435
Reimplemented in <a class="el" href="class_ipe_path.html#a10">IpePath</a>.    </td>
448
436
  </tr>
449
437
</table>
450
 
<a class="anchor" name="a8" doxytag="IpeObject::AsImage" ></a><p>
451
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
438
<a class="anchor" name="a8"></a><!-- doxytag: member="IpeObject::AsImage" ref="a8" args="()" --><p>
 
439
<table class="mdTable" cellpadding="2" cellspacing="0">
452
440
  <tr>
453
441
    <td class="mdRow">
454
442
      <table cellpadding="0" cellspacing="0" border="0">
455
443
        <tr>
456
 
          <td class="md" nowrap valign="top"> <a class="el" href="class_ipe_image.html">IpeImage</a> * IpeObject::AsImage </td>
 
444
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_image.html">IpeImage</a> * IpeObject::AsImage           </td>
457
445
          <td class="md" valign="top">(&nbsp;</td>
458
446
          <td class="mdname1" valign="top" nowrap>          </td>
459
447
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
460
448
          <td class="md" nowrap><code> [virtual]</code></td>
461
449
        </tr>
462
 
 
463
450
      </table>
464
451
    </td>
465
452
  </tr>
466
453
</table>
467
 
<table cellspacing=5 cellpadding=0 border=0>
 
454
<table cellspacing="5" cellpadding="0" border="0">
468
455
  <tr>
469
456
    <td>
470
457
      &nbsp;
479
466
Reimplemented in <a class="el" href="class_ipe_image.html#a4">IpeImage</a>.    </td>
480
467
  </tr>
481
468
</table>
482
 
<a class="anchor" name="a9" doxytag="IpeObject::AsReference" ></a><p>
483
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
469
<a class="anchor" name="a9"></a><!-- doxytag: member="IpeObject::AsReference" ref="a9" args="()" --><p>
 
470
<table class="mdTable" cellpadding="2" cellspacing="0">
484
471
  <tr>
485
472
    <td class="mdRow">
486
473
      <table cellpadding="0" cellspacing="0" border="0">
487
474
        <tr>
488
 
          <td class="md" nowrap valign="top"> <a class="el" href="class_ipe_reference.html">IpeReference</a> * IpeObject::AsReference </td>
 
475
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_reference.html">IpeReference</a> * IpeObject::AsReference           </td>
489
476
          <td class="md" valign="top">(&nbsp;</td>
490
477
          <td class="mdname1" valign="top" nowrap>          </td>
491
478
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
492
479
          <td class="md" nowrap><code> [virtual]</code></td>
493
480
        </tr>
494
 
 
495
481
      </table>
496
482
    </td>
497
483
  </tr>
498
484
</table>
499
 
<table cellspacing=5 cellpadding=0 border=0>
 
485
<table cellspacing="5" cellpadding="0" border="0">
500
486
  <tr>
501
487
    <td>
502
488
      &nbsp;
511
497
Reimplemented in <a class="el" href="class_ipe_reference.html#a4">IpeReference</a>.    </td>
512
498
  </tr>
513
499
</table>
514
 
<a class="anchor" name="a10" doxytag="IpeObject::SaveAsXml" ></a><p>
515
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
500
<a class="anchor" name="a10"></a><!-- doxytag: member="IpeObject::SaveAsXml" ref="a10" args="(IpePainter &amp;painter, IpeStream &amp;stream, IpeString layer) const =0" --><p>
 
501
<table class="mdTable" cellpadding="2" cellspacing="0">
516
502
  <tr>
517
503
    <td class="mdRow">
518
504
      <table cellpadding="0" cellspacing="0" border="0">
519
505
        <tr>
520
 
          <td class="md" nowrap valign="top"> virtual void IpeObject::SaveAsXml </td>
 
506
          <td class="md" nowrap valign="top">virtual void IpeObject::SaveAsXml           </td>
521
507
          <td class="md" valign="top">(&nbsp;</td>
522
508
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_painter.html">IpePainter</a> &amp;&nbsp;</td>
523
509
          <td class="mdname" nowrap> <em>painter</em>, </td>
524
510
        </tr>
525
511
        <tr>
526
512
          <td class="md" nowrap align="right"></td>
527
 
          <td></td>
 
513
          <td class="md"></td>
528
514
          <td class="md" nowrap><a class="el" href="class_ipe_stream.html">IpeStream</a> &amp;&nbsp;</td>
529
515
          <td class="mdname" nowrap> <em>stream</em>, </td>
530
516
        </tr>
531
517
        <tr>
532
518
          <td class="md" nowrap align="right"></td>
533
 
          <td></td>
 
519
          <td class="md"></td>
534
520
          <td class="md" nowrap><a class="el" href="class_ipe_string.html">IpeString</a>&nbsp;</td>
535
521
          <td class="mdname" nowrap> <em>layer</em></td>
536
522
        </tr>
537
523
        <tr>
538
 
          <td></td>
 
524
          <td class="md"></td>
539
525
          <td class="md">)&nbsp;</td>
540
526
          <td class="md" colspan="2"> const<code> [pure virtual]</code></td>
541
527
        </tr>
542
 
 
543
528
      </table>
544
529
    </td>
545
530
  </tr>
546
531
</table>
547
 
<table cellspacing=5 cellpadding=0 border=0>
 
532
<table cellspacing="5" cellpadding="0" border="0">
548
533
  <tr>
549
534
    <td>
550
535
      &nbsp;
559
544
Implemented in <a class="el" href="class_ipe_group.html#a8">IpeGroup</a>, <a class="el" href="class_ipe_image.html#a5">IpeImage</a>, <a class="el" href="class_ipe_mark.html#a6">IpeMark</a>, <a class="el" href="class_ipe_path.html#a11">IpePath</a>, <a class="el" href="class_ipe_reference.html#a6">IpeReference</a>, and <a class="el" href="class_ipe_text.html#a6">IpeText</a>.    </td>
560
545
  </tr>
561
546
</table>
562
 
<a class="anchor" name="a11" doxytag="IpeObject::Draw" ></a><p>
563
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
547
<a class="anchor" name="a11"></a><!-- doxytag: member="IpeObject::Draw" ref="a11" args="(IpePainter &amp;painter) const =0" --><p>
 
548
<table class="mdTable" cellpadding="2" cellspacing="0">
564
549
  <tr>
565
550
    <td class="mdRow">
566
551
      <table cellpadding="0" cellspacing="0" border="0">
567
552
        <tr>
568
 
          <td class="md" nowrap valign="top"> virtual void IpeObject::Draw </td>
 
553
          <td class="md" nowrap valign="top">virtual void IpeObject::Draw           </td>
569
554
          <td class="md" valign="top">(&nbsp;</td>
570
555
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_painter.html">IpePainter</a> &amp;&nbsp;</td>
571
556
          <td class="mdname1" valign="top" nowrap> <em>painter</em>          </td>
572
557
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
573
558
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
574
559
        </tr>
575
 
 
576
560
      </table>
577
561
    </td>
578
562
  </tr>
579
563
</table>
580
 
<table cellspacing=5 cellpadding=0 border=0>
 
564
<table cellspacing="5" cellpadding="0" border="0">
581
565
  <tr>
582
566
    <td>
583
567
      &nbsp;
592
576
Implemented in <a class="el" href="class_ipe_group.html#a9">IpeGroup</a>, <a class="el" href="class_ipe_image.html#a6">IpeImage</a>, <a class="el" href="class_ipe_mark.html#a7">IpeMark</a>, <a class="el" href="class_ipe_path.html#a12">IpePath</a>, <a class="el" href="class_ipe_reference.html#a7">IpeReference</a>, and <a class="el" href="class_ipe_text.html#a7">IpeText</a>.    </td>
593
577
  </tr>
594
578
</table>
595
 
<a class="anchor" name="a12" doxytag="IpeObject::Distance" ></a><p>
596
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
579
<a class="anchor" name="a12"></a><!-- doxytag: member="IpeObject::Distance" ref="a12" args="(const IpeVector &amp;v, const IpeMatrix &amp;m, double bound) const =0" --><p>
 
580
<table class="mdTable" cellpadding="2" cellspacing="0">
597
581
  <tr>
598
582
    <td class="mdRow">
599
583
      <table cellpadding="0" cellspacing="0" border="0">
600
584
        <tr>
601
 
          <td class="md" nowrap valign="top"> virtual double IpeObject::Distance </td>
 
585
          <td class="md" nowrap valign="top">virtual double IpeObject::Distance           </td>
602
586
          <td class="md" valign="top">(&nbsp;</td>
603
587
          <td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;&nbsp;</td>
604
588
          <td class="mdname" nowrap> <em>v</em>, </td>
605
589
        </tr>
606
590
        <tr>
607
591
          <td class="md" nowrap align="right"></td>
608
 
          <td></td>
 
592
          <td class="md"></td>
609
593
          <td class="md" nowrap>const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;&nbsp;</td>
610
594
          <td class="mdname" nowrap> <em>m</em>, </td>
611
595
        </tr>
612
596
        <tr>
613
597
          <td class="md" nowrap align="right"></td>
614
 
          <td></td>
 
598
          <td class="md"></td>
615
599
          <td class="md" nowrap>double&nbsp;</td>
616
600
          <td class="mdname" nowrap> <em>bound</em></td>
617
601
        </tr>
618
602
        <tr>
619
 
          <td></td>
 
603
          <td class="md"></td>
620
604
          <td class="md">)&nbsp;</td>
621
605
          <td class="md" colspan="2"> const<code> [pure virtual]</code></td>
622
606
        </tr>
623
 
 
624
607
      </table>
625
608
    </td>
626
609
  </tr>
627
610
</table>
628
 
<table cellspacing=5 cellpadding=0 border=0>
 
611
<table cellspacing="5" cellpadding="0" border="0">
629
612
  <tr>
630
613
    <td>
631
614
      &nbsp;
638
621
Implemented in <a class="el" href="class_ipe_group.html#a11">IpeGroup</a>, <a class="el" href="class_ipe_image.html#a8">IpeImage</a>, <a class="el" href="class_ipe_mark.html#a9">IpeMark</a>, <a class="el" href="class_ipe_path.html#a15">IpePath</a>, <a class="el" href="class_ipe_reference.html#a9">IpeReference</a>, and <a class="el" href="class_ipe_text.html#a10">IpeText</a>.    </td>
639
622
  </tr>
640
623
</table>
641
 
<a class="anchor" name="a13" doxytag="IpeObject::AddToBBox" ></a><p>
642
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
624
<a class="anchor" name="a13"></a><!-- doxytag: member="IpeObject::AddToBBox" ref="a13" args="(IpeRect &amp;box, const IpeMatrix &amp;m) const =0" --><p>
 
625
<table class="mdTable" cellpadding="2" cellspacing="0">
643
626
  <tr>
644
627
    <td class="mdRow">
645
628
      <table cellpadding="0" cellspacing="0" border="0">
646
629
        <tr>
647
 
          <td class="md" nowrap valign="top"> virtual void IpeObject::AddToBBox </td>
 
630
          <td class="md" nowrap valign="top">virtual void IpeObject::AddToBBox           </td>
648
631
          <td class="md" valign="top">(&nbsp;</td>
649
632
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_rect.html">IpeRect</a> &amp;&nbsp;</td>
650
633
          <td class="mdname" nowrap> <em>box</em>, </td>
651
634
        </tr>
652
635
        <tr>
653
636
          <td class="md" nowrap align="right"></td>
654
 
          <td></td>
 
637
          <td class="md"></td>
655
638
          <td class="md" nowrap>const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;&nbsp;</td>
656
639
          <td class="mdname" nowrap> <em>m</em></td>
657
640
        </tr>
658
641
        <tr>
659
 
          <td></td>
 
642
          <td class="md"></td>
660
643
          <td class="md">)&nbsp;</td>
661
644
          <td class="md" colspan="2"> const<code> [pure virtual]</code></td>
662
645
        </tr>
663
 
 
664
646
      </table>
665
647
    </td>
666
648
  </tr>
667
649
</table>
668
 
<table cellspacing=5 cellpadding=0 border=0>
 
650
<table cellspacing="5" cellpadding="0" border="0">
669
651
  <tr>
670
652
    <td>
671
653
      &nbsp;
681
663
Implemented in <a class="el" href="class_ipe_group.html#a10">IpeGroup</a>, <a class="el" href="class_ipe_image.html#a9">IpeImage</a>, <a class="el" href="class_ipe_mark.html#a8">IpeMark</a>, <a class="el" href="class_ipe_path.html#a14">IpePath</a>, <a class="el" href="class_ipe_reference.html#a8">IpeReference</a>, and <a class="el" href="class_ipe_text.html#a9">IpeText</a>.    </td>
682
664
  </tr>
683
665
</table>
684
 
<a class="anchor" name="a14" doxytag="IpeObject::AddToGraphicBBox" ></a><p>
685
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
666
<a class="anchor" name="a14"></a><!-- doxytag: member="IpeObject::AddToGraphicBBox" ref="a14" args="(IpeRect &amp;box, IpeStyleSheet *sheet, IpeMatrix &amp;m) const " --><p>
 
667
<table class="mdTable" cellpadding="2" cellspacing="0">
686
668
  <tr>
687
669
    <td class="mdRow">
688
670
      <table cellpadding="0" cellspacing="0" border="0">
689
671
        <tr>
690
 
          <td class="md" nowrap valign="top"> void IpeObject::AddToGraphicBBox </td>
 
672
          <td class="md" nowrap valign="top">void IpeObject::AddToGraphicBBox           </td>
691
673
          <td class="md" valign="top">(&nbsp;</td>
692
674
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_rect.html">IpeRect</a> &amp;&nbsp;</td>
693
675
          <td class="mdname" nowrap> <em>box</em>, </td>
694
676
        </tr>
695
677
        <tr>
696
678
          <td class="md" nowrap align="right"></td>
697
 
          <td></td>
 
679
          <td class="md"></td>
698
680
          <td class="md" nowrap><a class="el" href="class_ipe_style_sheet.html">IpeStyleSheet</a> *&nbsp;</td>
699
681
          <td class="mdname" nowrap> <em>sheet</em>, </td>
700
682
        </tr>
701
683
        <tr>
702
684
          <td class="md" nowrap align="right"></td>
703
 
          <td></td>
 
685
          <td class="md"></td>
704
686
          <td class="md" nowrap><a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;&nbsp;</td>
705
687
          <td class="mdname" nowrap> <em>m</em></td>
706
688
        </tr>
707
689
        <tr>
708
 
          <td></td>
 
690
          <td class="md"></td>
709
691
          <td class="md">)&nbsp;</td>
710
692
          <td class="md" colspan="2"> const<code> [virtual]</code></td>
711
693
        </tr>
712
 
 
713
694
      </table>
714
695
    </td>
715
696
  </tr>
716
697
</table>
717
 
<table cellspacing=5 cellpadding=0 border=0>
 
698
<table cellspacing="5" cellpadding="0" border="0">
718
699
  <tr>
719
700
    <td>
720
701
      &nbsp;
724
705
<p>
725
706
Extend <em>box</em> to include the graphic representation of the object. 
726
707
<p>
727
 
Unlike AddToBBox, this function takes into account the graphic representation of the object, that is, its line width, arrow size, mark size, etc. The default implementation calls AddToBBox.     </td>
 
708
Unlike AddToBBox, this function takes into account the graphic representation of the object, that is, its line width, arrow size, mark size, etc. The default implementation calls AddToBBox.    </td>
728
709
  </tr>
729
710
</table>
730
 
<a class="anchor" name="a15" doxytag="IpeObject::SnapVtx" ></a><p>
731
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
711
<a class="anchor" name="a15"></a><!-- doxytag: member="IpeObject::SnapVtx" ref="a15" args="(const IpeVector &amp;mouse, const IpeMatrix &amp;m, IpeVector &amp;pos, double &amp;bound) const =0" --><p>
 
712
<table class="mdTable" cellpadding="2" cellspacing="0">
732
713
  <tr>
733
714
    <td class="mdRow">
734
715
      <table cellpadding="0" cellspacing="0" border="0">
735
716
        <tr>
736
 
          <td class="md" nowrap valign="top"> virtual void IpeObject::SnapVtx </td>
 
717
          <td class="md" nowrap valign="top">virtual void IpeObject::SnapVtx           </td>
737
718
          <td class="md" valign="top">(&nbsp;</td>
738
719
          <td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;&nbsp;</td>
739
720
          <td class="mdname" nowrap> <em>mouse</em>, </td>
740
721
        </tr>
741
722
        <tr>
742
723
          <td class="md" nowrap align="right"></td>
743
 
          <td></td>
 
724
          <td class="md"></td>
744
725
          <td class="md" nowrap>const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;&nbsp;</td>
745
726
          <td class="mdname" nowrap> <em>m</em>, </td>
746
727
        </tr>
747
728
        <tr>
748
729
          <td class="md" nowrap align="right"></td>
749
 
          <td></td>
 
730
          <td class="md"></td>
750
731
          <td class="md" nowrap><a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;&nbsp;</td>
751
732
          <td class="mdname" nowrap> <em>pos</em>, </td>
752
733
        </tr>
753
734
        <tr>
754
735
          <td class="md" nowrap align="right"></td>
755
 
          <td></td>
 
736
          <td class="md"></td>
756
737
          <td class="md" nowrap>double &amp;&nbsp;</td>
757
738
          <td class="mdname" nowrap> <em>bound</em></td>
758
739
        </tr>
759
740
        <tr>
760
 
          <td></td>
 
741
          <td class="md"></td>
761
742
          <td class="md">)&nbsp;</td>
762
743
          <td class="md" colspan="2"> const<code> [pure virtual]</code></td>
763
744
        </tr>
764
 
 
765
745
      </table>
766
746
    </td>
767
747
  </tr>
768
748
</table>
769
 
<table cellspacing=5 cellpadding=0 border=0>
 
749
<table cellspacing="5" cellpadding="0" border="0">
770
750
  <tr>
771
751
    <td>
772
752
      &nbsp;
781
761
Implemented in <a class="el" href="class_ipe_group.html#a12">IpeGroup</a>, <a class="el" href="class_ipe_image.html#a10">IpeImage</a>, <a class="el" href="class_ipe_mark.html#a10">IpeMark</a>, <a class="el" href="class_ipe_path.html#a16">IpePath</a>, <a class="el" href="class_ipe_reference.html#a10">IpeReference</a>, and <a class="el" href="class_ipe_text.html#a11">IpeText</a>.    </td>
782
762
  </tr>
783
763
</table>
784
 
<a class="anchor" name="a16" doxytag="IpeObject::CheckStyle" ></a><p>
785
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
764
<a class="anchor" name="a16"></a><!-- doxytag: member="IpeObject::CheckStyle" ref="a16" args="(const IpeStyleSheet *sheet, IpeAttributeSeq &amp;seq) const " --><p>
 
765
<table class="mdTable" cellpadding="2" cellspacing="0">
786
766
  <tr>
787
767
    <td class="mdRow">
788
768
      <table cellpadding="0" cellspacing="0" border="0">
789
769
        <tr>
790
 
          <td class="md" nowrap valign="top"> void IpeObject::CheckStyle </td>
 
770
          <td class="md" nowrap valign="top">void IpeObject::CheckStyle           </td>
791
771
          <td class="md" valign="top">(&nbsp;</td>
792
772
          <td class="md" nowrap valign="top">const <a class="el" href="class_ipe_style_sheet.html">IpeStyleSheet</a> *&nbsp;</td>
793
773
          <td class="mdname" nowrap> <em>sheet</em>, </td>
794
774
        </tr>
795
775
        <tr>
796
776
          <td class="md" nowrap align="right"></td>
797
 
          <td></td>
 
777
          <td class="md"></td>
798
778
          <td class="md" nowrap><a class="el" href="group__attr.html#ga1">IpeAttributeSeq</a> &amp;&nbsp;</td>
799
779
          <td class="mdname" nowrap> <em>seq</em></td>
800
780
        </tr>
801
781
        <tr>
802
 
          <td></td>
 
782
          <td class="md"></td>
803
783
          <td class="md">)&nbsp;</td>
804
784
          <td class="md" colspan="2"> const<code> [virtual]</code></td>
805
785
        </tr>
806
 
 
807
786
      </table>
808
787
    </td>
809
788
  </tr>
810
789
</table>
811
 
<table cellspacing=5 cellpadding=0 border=0>
 
790
<table cellspacing="5" cellpadding="0" border="0">
812
791
  <tr>
813
792
    <td>
814
793
      &nbsp;
823
802
Reimplemented in <a class="el" href="class_ipe_group.html#a19">IpeGroup</a>, <a class="el" href="class_ipe_mark.html#a11">IpeMark</a>, <a class="el" href="class_ipe_fillable.html#a1">IpeFillable</a>, <a class="el" href="class_ipe_path.html#a18">IpePath</a>, <a class="el" href="class_ipe_reference.html#a12">IpeReference</a>, and <a class="el" href="class_ipe_text.html#a12">IpeText</a>.    </td>
824
803
  </tr>
825
804
</table>
826
 
<a class="anchor" name="a17" doxytag="IpeObject::SnapBnd" ></a><p>
827
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
805
<a class="anchor" name="a17"></a><!-- doxytag: member="IpeObject::SnapBnd" ref="a17" args="(const IpeVector &amp;mouse, const IpeMatrix &amp;m, IpeVector &amp;pos, double &amp;bound) const " --><p>
 
806
<table class="mdTable" cellpadding="2" cellspacing="0">
828
807
  <tr>
829
808
    <td class="mdRow">
830
809
      <table cellpadding="0" cellspacing="0" border="0">
831
810
        <tr>
832
 
          <td class="md" nowrap valign="top"> void IpeObject::SnapBnd </td>
 
811
          <td class="md" nowrap valign="top">void IpeObject::SnapBnd           </td>
833
812
          <td class="md" valign="top">(&nbsp;</td>
834
813
          <td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;&nbsp;</td>
835
814
          <td class="mdname" nowrap> <em>mouse</em>, </td>
836
815
        </tr>
837
816
        <tr>
838
817
          <td class="md" nowrap align="right"></td>
839
 
          <td></td>
 
818
          <td class="md"></td>
840
819
          <td class="md" nowrap>const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;&nbsp;</td>
841
820
          <td class="mdname" nowrap> <em>m</em>, </td>
842
821
        </tr>
843
822
        <tr>
844
823
          <td class="md" nowrap align="right"></td>
845
 
          <td></td>
 
824
          <td class="md"></td>
846
825
          <td class="md" nowrap><a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;&nbsp;</td>
847
826
          <td class="mdname" nowrap> <em>pos</em>, </td>
848
827
        </tr>
849
828
        <tr>
850
829
          <td class="md" nowrap align="right"></td>
851
 
          <td></td>
 
830
          <td class="md"></td>
852
831
          <td class="md" nowrap>double &amp;&nbsp;</td>
853
832
          <td class="mdname" nowrap> <em>bound</em></td>
854
833
        </tr>
855
834
        <tr>
856
 
          <td></td>
 
835
          <td class="md"></td>
857
836
          <td class="md">)&nbsp;</td>
858
837
          <td class="md" colspan="2"> const<code> [virtual]</code></td>
859
838
        </tr>
860
 
 
861
839
      </table>
862
840
    </td>
863
841
  </tr>
864
842
</table>
865
 
<table cellspacing=5 cellpadding=0 border=0>
 
843
<table cellspacing="5" cellpadding="0" border="0">
866
844
  <tr>
867
845
    <td>
868
846
      &nbsp;
872
850
<p>
873
851
Compute boundary snapping position for transformed object. 
874
852
<p>
875
 
Looks only for positions closer than <em>bound</em>. If successful, modify <em>pos</em> and <em>bound</em>. The default implementation does nothing. 
 
853
Looks only for positions closer than <em>bound</em>. If successful, modify <em>pos</em> and <em>bound</em>. The default implementation does nothing.
876
854
<p>
877
855
Reimplemented in <a class="el" href="class_ipe_group.html#a13">IpeGroup</a>, <a class="el" href="class_ipe_path.html#a17">IpePath</a>, and <a class="el" href="class_ipe_reference.html#a11">IpeReference</a>.    </td>
878
856
  </tr>
879
857
</table>
880
 
<a class="anchor" name="a18" doxytag="IpeObject::SetStroke" ></a><p>
881
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
858
<a class="anchor" name="a18"></a><!-- doxytag: member="IpeObject::SetStroke" ref="a18" args="(IpeAttribute stroke)" --><p>
 
859
<table class="mdTable" cellpadding="2" cellspacing="0">
882
860
  <tr>
883
861
    <td class="mdRow">
884
862
      <table cellpadding="0" cellspacing="0" border="0">
885
863
        <tr>
886
 
          <td class="md" nowrap valign="top"> void IpeObject::SetStroke </td>
 
864
          <td class="md" nowrap valign="top">void IpeObject::SetStroke           </td>
887
865
          <td class="md" valign="top">(&nbsp;</td>
888
866
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_attribute.html">IpeAttribute</a>&nbsp;</td>
889
867
          <td class="mdname1" valign="top" nowrap> <em>stroke</em>          </td>
890
868
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
891
869
          <td class="md" nowrap></td>
892
870
        </tr>
893
 
 
894
871
      </table>
895
872
    </td>
896
873
  </tr>
897
874
</table>
898
 
<table cellspacing=5 cellpadding=0 border=0>
 
875
<table cellspacing="5" cellpadding="0" border="0">
899
876
  <tr>
900
877
    <td>
901
878
      &nbsp;
908
885
    </td>
909
886
  </tr>
910
887
</table>
911
 
<a class="anchor" name="a19" doxytag="IpeObject::SetMatrix" ></a><p>
912
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
888
<a class="anchor" name="a19"></a><!-- doxytag: member="IpeObject::SetMatrix" ref="a19" args="(const IpeMatrix &amp;matrix)" --><p>
 
889
<table class="mdTable" cellpadding="2" cellspacing="0">
913
890
  <tr>
914
891
    <td class="mdRow">
915
892
      <table cellpadding="0" cellspacing="0" border="0">
916
893
        <tr>
917
 
          <td class="md" nowrap valign="top"> void IpeObject::SetMatrix </td>
 
894
          <td class="md" nowrap valign="top">void IpeObject::SetMatrix           </td>
918
895
          <td class="md" valign="top">(&nbsp;</td>
919
896
          <td class="md" nowrap valign="top">const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp;&nbsp;</td>
920
897
          <td class="mdname1" valign="top" nowrap> <em>matrix</em>          </td>
921
898
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
922
899
          <td class="md" nowrap></td>
923
900
        </tr>
924
 
 
925
901
      </table>
926
902
    </td>
927
903
  </tr>
928
904
</table>
929
 
<table cellspacing=5 cellpadding=0 border=0>
 
905
<table cellspacing="5" cellpadding="0" border="0">
930
906
  <tr>
931
907
    <td>
932
908
      &nbsp;
939
915
Don't use this on the IpeObject in an <a class="el" href="class_ipe_pg_object.html">IpePgObject</a>, because it wouldn't invalidate its bounding box. Call <a class="el" href="class_ipe_pg_object.html#a12">IpePgObject::Transform</a> instead.     </td>
940
916
  </tr>
941
917
</table>
942
 
<a class="anchor" name="a20" doxytag="IpeObject::Stroke" ></a><p>
943
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
918
<a class="anchor" name="a20"></a><!-- doxytag: member="IpeObject::Stroke" ref="a20" args="() const " --><p>
 
919
<table class="mdTable" cellpadding="2" cellspacing="0">
944
920
  <tr>
945
921
    <td class="mdRow">
946
922
      <table cellpadding="0" cellspacing="0" border="0">
947
923
        <tr>
948
 
          <td class="md" nowrap valign="top"> <a class="el" href="class_ipe_attribute.html">IpeAttribute</a> IpeObject::Stroke </td>
 
924
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_attribute.html">IpeAttribute</a> IpeObject::Stroke           </td>
949
925
          <td class="md" valign="top">(&nbsp;</td>
950
926
          <td class="mdname1" valign="top" nowrap>          </td>
951
927
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
952
928
          <td class="md" nowrap> const<code> [inline]</code></td>
953
929
        </tr>
954
 
 
955
930
      </table>
956
931
    </td>
957
932
  </tr>
958
933
</table>
959
 
<table cellspacing=5 cellpadding=0 border=0>
 
934
<table cellspacing="5" cellpadding="0" border="0">
960
935
  <tr>
961
936
    <td>
962
937
      &nbsp;
969
944
    </td>
970
945
  </tr>
971
946
</table>
972
 
<a class="anchor" name="a21" doxytag="IpeObject::Matrix" ></a><p>
973
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
947
<a class="anchor" name="a21"></a><!-- doxytag: member="IpeObject::Matrix" ref="a21" args="() const " --><p>
 
948
<table class="mdTable" cellpadding="2" cellspacing="0">
974
949
  <tr>
975
950
    <td class="mdRow">
976
951
      <table cellpadding="0" cellspacing="0" border="0">
977
952
        <tr>
978
 
          <td class="md" nowrap valign="top"> const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp; IpeObject::Matrix </td>
 
953
          <td class="md" nowrap valign="top">const <a class="el" href="class_ipe_matrix.html">IpeMatrix</a> &amp; IpeObject::Matrix           </td>
979
954
          <td class="md" valign="top">(&nbsp;</td>
980
955
          <td class="mdname1" valign="top" nowrap>          </td>
981
956
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
982
957
          <td class="md" nowrap> const<code> [inline]</code></td>
983
958
        </tr>
984
 
 
985
959
      </table>
986
960
    </td>
987
961
  </tr>
988
962
</table>
989
 
<table cellspacing=5 cellpadding=0 border=0>
 
963
<table cellspacing="5" cellpadding="0" border="0">
990
964
  <tr>
991
965
    <td>
992
966
      &nbsp;
999
973
    </td>
1000
974
  </tr>
1001
975
</table>
1002
 
<a class="anchor" name="e0" doxytag="IpeObject::SnapVertex" ></a><p>
1003
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
976
<a class="anchor" name="e0"></a><!-- doxytag: member="IpeObject::SnapVertex" ref="e0" args="(const IpeVector &amp;mouse, const IpeVector &amp;v, IpeVector &amp;pos, double &amp;bound)" --><p>
 
977
<table class="mdTable" cellpadding="2" cellspacing="0">
1004
978
  <tr>
1005
979
    <td class="mdRow">
1006
980
      <table cellpadding="0" cellspacing="0" border="0">
1007
981
        <tr>
1008
 
          <td class="md" nowrap valign="top"> bool IpeObject::SnapVertex </td>
 
982
          <td class="md" nowrap valign="top">bool IpeObject::SnapVertex           </td>
1009
983
          <td class="md" valign="top">(&nbsp;</td>
1010
984
          <td class="md" nowrap valign="top">const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;&nbsp;</td>
1011
985
          <td class="mdname" nowrap> <em>mouse</em>, </td>
1012
986
        </tr>
1013
987
        <tr>
1014
988
          <td class="md" nowrap align="right"></td>
1015
 
          <td></td>
 
989
          <td class="md"></td>
1016
990
          <td class="md" nowrap>const <a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;&nbsp;</td>
1017
991
          <td class="mdname" nowrap> <em>v</em>, </td>
1018
992
        </tr>
1019
993
        <tr>
1020
994
          <td class="md" nowrap align="right"></td>
1021
 
          <td></td>
 
995
          <td class="md"></td>
1022
996
          <td class="md" nowrap><a class="el" href="class_ipe_vector.html">IpeVector</a> &amp;&nbsp;</td>
1023
997
          <td class="mdname" nowrap> <em>pos</em>, </td>
1024
998
        </tr>
1025
999
        <tr>
1026
1000
          <td class="md" nowrap align="right"></td>
1027
 
          <td></td>
 
1001
          <td class="md"></td>
1028
1002
          <td class="md" nowrap>double &amp;&nbsp;</td>
1029
1003
          <td class="mdname" nowrap> <em>bound</em></td>
1030
1004
        </tr>
1031
1005
        <tr>
1032
 
          <td></td>
 
1006
          <td class="md"></td>
1033
1007
          <td class="md">)&nbsp;</td>
1034
1008
          <td class="md" colspan="2"><code> [static]</code></td>
1035
1009
        </tr>
1036
 
 
1037
1010
      </table>
1038
1011
    </td>
1039
1012
  </tr>
1040
1013
</table>
1041
 
<table cellspacing=5 cellpadding=0 border=0>
 
1014
<table cellspacing="5" cellpadding="0" border="0">
1042
1015
  <tr>
1043
1016
    <td>
1044
1017
      &nbsp;
1051
1024
If distance between <em>mouse</em> and <em>v</em> is less than <em>bound</em>, set <em>pos</em> to <em>v</em> and <em>bound</em> to the distance, and return <code>true</code>.     </td>
1052
1025
  </tr>
1053
1026
</table>
1054
 
<a class="anchor" name="b4" doxytag="IpeObject::SaveAttributesAsXml" ></a><p>
1055
 
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
 
1027
<a class="anchor" name="b4"></a><!-- doxytag: member="IpeObject::SaveAttributesAsXml" ref="b4" args="(IpePainter &amp;painter, IpeStream &amp;stream, IpeString layer) const " --><p>
 
1028
<table class="mdTable" cellpadding="2" cellspacing="0">
1056
1029
  <tr>
1057
1030
    <td class="mdRow">
1058
1031
      <table cellpadding="0" cellspacing="0" border="0">
1059
1032
        <tr>
1060
 
          <td class="md" nowrap valign="top"> void IpeObject::SaveAttributesAsXml </td>
 
1033
          <td class="md" nowrap valign="top">void IpeObject::SaveAttributesAsXml           </td>
1061
1034
          <td class="md" valign="top">(&nbsp;</td>
1062
1035
          <td class="md" nowrap valign="top"><a class="el" href="class_ipe_painter.html">IpePainter</a> &amp;&nbsp;</td>
1063
1036
          <td class="mdname" nowrap> <em>painter</em>, </td>
1064
1037
        </tr>
1065
1038
        <tr>
1066
1039
          <td class="md" nowrap align="right"></td>
1067
 
          <td></td>
 
1040
          <td class="md"></td>
1068
1041
          <td class="md" nowrap><a class="el" href="class_ipe_stream.html">IpeStream</a> &amp;&nbsp;</td>
1069
1042
          <td class="mdname" nowrap> <em>stream</em>, </td>
1070
1043
        </tr>
1071
1044
        <tr>
1072
1045
          <td class="md" nowrap align="right"></td>
1073
 
          <td></td>
 
1046
          <td class="md"></td>
1074
1047
          <td class="md" nowrap><a class="el" href="class_ipe_string.html">IpeString</a>&nbsp;</td>
1075
1048
          <td class="mdname" nowrap> <em>layer</em></td>
1076
1049
        </tr>
1077
1050
        <tr>
1078
 
          <td></td>
 
1051
          <td class="md"></td>
1079
1052
          <td class="md">)&nbsp;</td>
1080
1053
          <td class="md" colspan="2"> const<code> [protected]</code></td>
1081
1054
        </tr>
1082
 
 
1083
1055
      </table>
1084
1056
    </td>
1085
1057
  </tr>
1086
1058
</table>
1087
 
<table cellspacing=5 cellpadding=0 border=0>
 
1059
<table cellspacing="5" cellpadding="0" border="0">
1088
1060
  <tr>
1089
1061
    <td>
1090
1062
      &nbsp;