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&amp; 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&amp; os = cout );00266   <font class="keyword">friend</font>      ostream&amp; <a class="code" href="classLine.html#a15">operator &lt;&lt; </a>(ostream &amp; 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&amp; 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>, &copy;&nbsp;1997-2001</small></address></body></html>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?