Newer
Older
ecologia / doc / javadoc / model / Herbivore.html
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <!-- NewPage -->
  3. <html lang="en">
  4. <head>
  5. <!-- Generated by javadoc (1.8.0_111) on Mon Dec 19 20:43:55 CET 2016 -->
  6. <title>Herbivore</title>
  7. <meta name="date" content="2016-12-19">
  8. <link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
  9. <script type="text/javascript" src="../script.js"></script>
  10. </head>
  11. <body>
  12. <script type="text/javascript"><!--
  13. try {
  14. if (location.href.indexOf('is-external=true') == -1) {
  15. parent.document.title="Herbivore";
  16. }
  17. }
  18. catch(err) {
  19. }
  20. //-->
  21. var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
  22. var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
  23. var altColor = "altColor";
  24. var rowColor = "rowColor";
  25. var tableTab = "tableTab";
  26. var activeTableTab = "activeTableTab";
  27. </script>
  28. <noscript>
  29. <div>JavaScript is disabled on your browser.</div>
  30. </noscript>
  31. <!-- ========= START OF TOP NAVBAR ======= -->
  32. <div class="topNav"><a name="navbar.top">
  33. <!-- -->
  34. </a>
  35. <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
  36. <a name="navbar.top.firstrow">
  37. <!-- -->
  38. </a>
  39. <ul class="navList" title="Navigation">
  40. <li><a href="../overview-summary.html">Overview</a></li>
  41. <li><a href="package-summary.html">Package</a></li>
  42. <li class="navBarCell1Rev">Class</li>
  43. <li><a href="package-tree.html">Tree</a></li>
  44. <li><a href="../deprecated-list.html">Deprecated</a></li>
  45. <li><a href="../index-all.html">Index</a></li>
  46. <li><a href="../help-doc.html">Help</a></li>
  47. </ul>
  48. <div class="aboutLanguage">Ecologia</div>
  49. </div>
  50. <div class="subNav">
  51. <ul class="navList">
  52. <li><a href="../model/Genome.html" title="class in model"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
  53. <li><a href="../model/MapField.html" title="class in model"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
  54. </ul>
  55. <ul class="navList">
  56. <li><a href="../index.html?model/Herbivore.html" target="_top">Frames</a></li>
  57. <li><a href="Herbivore.html" target="_top">No&nbsp;Frames</a></li>
  58. </ul>
  59. <ul class="navList" id="allclasses_navbar_top">
  60. <li><a href="../allclasses-noframe.html">All&nbsp;Classes</a></li>
  61. </ul>
  62. <div>
  63. <script type="text/javascript"><!--
  64. allClassesLink = document.getElementById("allclasses_navbar_top");
  65. if(window==top) {
  66. allClassesLink.style.display = "block";
  67. }
  68. else {
  69. allClassesLink.style.display = "none";
  70. }
  71. //-->
  72. </script>
  73. </div>
  74. <div>
  75. <ul class="subNavList">
  76. <li>Summary:&nbsp;</li>
  77. <li>Nested&nbsp;|&nbsp;</li>
  78. <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
  79. <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
  80. <li><a href="#method.summary">Method</a></li>
  81. </ul>
  82. <ul class="subNavList">
  83. <li>Detail:&nbsp;</li>
  84. <li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
  85. <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
  86. <li><a href="#method.detail">Method</a></li>
  87. </ul>
  88. </div>
  89. <a name="skip.navbar.top">
  90. <!-- -->
  91. </a></div>
  92. <!-- ========= END OF TOP NAVBAR ========= -->
  93. <!-- ======== START OF CLASS DATA ======== -->
  94. <div class="header">
  95. <div class="subTitle">model</div>
  96. <h2 title="Class Herbivore" class="title">Class Herbivore</h2>
  97. </div>
  98. <div class="contentContainer">
  99. <ul class="inheritance">
  100. <li>java.lang.Object</li>
  101. <li>
  102. <ul class="inheritance">
  103. <li><a href="../model/Animal.html" title="class in model">model.Animal</a></li>
  104. <li>
  105. <ul class="inheritance">
  106. <li>model.Herbivore</li>
  107. </ul>
  108. </li>
  109. </ul>
  110. </li>
  111. </ul>
  112. <div class="description">
  113. <ul class="blockList">
  114. <li class="blockList">
  115. <hr>
  116. <br>
  117. <pre>public class <span class="typeNameLabel">Herbivore</span>
  118. extends <a href="../model/Animal.html" title="class in model">Animal</a></pre>
  119. <div class="block">This class simulates a herbivore.</div>
  120. </li>
  121. </ul>
  122. </div>
  123. <div class="summary">
  124. <ul class="blockList">
  125. <li class="blockList">
  126. <!-- =========== FIELD SUMMARY =========== -->
  127. <ul class="blockList">
  128. <li class="blockList"><a name="field.summary">
  129. <!-- -->
  130. </a>
  131. <h3>Field Summary</h3>
  132. <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
  133. <caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
  134. <tr>
  135. <th class="colFirst" scope="col">Modifier and Type</th>
  136. <th class="colLast" scope="col">Field and Description</th>
  137. </tr>
  138. <tr class="altColor">
  139. <td class="colFirst"><code>static <a href="../model/Genome.html" title="class in model">Genome</a></code></td>
  140. <td class="colLast"><code><span class="memberNameLink"><a href="../model/Herbivore.html#defaultGenome">defaultGenome</a></span></code>&nbsp;</td>
  141. </tr>
  142. <tr class="rowColor">
  143. <td class="colFirst"><code>private int[]</code></td>
  144. <td class="colLast"><code><span class="memberNameLink"><a href="../model/Herbivore.html#predatorPosition">predatorPosition</a></span></code>&nbsp;</td>
  145. </tr>
  146. </table>
  147. <ul class="blockList">
  148. <li class="blockList"><a name="fields.inherited.from.class.model.Animal">
  149. <!-- -->
  150. </a>
  151. <h3>Fields inherited from class&nbsp;model.<a href="../model/Animal.html" title="class in model">Animal</a></h3>
  152. <code><a href="../model/Animal.html#age">age</a>, <a href="../model/Animal.html#attemptedMovesThisTurn">attemptedMovesThisTurn</a>, <a href="../model/Animal.html#energy">energy</a>, <a href="../model/Animal.html#exhaustion">exhaustion</a>, <a href="../model/Animal.html#generation">generation</a>, <a href="../model/Animal.html#genome">genome</a>, <a href="../model/Animal.html#gestationPeriod">gestationPeriod</a>, <a href="../model/Animal.html#IDnumber">IDnumber</a>, <a href="../model/Animal.html#isAlive">isAlive</a>, <a href="../model/Animal.html#movesThisTurn">movesThisTurn</a>, <a href="../model/Animal.html#offspring">offspring</a>, <a href="../model/Animal.html#parent">parent</a>, <a href="../model/Animal.html#random">random</a>, <a href="../model/Animal.html#type">type</a>, <a href="../model/Animal.html#x">x</a>, <a href="../model/Animal.html#y">y</a></code></li>
  153. </ul>
  154. </li>
  155. </ul>
  156. <!-- ======== CONSTRUCTOR SUMMARY ======== -->
  157. <ul class="blockList">
  158. <li class="blockList"><a name="constructor.summary">
  159. <!-- -->
  160. </a>
  161. <h3>Constructor Summary</h3>
  162. <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
  163. <caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
  164. <tr>
  165. <th class="colOne" scope="col">Constructor and Description</th>
  166. </tr>
  167. <tr class="altColor">
  168. <td class="colOne"><code><span class="memberNameLink"><a href="../model/Herbivore.html#Herbivore-int-model.Genome-int-int-int-int-int-">Herbivore</a></span>(int&nbsp;setID,
  169. <a href="../model/Genome.html" title="class in model">Genome</a>&nbsp;newGenome,
  170. int&nbsp;myGeneration,
  171. int&nbsp;setX,
  172. int&nbsp;setY,
  173. int&nbsp;setEnergy,
  174. int&nbsp;parentID)</code>
  175. <div class="block">The constructor.</div>
  176. </td>
  177. </tr>
  178. </table>
  179. </li>
  180. </ul>
  181. <!-- ========== METHOD SUMMARY =========== -->
  182. <ul class="blockList">
  183. <li class="blockList"><a name="method.summary">
  184. <!-- -->
  185. </a>
  186. <h3>Method Summary</h3>
  187. <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
  188. <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
  189. <tr>
  190. <th class="colFirst" scope="col">Modifier and Type</th>
  191. <th class="colLast" scope="col">Method and Description</th>
  192. </tr>
  193. <tr id="i0" class="altColor">
  194. <td class="colFirst"><code>private void</code></td>
  195. <td class="colLast"><code><span class="memberNameLink"><a href="../model/Herbivore.html#feed--">feed</a></span>()</code>
  196. <div class="block">Graze the current tile.</div>
  197. </td>
  198. </tr>
  199. <tr id="i1" class="rowColor">
  200. <td class="colFirst"><code>private void</code></td>
  201. <td class="colLast"><code><span class="memberNameLink"><a href="../model/Herbivore.html#flee--">flee</a></span>()</code>
  202. <div class="block">Run away from a predator</div>
  203. </td>
  204. </tr>
  205. <tr id="i2" class="altColor">
  206. <td class="colFirst"><code>private void</code></td>
  207. <td class="colLast"><code><span class="memberNameLink"><a href="../model/Herbivore.html#moveToNewGrazingGrounds--">moveToNewGrazingGrounds</a></span>()</code>
  208. <div class="block">Search the surrounding squares for one with a higher grass density and move there</div>
  209. </td>
  210. </tr>
  211. <tr id="i3" class="rowColor">
  212. <td class="colFirst"><code>void</code></td>
  213. <td class="colLast"><code><span class="memberNameLink"><a href="../model/Herbivore.html#update--">update</a></span>()</code>
  214. <div class="block">Each turn, the herbivore looks out for predators and flees if it finds any,
  215. or otherwise grazes, if need be moving to better feeding grounds</div>
  216. </td>
  217. </tr>
  218. </table>
  219. <ul class="blockList">
  220. <li class="blockList"><a name="methods.inherited.from.class.model.Animal">
  221. <!-- -->
  222. </a>
  223. <h3>Methods inherited from class&nbsp;model.<a href="../model/Animal.html" title="class in model">Animal</a></h3>
  224. <code><a href="../model/Animal.html#changeEnergy-int-">changeEnergy</a>, <a href="../model/Animal.html#closestSearch-controller.OccupantType-">closestSearch</a>, <a href="../model/Animal.html#exhaust-int-">exhaust</a>, <a href="../model/Animal.html#getAge--">getAge</a>, <a href="../model/Animal.html#getDirection-int-int-">getDirection</a>, <a href="../model/Animal.html#getDistance-int-int-">getDistance</a>, <a href="../model/Animal.html#getEnergy--">getEnergy</a>, <a href="../model/Animal.html#getGeneration--">getGeneration</a>, <a href="../model/Animal.html#getGenome--">getGenome</a>, <a href="../model/Animal.html#getID--">getID</a>, <a href="../model/Animal.html#getInfo--">getInfo</a>, <a href="../model/Animal.html#getNeighbouringField-model.Direction-">getNeighbouringField</a>, <a href="../model/Animal.html#getOffspring--">getOffspring</a>, <a href="../model/Animal.html#getParent--">getParent</a>, <a href="../model/Animal.html#getType--">getType</a>, <a href="../model/Animal.html#getX--">getX</a>, <a href="../model/Animal.html#getY--">getY</a>, <a href="../model/Animal.html#isAlive--">isAlive</a>, <a href="../model/Animal.html#mixedSearch-controller.OccupantType-">mixedSearch</a>, <a href="../model/Animal.html#move-model.Direction-">move</a>, <a href="../model/Animal.html#randomizedSearch-controller.OccupantType-">randomizedSearch</a>, <a href="../model/Animal.html#reproduce--">reproduce</a>, <a href="../model/Animal.html#search-controller.OccupantType-">search</a>, <a href="../model/Animal.html#setAge-int-">setAge</a>, <a href="../model/Animal.html#setEnergy-int-">setEnergy</a>, <a href="../model/Animal.html#setPosition-int-int-">setPosition</a></code></li>
  225. </ul>
  226. <ul class="blockList">
  227. <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
  228. <!-- -->
  229. </a>
  230. <h3>Methods inherited from class&nbsp;java.lang.Object</h3>
  231. <code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
  232. </ul>
  233. </li>
  234. </ul>
  235. </li>
  236. </ul>
  237. </div>
  238. <div class="details">
  239. <ul class="blockList">
  240. <li class="blockList">
  241. <!-- ============ FIELD DETAIL =========== -->
  242. <ul class="blockList">
  243. <li class="blockList"><a name="field.detail">
  244. <!-- -->
  245. </a>
  246. <h3>Field Detail</h3>
  247. <a name="predatorPosition">
  248. <!-- -->
  249. </a>
  250. <ul class="blockList">
  251. <li class="blockList">
  252. <h4>predatorPosition</h4>
  253. <pre>private&nbsp;int[] predatorPosition</pre>
  254. </li>
  255. </ul>
  256. <a name="defaultGenome">
  257. <!-- -->
  258. </a>
  259. <ul class="blockListLast">
  260. <li class="blockList">
  261. <h4>defaultGenome</h4>
  262. <pre>public static&nbsp;<a href="../model/Genome.html" title="class in model">Genome</a> defaultGenome</pre>
  263. </li>
  264. </ul>
  265. </li>
  266. </ul>
  267. <!-- ========= CONSTRUCTOR DETAIL ======== -->
  268. <ul class="blockList">
  269. <li class="blockList"><a name="constructor.detail">
  270. <!-- -->
  271. </a>
  272. <h3>Constructor Detail</h3>
  273. <a name="Herbivore-int-model.Genome-int-int-int-int-int-">
  274. <!-- -->
  275. </a>
  276. <ul class="blockListLast">
  277. <li class="blockList">
  278. <h4>Herbivore</h4>
  279. <pre>public&nbsp;Herbivore(int&nbsp;setID,
  280. <a href="../model/Genome.html" title="class in model">Genome</a>&nbsp;newGenome,
  281. int&nbsp;myGeneration,
  282. int&nbsp;setX,
  283. int&nbsp;setY,
  284. int&nbsp;setEnergy,
  285. int&nbsp;parentID)</pre>
  286. <div class="block">The constructor.</div>
  287. <dl>
  288. <dt><span class="paramLabel">Parameters:</span></dt>
  289. <dd><code>setID</code> - </dd>
  290. <dd><code>newGenome</code> - </dd>
  291. <dd><code>myGeneration</code> - </dd>
  292. <dd><code>setX</code> - </dd>
  293. <dd><code>setY</code> - </dd>
  294. <dd><code>setEnergy</code> - </dd>
  295. <dd><code>parentID</code> - </dd>
  296. </dl>
  297. </li>
  298. </ul>
  299. </li>
  300. </ul>
  301. <!-- ============ METHOD DETAIL ========== -->
  302. <ul class="blockList">
  303. <li class="blockList"><a name="method.detail">
  304. <!-- -->
  305. </a>
  306. <h3>Method Detail</h3>
  307. <a name="update--">
  308. <!-- -->
  309. </a>
  310. <ul class="blockList">
  311. <li class="blockList">
  312. <h4>update</h4>
  313. <pre>public&nbsp;void&nbsp;update()</pre>
  314. <div class="block">Each turn, the herbivore looks out for predators and flees if it finds any,
  315. or otherwise grazes, if need be moving to better feeding grounds</div>
  316. <dl>
  317. <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
  318. <dd><code><a href="../model/Animal.html#update--">update</a></code>&nbsp;in class&nbsp;<code><a href="../model/Animal.html" title="class in model">Animal</a></code></dd>
  319. </dl>
  320. </li>
  321. </ul>
  322. <a name="feed--">
  323. <!-- -->
  324. </a>
  325. <ul class="blockList">
  326. <li class="blockList">
  327. <h4>feed</h4>
  328. <pre>private&nbsp;void&nbsp;feed()</pre>
  329. <div class="block">Graze the current tile.
  330. XXX: here be magic numbers!</div>
  331. </li>
  332. </ul>
  333. <a name="moveToNewGrazingGrounds--">
  334. <!-- -->
  335. </a>
  336. <ul class="blockList">
  337. <li class="blockList">
  338. <h4>moveToNewGrazingGrounds</h4>
  339. <pre>private&nbsp;void&nbsp;moveToNewGrazingGrounds()</pre>
  340. <div class="block">Search the surrounding squares for one with a higher grass density and move there</div>
  341. </li>
  342. </ul>
  343. <a name="flee--">
  344. <!-- -->
  345. </a>
  346. <ul class="blockListLast">
  347. <li class="blockList">
  348. <h4>flee</h4>
  349. <pre>private&nbsp;void&nbsp;flee()</pre>
  350. <div class="block">Run away from a predator</div>
  351. </li>
  352. </ul>
  353. </li>
  354. </ul>
  355. </li>
  356. </ul>
  357. </div>
  358. </div>
  359. <!-- ========= END OF CLASS DATA ========= -->
  360. <!-- ======= START OF BOTTOM NAVBAR ====== -->
  361. <div class="bottomNav"><a name="navbar.bottom">
  362. <!-- -->
  363. </a>
  364. <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
  365. <a name="navbar.bottom.firstrow">
  366. <!-- -->
  367. </a>
  368. <ul class="navList" title="Navigation">
  369. <li><a href="../overview-summary.html">Overview</a></li>
  370. <li><a href="package-summary.html">Package</a></li>
  371. <li class="navBarCell1Rev">Class</li>
  372. <li><a href="package-tree.html">Tree</a></li>
  373. <li><a href="../deprecated-list.html">Deprecated</a></li>
  374. <li><a href="../index-all.html">Index</a></li>
  375. <li><a href="../help-doc.html">Help</a></li>
  376. </ul>
  377. <div class="aboutLanguage">Ecologia</div>
  378. </div>
  379. <div class="subNav">
  380. <ul class="navList">
  381. <li><a href="../model/Genome.html" title="class in model"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
  382. <li><a href="../model/MapField.html" title="class in model"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
  383. </ul>
  384. <ul class="navList">
  385. <li><a href="../index.html?model/Herbivore.html" target="_top">Frames</a></li>
  386. <li><a href="Herbivore.html" target="_top">No&nbsp;Frames</a></li>
  387. </ul>
  388. <ul class="navList" id="allclasses_navbar_bottom">
  389. <li><a href="../allclasses-noframe.html">All&nbsp;Classes</a></li>
  390. </ul>
  391. <div>
  392. <script type="text/javascript"><!--
  393. allClassesLink = document.getElementById("allclasses_navbar_bottom");
  394. if(window==top) {
  395. allClassesLink.style.display = "block";
  396. }
  397. else {
  398. allClassesLink.style.display = "none";
  399. }
  400. //-->
  401. </script>
  402. </div>
  403. <div>
  404. <ul class="subNavList">
  405. <li>Summary:&nbsp;</li>
  406. <li>Nested&nbsp;|&nbsp;</li>
  407. <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
  408. <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
  409. <li><a href="#method.summary">Method</a></li>
  410. </ul>
  411. <ul class="subNavList">
  412. <li>Detail:&nbsp;</li>
  413. <li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
  414. <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
  415. <li><a href="#method.detail">Method</a></li>
  416. </ul>
  417. </div>
  418. <a name="skip.navbar.bottom">
  419. <!-- -->
  420. </a></div>
  421. <!-- ======== END OF BOTTOM NAVBAR ======= -->
  422. </body>
  423. </html>