~ubuntu-branches/ubuntu/vivid/tesseract/vivid

« back to all changes in this revision

Viewing changes to doc/html/a00500.html

  • Committer: Package Import Robot
  • Author(s): Jeff Breidenbach
  • Date: 2014-02-03 11:10:20 UTC
  • mfrom: (1.3.1) (19.1.1 experimental)
  • Revision ID: package-import@ubuntu.com-20140203111020-igquodd7pjlp3uri
Tags: 3.03.01-1
* New upstream release, includes critical fix to PDF rendering
* Complete leptonlib transition (see bug #735509)
* Promote from experimental to unstable

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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">
 
3
<head>
 
4
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
 
5
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
 
6
<title>tesseract: PDBLK Class Reference</title>
 
7
 
 
8
<link href="tabs.css" rel="stylesheet" type="text/css"/>
 
9
<link href="doxygen.css" rel="stylesheet" type="text/css" />
 
10
<link href="navtree.css" rel="stylesheet" type="text/css"/>
 
11
<script type="text/javascript" src="jquery.js"></script>
 
12
<script type="text/javascript" src="resize.js"></script>
 
13
<script type="text/javascript" src="navtree.js"></script>
 
14
<script type="text/javascript">
 
15
  $(document).ready(initResizable);
 
16
</script>
 
17
<link href="search/search.css" rel="stylesheet" type="text/css"/>
 
18
<script type="text/javascript" src="search/search.js"></script>
 
19
<script type="text/javascript">
 
20
  $(document).ready(function() { searchBox.OnSelectItem(0); });
 
21
</script>
 
22
 
 
23
</head>
 
24
<body>
 
25
<div id="top"><!-- do not remove this div! -->
 
26
 
 
27
 
 
28
<div id="titlearea">
 
29
<table cellspacing="0" cellpadding="0">
 
30
 <tbody>
 
31
 <tr style="height: 56px;">
 
32
  
 
33
  
 
34
  <td style="padding-left: 0.5em;">
 
35
   <div id="projectname">tesseract
 
36
   &#160;<span id="projectnumber">3.03</span>
 
37
   </div>
 
38
   
 
39
  </td>
 
40
  
 
41
  
 
42
  
 
43
 </tr>
 
44
 </tbody>
 
45
</table>
 
46
</div>
 
47
 
 
48
<!-- Generated by Doxygen 1.7.6.1 -->
 
49
<script type="text/javascript">
 
50
var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
51
</script>
 
52
  <div id="navrow1" class="tabs">
 
53
    <ul class="tablist">
 
54
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
 
55
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
 
56
      <li><a href="modules.html"><span>Modules</span></a></li>
 
57
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
 
58
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
 
59
      <li><a href="files.html"><span>Files</span></a></li>
 
60
      <li>
 
61
        <div id="MSearchBox" class="MSearchBoxInactive">
 
62
        <span class="left">
 
63
          <img id="MSearchSelect" src="search/mag_sel.png"
 
64
               onmouseover="return searchBox.OnSearchSelectShow()"
 
65
               onmouseout="return searchBox.OnSearchSelectHide()"
 
66
               alt=""/>
 
67
          <input type="text" id="MSearchField" value="Search" accesskey="S"
 
68
               onfocus="searchBox.OnSearchFieldFocus(true)" 
 
69
               onblur="searchBox.OnSearchFieldFocus(false)" 
 
70
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
 
71
          </span><span class="right">
 
72
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
 
73
          </span>
 
74
        </div>
 
75
      </li>
 
76
    </ul>
 
77
  </div>
 
78
  <div id="navrow2" class="tabs2">
 
79
    <ul class="tablist">
 
80
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
 
81
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
 
82
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
 
83
    </ul>
 
84
  </div>
 
85
</div>
 
86
<div id="side-nav" class="ui-resizable side-nav-resizable">
 
87
  <div id="nav-tree">
 
88
    <div id="nav-tree-contents">
 
89
    </div>
 
90
  </div>
 
91
  <div id="splitbar" style="-moz-user-select:none;" 
 
92
       class="ui-resizable-handle">
 
93
  </div>
 
94
</div>
 
95
<script type="text/javascript">
 
96
  initNavTree('a00500.html','');
 
97
</script>
 
98
<div id="doc-content">
 
99
<div class="header">
 
100
  <div class="summary">
 
101
<a href="#pub-methods">Public Member Functions</a> &#124;
 
102
<a href="#pro-attribs">Protected Attributes</a> &#124;
 
103
<a href="#friends">Friends</a>  </div>
 
104
  <div class="headertitle">
 
105
<div class="title">PDBLK Class Reference</div>  </div>
 
106
</div><!--header-->
 
107
<div class="contents">
 
108
<!-- doxytag: class="PDBLK" -->
 
109
<p>page block  
 
110
 <a href="a00500.html#details">More...</a></p>
 
111
 
 
112
<p><code>#include &lt;<a class="el" href="a00773_source.html">pdblock.h</a>&gt;</code></p>
 
113
<div class="dynheader">
 
114
Inheritance diagram for PDBLK:</div>
 
115
<div class="dyncontent">
 
116
 <div class="center">
 
117
  <img src="a00500.png" usemap="#PDBLK_map" alt=""/>
 
118
  <map id="PDBLK_map" name="PDBLK_map">
 
119
<area href="a00280.html" alt="BLOCK" shape="rect" coords="0,56,54,80"/>
 
120
</map>
 
121
 </div></div>
 
122
 
 
123
<p><a href="a01630.html">List of all members.</a></p>
 
124
<table class="memberdecls">
 
125
<tr><td colspan="2"><h2><a name="pub-methods"></a>
 
126
Public Member Functions</h2></td></tr>
 
127
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#ae31312e99565038e54d111a644060b53">PDBLK</a> ()</td></tr>
 
128
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">empty constructor  <a href="#ae31312e99565038e54d111a644060b53"></a><br/></td></tr>
 
129
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a8e77e0d2dd03ece634e01427c436107b">PDBLK</a> (<a class="el" href="a00831.html#a8d41499d38c24d39b221ab0c158fe5a8">inT16</a> xmin, <a class="el" href="a00831.html#a8d41499d38c24d39b221ab0c158fe5a8">inT16</a> ymin, <a class="el" href="a00831.html#a8d41499d38c24d39b221ab0c158fe5a8">inT16</a> xmax, <a class="el" href="a00831.html#a8d41499d38c24d39b221ab0c158fe5a8">inT16</a> ymax)</td></tr>
 
130
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">simple constructor  <a href="#a8e77e0d2dd03ece634e01427c436107b"></a><br/></td></tr>
 
131
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a8d8fa823bf5878ef0b020572fea424e9">set_sides</a> (ICOORDELT_LIST *left, ICOORDELT_LIST *right)</td></tr>
 
132
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a20e149e4a516d1e00d3690e6f7fc4b3d">~PDBLK</a> ()</td></tr>
 
133
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">destructor  <a href="#a20e149e4a516d1e00d3690e6f7fc4b3d"></a><br/></td></tr>
 
134
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00505.html">POLY_BLOCK</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a6670779c69aca2d574e4a0590d9b3939">poly_block</a> () const </td></tr>
 
135
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a60f8ad7b10ca32e3ece92bb04e3f2793">set_poly_block</a> (<a class="el" href="a00505.html">POLY_BLOCK</a> *blk)</td></tr>
 
136
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">set the poly block  <a href="#a60f8ad7b10ca32e3ece92bb04e3f2793"></a><br/></td></tr>
 
137
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a91950a96127b4a0bb9b237e1f5f889a4">bounding_box</a> (<a class="el" href="a00409.html">ICOORD</a> &amp;bottom_left, <a class="el" href="a00409.html">ICOORD</a> &amp;top_right) const </td></tr>
 
138
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">get box  <a href="#a91950a96127b4a0bb9b237e1f5f889a4"></a><br/></td></tr>
 
139
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00592.html">TBOX</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#ab853b2715d8914f39603a2fd163adf03">bounding_box</a> () const </td></tr>
 
140
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">get real box  <a href="#ab853b2715d8914f39603a2fd163adf03"></a><br/></td></tr>
 
141
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#acc3cf97b51fa93a659312c966df4a756">index</a> () const </td></tr>
 
142
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a788cc0cf8ac2ccc71748904c8788e82d">set_index</a> (int value)</td></tr>
 
143
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00831.html#a7712a7e28433d0ade59219a129549b6f">BOOL8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a1d34d55494db7dfc530dfcc3b6db1cd6">contains</a> (<a class="el" href="a00409.html">ICOORD</a> pt)</td></tr>
 
144
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">is pt inside block  <a href="#a1d34d55494db7dfc530dfcc3b6db1cd6"></a><br/></td></tr>
 
145
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a59ff88ca1db21b00c42c4e2a47700c74">move</a> (const <a class="el" href="a00409.html">ICOORD</a> vec)</td></tr>
 
146
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">reposition block  <a href="#a59ff88ca1db21b00c42c4e2a47700c74"></a><br/></td></tr>
 
147
<tr><td class="memItemLeft" align="right" valign="top">Pix *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a18bd78acbc103a761e7fb98d1dc8fa23">render_mask</a> (const <a class="el" href="a00375.html">FCOORD</a> &amp;rerotation)</td></tr>
 
148
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a38da8bc50b2c4cf687ffbde6cf901a0e">plot</a> (<a class="el" href="a00532.html">ScrollView</a> *window, <a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> serial, <a class="el" href="a00532.html#a100504544a5423a94222149ee9ed0fe8">ScrollView::Color</a> colour)</td></tr>
 
149
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00500.html">PDBLK</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#abea460ba0744a48300ad506f82819952">operator=</a> (const <a class="el" href="a00500.html">PDBLK</a> &amp;source)</td></tr>
 
150
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
 
151
Protected Attributes</h2></td></tr>
 
152
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00505.html">POLY_BLOCK</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a></td></tr>
 
153
<tr><td class="memItemLeft" align="right" valign="top">ICOORDELT_LIST&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a></td></tr>
 
154
<tr><td class="memItemLeft" align="right" valign="top">ICOORDELT_LIST&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#a87a08537c120e669c825d147a5650a55">rightside</a></td></tr>
 
155
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00592.html">TBOX</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">box</a></td></tr>
 
156
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#ab760851a1a4866f053ea020a02350467">index_</a></td></tr>
 
157
<tr><td colspan="2"><h2><a name="friends"></a>
 
158
Friends</h2></td></tr>
 
159
<tr><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00500.html#ad858d9adefd50f00fb20c85fcdfb0c95">BLOCK_RECT_IT</a></td></tr>
 
160
</table>
 
161
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
 
162
<div class="textblock"><p>page block </p>
 
163
 
 
164
<p>Definition at line <a class="el" href="a00773_source.html#l00032">32</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
165
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
 
166
<a class="anchor" id="ae31312e99565038e54d111a644060b53"></a><!-- doxytag: member="PDBLK::PDBLK" ref="ae31312e99565038e54d111a644060b53" args="()" -->
 
167
<div class="memitem">
 
168
<div class="memproto">
 
169
      <table class="memname">
 
170
        <tr>
 
171
          <td class="memname"><a class="el" href="a00500.html#ae31312e99565038e54d111a644060b53">PDBLK::PDBLK</a> </td>
 
172
          <td>(</td>
 
173
          <td class="paramname"></td><td>)</td>
 
174
          <td><code> [inline]</code></td>
 
175
        </tr>
 
176
      </table>
 
177
</div>
 
178
<div class="memdoc">
 
179
 
 
180
<p>empty constructor </p>
 
181
 
 
182
<p>Definition at line <a class="el" href="a00773_source.html#l00038">38</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
183
<div class="fragment"><pre class="fragment">            {
 
184
      <a class="code" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a> = NULL;
 
185
      <a class="code" href="a00500.html#ab760851a1a4866f053ea020a02350467">index_</a> = 0;
 
186
    }
 
187
</pre></div>
 
188
</div>
 
189
</div>
 
190
<a class="anchor" id="a8e77e0d2dd03ece634e01427c436107b"></a><!-- doxytag: member="PDBLK::PDBLK" ref="a8e77e0d2dd03ece634e01427c436107b" args="(inT16 xmin, inT16 ymin, inT16 xmax, inT16 ymax)" -->
 
191
<div class="memitem">
 
192
<div class="memproto">
 
193
      <table class="memname">
 
194
        <tr>
 
195
          <td class="memname"><a class="el" href="a00500.html#ae31312e99565038e54d111a644060b53">PDBLK::PDBLK</a> </td>
 
196
          <td>(</td>
 
197
          <td class="paramtype"><a class="el" href="a00831.html#a8d41499d38c24d39b221ab0c158fe5a8">inT16</a>&#160;</td>
 
198
          <td class="paramname"><em>xmin</em>, </td>
 
199
        </tr>
 
200
        <tr>
 
201
          <td class="paramkey"></td>
 
202
          <td></td>
 
203
          <td class="paramtype"><a class="el" href="a00831.html#a8d41499d38c24d39b221ab0c158fe5a8">inT16</a>&#160;</td>
 
204
          <td class="paramname"><em>ymin</em>, </td>
 
205
        </tr>
 
206
        <tr>
 
207
          <td class="paramkey"></td>
 
208
          <td></td>
 
209
          <td class="paramtype"><a class="el" href="a00831.html#a8d41499d38c24d39b221ab0c158fe5a8">inT16</a>&#160;</td>
 
210
          <td class="paramname"><em>xmax</em>, </td>
 
211
        </tr>
 
212
        <tr>
 
213
          <td class="paramkey"></td>
 
214
          <td></td>
 
215
          <td class="paramtype"><a class="el" href="a00831.html#a8d41499d38c24d39b221ab0c158fe5a8">inT16</a>&#160;</td>
 
216
          <td class="paramname"><em>ymax</em>&#160;</td>
 
217
        </tr>
 
218
        <tr>
 
219
          <td></td>
 
220
          <td>)</td>
 
221
          <td></td><td></td>
 
222
        </tr>
 
223
      </table>
 
224
</div>
 
225
<div class="memdoc">
 
226
 
 
227
<p>simple constructor </p>
 
228
 
 
229
<p>Definition at line <a class="el" href="a00772_source.html#l00038">38</a> of file <a class="el" href="a00772_source.html">pdblock.cpp</a>.</p>
 
230
<div class="fragment"><pre class="fragment">           :    <a class="code" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">box</a> (<a class="code" href="a00409.html" title="integer coordinate">ICOORD</a> (xmin, ymin), <a class="code" href="a00409.html" title="integer coordinate">ICOORD</a> (xmax, ymax)) {
 
231
                                 <span class="comment">//boundaries</span>
 
232
  ICOORDELT_IT left_it = &amp;<a class="code" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a>;
 
233
  ICOORDELT_IT right_it = &amp;<a class="code" href="a00500.html#a87a08537c120e669c825d147a5650a55">rightside</a>;
 
234
 
 
235
  <a class="code" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a> = NULL;
 
236
  left_it.set_to_list (&amp;<a class="code" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a>);
 
237
  right_it.set_to_list (&amp;<a class="code" href="a00500.html#a87a08537c120e669c825d147a5650a55">rightside</a>);
 
238
                                 <span class="comment">//make default box</span>
 
239
  left_it.add_to_end (<span class="keyword">new</span> <a class="code" href="a00410.html">ICOORDELT</a> (xmin, ymin));
 
240
  left_it.add_to_end (<span class="keyword">new</span> <a class="code" href="a00410.html">ICOORDELT</a> (xmin, ymax));
 
241
  right_it.add_to_end (<span class="keyword">new</span> <a class="code" href="a00410.html">ICOORDELT</a> (xmax, ymin));
 
242
  right_it.add_to_end (<span class="keyword">new</span> <a class="code" href="a00410.html">ICOORDELT</a> (xmax, ymax));
 
243
  <a class="code" href="a00500.html#ab760851a1a4866f053ea020a02350467">index_</a> = 0;
 
244
}
 
