com.jme.math
Class Rectangle

java.lang.Object
  extended by com.jme.math.Rectangle
All Implemented Interfaces:
Savable, java.io.Serializable, java.lang.Cloneable

public class Rectangle
extends java.lang.Object
implements java.io.Serializable, Savable, java.lang.Cloneable

Rectangle defines a finite plane within three dimensional space that is specified via three points (A, B, C). These three points define a triangle with the forth point defining the rectangle ((B + C) - A.

Author:
Mark Powell, Joshua Slack
See Also:
Serialized Form

Constructor Summary
Rectangle()
          Constructor creates a new Rectangle with no defined corners.
Rectangle(Vector3f a, Vector3f b, Vector3f c)
          Constructor creates a new Rectangle with defined A, B, and C points that define the area of the rectangle.
 
Method Summary
 Rectangle clone()
           
 Vector3f getA()
          getA returns the first point of the rectangle.
 Vector3f getB()
          getB returns the second point of the rectangle.
 Vector3f getC()
          getC returns the third point of the rectangle.
 java.lang.Class<? extends Rectangle> getClassTag()
           
 Vector3f random()
          random returns a random point within the plane defined by: A, B, C, and (B + C) - A.
 Vector3f random(Vector3f result)
          random returns a random point within the plane defined by: A, B, C, and (B + C) - A.
 void read(JMEImporter e)
           
 void setA(Vector3f a)
          setA sets the first point of the rectangle.
 void setB(Vector3f b)
          setB sets the second point of the rectangle.
 void setC(Vector3f c)
          setC sets the third point of the rectangle.
 void write(JMEExporter e)
           
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Rectangle

public Rectangle()
Constructor creates a new Rectangle with no defined corners. A, B, and C must be set to define a valid rectangle.


Rectangle

public Rectangle(Vector3f a,
                 Vector3f b,
                 Vector3f c)
Constructor creates a new Rectangle with defined A, B, and C points that define the area of the rectangle.

Parameters:
a - the first corner of the rectangle.
b - the second corner of the rectangle.
c - the third corner of the rectangle.
Method Detail

getA

public Vector3f getA()
getA returns the first point of the rectangle.

Returns:
the first point of the rectangle.

setA

public void setA(Vector3f a)
setA sets the first point of the rectangle.

Parameters:
a - the first point of the rectangle.

getB

public Vector3f getB()
getB returns the second point of the rectangle.

Returns:
the second point of the rectangle.

setB

public void setB(Vector3f b)
setB sets the second point of the rectangle.

Parameters:
b - the second point of the rectangle.

getC

public Vector3f getC()
getC returns the third point of the rectangle.

Returns:
the third point of the rectangle.

setC

public void setC(Vector3f c)
setC sets the third point of the rectangle.

Parameters:
c - the third point of the rectangle.

random

public Vector3f random()
random returns a random point within the plane defined by: A, B, C, and (B + C) - A.

Returns:
a random point within the rectangle.

random

public Vector3f random(Vector3f result)
random returns a random point within the plane defined by: A, B, C, and (B + C) - A.

Parameters:
result - Vector to store result in
Returns:
a random point within the rectangle.

write

public void write(JMEExporter e)
           throws java.io.IOException
Specified by:
write in interface Savable
Throws:
java.io.IOException

read

public void read(JMEImporter e)
          throws java.io.IOException
Specified by:
read in interface Savable
Throws:
java.io.IOException

getClassTag

public java.lang.Class<? extends Rectangle> getClassTag()
Specified by:
getClassTag in interface Savable

clone

public Rectangle clone()
Overrides:
clone in class java.lang.Object