# SceneScript Class Vec2

Utility class which holds a 2 dimensional value pair: x and y.

# Properties

# x: Number

Value of first component.

# y: Number

Value of second component.

# Constructors

# constructor(x: Number, y: Number): Vec2

Constructor that sets x and y respectively.

# constructor(): Vec2

Empty constructor sets all components to 0.

# constructor(value: Number): Vec2

Sets both x and y members to parameter value.

# constructor(value: String): Vec2

Will parse the first two numbers from the string and set x and y respectively.

# constructor(value: Vec3): Vec2

Will use x and y from value and set members respectively.

# Functions

# length(): Number

Returns length of the vector.

# lengthSqr(): Number

Returns squared length of the vector. This is more efficient, so if you only need a binary comparison, use this.

# normalize(): Vec2

Normalizes the vector and returns the result as a new object.

# copy(): Vec2

Makes a copy.

# add(value: Number|Vec2): Vec2

Adds parameter to both components and returns result as a new object.

# subtract(value: Number|Vec2): Vec2

Subtracts parameter to both components and returns result as a new object.

# multiply(value: Number|Vec2): Vec2

Multiplies both components with parameter and returns result as a new object.

# divide(value: Number|Vec2): Vec2

Divides both components by parameter and returns result as a new object. Does not check for zero division.

# dot(value: Vec2): Number

Computes dot product with vector value.

# reflect(normal: Vec2): Vec2

Returns reflection vector along normal. Make sure that normal is normalized.

# mix(other: Vec2, amount: Number): Vec2

Interpolate between this vector and another vector of the same dimension. You can set the interpolation using the amount parameter, it accepts values between 0.00 and 1.00 where 1.00 represents the other vector. By setting it to 0.5, for example, you will interpolate halfway between this and the other vector.

# min(value: Vec2): Vec2

Return the smaller value per component of two vectors.

# max(value: Vec2): Vec2;

Return the larger value per component of two vectors.

# perpendicular(): Vec2

Returns perpendicular copy of the vector.

# toString(): String

Concatenates components with a space in-between so that it can also be parsed again.