245
</pre></div>
 
246
</div>
 
247
</div>
 
248
<a class="anchor" id="a20e149e4a516d1e00d3690e6f7fc4b3d"></a><!-- doxytag: member="PDBLK::~PDBLK" ref="a20e149e4a516d1e00d3690e6f7fc4b3d" args="()" -->
 
249
<div class="memitem">
 
250
<div class="memproto">
 
251
      <table class="memname">
 
252
        <tr>
 
253
          <td class="memname"><a class="el" href="a00500.html#a20e149e4a516d1e00d3690e6f7fc4b3d">PDBLK::~PDBLK</a> </td>
 
254
          <td>(</td>
 
255
          <td class="paramname"></td><td>)</td>
 
256
          <td><code> [inline]</code></td>
 
257
        </tr>
 
258
      </table>
 
259
</div>
 
260
<div class="memdoc">
 
261
 
 
262
<p>destructor </p>
 
263
 
 
264
<p>Definition at line <a class="el" href="a00773_source.html#l00055">55</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
265
<div class="fragment"><pre class="fragment">              {
 
266
      <span class="keywordflow">if</span> (<a class="code" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a>) <span class="keyword">delete</span> <a class="code" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a>;
 
267
    }
 
268
</pre></div>
 
269
</div>
 
270
</div>
 
