Vec2

ostrat.geom.Vec2
See theVec2 companion object
class Vec2(val x: Double, val y: Double) extends Vec2Like, ApproxDbl

A 2 dimensional vector. This is similar data to Pt2. The purpose of this separate type is to encode the relative nature of the Vec2 as opposed to the absolute nature of a Pt. 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 Vec2Like
trait ApproxDbl
trait Approx[Double]
trait Equals
trait TellElemDbl2
trait Dbl2Elem
trait DblNElem
trait ValueNElem
trait SpecialT
trait TellDbl2
trait Tell2[Double, Double]
trait PersistN
trait TellN
trait Tell
trait Persist
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

def *(factor: Double): Vec2
def +(operand: Vec2): Vec2

Adds this Vector to a second 2 dimensional vector.

Adds this Vector to a second 2 dimensional vector.

Attributes

def -(operand: Vec2): Vec2

Adds the operand 2 dimensional vector from this 2 dimensional vector.

Adds the operand 2 dimensional vector from this 2 dimensional vector.

Attributes

def /(divisor: Double): Vec2
def addX(adj: Double): Vec2
def addXY(otherX: Double, otherY: Double): Vec2
def addY(adj: Double): Vec2
def angle: Angle

Gives the angle of the vector with respect of the origin.

Gives the angle of the vector with respect of the origin.

Attributes

Gives the angle of the vector with respect of the origin in radians, between -Pi and Pi.

Gives the angle of the vector with respect of the origin in radians, between -Pi and Pi.

Attributes

Gives the angle of this vector in radians.

Gives the angle of this vector in radians.

Attributes

Gives the angle of the vector with respect of the origin for a graphical system where the Y Axis points down in radians, between -Pi and Pi.

Gives the angle of the vector with respect of the origin for a graphical system where the Y Axis points down in radians, between -Pi and Pi.

Attributes

Gives the angle of the vector with respect of the origin.

Gives the angle of the vector with respect of the origin.

Attributes

Gives the angle of the vector with respect of the origin for a graphical system where the Y Axis points down.

Gives the angle of the vector with respect of the origin for a graphical system where the Y Axis points down.

Attributes

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

Attributes

