field.kit.physics

OctreeSpace

class OctreeSpace extends Space

A space that uses an Octree to find neighbouring particles

Inherited

  1. Hide All
  2. Show all
  1. Space
  2. AABB
  3. BoundingVolume
  4. Vec3
  5. Product
  6. Equals
  7. Vec
  8. AnyRef
  9. Any

Visibility

  1. Public
  2. All

Instance constructors

  1. new OctreeSpace(dimension: Vec3)

  2. new OctreeSpace(position: Vec3, dimension: Vec3)

Type Members

  1. type T = Particle

    definition classes: Space

Value Members

  1. def !=(arg0: AnyRef): Boolean

    attributes: final
    definition classes: AnyRef
  2. def !=(arg0: Any): Boolean

    o != arg0 is the same as !(o == (arg0)).

    o != arg0 is the same as !(o == (arg0)).

    arg0

    the object to compare against this object for dis-equality .

    returns

    false if the receiver object is equivalent to the argument; true otherwise.

    attributes: final
    definition classes: Any
  3. def ##(): Int

    attributes: final
    definition classes: AnyRef → Any
  4. def $asInstanceOf[T0](): T0

    attributes: final
    definition classes: AnyRef
  5. def $isInstanceOf[T0](): Boolean

    attributes: final
    definition classes: AnyRef
  6. def *(v: Vec): Vec3

    Multiplies the given Vec3 with this Vec3 and returns the result

    Multiplies the given Vec3 with this Vec3 and returns the result

    returns

    result

    attributes: final
    definition classes: Vec3
  7. def *(s: Float): Vec3

    Multiplies the given float with this vector

    Multiplies the given float with this vector

    returns

    result as new vector

    attributes: final
    definition classes: Vec3
  8. def *=(v: Vec): Vec3

    attributes: final
    definition classes: Vec3
  9. def *=(s: Float): Vec3

    attributes: final
    definition classes: Vec3
  10. def +(v: Vec): Vec3

    Adds the given Vec3 to this Vec3 and returns the result

    Adds the given Vec3 to this Vec3 and returns the result

    returns

    result

    attributes: final
    definition classes: Vec3
  11. def +(s: Float): Vec3

    Adds the given Float to this vector

    Adds the given Float to this vector

    returns

    result as new vector

    attributes: final
    definition classes: Vec3
  12. def +=(v: Vec): Vec3

    attributes: final
    definition classes: Vec3
  13. def +=(s: Float): Vec3

    attributes: final
    definition classes: Vec3
  14. def -(v: Vec): Vec3

    Subtracts the given Vec3 from this Vec3 and returns the result

    Subtracts the given Vec3 from this Vec3 and returns the result

    returns

    result

    attributes: final
    definition classes: Vec3
  15. def -(s: Float): Vec3

    Subtracts the given float from this vector

    Subtracts the given float from this vector

    returns

    result as new vector

    attributes: final
    definition classes: Vec3
  16. def -=(v: Vec): Vec3

    attributes: final
    definition classes: Vec3
  17. def -=(s: Float): Vec3

    attributes: final
    definition classes: Vec3
  18. def /(v: Vec): Vec3

    Divides this Vec3 through the given Vec3 and returns the result

    Divides this Vec3 through the given Vec3 and returns the result

    returns

    result

    attributes: final
    definition classes: Vec3
  19. def /(s: Float): Vec3

    Divides this vector through the given float

    Divides this vector through the given float

    returns

    result as new vector

    attributes: final
    definition classes: Vec3
  20. def /=(v: Vec): Vec3

    attributes: final
    definition classes: Vec3
  21. def /=(s: Float): Vec3

    attributes: final
    definition classes: Vec3
  22. def :=(box: AABB): Unit

    Sets this AABB to be an exact copy of the passed in AABB

    Sets this AABB to be an exact copy of the passed in AABB

    definition classes: AABB
  23. def :=(v: Float): AABB

    Sets all components of this Vector to the given Float

    Sets all components of this Vector to the given Float

    returns

    itself

    definition classes: AABBVec3
  24. def :=(v: Vec): AABB

    Sets this Vectors components to the given Vec3

    Sets this Vectors components to the given Vec3

    returns

    itself

    definition classes: AABBVec3
  25. def :=(s: String): Vec3

    Attempts to parse the given String to set this Vectors components

    Attempts to parse the given String to set this Vectors components

    returns

    itself

    attributes: final
    definition classes: Vec3
  26. def :=(buffer: FloatBuffer, index: Int): Vec3

    Sets the xyz components to the data from a given buffer at a given index

    Sets the xyz components to the data from a given buffer at a given index

    returns

    itself

    attributes: final
    definition classes: Vec3
  27. def ==(arg0: AnyRef): Boolean

    o == arg0 is the same as if (o eq null) arg0 eq null else o.equals(arg0).

    o == arg0 is the same as if (o eq null) arg0 eq null else o.equals(arg0).

    arg0

    the object to compare against this object for equality .

    returns

    true if the receiver object is equivalent to the argument; false otherwise.

    attributes: final
    definition classes: AnyRef
  28. def ==(arg0: Any): Boolean

    o == arg0 is the same as o.equals(arg0).

    o == arg0 is the same as o.equals(arg0).

    arg0

    the object to compare against this object for equality .

    returns

    true if the receiver object is equivalent to the argument; false otherwise.

    attributes: final
    definition classes: Any
  29. val _extent: Vec3

    attributes: protected
    definition classes: AABB
  30. def angleBetween(v: Vec3): Unit

    angleBetween returns (in radians) the angle between two vectors .

    angleBetween returns (in radians) the angle between two vectors . It is assumed that both this vector and the given vector are unit vectors (iow, normalized).

    attributes: final
    definition classes: Vec3
  31. def apply(bounds: BoundingVolume, result: ArrayBuffer[Particle]): Unit

  32. def apply(point: Vec, radius: Float, result: ArrayBuffer[Particle]): Unit

  33. def asInstanceOf[T0]: T0

    This method is used to cast the receiver object to be of type T0.

    This method is used to cast the receiver object to be of type T0.

    Note that the success of a cast at runtime is modulo Scala's erasure semantics. Therefore the expression1.asInstanceOf[String] will throw a ClassCastException at runtime, while the expressionList(1).asInstanceOf[List[String]] will not. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the requested typed.

    returns

    the receiver object .

    attributes: final
    definition classes: Any
  34. def canEqual(arg0: Any): Boolean

    definition classes: Vec3 → Equals
  35. def clamp(max: Float): Vec3

    makes sure this vector does not exceed a certain length

    makes sure this vector does not exceed a certain length

    attributes: final
    definition classes: Vec3
  36. def clear: Unit

  37. def clone(): Vec3

    This method creates and returns a copy of the receiver object .

    This method creates and returns a copy of the receiver object .

    The default implementation of the clone method is platform dependent.

    returns

    a copy of the receiver object .

    definition classes: Vec3 → AnyRef
  38. def contains(p: Vec): Boolean

    no summary matey

    returns

    true, if the given Vec3 lies within this bounding volume

    attributes: final
    definition classes: AABBBoundingVolume
  39. def cross(v: Vec3): Vec3

    Calculates the cross product of this vector with a parameter vector v .

    Calculates the cross product of this vector with a parameter vector v .

    returns

    the cross product as a new vector

    attributes: final
    definition classes: Vec3
  40. def cross(v: Vec3, result: Vec3): Vec3

    Calculates the cross product of this vector with a parameter vector v .

    Calculates the cross product of this vector with a parameter vector v .

    returns

    the cross product vector

    attributes: final
    definition classes: Vec3
  41. def depth: Float

    definition classes: AABB
  42. def depth_=(v: Float): Unit

    definition classes: AABB
  43. def distance(v: Vec): Float

    attributes: final
    definition classes: Vec3
  44. def distanceSquared(v: Vec): Float

    attributes: final
    definition classes: Vec3
  45. def dot(v: Vec): Float

    Calculates the dot product of this vector with a provided vector .

    Calculates the dot product of this vector with a provided vector .

    returns

    the resultant dot product of this vector and a given vector .

    attributes: final
    definition classes: Vec3
  46. def eq(arg0: AnyRef): Boolean

    This method is used to test whether the argument (arg0) is a reference to the receiver object (this).

    This method is used to test whether the argument (arg0) is a reference to the receiver object (this).

    The eq method implements an [http://en.wikipedia.org/wiki/Equivalence_relation equivalence relation] on non-null instances of AnyRef: * It is reflexive: for any non-null instance x of type AnyRef, x.eq(x) returns true. * It is symmetric: for any non-null instances x and y of type AnyRef, x.eq(y) returns true if and only if y.eq(x) returns true. * It is transitive: for any non-null instances x, y, and z of type AnyRef if x.eq(y) returns true and y.eq(z) returns true, then x.eq(z) returns true.

    Additionally, the eq method has three other properties. * It is consistent: for any non-null instances x and y of type AnyRef, multiple invocations of x.eq(y) consistently returns true or consistently returns false. * For any non-null instance x of type AnyRef, x.eq(null) and null.eq(x) returns false. * null.eq(null) returns true.

    When overriding the equals or hashCode methods, it is important to ensure that their behavior is consistent with reference equality. Therefore, if two objects are references to each other (o1 eq o2), they should be equal to each other (o1 == o2) and they should hash to the same value (o1.hashCode == o2.hashCode).

    arg0

    the object to compare against this object for reference equality .

    returns

    true if the argument is a reference to the receiver object; false otherwise.

    attributes: final
    definition classes: AnyRef
  47. def equals(arg0: Any): Boolean

    This method is used to compare the receiver object (this) with the argument object (arg0) for equivalence.

    This method is used to compare the receiver object (this) with the argument object (arg0) for equivalence.

    The default implementations of this method is an [http://en.wikipedia.org/wiki/Equivalence_relation equivalence relation]: * It is reflexive: for any instance x of type Any, x.equals(x) should return true. * It is symmetric: for any instances x and y of type Any, x.equals(y) should return true if and only if y.equals(x) returns true. * It is transitive: for any instances x, y, and z of type AnyRef if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.

    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 hashCode to ensure that objects that are "equal" (o1.equals(o2) returns true) hash to the same scala.Int (o1.hashCode.equals(o2.hashCode)).

    arg0

    the object to compare against this object for equality .

    returns

    true if the receiver object is equivalent to the argument; false otherwise.

    definition classes: Vec3 → Equals → AnyRef → Any
  48. def extent: Vec3

    definition classes: AABB
  49. def extent_=(value: Float): Unit

    definition classes: AABB
  50. def extent_=(value: Vec3): Unit

    definition classes: AABB
  51. def finalize(): Unit

    This method is called by the garbage collector on the receiver object when garbage collection determines that there are no more references to the object .

    This method is called by the garbage collector on the receiver object when garbage collection determines that there are no more references to the object .

    The details of when and if the finalize method are invoked, as well as the interaction between finalizeand non-local returns and exceptions, are all platform dependent.

    attributes: protected
    definition classes: AnyRef
  52. def getClass(): java.lang.Class[_]

    Returns a representation that corresponds to the dynamic class of the receiver object .

    Returns a representation that corresponds to the dynamic class of the receiver object .

    The nature of the representation is platform dependent.

    returns

    a representation that corresponds to the dynamic class of the receiver object .

    attributes: final
    definition classes: AnyRef
  53. def halfDepth: Float

    definition classes: AABB
  54. def halfHeight: Float

    definition classes: AABB
  55. def halfWidth: Float

    definition classes: AABB
  56. def hashCode(): Int

    Returns a hash code value for the object .

    Returns a hash code value for the object .

    The default hashing algorithm is platform dependent.

    Note that it is allowed for two objects to have identical hash codes (o1.hashCode.equals(o2.hashCode)) yet not be equal (o1.equals(o2) returns false). A degenerate implementation could always return 0. However, it is required that if two objects are equal (o1.equals(o2) returns true) that they have identical hash codes (o1.hashCode.equals(o2.hashCode)). Therefore, when overriding this method, be sure to verify that the behavior is consistent with the equals method.

    returns

    the hash code value for the object .

    definition classes: Vec3 → AnyRef → Any
  57. def height: Float

    definition classes: AABB
  58. def height_=(v: Float): Unit

    definition classes: AABB
  59. def insert(p: Particle): Boolean

  60. def interpolate(target: Vec3, delta: Float): Vec3

    Interpolates the vector towards the given target vector using linear interpolation .

    Interpolates the vector towards the given target vector using linear interpolation .

    attributes: final
    definition classes: Vec3
  61. def intersects(center: Vec, radius: Float): Boolean

    no summary matey

    returns

    true, when the given Sphere intersects with this AABB

    attributes: final
    definition classes: AABB
  62. def intersects(sphere: Sphere): Boolean

    no summary matey

    returns

    true, when the given Sphere intersects with this AABB

    attributes: final
    definition classes: AABBBoundingVolume
  63. def intersects(box: AABB): Boolean

    no summary matey

    returns

    true, when this and the given AABB intersect with each other

    attributes: final
    definition classes: AABBBoundingVolume
  64. def intersects(v: BoundingVolume): Boolean

    attributes: final
    definition classes: BoundingVolume
  65. def isInstanceOf[T0]: Boolean

    This method is used to test whether the dynamic type of the receiver object is T0.

    This method is used to test whether the dynamic type of the receiver object is T0.

    Note that the test result of the test is modulo Scala's erasure semantics. Therefore the expression1.isInstanceOf[String] will return false, while the expression List(1).isInstanceOf[List[String]] will return true. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the requested typed.

    returns

    true if the receiver object is an instance of erasure of type T0; false otherwise.

    attributes: final
    definition classes: Any
  66. def isValid: Boolean

    checks wether one or several components of this vector are Not a Number or Infinite

    checks wether one or several components of this vector are Not a Number or Infinite

    attributes: final
    definition classes: Vec3
  67. def length: Float

    attributes: final
    definition classes: Vec3
  68. def lengthSquared: Float

    attributes: final
    definition classes: Vec3
  69. var max: Vec3

    definition classes: AABB
  70. var min: Vec3

    definition classes: AABB
  71. def ne(arg0: AnyRef): Boolean

    o.ne(arg0) is the same as !(o.eq(arg0)).

    o.ne(arg0) is the same as !(o.eq(arg0)).

    arg0

    the object to compare against this object for reference dis-equality .

    returns

    false if the argument is not a reference to the receiver object; true otherwise.

    attributes: final
    definition classes: AnyRef
  72. def normalise: Vec3

    Normalises this vector so that its magnitude = 1 .

    Normalises this vector so that its magnitude = 1 .

    returns

    itself

    attributes: final
    definition classes: Vec3
  73. def normaliseTo(len: Float): Vec3

    Normalizes the vector to the given length .

    Normalizes the vector to the given length .

    returns

    itself

    attributes: final
    definition classes: Vec3
  74. def normalize: Vec3

    @deprecated

    @deprecated

    attributes: final
    definition classes: Vec3
  75. def normalizeTo(len: Float): Vec3

    @deprecated

    @deprecated

    attributes: final
    definition classes: Vec3
  76. def notify(): Unit

    Wakes up a single thread that is waiting on the receiver object's monitor .

    Wakes up a single thread that is waiting on the receiver object's monitor .

    attributes: final
    definition classes: AnyRef
  77. def notifyAll(): Unit

    Wakes up all threads that are waiting on the receiver object's monitor .

    Wakes up all threads that are waiting on the receiver object's monitor .

    attributes: final
    definition classes: AnyRef
  78. def productArity: Int

    definition classes: Vec3 → Product
  79. def productElement(arg0: Int): Any

    definition classes: Vec3 → Product
  80. def productElementName(n: Int): String

    definition classes: Product
  81. def productElements: Iterator[Any]

    definition classes: Product
      deprecated:
    1. use productIterator instead

  82. def productIterator: Iterator[Any]

    definition classes: Product
  83. def productPrefix: String

    definition classes: Vec3 → Product
  84. def put(buffer: FloatBuffer): Vec3

    Puts this vector into the given FloatBuffer

    Puts this vector into the given FloatBuffer

    attributes: final
    definition classes: Vec3
  85. def put(buffer: FloatBuffer, index: Int): Vec3

    Puts this vector at the given postion into a FloatBuffer

    Puts this vector at the given postion into a FloatBuffer

    attributes: final
    definition classes: Vec3
  86. def randomise: Vec3

    Sets this vector

    Sets this vector

    attributes: final
    definition classes: Vec3
  87. def randomiseTo(len: Float): Vec3

    attributes: final
    definition classes: Vec3
  88. def set(s: String): Vec3

    Attempts to parse the given String to set this Vectors components

    Attempts to parse the given String to set this Vectors components

    returns

    itself

    attributes: final
    definition classes: Vec3
  89. def set(buffer: FloatBuffer, index: Int): Vec3

    Sets the xyz components to the data from a given buffer at a given index

    Sets the xyz components to the data from a given buffer at a given index

    returns

    itself

    attributes: final
    definition classes: Vec3
  90. def set(s: Float): Vec3

    Sets all components of this Vector to the given Float

    Sets all components of this Vector to the given Float

    returns

    itself

    attributes: final
    definition classes: Vec3
  91. def set(v: Vec): Vec3

    Sets this Vectors components to the given Vec3

    Sets this Vectors components to the given Vec3

    returns

    itself

    attributes: final
    definition classes: Vec3
  92. def size: Float

    no summary matey

    returns

    the maximum size of this bounding volume in every spatial dimension

    definition classes: AABBBoundingVolume
  93. def size_=(value: Float): Unit

    sets the maximum size of this bounding volume

    sets the maximum size of this bounding volume

    definition classes: AABBBoundingVolume
  94. def slerp(target: Vec3, delta: Float): Vec3

    interpolates towards the given target Vector

    interpolates towards the given target Vector

    attributes: final
    definition classes: Vec3
  95. def synchronized[T0](arg0: T0): T0

    attributes: final
    definition classes: AnyRef
  96. def toLabel: String

    definition classes: Vec3
  97. def toString(): String

    Returns a string representation of the object .

    Returns a string representation of the object .

    The default representation is platform dependent.

    returns

    a string representation of the object .

    definition classes: Vec3 → AnyRef → Any
  98. val tree: Octree[Particle]

  99. def tuple: (Float, Float, Float)

    attributes: final
    definition classes: Vec3
  100. def updateBounds: AABB

    definition classes: AABB
  101. def wait(): Unit

    attributes: final
    definition classes: AnyRef
  102. def wait(arg0: Long, arg1: Int): Unit

    attributes: final
    definition classes: AnyRef
  103. def wait(arg0: Long): Unit

    attributes: final
    definition classes: AnyRef
  104. def width: Float

    definition classes: AABB
  105. def width_=(v: Float): Unit

    definition classes: AABB
  106. var x: Float

    definition classes: Vec3Vec
  107. var y: Float

    definition classes: Vec3Vec
  108. var z: Float

    definition classes: Vec3Vec
  109. def zero: Unit

    Resets this vectors components all to zero

    Resets this vectors components all to zero

    attributes: final
    definition classes: Vec3