diff options
Diffstat (limited to 'docs/doxygen/nel/a06772.html')
-rw-r--r-- | docs/doxygen/nel/a06772.html | 554 |
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 Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <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> &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 < 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>& CZoneRegion::SZoneUnit::operator=(<span class="keyword">const</span> <a class="code" href="a03758.html">CZoneRegion::SZoneUnit</a>&zu) +00074 { +00075 this-><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->PosX = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o3">PosX</a>; +00077 this->PosY = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o4">PosY</a>; +00078 this->Rot = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o5">Rot</a>; +00079 this-><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 < 4; ++i) +00081 { +00082 this-><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-><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> &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>& CZoneRegion::SZoneUnit2::operator=(<span class="keyword">const</span> <a class="code" href="a03759.html">CZoneRegion::SZoneUnit2</a>&zu) +00112 { +00113 this->ZoneName = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o8">ZoneName</a>; +00114 this->PosX = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o3">PosX</a>; +00115 this->PosY = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o4">PosY</a>; +00116 this->Rot = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o5">Rot</a>; +00117 this->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 < 4; ++i) +00119 { +00120 this->SharingMatNames[i] = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o7">SharingMatNames</a>[i]; +00121 this->SharingCutEdges[i] = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o6">SharingCutEdges</a>[i]; +00122 } +00123 this-><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-><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>& CZoneRegion::SZoneUnit2::operator=(<span class="keyword">const</span> <a class="code" href="a03758.html">CZoneRegion::SZoneUnit</a>&zu) +00130 { +00131 this->ZoneName = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o8">ZoneName</a>; +00132 this->PosX = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o3">PosX</a>; +00133 this->PosY = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o4">PosY</a>; +00134 this->Rot = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o5">Rot</a>; +00135 this->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 < 4; ++i) +00137 { +00138 this->SharingMatNames[i] = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o7">SharingMatNames</a>[i]; +00139 this->SharingCutEdges[i] = zu.<a class="code" href="a03758.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o6">SharingCutEdges</a>[i]; +00140 } +00141 this-><a class="code" href="a03759.html#NLLIGO_1_1CZoneRegion_1_1SZoneUnit2o1">DateLow</a> = 0; +00142 this-><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> &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<SZoneUnit> 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 < 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 &<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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00192 (y < _MinY) || (y > <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00206 (y < _MinY) || (y > <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00220 (y < _MinY) || (y > <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00234 (y < _MinY) || (y > <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00248 (y < _MinY) || (y > <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00262 (y < _MinY) || (y > <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 -> low</span> +00274 { +00275 <span class="keywordflow">if</span> ((x < _MinX) || (x > _MaxX) || +00276 (y < _MinY) || (y > _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<SZoneUnit2> 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 <= newMaxY; ++j) +00300 <span class="keywordflow">for</span> (i = newMinX; i <= newMaxX; ++i) +00301 { +00302 <span class="keywordflow">if</span> ((i >= <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp2">_MinX</a>)&&(i <= _MaxX)&&(j >= <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp3">_MinY</a>)&&(j <= <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 &ZoneName) +00318 { +00319 <span class="comment">// Do we need to resize ?</span> +00320 <span class="keywordflow">if</span> ((x < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00321 (y < _MinY) || (y > <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><<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><<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>><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>><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 < <a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>; ++j) +00344 <span class="keywordflow">for</span> (i = 0; i < (<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<uint8> 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 < <a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>; ++j) +00357 <span class="keywordflow">for</span> (i = 0; i < <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 < (<a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>/2); ++j) +00368 <span class="keywordflow">for</span> (i = 0; i < <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 < (<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<uint8> 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 < <a class="code" href="a03897.html#NLLIGO_1_1SPieceo0">h</a>; ++j) +00391 <span class="keywordflow">for</span> (i = 0; i < <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00405 (y < _MinY) || (y > <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00420 (y < _MinY) || (y > <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 &newValue) +00433 { +00434 <span class="keywordflow">if</span> ((x < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00435 (y < _MinY) || (y > <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00451 (y < _MinY) || (y > <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00467 (y < _MinY) || (y > <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00483 (y < _MinY) || (y > <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00499 (y < _MinY) || (y > <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 &newValue) +00513 { +00514 <span class="keywordflow">if</span> ((x < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00515 (y < _MinY) || (y > <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 < _MinX) || (x > <a class="code" href="a03757.html#NLLIGO_1_1CZoneRegionp0">_MaxX</a>) || +00531 (y < _MinY) || (y > <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> |