geometry_8h-source.html
来自「仿真人工智能是指用人工的方法和技术」· HTML 代码 · 共 298 行 · 第 1/3 页
HTML
298 行
00226 <a class="code" href="classCircle.html#a0">Circle</a>( <a class="code" href="classVecPosition.html">VecPosition</a> pos, <font class="keywordtype">double</font> dR );00227 00228 <font class="keywordtype">void</font> <a class="code" href="classCircle.html#a2">show</a> ( ostream& os = cout );00229 00230 <font class="comment">// get and set methods</font>00231 <font class="keywordtype">bool</font> <a class="code" href="classCircle.html#a3">setCircle</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos, <font class="keywordtype">double</font> dR );00232 <font class="keywordtype">bool</font> <a class="code" href="classCircle.html#a4">setRadius</a> ( <font class="keywordtype">double</font> dR );00233 <font class="keywordtype">double</font> <a class="code" href="classCircle.html#a5">getRadius</a> ( );00234 <font class="keywordtype">bool</font> <a class="code" href="classCircle.html#a6">setCenter</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos );00235 <a class="code" href="classVecPosition.html">VecPosition</a> <a class="code" href="classCircle.html#a7">getCenter</a> ( );00236 <font class="keywordtype">double</font> <a class="code" href="classCircle.html#a8">getCircumference</a> ( );00237 <font class="keywordtype">double</font> <a class="code" href="classCircle.html#a9">getArea</a> ( );00238 00239 <font class="comment">// calculate intersection points and area with other circle</font>00240 <font class="keywordtype">bool</font> <a class="code" href="classCircle.html#a10">isInside</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos );00241 <font class="keywordtype">int</font> <a class="code" href="classCircle.html#a11">getIntersectionPoints</a> ( <a class="code" href="classCircle.html">Circle</a> c, <a class="code" href="classVecPosition.html">VecPosition</a> *p1, <a class="code" href="classVecPosition.html">VecPosition</a> *p2);00242 <font class="keywordtype">double</font> <a class="code" href="classCircle.html#a12">getIntersectionArea</a> ( <a class="code" href="classCircle.html">Circle</a> c );00243 00244 00245 } ;00246 00247 <font class="comment">/******************************************************************************/</font>00248 <font class="comment">/*********************** CLASS LINE *******************************************/</font>00249 <font class="comment">/******************************************************************************/</font>00250 <a name="l00254"></a><a class="code" href="classLine.html">00254</a> <font class="keyword">class </font><a class="code" href="classLine.html">Line</a>00255 {00256 <font class="comment">// a line is defined by the formula: ay + bx + c = 0</font><a name="l00257"></a><a class="code" href="classLine.html#o0">00257</a> <font class="keywordtype">double</font> <a class="code" href="classLine.html#o0">m_a</a>; <a name="l00258"></a><a class="code" href="classLine.html#o1">00258</a> <font class="keywordtype">double</font> <a class="code" href="classLine.html#o1">m_b</a>; <a name="l00259"></a><a class="code" href="classLine.html#o2">00259</a> <font class="keywordtype">double</font> <a class="code" href="classLine.html#o2">m_c</a>; 00261 <font class="keyword">public</font>:00262 <a class="code" href="classLine.html#a0">Line</a>( <font class="keywordtype">double</font> a, <font class="keywordtype">double</font> b, <font class="keywordtype">double</font> c );00263 00264 <font class="comment">// print methods</font>00265 <font class="keywordtype">void</font> <a class="code" href="classLine.html#a1">show</a>( ostream& os = cout );00266 <font class="keyword">friend</font> ostream& <a class="code" href="classLine.html#a15">operator << </a>(ostream & os, <a class="code" href="classLine.html">Line</a> l);00267 00268 <font class="comment">// get intersection points with this line</font>00269 <a class="code" href="classVecPosition.html">VecPosition</a> <a class="code" href="classLine.html#a2">getIntersection</a> ( <a class="code" href="classLine.html">Line</a> line );00270 <font class="keywordtype">int</font> <a class="code" href="classLine.html#a3">getCircleIntersectionPoints</a>( <a class="code" href="classCircle.html">Circle</a> circle,00271 <a class="code" href="classVecPosition.html">VecPosition</a> *posSolution1,00272 <a class="code" href="classVecPosition.html">VecPosition</a> *posSolution2 );00273 <a class="code" href="classLine.html">Line</a> <a class="code" href="classLine.html#a4">getTangentLine</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos );00274 <a class="code" href="classVecPosition.html">VecPosition</a> <a class="code" href="classLine.html#a5">getPointOnLineClosestTo</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos );00275 <font class="keywordtype">double</font> <a class="code" href="classLine.html#a6">getDistanceWithPoint</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos );00276 <font class="keywordtype">bool</font> <a class="code" href="classLine.html#a7">isInBetween</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos,00277 <a class="code" href="classVecPosition.html">VecPosition</a> point1,00278 <a class="code" href="classVecPosition.html">VecPosition</a> point2 );00279 00280 <font class="comment">// calculate associated variables in the line</font>00281 <font class="keywordtype">double</font> <a class="code" href="classLine.html#a8">getYGivenX</a> ( <font class="keywordtype">double</font> x );00282 <font class="keywordtype">double</font> <a class="code" href="classLine.html#a9">getXGivenY</a> ( <font class="keywordtype">double</font> y );00283 <font class="keywordtype">double</font> <a class="code" href="classLine.html#a10">getACoefficient</a> ( ) <font class="keyword">const</font>;00284 <font class="keywordtype">double</font> <a class="code" href="classLine.html#a11">getBCoefficient</a> ( ) <font class="keyword">const</font>;00285 <font class="keywordtype">double</font> <a class="code" href="classLine.html#a12">getCCoefficient</a> ( ) <font class="keyword">const</font>;00286 00287 <font class="comment">// static methods to make a line using an easier representation.</font>00288 <font class="keyword">static</font> <a class="code" href="classLine.html">Line</a> <a class="code" href="classLine.html#d0">makeLineFromTwoPoints</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos1,00289 <a class="code" href="classVecPosition.html">VecPosition</a> pos2 );00290 <font class="keyword">static</font> <a class="code" href="classLine.html">Line</a> <a class="code" href="classLine.html#d1">makeLineFromPositionAndAngle</a>( <a class="code" href="classVecPosition.html">VecPosition</a> vec,00291 <a class="code" href="Geometry_8h.html#a2">AngDeg</a> angle );00292 };00293 00294 <font class="comment">/******************************************************************************/</font>00295 <font class="comment">/********************** CLASS RECTANGLE ***************************************/</font>00296 <font class="comment">/******************************************************************************/</font>00297 <a name="l00300"></a><a class="code" href="classRectangle.html">00300</a> <font class="keyword">class </font><a class="code" href="classRectangle.html">Rectangle</a>00301 {<a name="l00302"></a><a class="code" href="classRectangle.html#o0">00302</a> <a class="code" href="classVecPosition.html">VecPosition</a> <a class="code" href="classRectangle.html#o0">m_posLeftTop</a>; <a name="l00303"></a><a class="code" href="classRectangle.html#o1">00303</a> <a class="code" href="classVecPosition.html">VecPosition</a> <a class="code" href="classRectangle.html#o1">m_posRightBottom</a>; 00305 <font class="keyword">public</font>:00306 <a class="code" href="classRectangle.html#a0">Rectangle</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos, <a class="code" href="classVecPosition.html">VecPosition</a> pos2 );00307 00308 <font class="keywordtype">void</font> <a class="code" href="classRectangle.html#a1">show</a> ( ostream& os = cout );00309 00310 <font class="comment">// checks whether point lies inside the rectangle</font>00311 <font class="keywordtype">bool</font> <a class="code" href="classRectangle.html#a2">isInside</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos );00312 00313 <font class="comment">// standard get and set methosd</font>00314 <font class="keywordtype">void</font> <a class="code" href="classRectangle.html#a3">setRectanglePoints</a>( <a class="code" href="classVecPosition.html">VecPosition</a> pos1,00315 <a class="code" href="classVecPosition.html">VecPosition</a> pos2 );00316 <font class="keywordtype">bool</font> <a class="code" href="classRectangle.html#a4">setPosLeftTop</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos );00317 <a class="code" href="classVecPosition.html">VecPosition</a> <a class="code" href="classRectangle.html#a5">getPosLeftTop</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos );00318 <font class="keywordtype">bool</font> <a class="code" href="classRectangle.html#a6">setPosRightBottom</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos );00319 <a class="code" href="classVecPosition.html">VecPosition</a> <a class="code" href="classRectangle.html#a7">getPosRightBottom</a> ( <a class="code" href="classVecPosition.html">VecPosition</a> pos );00320 };00321 00322 <font class="preprocessor">#endif</font></font></pre></div><hr><address><small>Generated on Thu Mar 7 00:37:42 2002 for UvA Trilearn 2001 by<a href="http://www.doxygen.org/index.html"><img src="doxygen.gif" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.12 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>, © 1997-2001</small></address></body></html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?