271
<hr/><h2>Member Function Documentation</h2>
 
272
<a class="anchor" id="a91950a96127b4a0bb9b237e1f5f889a4"></a><!-- doxytag: member="PDBLK::bounding_box" ref="a91950a96127b4a0bb9b237e1f5f889a4" args="(ICOORD &amp;bottom_left, ICOORD &amp;top_right) const " -->
 
273
<div class="memitem">
 
274
<div class="memproto">
 
275
      <table class="memname">
 
276
        <tr>
 
277
          <td class="memname">void <a class="el" href="a00500.html#a91950a96127b4a0bb9b237e1f5f889a4">PDBLK::bounding_box</a> </td>
 
278
          <td>(</td>
 
279
          <td class="paramtype"><a class="el" href="a00409.html">ICOORD</a> &amp;&#160;</td>
 
280
          <td class="paramname"><em>bottom_left</em>, </td>
 
281
        </tr>
 
282
        <tr>
 
283
          <td class="paramkey"></td>
 
284
          <td></td>
 
285
          <td class="paramtype"><a class="el" href="a00409.html">ICOORD</a> &amp;&#160;</td>
 
286
          <td class="paramname"><em>top_right</em>&#160;</td>
 
287
        </tr>
 
288
        <tr>
 
289
          <td></td>
 
290
          <td>)</td>
 
291
          <td></td><td> const<code> [inline]</code></td>
 
292
        </tr>
 
293
      </table>
 
294
</div>
 
295
<div class="memdoc">
 
296
 
 
297
<p>get box </p>
 
298
 
 
299
<p>Definition at line <a class="el" href="a00773_source.html#l00067">67</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
300
<div class="fragment"><pre class="fragment">                                               {  <span class="comment">//topright</span>
 
301
      bottom_left = <a class="code" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">box</a>.<a class="code" href="a00592.html#a9f46d9e51b8b69c5cb6d031e9ac34978">botleft</a> ();
 
302
      top_right = <a class="code" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">box</a>.<a class="code" href="a00592.html#a02511fc69b598b332ac1f4af6c943f8f">topright</a> ();
 
303
    }
 
304
</pre></div>
 
305
</div>
 
306
</div>
 
307
<a class="anchor" id="ab853b2715d8914f39603a2fd163adf03"></a><!-- doxytag: member="PDBLK::bounding_box" ref="ab853b2715d8914f39603a2fd163adf03" args="() const " -->
 
308
<div class="memitem">
 
309
<div class="memproto">
 
310
      <table class="memname">
 
311
        <tr>
 
312
          <td class="memname">const <a class="el" href="a00592.html">TBOX</a>&amp; <a class="el" href="a00500.html#a91950a96127b4a0bb9b237e1f5f889a4">PDBLK::bounding_box</a> </td>
 
313
          <td>(</td>
 
314
          <td class="paramname"></td><td>)</td>
 
315
          <td> const<code> [inline]</code></td>
 
316
        </tr>
 
317
      </table>
 
318
</div>
 
319
<div class="memdoc">
 
320
 
 
321
<p>get real box </p>
 
322
 
 
323
<p>Definition at line <a class="el" href="a00773_source.html#l00073">73</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
324
<div class="fragment"><pre class="fragment">                                     {
 
325
      <span class="keywordflow">return</span> <a class="code" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">box</a>;
 
326
    }
 
327
</pre></div>
 
328
</div>
 
329
</div>
 
330
<a class="anchor" id="a1d34d55494db7dfc530dfcc3b6db1cd6"></a><!-- doxytag: member="PDBLK::contains" ref="a1d34d55494db7dfc530dfcc3b6db1cd6" args="(ICOORD pt)" -->
 
331
<div class="memitem">
 
332
<div class="memproto">
 
333
      <table class="memname">
 
334
        <tr>
 
335
          <td class="memname"><a class="el" href="a00831.html#a7712a7e28433d0ade59219a129549b6f">BOOL8</a> <a class="el" href="a00500.html#a1d34d55494db7dfc530dfcc3b6db1cd6">PDBLK::contains</a> </td>
 