Definition Classes
override def canEqual(other: 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

The magnitude of this vector2Like.

The magnitude of this vector2Like.

Attributes

def rotate(a: AngleVec): Vec2

Rotates this vector through the given angle around the origin.

Rotates this vector through the given angle around the origin.

Attributes

Rotates the vector 180 degrees or Pi radians.

Rotates the vector 180 degrees or Pi radians.

Attributes

rotates the vector 90 degrees or Pi/2 radians, clockwise.

rotates the vector 90 degrees or Pi/2 radians, clockwise.

Attributes

def rotate90: Vec2

rotates the vector 90 degrees or Pi/2 radians, anticlockwise.

rotates the vector 90 degrees or Pi/2 radians, anticlockwise.

Attributes

override def scale(factor: Double): Vec2

Attributes

Definition Classes
def subX(adj: Double): Vec2
def subXY(otherX: Double, otherY: Double): Vec2
def subY(adj: Double): Vec2
override def typeStr: String

The type of the object to be persisted.

The type of the object to be persisted.

Attributes

Definition Classes
def unary_-: Vec2
def vv(z: Double): Vec3
def xScale(factor: Double): Vec2
def xyScale(xOperand: Double, yOperand: Double): Vec2
def yScale(factor: Double): Vec2

Inherited methods

final override def dbl1: Double

Attributes

Definition Classes
Inherited from:
TellElemDbl2
final override def dbl2: Double

Attributes

Definition Classes
Inherited from:
TellElemDbl2
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:
Dbl2Elem
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:
Dbl2Elem
def dblsApprox(that: Dbl2Elem, delta: Double): Boolean

Attributes

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

Attributes

Inherited from:
Dbl2Elem
def dot(operand: Vec2Like): Double

The dot product of this and the operand vector.

The dot product of this and the operand vector.

Attributes

Inherited from:
Vec2Like
def el1Show(style: ShowStyle, maxPlaces: Int): String

Attributes

Inherited from:
Tell2
def el2Show(style: ShowStyle, maxPlaces: Int): String

Attributes

Inherited from:
Tell2

A StrArr Arr of the element type names of this Show Product class.

A StrArr Arr of the element type names of this Show Product class.

Attributes

Inherited from:
Tell2

x <= 0 && y <= 0

x <= 0 && y <= 0

Attributes

Inherited from:
Vec2Like

x >= 0 && y <= 0

x >= 0 && y <= 0

Attributes

Inherited from:
Vec2Like

x >= 0 && y >= 0

x >= 0 && y >= 0

Attributes

Inherited from:
Vec2Like

x <= 0 && y >= 0

x <= 0 && y >= 0

Attributes

Inherited from:
Vec2Like
override def name1: String

1st parameter name.

1st parameter name.

Attributes

Definition Classes
Inherited from:
Vec2Like
override def name2: String

2nd parameter name.

2nd parameter name.

Attributes

Definition Classes
Inherited from:
Vec2Like
override def numParams: Int

Number of parameter constituents of this class.

Number of parameter constituents of this class.

Attributes

Definition Classes
Inherited from:
Persist2
override def opt1: Option[Double]

The optional default value for parameter 1.

The optional default value for parameter 1.

Attributes

Definition Classes
Inherited from:
Tell2Plused
override def opt2: Option[Double]

The optional default value for parameter 2.

The optional default value for parameter 2.

Attributes

Definition Classes
Inherited from:
Tell2Plused
override def paramNames: StrArr

Sequence of the names of parameter constituents of this class.

Sequence of the names of parameter constituents of this class.

Attributes

Definition Classes
Inherited from:
Tell2
override def precisionDefault: Double

Attributes

Definition Classes
Inherited from:
ApproxDbl
override def str: String

The most basic Show method, paralleling the strT method on ShowT type class instances.

The most basic Show method, paralleling the strT method on ShowT type class instances.

Attributes

Definition Classes
TellN -> Tell
Inherited from:
TellN
def str0: String

Show with decimal precision of 0 places.

Show with decimal precision of 0 places.

Attributes

Inherited from:
Tell
def str1: String

Show with decimal precision of 1 place padding with a zero if necessary.

Show with decimal precision of 1 place padding with a zero if necessary.

Attributes

Inherited from:
Tell
def str2: String

Show with decimal precision of 2 places padding with zeros if necessary.

Show with decimal precision of 2 places padding with zeros if necessary.

Attributes

Inherited from:
Tell
def str3: String

Show with decimal precision of 3 places padding with zeros if necessary.

Show with decimal precision of 3 places padding with zeros if necessary.

Attributes

Inherited from:
Tell
override def tell(style: ShowStyle, maxPlaces: Int, minPlaces: Int): String

Intended to be a multiple parameter comprehensive Show method. Intended to be paralleled by show method on Show type class instances.

Intended to be a multiple parameter comprehensive Show method. Intended to be paralleled by show method on Show type class instances.

Attributes

Definition Classes
TellN -> Tell
Inherited from:
TellN
final override def tell1: Double

Element 1 of this Tell2+ element product.

Element 1 of this Tell2+ element product.

Attributes

Definition Classes
Inherited from:
Vec2Like
final override def tell2: Double

Element 2 of this Tell2+ element product.

Element 2 of this Tell2+ element product.

Attributes

Definition Classes
Inherited from:
Vec2Like
final override def tellDepth: Int

The syntactic depth of the tell String for this object.

The syntactic depth of the tell String for this object.

Attributes

Definition Classes
Inherited from:
TellDbl2
override def tellElemStrs(way: ShowStyle, decimalPlaces: Int, minPlaces: Int): StrArr

A StrArr Arr collection of the show methods return values of the elements of this Show Product class.

A StrArr Arr collection of the show methods return values of the elements of this Show Product class.

Attributes

Definition Classes
Inherited from:
Tell2
def tellSemisNames(maxPlaces: Int, minPlaces: Int): String

Attributes

Inherited from:
TellN
def toPair: (Double, Double)

Attributes

Inherited from:
Vec2Like
override def toString: String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Tell -> Any
Inherited from:
Tell

This property determines if the type can be used with Multiple syntax.

This property determines if the type can be used with Multiple syntax.

MyObj * 7

. for describing sequences succinctly. This is not desirable for some types such as numerical and mathematical vector types as this could be confusing 3 * 4 should resolve to an Int of value 12, not a Multiple(3, 4).

Attributes

Inherited from:
Persist

Concrete fields

val x: Double

The x component of this 2D vector / point.

The x component of this 2D vector / point.

Attributes

val y: Double

The y component of this 2D vector / point.

The y component of this 2D vector / point.

Attributes

Implicits

Inherited implicits

final implicit override def show1: Show[Double]

Attributes

Definition Classes
Inherited from:
TellDbl2
final implicit override def show2: Show[Double]

Attributes

Definition Classes
Inherited from:
TellDbl2