blob: 9666bff67688383dcb844a26df68f2d79678cc8e (
plain) (
tree)
|
|
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<title>Scaladoc for sims.collision.AABB</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="../../lib/jquery.js"></script>
<style type="text/css">
@import url(../../lib/template.css) screen;
</style>
<script type="text/javascript" src="../../lib/template.js"></script>
</head>
<body class="type">
<p id="owner"><a href="../package.html">sims</a>.<a href="package.html">collision</a></p>
<div id="definition">
<img src="../../lib/class_big.png" />
<h1>AABB</h1>
</div>
<h4 class="signature">
<span class="kind">class</span>
<span class="symbol">
<span class="name">AABB</span><span class="params">(<span name="minVertex">minVertex: <a href="../geometry/Vector2D.html" class="extype" name="sims.geometry.Vector2D">Vector2D</a></span>, <span name="maxVertex">maxVertex: <a href="../geometry/Vector2D.html" class="extype" name="sims.geometry.Vector2D">Vector2D</a></span>)</span><span class="result"> extends <span class="extype" name="scala.Product">Product</span></span>
</span>
</h4>
<div class="fullcomment" id="comment">
<div class="comment cmt"><p>Axis Aligned Bounding Boxes (AABBs) are rectangles that frame a shape.
Their X-Axis and Y-Axis orientation makes it easy to test two AABBs for overlap.</p></div>
<dl class="paramcmts block"><dt class="param">minVertex</dt><dd class="cmt"><p>Position vector of the bottom-left vertex</p></dd><dt class="param">maxVertex</dt><dd class="cmt"><p>Position vector of the upper-right vertex</p></dd></dl>
<div class="block">
known subclasses: <a href="../../graphyx/graphics/GraphicalAABB.html">GraphicalAABB</a>
</div>
</div>
<div id="template">
<div id="mbrsel">
<div id="ancestors">
<h3>Inherits</h3>
<ol><li class="in" name="scala.Product">Product</li><li class="in" name="scala.Equals">Equals</li><li class="in" name="scala.AnyRef">AnyRef</li><li class="in" name="scala.Any">Any</li></ol>
</div>
</div>
<div class="members" id="values">
<h3>Value Members</h3>
<ol><li name="sims.collision.AABB#canEqual">
<h4 class="signature">
<span class="kind">def</span>
<span class="symbol">
<span class="name">canEqual</span><span class="params">(<span name="arg0">arg0: <span class="extype" name="scala.Any">Any</span></span>)</span><span class="result">: <span class="extype" name="scala.Boolean">Boolean</span></span>
</span>
</h4>
</li><li name="sims.collision.AABB#equals">
<h4 class="signature">
<span class="kind">def</span>
<span class="symbol">
<span class="name">equals</span><span class="params">(<span name="arg0">arg0: <span class="extype" name="scala.Any">Any</span></span>)</span><span class="result">: <span class="extype" name="scala.Boolean">Boolean</span></span>
</span>
</h4>
<p class="shortcomment cmt">This method is used to compare the receiver object (<code>this</code>)
with the argument object (<code>arg0</code>) for equivalence</p><div class="fullcomment">
<div class="comment cmt"><p>This method is used to compare the receiver object (<code>this</code>)
with the argument object (<code>arg0</code>) for equivalence.</p><p><p>
The default implementations of this method is an <a
href="http://en.wikipedia.org/wiki/Equivalence_relation">equivalence
relation</a>:
<ul>
<li>It is reflexive: for any instance <code>x</code> of type <code>Any</code>,
<code>x.equals(x)</code> should return <code>true</code>.</li>
<li>It is symmetric: for any instances <code>x</code> and <code>y</code> of type
<code>Any</code>, <code>x.equals(y)</code> should return <code>true</code> if and only
if <code>y.equals(x)</code> returns <code>true</code>.</li>
<li>It is transitive: for any instances
<code>x</code>, <code>y</code>, and <code>z</code> of type <code>AnyRef</code>
if <code>x.equals(y)</code> returns <code>true</code> and
<code>y.equals(z)</code> returns
<code>true</code>, then <code>x.equals(z)</code> should return <code>true</code>.</li>
</ul>
</p></p><p><p>
If you override this method, you should verify that
your implementation remains an equivalence relation.
Additionally, when overriding this method it is often necessary to
override <code>hashCode</code> to ensure that objects that are
"equal" (<code>o1.equals(o2)</code> returns <code>true</code>)
hash to the same <a href="Int.html"><code>Int</code></a>
(<code>o1.hashCode.equals(o2.hashCode)</code>).
</p></div>
<dl class="paramcmts block"><dt class="param">arg0</dt><dd class="cmt"><p>the object to compare against this object for equality.</p></dd><dt>returns</dt><dd class="cmt"><p><code>true</code> if the receiver object is equivalent to the argument; <code>false</code> otherwise.
</p></p></dd></dl>
</div>
</li><li name="sims.collision.AABB#hashCode">
<h4 class="signature">
<span class="kind">def</span>
<span class="symbol">
<span class="name">hashCode</span><span class="params">()</span><span class="result">: <span class="extype" name="scala.Int">Int</span></span>
</span>
</h4>
<p class="shortcomment cmt">Returns a hash code value for the object</p><div class="fullcomment">
<div class="comment cmt"><p>Returns a hash code value for the object.</p><p><p>
The default hashing algorithm is platform dependent.</p><p>Note that it is allowed for two objects to have identical hash
codes (<code>o1.hashCode.equals(o2.hashCode)</code>) yet not be
equal (<code>o1.equals(o2)</code> returns <code>false</code>). A
degenerate implementation could always return <code>0</code>.
However, it is required that if two objects are equal
(<code>o1.equals(o2)</code> returns <code>true</code>) that they
have identical hash codes
(<code>o1.hashCode.equals(o2.hashCode)</code>). Therefore, when
overriding this method, be sure to verify that the behavior is
consistent with the <code>equals</code> method.
</p></p><p><p></p></div>
</div>
</li><li name="sims.collision.AABB#maxVertex">
<h4 class="signature">
<span class="kind">val</span>
<span class="symbol">
<span class="name">maxVertex</span><span class="result">: <a href="../geometry/Vector2D.html" class="extype" name="sims.geometry.Vector2D">Vector2D</a></span>
</span>
</h4>
</li><li name="sims.collision.AABB#minVertex">
<h4 class="signature">
<span class="kind">val</span>
<span class="symbol">
<span class="name">minVertex</span><span class="result">: <a href="../geometry/Vector2D.html" class="extype" name="sims.geometry.Vector2D">Vector2D</a></span>
</span>
</h4>
</li><li name="sims.collision.AABB#overlaps">
<h4 class="signature">
<span class="kind">def</span>
<span class="symbol">
<span class="name">overlaps</span><span class="params">(<span name="box">box: <a href="" class="extype" name="sims.collision.AABB">AABB</a></span>)</span><span class="result">: <span class="extype" name="scala.Boolean">Boolean</span></span>
</span>
</h4>
<p class="shortcomment cmt">Checks this AABB with <code>box</code> for overlap</p><div class="fullcomment">
<div class="comment cmt"><p>Checks this AABB with <code>box</code> for overlap.</p></div>
<dl class="paramcmts block"><dt class="param">box</dt><dd class="cmt"><p>AABB with which to check for overlap</p></dd></dl>
</div>
</li><li name="sims.collision.AABB#productArity">
<h4 class="signature">
<span class="kind">def</span>
<span class="symbol">
<span class="name">productArity</span><span class="result">: <span class="extype" name="scala.Int">Int</span></span>
</span>
</h4>
</li><li name="sims.collision.AABB#productElement">
<h4 class="signature">
<span class="kind">def</span>
<span class="symbol">
<span class="name">productElement</span><span class="params">(<span name="arg0">arg0: <span class="extype" name="scala.Int">Int</span></span>)</span><span class="result">: <span class="extype" name="scala.Any">Any</span></span>
</span>
</h4>
</li><li name="scala.Product#productElements">
<h4 class="signature">
<span class="kind">def</span>
<span class="symbol">
<span class="name">productElements</span><span class="result">: <span class="extype" name="scala.collection.Iterator">Iterator</span>[<span class="extype" name="scala.Any">Any</span>]</span>
</span>
</h4>
</li><li name="scala.Product#productIterator">
<h4 class="signature">
<span class="kind">def</span>
<span class="symbol">
<span class="name">productIterator</span><span class="result">: <span class="extype" name="scala.collection.Iterator">Iterator</span>[<span class="extype" name="scala.Any">Any</span>]</span>
</span>
</h4>
</li><li name="sims.collision.AABB#productPrefix">
<h4 class="signature">
<span class="kind">def</span>
<span class="symbol">
<span class="name">productPrefix</span><span class="result">: <span class="extype" name="java.lang.String">String</span></span>
</span>
</h4>
</li><li name="sims.collision.AABB#toString">
<h4 class="signature">
<span class="kind">def</span>
<span class="symbol">
<span class="name">toString</span><span class="params">()</span><span class="result">: <span class="extype" name="java.lang.String">String</span></span>
</span>
</h4>
<p class="shortcomment cmt">Returns a string representation of the object</p><div class="fullcomment">
<div class="comment cmt"><p>Returns a string representation of the object.
<p>
The default representation is platform dependent.
</p></div>
</div>
</li></ol>
</div>
<div class="members" id="constructors">
<h3>Instance constructors</h3>
<ol><li name="sims.collision.AABB#this">
<h4 class="signature">
<span class="kind">new</span>
<span class="symbol">
<span class="name">AABB</span><span class="params">(<span name="minVertex">minVertex: <a href="../geometry/Vector2D.html" class="extype" name="sims.geometry.Vector2D">Vector2D</a></span>, <span name="maxVertex">maxVertex: <a href="../geometry/Vector2D.html" class="extype" name="sims.geometry.Vector2D">Vector2D</a></span>)</span>
</span>
</h4>
</li><li name="scala.AnyRef#this">
<h4 class="signature">
<span class="kind">new</span>
<span class="symbol">
<span class="name">AABB</span><span class="params">()</span>
</span>
</h4>
</li></ol>
</div>
</div>
</body>
</html>
|