336
          <td>(</td>
 
337
          <td class="paramtype"><a class="el" href="a00409.html">ICOORD</a>&#160;</td>
 
338
          <td class="paramname"><em>pt</em></td><td>)</td>
 
339
          <td></td>
 
340
        </tr>
 
341
      </table>
 
342
</div>
 
343
<div class="memdoc">
 
344
 
 
345
<p>is pt inside block </p>
 
346
 
 
347
<p>Definition at line <a class="el" href="a00772_source.html#l00087">87</a> of file <a class="el" href="a00772_source.html">pdblock.cpp</a>.</p>
 
348
<div class="fragment"><pre class="fragment">                       {
 
349
  <a class="code" href="a00282.html">BLOCK_RECT_IT</a> it = <span class="keyword">this</span>;       <span class="comment">//rectangle iterator</span>
 
350
  <a class="code" href="a00409.html" title="integer coordinate">ICOORD</a> bleft, tright;          <span class="comment">//corners of rectangle</span>
 
351
 
 
352
  <span class="keywordflow">for</span> (it.<a class="code" href="a00282.html#a74b1d75085d9f1ba313439ddbd9bc320" title="start iteration">start_block</a> (); !it.<a class="code" href="a00282.html#af8914c72cc93eeb96ed231db37ab5043" title="test end">cycled_rects</a> (); it.<a class="code" href="a00282.html#ab56b686d27e5eea704424470024456f4" title="next rectangle">forward</a> ()) {
 
353
                                 <span class="comment">//get rectangle</span>
 
354
    it.<a class="code" href="a00282.html#a1e3195249b6b6934be9060f1d5ee60c2">bounding_box</a> (bleft, tright);
 
355
                                 <span class="comment">//inside rect</span>
 
356
    <span class="keywordflow">if</span> (pt.<a class="code" href="a00409.html#a59722a47c540007c58a539f0e35b3f33" title="access function">x</a> () &gt;= bleft.<a class="code" href="a00409.html#a59722a47c540007c58a539f0e35b3f33" title="access function">x</a> () &amp;&amp; pt.<a class="code" href="a00409.html#a59722a47c540007c58a539f0e35b3f33" title="access function">x</a> () &lt;= tright.<a class="code" href="a00409.html#a59722a47c540007c58a539f0e35b3f33" title="access function">x</a> ()
 
357
      &amp;&amp; pt.<a class="code" href="a00409.html#a66bba6ff8a5f060775e1c2ca511f7f29" title="access_function">y</a> () &gt;= bleft.<a class="code" href="a00409.html#a66bba6ff8a5f060775e1c2ca511f7f29" title="access_function">y</a> () &amp;&amp; pt.<a class="code" href="a00409.html#a66bba6ff8a5f060775e1c2ca511f7f29" title="access_function">y</a> () &lt;= tright.<a class="code" href="a00409.html#a66bba6ff8a5f060775e1c2ca511f7f29" title="access_function">y</a> ())
 
358
      <span class="keywordflow">return</span> TRUE;               <span class="comment">//is inside</span>
 
359
  }
 
360
  <span class="keywordflow">return</span> FALSE;                  <span class="comment">//not inside</span>
 
361
}
 
362
</pre></div>
 
363
</div>
 
364
</div>
 
365
<a class="anchor" id="acc3cf97b51fa93a659312c966df4a756"></a><!-- doxytag: member="PDBLK::index" ref="acc3cf97b51fa93a659312c966df4a756" args="() const " -->
 
366
<div class="memitem">
 
367
<div class="memproto">
 
368
      <table class="memname">
 
369
        <tr>
 
370
          <td class="memname">int <a class="el" href="a00500.html#acc3cf97b51fa93a659312c966df4a756">PDBLK::index</a> </td>
 
371
          <td>(</td>
 
372
          <td class="paramname"></td><td>)</td>
 
373
          <td> const<code> [inline]</code></td>
 
374
        </tr>
 
375
      </table>
 
376
</div>
 
377
<div class="memdoc">
 
378
 
 
379
<p>Definition at line <a class="el" href="a00773_source.html#l00077">77</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
380
<div class="fragment"><pre class="fragment">                      {
 
381
      <span class="keywordflow">return</span> <a class="code" href="a00500.html#ab760851a1a4866f053ea020a02350467">index_</a>;
 
382
    }
 
383
</pre></div>
 
384
</div>
 
385
</div>
 
386
<a class="anchor" id="a59ff88ca1db21b00c42c4e2a47700c74"></a><!-- doxytag: member="PDBLK::move" ref="a59ff88ca1db21b00c42c4e2a47700c74" args="(const ICOORD vec)" -->
 
387
<div class="memitem">
 
388
<div class="memproto">
 
389
      <table class="memname">
 
390
        <tr>
 
391
          <td class="memname">void <a class="el" href="a00500.html#a59ff88ca1db21b00c42c4e2a47700c74">PDBLK::move</a> </td>
 
392
          <td>(</td>
 
393
          <td class="paramtype">const <a class="el" href="a00409.html">ICOORD</a>&#160;</td>
 
394
          <td class="paramname"><em>vec</em></td><td>)</td>
 
395
          <td></td>
 
396
        </tr>
 
397
      </table>
 
398
</div>
 
399
<div class="memdoc">
 
400
 
 
401
<p>reposition block </p>
 
402
 
 
403
<p>Definition at line <a class="el" href="a00772_source.html#l00111">111</a> of file <a class="el" href="a00772_source.html">pdblock.cpp</a>.</p>
 
404
<div class="fragment"><pre class="fragment">                  {
 
405
  ICOORDELT_IT it(&amp;<a class="code" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a>);
 
406
 
 
407
  <span class="keywordflow">for</span> (it.mark_cycle_pt (); !it.cycled_list (); it.forward ())
 
408
    *(it.data ()) += vec;
 
409
 
 
410
  it.set_to_list (&amp;<a class="code" href="a00500.html#a87a08537c120e669c825d147a5650a55">rightside</a>);
 
411
 
 
412
  <span class="keywordflow">for</span> (it.mark_cycle_pt (); !it.cycled_list (); it.forward ())
 
413
    *(it.data ()) += vec;
 
414
 
 
415
  <a class="code" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">box</a>.<a class="code" href="a00592.html#a5fb1ce0d624392f72f82933e63f20e71">move</a> (vec);
 
416
}
 
417
</pre></div>
 
418
</div>
 
419
</div>
 
420
<a class="anchor" id="abea460ba0744a48300ad506f82819952"></a><!-- doxytag: member="PDBLK::operator=" ref="abea460ba0744a48300ad506f82819952" args="(const PDBLK &amp;source)" -->
 
421
<div class="memitem">
 
422
<div class="memproto">
 
423
      <table class="memname">
 
424
        <tr>
 
425
          <td class="memname"><a class="el" href="a00500.html">PDBLK</a> &amp; PDBLK::operator= </td>
 
426
          <td>(</td>
 
427
          <td class="paramtype">const <a class="el" href="a00500.html">PDBLK</a> &amp;&#160;</td>
 
428
          <td class="paramname"><em>source</em></td><td>)</td>
 
429
          <td></td>
 
