Vec3

ostrat.geom.Vec3
See theVec3 companion object
final class Vec3(val x: Double, val y: Double, val z: Double) extends Vec3Like

A 3 dimensional vector. This is similar data to Pt3. The purpose of this separate type is to encode the relative nature of the Vec3 as opposed to the absolute nature of a point. So usually you will want and need to add the vector to an absolute point to return to the absolute realm of points. Thanks to RenĂ© Descartes for this great idea.

Attributes

Companion
object
Graph
Supertypes
trait Vec3Like
trait ApproxDbl
trait Approx[Double]
trait Equals
trait Dbl3Elem
trait DblNElem
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

override def approx(that: Any, precision: Double): Boolean

Attributes

Definition Classes
override def canEqual(that: Any): Boolean

Attributes

Definition Classes
override def equals(that: Any): Boolean

Compares the receiver object (`this`) with the argument object (`that`) for equivalence.

Compares the receiver object (`this`) with the argument object (`that`) for equivalence.

Any implementation of this method should be an 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 `Any` 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 usually necessary to override `hashCode` to ensure that objects which are "equal" (`o1.equals(o2)` returns `true`) hash to the same scala.Int. (`o1.hashCode.equals(o2.hashCode)`).

Value parameters

that

the object to compare against this object for equality.

Attributes

Returns

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

Definition Classes
Equals -> Any

Inherited methods

final inline override def dbl1: Double

Attributes

Definition Classes
Inherited from:
Vec3Like
final inline override def dbl2: Double

Attributes

Definition Classes
Inherited from:
Vec3Like
final inline override def dbl3: Double

Attributes

Definition Classes
Inherited from:
Vec3Like
override def dblBufferAppend(buffer: ArrayBuffer[Double]): Unit

Utility method to append this as an element to an ArrayBuffer[Double]. End users should rarely need to use this method.

Utility method to append this as an element to an ArrayBuffer[Double]. End users should rarely need to use this method.

Attributes

Definition Classes
Inherited from:
Dbl3Elem
override def dblForeach(f: Double => Unit): Unit

Performs the side effecting function on each Double in this Product element.

Performs the side effecting function on each Double in this Product element.

Attributes

Definition Classes
Inherited from:
Dbl3Elem
def dblsApprox(that: Dbl3Elem, delta: Double): Boolean

Attributes

Inherited from:
Dbl3Elem
def dblsEqual(that: Dbl3Elem): Boolean

Attributes

Inherited from:
Dbl3Elem
override def precisionDefault: Double

Attributes

Definition Classes
Inherited from:
ApproxDbl

val x: Double
val y: Double
val z: Double