aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/a06772.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/doxygen/nel/a06772.html')
-rw-r--r--docs/doxygen/nel/a06772.html554
1 files changed, 554 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a06772.html b/docs/doxygen/nel/a06772.html
new file mode 100644
index 00000000..4f35c542
--- /dev/null
+++ b/docs/doxygen/nel/a06772.html
@@ -0,0 +1,554 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>NeL: zone_region.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.3.6 -->
+<div class="qindex"> <form class="search" action="search.php" method="get">
+<a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a> | <span class="search"><u>S</u>earch&nbsp;for&nbsp;<input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div>
+<h1>zone_region.cpp</h1><a href="a05349.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001
+00007 <span class="comment">/* Copyright, 2001 Nevrax Ltd.</span>
+00008 <span class="comment"> *</span>
+00009 <span class="comment"> * This file is part of NEVRAX NEL.</span>
+00010 <span class="comment"> * NEVRAX NEL is free software; you can redistribute it and/or modify</span>
+00011 <span class="comment"> * it under the terms of the GNU General Public License as published by</span>
+00012 <span class="comment"> * the Free Software Foundation; either version 2, or (at your option)</span>
+00013 <span class="comment"> * any later version.</span>
+00014 <span class="comment"></span>
+00015 <span class="comment"> * NEVRAX NEL is distributed in the hope that it will be useful, but</span>
+00016 <span class="comment"> * WITHOUT ANY WARRANTY; without even the implied warranty of</span>
+00017 <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span>
+00018 <span class="comment"> * General Public License for more details.</span>
+00019 <span class="comment"></span>
+00020 <span class="comment"> * You should have received a copy of the GNU General Public License</span>
+00021 <span class="comment"> * along with NEVRAX NEL; see the file COPYING. If not, write to the</span>
+00022 <span class="comment"> * Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,</span>
+00023 <span class="comment"> * MA 02111-1307, USA.</span>
+00024 <span class="comment"> */</span>
+00025
+00026 <span class="preprocessor">#include "<a class="code" href="a05350.html">zone_region.h</a>"</span>
+00027
+00028 <span class="keyword">using</span> <span class="keyword">namespace </span>NLMISC;
+00029 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
+00030
+00031 <span class="keyword">namespace </span>NLLIGO
+00032 {
+00033
+<a name="l00034"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiont0">00034</a> string CZoneRegion::_StringOutOfBound;
+00035
+00036 <span class="comment">// ***************************************************************************</span>
+00037 <span class="comment">// SZoneUnit</span>
+00038 <span class="comment">// ***************************************************************************</span>
+00039
+00040 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00041"></a><a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnita2">00041</a> CZoneRegion::SZoneUnit::SZoneUnit()
+00042 {
+00043 <a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o8">ZoneName</a> = <a class="code" href="a05350.html#a1">STRING_UNUSED</a>;
+00044 PosX = PosY = 0;
+00045 Rot = <a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o2">Flip</a> = 0;
+00046 <a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o7">SharingMatNames</a>[0] = <a class="code" href="a05350.html#a1">STRING_UNUSED</a>;
+00047 <a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o7">SharingMatNames</a>[1] = <a class="code" href="a05350.html#a1">STRING_UNUSED</a>;
+00048 <a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o7">SharingMatNames</a>[2] = <a class="code" href="a05350.html#a1">STRING_UNUSED</a>;
+00049 <a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o7">SharingMatNames</a>[3] = <a class="code" href="a05350.html#a1">STRING_UNUSED</a>;
+00050 <a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o6">SharingCutEdges</a>[0] = 0;
+00051 <a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o6">SharingCutEdges</a>[1] = 0;
+00052 <a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o6">SharingCutEdges</a>[2] = 0;
+00053 <a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o6">SharingCutEdges</a>[3] = 0;
+00054 }
+00055
+00056 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00057"></a><a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnita1">00057</a> <span class="keywordtype">void</span> CZoneRegion::SZoneUnit::serial (<a class="code" href="a02270.html">NLMISC::IStream</a> &amp;f)
+00058 {
+00059 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o8">ZoneName</a>, <span class="stringliteral">"NAME"</span>);
+00060 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (PosX, <span class="stringliteral">"X"</span>);
+00061 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (PosY, <span class="stringliteral">"Y"</span>);
+00062 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (Rot, <span class="stringliteral">"ROT"</span>);
+00063 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o2">Flip</a>, <span class="stringliteral">"FLIP"</span>);
+00064
+00065 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a11">uint32</a> i = 0; i &lt; 4; ++i)
+00066 {
+00067 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o7">SharingMatNames</a>[i], <span class="stringliteral">"MAT_NAMES"</span>);
+00068 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o6">SharingCutEdges</a>[i], <span class="stringliteral">"CUR_EDGES"</span>);
+00069 }
+00070 }
+00071
+00072 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00073"></a><a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnita0">00073</a> <span class="keyword">const</span> <a class="code" href="a03758.html">CZoneRegion::SZoneUnit</a>&amp; CZoneRegion::SZoneUnit::operator=(<span class="keyword">const</span> <a class="code" href="a03758.html">CZoneRegion::SZoneUnit</a>&amp;zu)
+00074 {
+00075 this-&gt;<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o8">ZoneName</a> = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o8">ZoneName</a>;
+00076 this-&gt;PosX = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o3">PosX</a>;
+00077 this-&gt;PosY = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o4">PosY</a>;
+00078 this-&gt;Rot = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o5">Rot</a>;
+00079 this-&gt;<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o2">Flip</a> = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o2">Flip</a>;
+00080 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a11">uint32</a> i = 0; i &lt; 4; ++i)
+00081 {
+00082 this-&gt;<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o7">SharingMatNames</a>[i] = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o7">SharingMatNames</a>[i];
+00083 this-&gt;<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o6">SharingCutEdges</a>[i] = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o6">SharingCutEdges</a>[i];
+00084 }
+00085 <span class="keywordflow">return</span> *<span class="keyword">this</span>;
+00086 }
+00087
+00088
+00089 <span class="comment">// ***************************************************************************</span>
+00090 <span class="comment">// SZoneUnit2</span>
+00091 <span class="comment">// ***************************************************************************</span>
+00092
+00093 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00094"></a><a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2a3">00094</a> CZoneRegion::SZoneUnit2::SZoneUnit2()
+00095 {
+00096 <a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o1">DateLow</a> = 0;
+00097 <a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o0">DateHigh</a> = 0;
+00098 }
+00099
+00100 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00101"></a><a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2a2">00101</a> <span class="keywordtype">void</span> CZoneRegion::SZoneUnit2::serial (<a class="code" href="a02270.html">NLMISC::IStream</a> &amp;f)
+00102 {
+00103 <span class="comment">/*sint32 version =*/</span> f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion</a> (0);
+00104
+00105 SZoneUnit::serial (f);
+00106 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (<a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o1">DateLow</a>, <span class="stringliteral">"LOW"</span>);
+00107 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (<a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o0">DateHigh</a>, <span class="stringliteral">"HIGH"</span>);
+00108 }
+00109
+00110 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00111"></a><a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2a1">00111</a> <span class="keyword">const</span> <a class="code" href="a03759.html">CZoneRegion::SZoneUnit2</a>&amp; CZoneRegion::SZoneUnit2::operator=(<span class="keyword">const</span> <a class="code" href="a03759.html">CZoneRegion::SZoneUnit2</a>&amp;zu)
+00112 {
+00113 this-&gt;ZoneName = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o8">ZoneName</a>;
+00114 this-&gt;PosX = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o3">PosX</a>;
+00115 this-&gt;PosY = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o4">PosY</a>;
+00116 this-&gt;Rot = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o5">Rot</a>;
+00117 this-&gt;Flip = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o2">Flip</a>;
+00118 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a11">uint32</a> i = 0; i &lt; 4; ++i)
+00119 {
+00120 this-&gt;SharingMatNames[i] = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o7">SharingMatNames</a>[i];
+00121 this-&gt;SharingCutEdges[i] = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o6">SharingCutEdges</a>[i];
+00122 }
+00123 this-&gt;<a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o1">DateLow</a> = zu.<a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o1">DateLow</a>;
+00124 this-&gt;<a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o0">DateHigh</a> = zu.<a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o0">DateHigh</a>;
+00125 <span class="keywordflow">return</span> *<span class="keyword">this</span>;
+00126 }
+00127
+00128 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00129"></a><a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2a0">00129</a> <span class="keyword">const</span> <a class="code" href="a03759.html">CZoneRegion::SZoneUnit2</a>&amp; CZoneRegion::SZoneUnit2::operator=(<span class="keyword">const</span> <a class="code" href="a03758.html">CZoneRegion::SZoneUnit</a>&amp;zu)
+00130 {
+00131 this-&gt;ZoneName = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o8">ZoneName</a>;
+00132 this-&gt;PosX = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o3">PosX</a>;
+00133 this-&gt;PosY = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o4">PosY</a>;
+00134 this-&gt;Rot = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o5">Rot</a>;
+00135 this-&gt;Flip = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o2">Flip</a>;
+00136 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a11">uint32</a> i = 0; i &lt; 4; ++i)
+00137 {
+00138 this-&gt;SharingMatNames[i] = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o7">SharingMatNames</a>[i];
+00139 this-&gt;SharingCutEdges[i] = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o6">SharingCutEdges</a>[i];
+00140 }
+00141 this-&gt;<a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o1">DateLow</a> = 0;
+00142 this-&gt;<a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o0">DateHigh</a> = 0;
+00143 <span class="keywordflow">return</span> *<span class="keyword">this</span>;
+00144 }
+00145
+00146 <span class="comment">// ***************************************************************************</span>
+00147 <span class="comment">// CZoneRegion</span>
+00148 <span class="comment">// ***************************************************************************</span>
+00149
+00150 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00151"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona1">00151</a> CZoneRegion::CZoneRegion()
+00152 {
+00153 <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiont0">_StringOutOfBound</a> = <a class="code" href="a05350.html#a0">STRING_OUT_OF_BOUND</a>;
+00154 <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a> = <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a> = 0;
+00155 <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a> = <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a> = -1;
+00156 }
+00157
+00158 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00159"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona16">00159</a> <span class="keywordtype">void</span> CZoneRegion::serial (<a class="code" href="a02270.html">NLMISC::IStream</a> &amp;f)
+00160 {
+00161 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"LAND"</span>);
+00162
+00163 <a class="code" href="a04558.html#a10">sint32</a> version = f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion</a> (1);
+00164 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_0">serialCheck</a> ((<a class="code" href="a04558.html#a11">uint32</a>)'DNAL');
+00165
+00166 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>, <span class="stringliteral">"MIN_X"</span>);
+00167 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>, <span class="stringliteral">"MIN_Y"</span>);
+00168 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>, <span class="stringliteral">"MAX_X"</span>);
+00169 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial</a> (<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>, <span class="stringliteral">"MAX_Y"</span>);
+00170
+00171 <span class="keywordflow">if</span> (version == 1)
+00172 {
+00173 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a> (_Zones);
+00174 }
+00175
+00176 <span class="keywordflow">if</span> (version == 0)
+00177 {
+00178 std::vector&lt;SZoneUnit&gt; vZonesTmp;
+00179 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a> (vZonesTmp);
+00180 _Zones.resize (vZonesTmp.size());
+00181 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a11">uint32</a> i = 0; i &lt; vZonesTmp.size(); ++i)
+00182 _Zones[i] = vZonesTmp[i];
+00183 }
+00184
+00185 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00186 }
+00187
+00188 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00189"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona9">00189</a> <span class="keyword">const</span> string &amp;<a class="code" href="a05345.html#a33">CZoneRegion::getName</a> (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>)<span class="keyword"> const</span>
+00190 <span class="keyword"></span>{
+00191 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00192 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00193 {
+00194 <span class="keywordflow">return</span> <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiont0">_StringOutOfBound</a>;
+00195 }
+00196 <span class="keywordflow">else</span>
+00197 {
+00198 <span class="keywordflow">return</span> _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].ZoneName;
+00199 }
+00200 }
+00201
+00202 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00203"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona10">00203</a> <a class="code" href="a04558.html#a7">uint8</a> CZoneRegion::getPosX (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>)<span class="keyword"> const</span>
+00204 <span class="keyword"></span>{
+00205 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00206 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00207 {
+00208 <span class="keywordflow">return</span> 0;
+00209 }
+00210 <span class="keywordflow">else</span>
+00211 {
+00212 <span class="keywordflow">return</span> _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].PosX;
+00213 }
+00214 }
+00215
+00216 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00217"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona11">00217</a> <a class="code" href="a04558.html#a7">uint8</a> CZoneRegion::getPosY (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>)<span class="keyword"> const</span>
+00218 <span class="keyword"></span>{
+00219 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00220 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00221 {
+00222 <span class="keywordflow">return</span> 0;
+00223 }
+00224 <span class="keywordflow">else</span>
+00225 {
+00226 <span class="keywordflow">return</span> _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].PosY;
+00227 }
+00228 }
+00229
+00230 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00231"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona12">00231</a> <a class="code" href="a04558.html#a7">uint8</a> CZoneRegion::getRot (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>)<span class="keyword"> const</span>
+00232 <span class="keyword"></span>{
+00233 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00234 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00235 {
+00236 <span class="keywordflow">return</span> 0;
+00237 }
+00238 <span class="keywordflow">else</span>
+00239 {
+00240 <span class="keywordflow">return</span> _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].Rot;
+00241 }
+00242 }
+00243
+00244 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00245"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona4">00245</a> <a class="code" href="a04558.html#a7">uint8</a> CZoneRegion::getFlip (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>)<span class="keyword"> const</span>
+00246 <span class="keyword"></span>{
+00247 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00248 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00249 {
+00250 <span class="keywordflow">return</span> 0;
+00251 }
+00252 <span class="keywordflow">else</span>
+00253 {
+00254 <span class="keywordflow">return</span> _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].Flip;
+00255 }
+00256 }
+00257
+00258 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00259"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona2">00259</a> <a class="code" href="a04558.html#a7">uint8</a> CZoneRegion::getCutEdge (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <a class="code" href="a04558.html#a7">uint8</a> pos)<span class="keyword"> const</span>
+00260 <span class="keyword"></span>{
+00261 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00262 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00263 {
+00264 <span class="keywordflow">return</span> 0;
+00265 }
+00266 <span class="keywordflow">else</span>
+00267 {
+00268 <span class="keywordflow">return</span> _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].SharingCutEdges[pos];
+00269 }
+00270 }
+00271
+00272 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00273"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona3">00273</a> <a class="code" href="a04558.html#a11">uint32</a> CZoneRegion::getDate (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <a class="code" href="a04558.html#a7">uint8</a> lowOrHigh) <span class="keyword">const</span> <span class="comment">// lowOrHigh == 0 -&gt; low</span>
+00274 {
+00275 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; _MaxX) ||
+00276 (y &lt; _MinY) || (y &gt; _MaxY))
+00277 {
+00278 <span class="keywordflow">return</span> 0;
+00279 }
+00280 <span class="keywordflow">else</span>
+00281 {
+00282 <span class="keywordflow">if</span> (lowOrHigh == 0)
+00283 <span class="keywordflow">return</span> _Zones[(<a class="code" href="a04223.html#a572">x</a>-_MinX)+(<a class="code" href="a04223.html#a573">y</a>-_MinY)*(1+_MaxX-_MinX)].DateLow;
+00284 <span class="keywordflow">else</span>
+00285 <span class="keywordflow">return</span> _Zones[(<a class="code" href="a04223.html#a572">x</a>-_MinX)+(<a class="code" href="a04223.html#a573">y</a>-_MinY)*(1+_MaxX-_MinX)].DateHigh;
+00286 }
+00287 }
+00288
+00289 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00290"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona15">00290</a> <span class="keywordtype">void</span> CZoneRegion::resize (<a class="code" href="a04558.html#a10">sint32</a> newMinX, <a class="code" href="a04558.html#a10">sint32</a> newMaxX, <a class="code" href="a04558.html#a10">sint32</a> newMinY, <a class="code" href="a04558.html#a10">sint32</a> newMaxY)
+00291 {
+00292 <a class="code" href="a04558.html#a10">sint32</a> i, j;
+00293 vector&lt;SZoneUnit2&gt; newZones;
+00294 <a class="code" href="a03759.html">SZoneUnit2</a> zuTmp;
+00295
+00296 newZones.resize ((1+newMaxX-newMinX)*(1+newMaxY-newMinY));
+00297 <a class="code" href="a04558.html#a10">sint32</a> newStride = 1+newMaxX-newMinX;
+00298 <a class="code" href="a04558.html#a10">sint32</a> Stride = 1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>;
+00299 <span class="keywordflow">for</span> (j = newMinY; j &lt;= newMaxY; ++j)
+00300 <span class="keywordflow">for</span> (i = newMinX; i &lt;= newMaxX; ++i)
+00301 {
+00302 <span class="keywordflow">if</span> ((i &gt;= <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)&amp;&amp;(i &lt;= _MaxX)&amp;&amp;(j &gt;= <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)&amp;&amp;(j &lt;= <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00303 {
+00304 newZones[(i-newMinX)+(j-newMinY)*newStride] = _Zones[(i-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(j-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*Stride];
+00305 }
+00306 <span class="keywordflow">else</span>
+00307 {
+00308 newZones[(i-newMinX)+(j-newMinY)*newStride] = zuTmp;
+00309 }
+00310 }
+00311 <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a> = newMinX; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a> = newMaxX;
+00312 <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a> = newMinY; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a> = newMaxY;
+00313 _Zones = newZones;
+00314 }
+00315
+00316 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00317"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona0">00317</a> <span class="keywordtype">void</span> CZoneRegion::basicSet (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <a class="code" href="a04558.html#a10">sint32</a> PosX, <a class="code" href="a04558.html#a10">sint32</a> PosY, <span class="keyword">const</span> std::string &amp;ZoneName)
+00318 {
+00319 <span class="comment">// Do we need to resize ?</span>
+00320 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00321 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00322 {
+00323 <a class="code" href="a04558.html#a10">sint32</a> newMinX = (<a class="code" href="a04223.html#a572">x</a>&lt;<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>?<a class="code" href="a04223.html#a572">x</a>:<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>), newMinY = (<a class="code" href="a04223.html#a573">y</a>&lt;<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>?<a class="code" href="a04223.html#a573">y</a>:<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>);
+00324 <a class="code" href="a04558.html#a10">sint32</a> newMaxX = (<a class="code" href="a04223.html#a572">x</a>&gt;<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>?<a class="code" href="a04223.html#a572">x</a>:<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>), newMaxY = (<a class="code" href="a04223.html#a573">y</a>&gt;<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>?<a class="code" href="a04223.html#a573">y</a>:<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>);
+00325
+00326 <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona15">resize</a> (newMinX, newMaxX, newMinY, newMaxY);
+00327 }
+00328 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a582">stride</a> = (1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>); <span class="comment">// Nb to go to next line</span>
+00329
+00330 _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*<a class="code" href="a04223.html#a582">stride</a>].ZoneName = ZoneName;
+00331 _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*<a class="code" href="a04223.html#a582">stride</a>].PosX = (<a class="code" href="a04558.html#a7">uint8</a>)PosX;
+00332 _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*<a class="code" href="a04223.html#a582">stride</a>].PosY = (<a class="code" href="a04558.html#a7">uint8</a>)PosY;
+00333 }
+00334
+00335 <span class="comment">// ---------------------------------------------------------------------------</span>
+<a name="l00336"></a><a class="code" href="a03897.html#NLLIGO_1_1SPiecea0">00336</a> <span class="keywordtype">void</span> SPiece::rotFlip (<a class="code" href="a04558.html#a7">uint8</a> rot, <a class="code" href="a04558.html#a7">uint8</a> flip)
+00337 {
+00338 <a class="code" href="a04558.html#a7">uint8</a> nTmp;
+00339 <a class="code" href="a04558.html#a10">sint32</a> i, j;
+00340
+00341 <span class="keywordflow">if</span> (flip == 1)
+00342 {
+00343 <span class="keywordflow">for</span> (j = 0; j &lt; <a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>; ++j)
+00344 <span class="keywordflow">for</span> (i = 0; i &lt; (<a class="code" href="a04223.html#a575">w</a>/2); ++i)
+00345 {
+00346 nTmp = <a class="code" href="a03897.html#NLLIGO_1_1SPieceo1">Tab</a>[i+j*<a class="code" href="a04223.html#a575">w</a>];
+00347 Tab[i+j*<a class="code" href="a04223.html#a575">w</a>] = Tab[(<a class="code" href="a04223.html#a575">w</a>-1-i)+j*<a class="code" href="a04223.html#a575">w</a>];
+00348 Tab[(<a class="code" href="a04223.html#a575">w</a>-1-i)+j*<a class="code" href="a04223.html#a575">w</a>] = nTmp;
+00349 }
+00350 }
+00351
+00352 <span class="keywordflow">if</span> (rot == 1)
+00353 {
+00354 vector&lt;uint8&gt; TabDest;
+00355 TabDest.resize (<a class="code" href="a03897.html#NLLIGO_1_1SPieceo1">Tab</a>.size());
+00356 <span class="keywordflow">for</span> (j = 0; j &lt; <a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>; ++j)
+00357 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04223.html#a575">w</a>; ++i)
+00358 TabDest[j+i*h] = <a class="code" href="a03897.html#NLLIGO_1_1SPieceo1">Tab</a>[i+(h-1-j)*<a class="code" href="a04223.html#a575">w</a>];
+00359 Tab = TabDest;
+00360 i = <a class="code" href="a04223.html#a575">w</a>;
+00361 <a class="code" href="a04223.html#a575">w</a> = h;
+00362 h = i;
+00363 }
+00364
+00365 <span class="keywordflow">if</span> (rot == 2)
+00366 {
+00367 <span class="keywordflow">for</span> (j = 0; j &lt; (<a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>/2); ++j)
+00368 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04223.html#a575">w</a>; ++i)
+00369 {
+00370 nTmp = <a class="code" href="a03897.html#NLLIGO_1_1SPieceo1">Tab</a>[i+j*<a class="code" href="a04223.html#a575">w</a>];
+00371 Tab[i+j*<a class="code" href="a04223.html#a575">w</a>] = Tab[(<a class="code" href="a04223.html#a575">w</a>-1-i)+(<a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>-1-j)*<a class="code" href="a04223.html#a575">w</a>];
+00372 Tab[(<a class="code" href="a04223.html#a575">w</a>-1-i)+(<a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>-1-j)*<a class="code" href="a04223.html#a575">w</a>] = nTmp;
+00373 }
+00374 <span class="keywordflow">if</span> ((<a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>/2)*2 != <a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>)
+00375 {
+00376 j = (<a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>/2);
+00377 <span class="keywordflow">for</span> (i = 0; i &lt; (<a class="code" href="a04223.html#a575">w</a>/2); ++i)
+00378 {
+00379 nTmp = <a class="code" href="a03897.html#NLLIGO_1_1SPieceo1">Tab</a>[i+j*<a class="code" href="a04223.html#a575">w</a>];
+00380 Tab[i+j*<a class="code" href="a04223.html#a575">w</a>] = Tab[(<a class="code" href="a04223.html#a575">w</a>-1-i)+j*<a class="code" href="a04223.html#a575">w</a>];
+00381 Tab[(<a class="code" href="a04223.html#a575">w</a>-1-i)+j*<a class="code" href="a04223.html#a575">w</a>] = nTmp;
+00382 }
+00383 }
+00384 }
+00385
+00386 <span class="keywordflow">if</span> (rot == 3)
+00387 {
+00388 vector&lt;uint8&gt; TabDest;
+00389 TabDest.resize (<a class="code" href="a03897.html#NLLIGO_1_1SPieceo1">Tab</a>.size());
+00390 <span class="keywordflow">for</span> (j = 0; j &lt; <a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>; ++j)
+00391 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04223.html#a575">w</a>; ++i)
+00392 TabDest[j+i*h] = <a class="code" href="a03897.html#NLLIGO_1_1SPieceo1">Tab</a>[<a class="code" href="a04223.html#a575">w</a>-1-i+j*<a class="code" href="a04223.html#a575">w</a>];
+00393 Tab = TabDest;
+00394 i = <a class="code" href="a04223.html#a575">w</a>;
+00395 <a class="code" href="a04223.html#a575">w</a> = h;
+00396 h = i;
+00397 }
+00398 }
+00399
+00400 <span class="comment">// ***************************************************************************</span>
+00401
+<a name="l00402"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona14">00402</a> std::string CZoneRegion::getSharingMatNames (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <a class="code" href="a04558.html#a15">uint</a> edge)
+00403 {
+00404 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00405 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00406 {
+00407 <span class="keywordflow">return</span> <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiont0">_StringOutOfBound</a>;
+00408 }
+00409 <span class="keywordflow">else</span>
+00410 {
+00411 <span class="keywordflow">return</span> _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].SharingMatNames[edge];
+00412 }
+00413 }
+00414
+00415 <span class="comment">// ***************************************************************************</span>
+00416
+<a name="l00417"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona13">00417</a> <a class="code" href="a04558.html#a7">uint8</a> CZoneRegion::getSharingCutEdges (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <a class="code" href="a04558.html#a15">uint</a> edge)
+00418 {
+00419 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00420 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00421 {
+00422 <span class="keywordflow">return</span> 0xff;
+00423 }
+00424 <span class="keywordflow">else</span>
+00425 {
+00426 <span class="keywordflow">return</span> _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].SharingCutEdges[edge];
+00427 }
+00428 }
+00429
+00430 <span class="comment">// ***************************************************************************</span>
+00431
+<a name="l00432"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona22">00432</a> <span class="keywordtype">bool</span> CZoneRegion::setName (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <span class="keyword">const</span> std::string &amp;newValue)
+00433 {
+00434 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00435 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00436 {
+00437 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00438 }
+00439 <span class="keywordflow">else</span>
+00440 {
+00441 _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].ZoneName = newValue;
+00442 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00443 }
+00444 }
+00445
+00446 <span class="comment">// ***************************************************************************</span>
+00447
+<a name="l00448"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona23">00448</a> <span class="keywordtype">bool</span> CZoneRegion::setPosX (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <a class="code" href="a04558.html#a7">uint8</a> newValue)
+00449 {
+00450 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00451 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00452 {
+00453 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00454 }
+00455 <span class="keywordflow">else</span>
+00456 {
+00457 _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].PosX = newValue;
+00458 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00459 }
+00460 }
+00461
+00462 <span class="comment">// ***************************************************************************</span>
+00463
+<a name="l00464"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona24">00464</a> <span class="keywordtype">bool</span> CZoneRegion::setPosY (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <a class="code" href="a04558.html#a7">uint8</a> newValue)
+00465 {
+00466 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00467 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00468 {
+00469 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00470 }
+00471 <span class="keywordflow">else</span>
+00472 {
+00473 _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].PosY = newValue;
+00474 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00475 }
+00476 }
+00477
+00478 <span class="comment">// ***************************************************************************</span>
+00479
+<a name="l00480"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona25">00480</a> <span class="keywordtype">bool</span> CZoneRegion::setRot (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <a class="code" href="a04558.html#a7">uint8</a> newValue)
+00481 {
+00482 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00483 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00484 {
+00485 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00486 }
+00487 <span class="keywordflow">else</span>
+00488 {
+00489 _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].Rot = newValue;
+00490 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00491 }
+00492 }
+00493
+00494 <span class="comment">// ***************************************************************************</span>
+00495
+<a name="l00496"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona17">00496</a> <span class="keywordtype">bool</span> CZoneRegion::setFlip (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <a class="code" href="a04558.html#a7">uint8</a> newValue)
+00497 {
+00498 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00499 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00500 {
+00501 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00502 }
+00503 <span class="keywordflow">else</span>
+00504 {
+00505 _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].Flip = newValue;
+00506 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00507 }
+00508 }
+00509
+00510 <span class="comment">// ***************************************************************************</span>
+00511
+<a name="l00512"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona27">00512</a> <span class="keywordtype">bool</span> CZoneRegion::setSharingMatNames (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <a class="code" href="a04558.html#a15">uint</a> edge, <span class="keyword">const</span> std::string &amp;newValue)
+00513 {
+00514 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00515 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00516 {
+00517 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00518 }
+00519 <span class="keywordflow">else</span>
+00520 {
+00521 _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].SharingMatNames[edge] = newValue;
+00522 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00523 }
+00524 }
+00525
+00526 <span class="comment">// ***************************************************************************</span>
+00527
+<a name="l00528"></a><a class="code" href="a03757.html#NLLIGO_1_1CZoneRegiona26">00528</a> <span class="keywordtype">bool</span> CZoneRegion::setSharingCutEdges (<a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a572">x</a>, <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a573">y</a>, <a class="code" href="a04558.html#a15">uint</a> edge, <a class="code" href="a04558.html#a7">uint8</a> newValue)
+00529 {
+00530 <span class="keywordflow">if</span> ((x &lt; _MinX) || (x &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) ||
+00531 (y &lt; _MinY) || (y &gt; <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp1">_MaxY</a>))
+00532 {
+00533 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00534 }
+00535 <span class="keywordflow">else</span>
+00536 {
+00537 _Zones[(<a class="code" href="a04223.html#a572">x</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)+(<a class="code" href="a04223.html#a573">y</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)*(1+<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>-<a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)].SharingCutEdges[edge] = newValue;
+00538 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00539 }
+00540 }
+00541
+00542 <span class="comment">// ***************************************************************************</span>
+00543
+00544
+00545 } <span class="comment">// namespace NLLIGO</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 06:42:08 2004 for NeL by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
+</a>1.3.6 </small></address>
+</body>
+</html>