430
        </tr>
 
431
      </table>
 
432
</div>
 
433
<div class="memdoc">
 
434
<p>assignment </p>
 
435
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
436
  <table class="params">
 
437
    <tr><td class="paramname">source</td><td>from this </td></tr>
 
438
  </table>
 
439
  </dd>
 
440
</dl>
 
441
 
 
442
<p>Definition at line <a class="el" href="a00772_source.html#l00238">238</a> of file <a class="el" href="a00772_source.html">pdblock.cpp</a>.</p>
 
443
<div class="fragment"><pre class="fragment">  {
 
444
  <span class="comment">//      this-&gt;ELIST_LINK::operator=(source);</span>
 
445
  <span class="keywordflow">if</span> (!<a class="code" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a>.empty ())
 
446
    <a class="code" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a>.clear ();
 
447
  <span class="keywordflow">if</span> (!<a class="code" href="a00500.html#a87a08537c120e669c825d147a5650a55">rightside</a>.empty ())
 
448
    <a class="code" href="a00500.html#a87a08537c120e669c825d147a5650a55">rightside</a>.clear ();
 
449
  <a class="code" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a>.deep_copy(&amp;source.<a class="code" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a>, &amp;<a class="code" href="a00410.html#a36ea9c054f12a5f047b48a93878d6ccc">ICOORDELT::deep_copy</a>);
 
450
  <a class="code" href="a00500.html#a87a08537c120e669c825d147a5650a55">rightside</a>.deep_copy(&amp;source.<a class="code" href="a00500.html#a87a08537c120e669c825d147a5650a55">rightside</a>, &amp;<a class="code" href="a00410.html#a36ea9c054f12a5f047b48a93878d6ccc">ICOORDELT::deep_copy</a>);
 
451
  <a class="code" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">box</a> = source.<a class="code" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">box</a>;
 
452
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
 
453
}
 
454
</pre></div>
 
455
</div>
 
456
</div>
 
457
<a class="anchor" id="a38da8bc50b2c4cf687ffbde6cf901a0e"></a><!-- doxytag: member="PDBLK::plot" ref="a38da8bc50b2c4cf687ffbde6cf901a0e" args="(ScrollView *window, inT32 serial, ScrollView::Color colour)" -->
 
458
<div class="memitem">
 
459
<div class="memproto">
 
460
      <table class="memname">
 
461
        <tr>
 
462
          <td class="memname">void <a class="el" href="a00500.html#a38da8bc50b2c4cf687ffbde6cf901a0e">PDBLK::plot</a> </td>
 
463
          <td>(</td>
 
464
          <td class="paramtype"><a class="el" href="a00532.html">ScrollView</a> *&#160;</td>
 
465
          <td class="paramname"><em>window</em>, </td>
 
466
        </tr>
 
467
        <tr>
 
468
          <td class="paramkey"></td>
 
469
          <td></td>
 
470
          <td class="paramtype"><a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a>&#160;</td>
 
471
          <td class="paramname"><em>serial</em>, </td>
 
472
        </tr>
 
473
        <tr>
 
474
          <td class="paramkey"></td>
 
475
          <td></td>
 
476
          <td class="paramtype"><a class="el" href="a00532.html#a100504544a5423a94222149ee9ed0fe8">ScrollView::Color</a>&#160;</td>
 
477
          <td class="paramname"><em>colour</em>&#160;</td>
 
478
        </tr>
 
479
        <tr>
 
480
          <td></td>
 
481
          <td>)</td>
 
482
          <td></td><td></td>
 
483
        </tr>
 
484
      </table>
 
485
</div>
 
486
<div class="memdoc">
 
487
<p>draw histogram </p>
 
488
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
489
  <table class="params">
 
490
    <tr><td class="paramname">window</td><td>window to draw in </td></tr>
 
491
    <tr><td class="paramname">serial</td><td>serial number </td></tr>
 
492
    <tr><td class="paramname">colour</td><td>colour to draw in </td></tr>
 
493
  </table>
 
494
  </dd>
 
495
</dl>
 
496
 
 
497
<p>Definition at line <a class="el" href="a00772_source.html#l00177">177</a> of file <a class="el" href="a00772_source.html">pdblock.cpp</a>.</p>
 
498
<div class="fragment"><pre class="fragment">                  {
 
499
  <a class="code" href="a00409.html" title="integer coordinate">ICOORD</a> startpt;                <span class="comment">//start of outline</span>
 
500
  <a class="code" href="a00409.html" title="integer coordinate">ICOORD</a> endpt;                  <span class="comment">//end of outline</span>
 
501
  <a class="code" href="a00409.html" title="integer coordinate">ICOORD</a> prevpt;                 <span class="comment">//previous point</span>
 
502
  ICOORDELT_IT it = &amp;<a class="code" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a>;   <span class="comment">//iterator</span>
 
503
 
 
504
                                 <span class="comment">//set the colour</span>
 
505
  window-&gt;<a class="code" href="a00532.html#a79855c525ec660b452382e9813d2edb5">Pen</a>(colour);
 
506
  window-&gt;<a class="code" href="a00532.html#a2e1d3849b95cecdcb2026b48d8f38cde">TextAttributes</a>(<span class="stringliteral">&quot;Times&quot;</span>, <a class="code" href="a00772.html#ad0e3ca9368f7687b1a72cf083cad3033">BLOCK_LABEL_HEIGHT</a>, <span class="keyword">false</span>, <span class="keyword">false</span>, <span class="keyword">false</span>);
 
507
 
 
508
  <span class="keywordflow">if</span> (<a class="code" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a> != NULL) {
 
509
    <a class="code" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a>-&gt;<a class="code" href="a00505.html#a9692d541e5125e68a399bcac3939a0a5">plot</a>(window, serial);
 
510
  } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!<a class="code" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a>.empty ()) {
 
511
    startpt = *(it.data ());     <span class="comment">//bottom left corner</span>
 
512
    <span class="comment">//              tprintf(&quot;Block %d bottom left is (%d,%d)\n&quot;,</span>
 
513
    <span class="comment">//                      serial,startpt.x(),startpt.y());</span>
 
514
    <span class="keywordtype">char</span> temp_buff[34];
 
515
<span class="preprocessor">    #if defined(__UNIX__) || defined(MINGW)</span>
 
516
<span class="preprocessor"></span>    sprintf(temp_buff, <a class="code" href="a00831.html#abe22434564efd658acebe9e8cf6235bc">INT32FORMAT</a>, serial);
 
517
<span class="preprocessor">    #else</span>
 
518
<span class="preprocessor"></span>    ultoa (serial, temp_buff, 10);
 
519
<span class="preprocessor">    #endif</span>
 
520
<span class="preprocessor"></span>    window-&gt;<a class="code" href="a00532.html#a4c5cb55d6eab9d7d996d25ed8922593d">Text</a>(startpt.<a class="code" href="a00409.html#a59722a47c540007c58a539f0e35b3f33" title="access function">x</a> (), startpt.<a class="code" href="a00409.html#a66bba6ff8a5f060775e1c2ca511f7f29" title="access_function">y</a> (), temp_buff);
 
521
 
 
522
    window-&gt;<a class="code" href="a00532.html#a730b182e350dfe37b0986d7f0591fee5">SetCursor</a>(startpt.<a class="code" href="a00409.html#a59722a47c540007c58a539f0e35b3f33" title="access function">x</a> (), startpt.<a class="code" href="a00409.html#a66bba6ff8a5f060775e1c2ca511f7f29" title="access_function">y</a> ());
 
523
    <span class="keywordflow">do</span> {
 
524
      prevpt = *(it.data ());    <span class="comment">//previous point</span>
 
525
      it.forward ();             <span class="comment">//move to next point</span>
 
526
                                 <span class="comment">//draw round corner</span>
 
527
    window-&gt;<a class="code" href="a00532.html#a101de80a4722fe821969f61f6e7303a6">DrawTo</a>(prevpt.<a class="code" href="a00409.html#a59722a47c540007c58a539f0e35b3f33" title="access function">x</a> (), it.data ()-&gt;y ());
 
528
    window-&gt;<a class="code" href="a00532.html#a101de80a4722fe821969f61f6e7303a6">DrawTo</a>(it.data ()-&gt;x (), it.data ()-&gt;y ());
 
529
    }
 
530
    <span class="keywordflow">while</span> (!it.at_last ());      <span class="comment">//until end of list</span>
 
531
    endpt = *(it.data ());       <span class="comment">//end point</span>
 
532
 
 
533
                                 <span class="comment">//other side of boundary</span>
 
534
    window-&gt;<a class="code" href="a00532.html#a730b182e350dfe37b0986d7f0591fee5">SetCursor</a>(startpt.<a class="code" href="a00409.html#a59722a47c540007c58a539f0e35b3f33" title="access function">x</a> (), startpt.<a class="code" href="a00409.html#a66bba6ff8a5f060775e1c2ca511f7f29" title="access_function">y</a> ());
 
535
    it.set_to_list (&amp;<a class="code" href="a00500.html#a87a08537c120e669c825d147a5650a55">rightside</a>);
 
536
    prevpt = startpt;
 
537
    <span class="keywordflow">for</span> (it.mark_cycle_pt (); !it.cycled_list (); it.forward ()) {
 
538
                                 <span class="comment">//draw round corner</span>
 
539
    window-&gt;<a class="code" href="a00532.html#a101de80a4722fe821969f61f6e7303a6">DrawTo</a>(prevpt.<a class="code" href="a00409.html#a59722a47c540007c58a539f0e35b3f33" title="access function">x</a> (), it.data ()-&gt;y ());
 
540
    window-&gt;<a class="code" href="a00532.html#a101de80a4722fe821969f61f6e7303a6">DrawTo</a>(it.data ()-&gt;x (), it.data ()-&gt;y ());
 
541
      prevpt = *(it.data ());    <span class="comment">//previous point</span>
 
542
    }
 
543
                                 <span class="comment">//close boundary</span>
 
544
    window-&gt;<a class="code" href="a00532.html#a101de80a4722fe821969f61f6e7303a6">DrawTo</a>(endpt.<a class="code" href="a00409.html#a59722a47c540007c58a539f0e35b3f33" title="access function">x</a>(), endpt.<a class="code" href="a00409.html#a66bba6ff8a5f060775e1c2ca511f7f29" title="access_function">y</a>());
 
545
  }
 
546
}
 
547
</pre></div>
 
548
</div>
 
549
</div>
 
550
<a class="anchor" id="a6670779c69aca2d574e4a0590d9b3939"></a><!-- doxytag: member="PDBLK::poly_block" ref="a6670779c69aca2d574e4a0590d9b3939" args="() const " -->
 
551
<div class="memitem">
 
552
<div class="memproto">
 
553
      <table class="memname">
 
554
        <tr>
 
555
          <td class="memname"><a class="el" href="a00505.html">POLY_BLOCK</a>* <a class="el" href="a00500.html#a6670779c69aca2d574e4a0590d9b3939">PDBLK::poly_block</a> </td>
 
556
          <td>(</td>
 
557
          <td class="paramname"></td><td>)</td>
 
558
          <td> const<code> [inline]</code></td>
 
559
        </tr>
 
560
      </table>
 
561
</div>
 
562
<div class="memdoc">
 
563
 
 
564
<p>Definition at line <a class="el" href="a00773_source.html#l00059">59</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
565
<div class="fragment"><pre class="fragment">                                   {
 
566
      <span class="keywordflow">return</span> <a class="code" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a>;
 
567
    }
 
568
</pre></div>
 
569
</div>
 
570
</div>
 
571
<a class="anchor" id="a18bd78acbc103a761e7fb98d1dc8fa23"></a><!-- doxytag: member="PDBLK::render_mask" ref="a18bd78acbc103a761e7fb98d1dc8fa23" args="(const FCOORD &amp;rerotation)" -->
 
572
<div class="memitem">
 
573
<div class="memproto">
 
574
      <table class="memname">
 
575
        <tr>
 
576
          <td class="memname">Pix * <a class="el" href="a00500.html#a18bd78acbc103a761e7fb98d1dc8fa23">PDBLK::render_mask</a> </td>
 
577
          <td>(</td>
 
578
          <td class="paramtype">const <a class="el" href="a00375.html">FCOORD</a> &amp;&#160;</td>
 
579
          <td class="paramname"><em>rerotation</em></td><td>)</td>
 
580
          <td></td>
 
581
        </tr>
 
582
      </table>
 
583
</div>
 
584
<div class="memdoc">
 
585
 
 
586
<p>Definition at line <a class="el" href="a00772_source.html#l00129">129</a> of file <a class="el" href="a00772_source.html">pdblock.cpp</a>.</p>
 
587
<div class="fragment"><pre class="fragment">                                                {
 
588
  <a class="code" href="a00592.html">TBOX</a> rotated_box(<a class="code" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">box</a>);
 
589
  rotated_box.rotate(rerotation);
 
590
  Pix* pix = pixCreate(rotated_box.width(), rotated_box.height(), 1);
 
591
  <span class="keywordflow">if</span> (<a class="code" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a> != NULL) {
 
592
    <span class="comment">// We are going to rotate, so get a deep copy of the points and</span>
 
593
    <span class="comment">// make a new POLY_BLOCK with it.</span>
 
594
    ICOORDELT_LIST polygon;
 
595
    polygon.deep_copy(<a class="code" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a>-&gt;<a class="code" href="a00505.html#a0835a8ea39e763d6a229603d5532c879">points</a>(), <a class="code" href="a00410.html#a36ea9c054f12a5f047b48a93878d6ccc">ICOORDELT::deep_copy</a>);
 
596
    <a class="code" href="a00505.html">POLY_BLOCK</a> image_block(&amp;polygon, <a class="code" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a>-&gt;<a class="code" href="a00505.html#af13d2e593a49e7818d800d14633eccd0">isA</a>());
 
597
    image_block.<a class="code" href="a00505.html#af93c6f325d6a4d981e884dc0c5d77819">rotate</a>(rerotation);
 
598
    <span class="comment">// Block outline is a polygon, so use a PB_LINE_IT to get the</span>
 
599
    <span class="comment">// rasterized interior. (Runs of interior pixels on a line.)</span>
 
600
    <a class="code" href="a00499.html">PB_LINE_IT</a> *lines = <span class="keyword">new</span> <a class="code" href="a00499.html">PB_LINE_IT</a>(&amp;image_block);
 
601
    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> y = <a class="code" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">box</a>.<a class="code" href="a00592.html#a4451d237f1cd18c4982d63fe36a11fc3">bottom</a>(); y &lt; <a class="code" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">box</a>.<a class="code" href="a00592.html#adf92e9fdac1bdf11c10d1c4d1178791a">top</a>(); ++y) {
 
602
      ICOORDELT_LIST* segments = lines-&gt;<a class="code" href="a00499.html#a951f496eedaed0deb3e61946f7444122">get_line</a>(y);
 
603
      <span class="keywordflow">if</span> (!segments-&gt;empty()) {
 
604
        ICOORDELT_IT s_it(segments);
 
605
        <span class="comment">// Each element of segments is a start x and x size of the</span>
 
606
        <span class="comment">// run of interior pixels.</span>
 
607
        <span class="keywordflow">for</span> (s_it.mark_cycle_pt(); !s_it.cycled_list(); s_it.forward()) {
 
608
          <span class="keywordtype">int</span> start = s_it.data()-&gt;x();
 
609
          <span class="keywordtype">int</span> xext = s_it.data()-&gt;y();
 
610
          <span class="comment">// Set the run of pixels to 1.</span>
 
611
          pixRasterop(pix, start - rotated_box.left(),
 
612
                      rotated_box.height() - 1 - (y - rotated_box.bottom()),
 
613
                      xext, 1, PIX_SET, NULL, 0, 0);
 
614
        }
 
615
      }
 
616
      <span class="keyword">delete</span> segments;
 
617
    }
 
618
    <span class="keyword">delete</span> lines;
 
619
  } <span class="keywordflow">else</span> {
 
620
    <span class="comment">// Just fill the whole block as there is only a bounding box.</span>
 
621
    pixRasterop(pix, 0, 0, rotated_box.width(), rotated_box.height(),
 
622
                PIX_SET, NULL, 0, 0);
 
623
  }
 
624
  <span class="keywordflow">return</span> pix;
 
625
}
 
626
</pre></div>
 
627
</div>
 
628
</div>
 
629
<a class="anchor" id="a788cc0cf8ac2ccc71748904c8788e82d"></a><!-- doxytag: member="PDBLK::set_index" ref="a788cc0cf8ac2ccc71748904c8788e82d" args="(int value)" -->
 
630
<div class="memitem">
 
631
<div class="memproto">
 
632
      <table class="memname">
 
633
        <tr>
 
634
          <td class="memname">void <a class="el" href="a00500.html#a788cc0cf8ac2ccc71748904c8788e82d">PDBLK::set_index</a> </td>
 
635
          <td>(</td>
 
636
          <td class="paramtype">int&#160;</td>
 
637
          <td class="paramname"><em>value</em></td><td>)</td>
 
638
          <td><code> [inline]</code></td>
 
639
        </tr>
 
640
      </table>
 
641
</div>
 
642
<div class="memdoc">
 
643
 
 
644
<p>Definition at line <a class="el" href="a00773_source.html#l00080">80</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
645
<div class="fragment"><pre class="fragment">                              {
 
646
      <a class="code" href="a00500.html#ab760851a1a4866f053ea020a02350467">index_</a> = value;
 
647
    }
 
648
</pre></div>
 
649
</div>
 
650
</div>
 
651
<a class="anchor" id="a60f8ad7b10ca32e3ece92bb04e3f2793"></a><!-- doxytag: member="PDBLK::set_poly_block" ref="a60f8ad7b10ca32e3ece92bb04e3f2793" args="(POLY_BLOCK *blk)" -->
 
652
<div class="memitem">
 
653
<div class="memproto">
 
654
      <table class="memname">
 
655
        <tr>
 
656
          <td class="memname">void <a class="el" href="a00500.html#a60f8ad7b10ca32e3ece92bb04e3f2793">PDBLK::set_poly_block</a> </td>
 
657
          <td>(</td>
 
658
          <td class="paramtype"><a class="el" href="a00505.html">POLY_BLOCK</a> *&#160;</td>
 
659
          <td class="paramname"><em>blk</em></td><td>)</td>
 
660
          <td><code> [inline]</code></td>
 
661
        </tr>
 
662
      </table>
 
663
</div>
 
664
<div class="memdoc">
 
665
 
 
666
<p>set the poly block </p>
 
667
 
 
668
<p>Definition at line <a class="el" href="a00773_source.html#l00063">63</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
669
<div class="fragment"><pre class="fragment">                                         {
 
670
      <a class="code" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">hand_poly</a> = blk;
 
671
    }
 
672
</pre></div>
 
673
</div>
 
674
</div>
 
675
<a class="anchor" id="a8d8fa823bf5878ef0b020572fea424e9"></a><!-- doxytag: member="PDBLK::set_sides" ref="a8d8fa823bf5878ef0b020572fea424e9" args="(ICOORDELT_LIST *left, ICOORDELT_LIST *right)" -->
 
676
<div class="memitem">
 
677
<div class="memproto">
 
678
      <table class="memname">
 
679
        <tr>
 
680
          <td class="memname">void <a class="el" href="a00500.html#a8d8fa823bf5878ef0b020572fea424e9">PDBLK::set_sides</a> </td>
 
681
          <td>(</td>
 
682
          <td class="paramtype">ICOORDELT_LIST *&#160;</td>
 
683
          <td class="paramname"><em>left</em>, </td>
 
684
        </tr>
 
685
        <tr>
 
686
          <td class="paramkey"></td>
 
687
          <td></td>
 
688
          <td class="paramtype">ICOORDELT_LIST *&#160;</td>
 
689
          <td class="paramname"><em>right</em>&#160;</td>
 
690
        </tr>
 
691
        <tr>
 
692
          <td></td>
 
693
          <td>)</td>
 
694
          <td></td><td></td>
 
695
        </tr>
 
696
      </table>
 
697
</div>
 
698
<div class="memdoc">
 
699
<p>set vertex lists </p>
 
700
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
701
  <table class="params">
 
702
    <tr><td class="paramname">left</td><td>list of left vertices </td></tr>
 
703
    <tr><td class="paramname">right</td><td>list of right vertices </td></tr>
 
704
  </table>
 
705
  </dd>
 
706
</dl>
 
707
 
 
708
<p>Definition at line <a class="el" href="a00772_source.html#l00064">64</a> of file <a class="el" href="a00772_source.html">pdblock.cpp</a>.</p>
 
709
<div class="fragment"><pre class="fragment">                       {
 
710
                                 <span class="comment">//boundaries</span>
 
711
  ICOORDELT_IT left_it = &amp;<a class="code" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a>;
 
712
  ICOORDELT_IT right_it = &amp;<a class="code" href="a00500.html#a87a08537c120e669c825d147a5650a55">rightside</a>;
 
713
 
 
714
  <a class="code" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">leftside</a>.clear ();
 
715
  left_it.move_to_first ();
 
716
  left_it.add_list_before (left);
 
717
  <a class="code" href="a00500.html#a87a08537c120e669c825d147a5650a55">rightside</a>.clear ();
 
718
  right_it.move_to_first ();
 
719
  right_it.add_list_before (right);
 
720
}
 
721
</pre></div>
 
722
</div>
 
723
</div>
 
724
<hr/><h2>Friends And Related Function Documentation</h2>
 
725
<a class="anchor" id="ad858d9adefd50f00fb20c85fcdfb0c95"></a><!-- doxytag: member="PDBLK::BLOCK_RECT_IT" ref="ad858d9adefd50f00fb20c85fcdfb0c95" args="" -->
 
726
<div class="memitem">
 
727
<div class="memproto">
 
728
      <table class="memname">
 
729
        <tr>
 
730
          <td class="memname">friend class <a class="el" href="a00282.html">BLOCK_RECT_IT</a><code> [friend]</code></td>
 
731
        </tr>
 
732
      </table>
 
733
</div>
 
734
<div class="memdoc">
 
735
 
 
736
<p>Reimplemented in <a class="el" href="a00280.html#ad858d9adefd50f00fb20c85fcdfb0c95">BLOCK</a>.</p>
 
737
 
 
738
<p>Definition at line <a class="el" href="a00773_source.html#l00034">34</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
739
 
 
740
</div>
 
741
</div>
 
742
<hr/><h2>Member Data Documentation</h2>
 
743
<a class="anchor" id="ac59bc5dc2b038f44294271a6356cbff6"></a><!-- doxytag: member="PDBLK::box" ref="ac59bc5dc2b038f44294271a6356cbff6" args="" -->
 
744
<div class="memitem">
 
745
<div class="memproto">
 
746
      <table class="memname">
 
747
        <tr>
 
748
          <td class="memname"><a class="el" href="a00592.html">TBOX</a> <a class="el" href="a00500.html#ac59bc5dc2b038f44294271a6356cbff6">PDBLK::box</a><code> [protected]</code></td>
 
749
        </tr>
 
750
      </table>
 
751
</div>
 
752
<div class="memdoc">
 
753
 
 
754
<p>Definition at line <a class="el" href="a00773_source.html#l00112">112</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
755
 
 
756
</div>
 
757
</div>
 
758
<a class="anchor" id="a4c1b3a88242771bf55372f44c0d4ca88"></a><!-- doxytag: member="PDBLK::hand_poly" ref="a4c1b3a88242771bf55372f44c0d4ca88" args="" -->
 
759
<div class="memitem">
 
760
<div class="memproto">
 
761
      <table class="memname">
 
762
        <tr>
 
763
          <td class="memname"><a class="el" href="a00505.html">POLY_BLOCK</a>* <a class="el" href="a00500.html#a4c1b3a88242771bf55372f44c0d4ca88">PDBLK::hand_poly</a><code> [protected]</code></td>
 
764
        </tr>
 
765
      </table>
 
766
</div>
 
767
<div class="memdoc">
 
768
 
 
769
<p>Definition at line <a class="el" href="a00773_source.html#l00109">109</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
770
 
 
771
</div>
 
772
</div>
 
773
<a class="anchor" id="ab760851a1a4866f053ea020a02350467"></a><!-- doxytag: member="PDBLK::index_" ref="ab760851a1a4866f053ea020a02350467" args="" -->
 
774
<div class="memitem">
 
775
<div class="memproto">
 
776
      <table class="memname">
 
777
        <tr>
 
778
          <td class="memname">int <a class="el" href="a00500.html#ab760851a1a4866f053ea020a02350467">PDBLK::index_</a><code> [protected]</code></td>
 
779
        </tr>
 
780
      </table>
 
781
</div>
 
782
<div class="memdoc">
 
783
 
 
784
<p>Definition at line <a class="el" href="a00773_source.html#l00113">113</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
785
 
 
786
</div>
 
787
</div>
 
788
<a class="anchor" id="af00bb4a4ee2e805324672b19e088e06a"></a><!-- doxytag: member="PDBLK::leftside" ref="af00bb4a4ee2e805324672b19e088e06a" args="" -->
 
789
<div class="memitem">
 
790
<div class="memproto">
 
791
      <table class="memname">
 
792
        <tr>
 
793
          <td class="memname">ICOORDELT_LIST <a class="el" href="a00500.html#af00bb4a4ee2e805324672b19e088e06a">PDBLK::leftside</a><code> [protected]</code></td>
 
794
        </tr>
 
795
      </table>
 
796
</div>
 
797
<div class="memdoc">
 
798
 
 
799
<p>Definition at line <a class="el" href="a00773_source.html#l00110">110</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
800
 
 
801
</div>
 
802
</div>
 
803
<a class="anchor" id="a87a08537c120e669c825d147a5650a55"></a><!-- doxytag: member="PDBLK::rightside" ref="a87a08537c120e669c825d147a5650a55" args="" -->
 
804
<div class="memitem">
 
805
<div class="memproto">
 
806
      <table class="memname">
 
807
        <tr>
 
808
          <td class="memname">ICOORDELT_LIST <a class="el" href="a00500.html#a87a08537c120e669c825d147a5650a55">PDBLK::rightside</a><code> [protected]</code></td>
 
809
        </tr>
 
810
      </table>
 
811
</div>
 
812
<div class="memdoc">
 
813
 
 
814
<p>Definition at line <a class="el" href="a00773_source.html#l00111">111</a> of file <a class="el" href="a00773_source.html">pdblock.h</a>.</p>
 
815
 
 
816
</div>
 
817
</div>
 
818
<hr/>The documentation for this class was generated from the following files:<ul>
 
819
<li>/usr/local/google/home/jbreiden/tesseract-ocr-read-only/ccstruct/<a class="el" href="a00773_source.html">pdblock.h</a></li>
 
820
<li>/usr/local/google/home/jbreiden/tesseract-ocr-read-only/ccstruct/<a class="el" href="a00772_source.html">pdblock.cpp</a></li>
 
821
</ul>
 
822
</div><!-- contents -->
 
823
</div>
 
824
<!-- window showing the filter options -->
 
825
<div id="MSearchSelectWindow"
 
826
     onmouseover="return searchBox.OnSearchSelectShow()"
 
827
     onmouseout="return searchBox.OnSearchSelectHide()"
 
828
     onkeydown="return searchBox.OnSearchSelectKey(event)">
 
829
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>
 
830
 
 
831
<!-- iframe showing the search results (closed by default) -->
 
832
<div id="MSearchResultsWindow">
 
833
<iframe src="javascript:void(0)" frameborder="0" 
 
834
        name="MSearchResults" id="MSearchResults">
 
835
</iframe>
 
836
</div>
 
837
 
 
838
  <div id="nav-path" class="navpath">
 
839
    <ul>
 
840
      <li class="navelem"><a class="el" href="a00500.html">PDBLK</a>      </li>
 
841
 
 
842
    <li class="footer">Generated on Mon Feb 3 2014 10:59:17 for tesseract by
 
843
    <a href="http://www.doxygen.org/index.html">
 
844
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.6.1 </li>
 
845
   </ul>
 
846
 </div>
 
847
 
 
848
 
 
849
</body>
 
850
</html>