TINMAN 3D / REALTIME TERRAIN
Software Development Kit - User Manual

struct Vec2F in Tinman.Core.Math.Vectors

A two-dimensional vector with 32-bit floating-point precision.

struct Vec2F implements IEquatable<Vec2F>

Remarks

/     \
|  X  |
|  Y  |
\     /

Serialization

Serializer

The serialization helper object for values of Vec2F.

public static readonly field Serializer
type ITypeSerializerEx<Vec2F>

Public / Constants

Undefined

A vector with undefined value.

public static readonly field Undefined
type Vec2F

Zero

The zero vector.

public static readonly field Zero
type Vec2F

Public / Attributes

IsUndefined

Checks if this vector has an undefined value.

public property IsUndefined { get }
type bool
value true if this vector has an undefined value, false if not.

Remarks:

A vector is undefined if at least one component is NaN (not-a-number).

Length

Returns the length of this vector.

public property Length { get }
type float64
value [>=0] The vector length.

LengthSqr

Returns the squared length of this vector.

public property LengthSqr { get }
type float64
value [>=0] The squared vector length.

X

X-coordinate of vector.

public readonly field X
type float32

Y

Y-coordinate of vector.

public readonly field Y
type float32

Public / Constructors

Vec2F

Creates a new instance of Vec2F.

public constructor Vec2F (float32 x, float32 y)
params x X-coordinate of vector.
  y Y-coordinate of vector.

Public / Methods

Add

Adds this vector and the given one.

[Pure]
public method Add (Vec2F v)
type Vec2F
params v The vector.
returns The resulting vector.

Adds this vector and the given one.

[Pure]
public method Add (float32 x, float32 y)
type Vec2F
params x X-component of vector.
  y Y-component of vector.
returns The resulting vector.

Barycentric

Computes the barycentric coordinates of this vector in the given triangle.

[Pure]
public method Barycentric (Vec2F a, Vec2F b, Vec2F c)
type Vec3F
params a First vertex of triangle.
  b Second vertex of triangle.
  c Third vertex of triangle.
returns The barycentric coordinates of this vector, where X, Y and Z represent the weights for the triangle vertices a, b and c (in this order). This vector lies inside of the given triangle iff X, Y and Z are non-negative.

Ceiling

Computes the component-wise ceiling of this vector.

[Pure]
public method Ceiling ()
type Vec2F
returns The resulting vector.

Cross

Computes the cross product between this vector and the given one: this x other.

[Pure]
public method Cross (float32 z)
type Vec2F
params z Z-component of vector (X- and Y-components are zero).
returns The cross product vector.

Computes the cross product between this vector and the given one: this x other.

[Pure]
public method Cross (Vec2F v)
type float32
params v The other vector.
returns The Z-component of the cross product vector (X- and Y-components are zero).

Computes the cross product between this vector and the given one: this x other.

[Pure]
public method Cross (float32 x, float32 y)
type float32
params x X-component of vector.
  y Y-component of vector.
returns The Z-component of the cross product vector (X- and Y-components are zero).

Div

Divides this vector by the given scalar value.

[Pure]
public method Div (float32 v)
type Vec2F
params v The scalar value.
returns The resulting vector.

Dot

Computes the dot product between this vector and the given one.

[Pure]
public method Dot (Vec2F v)
type float32
params v The vector.
returns The resulting vector.

Computes the dot product between this vector and the given one.

[Pure]
public method Dot (float32 x, float32 y)
type float32
params x X-component of vector.
  y Y-component of vector.
returns The resulting vector.

Equals

Checks if this vector and the given one are equal.

[Pure]
public method Equals (Vec2F v)
type bool
params v The vector.
returns true if both vectors are equal, false if they are not.

Checks if this vector and the given one are equal.

[Pure]
public method Equals (float32 x, float32 y)
type bool
params x X-component of vector.
  y Y-component of vector.
returns true if both vectors are equal, false if they are not.

EqualsAlmost

Checks if this vector and the given one are similar but necessarily equal.

[Pure]
public method EqualsAlmost (Vec2F v)
type bool
params v The vector.
returns true if both vectors are similar, false if they are not.

Checks if this vector and the given one are similar but necessarily equal.

[Pure]
public method EqualsAlmost (float32 x, float32 y)
type bool
params x X-component of vector.
  y Y-component of vector.
returns true if both vectors are similar, false if they are not.

Floor

Computes the component-wise floor of this vector.

[Pure]
public method Floor ()
type Vec2F
returns The resulting vector.

GetHashCode

[Pure]
public override method GetHashCode ()
type int32

Max

Computes the component-wise maximum of this vector and the given one.

[Pure]
public method Max (Vec2F v)
type Vec2F
params v The vector.
returns The resulting vector.

Computes the component-wise maximum of this vector and the given one.

[Pure]
public method Max (float32 x, float32 y)
type Vec2F
params x X-component of vector.
  y Y-component of vector.
returns The resulting vector.

Min

Computes the component-wise minimum of this vector and the given one.

[Pure]
public method Min (Vec2F v)
type Vec2F
params v The vector.
returns The resulting vector.

Computes the component-wise minimum of this vector and the given one.

[Pure]
public method Min (float32 x, float32 y)
type Vec2F
params x X-component of vector.
  y Y-component of vector.
returns The resulting vector.

Mul

Multiplies this vector with the given one.

[Pure]
public method Mul (Vec2F v)
type Vec2F
params v The vector.
returns The resulting vector.

Multiplies this vector with the given scalar value.

[Pure]
public method Mul (float32 v)
type Vec2F
params v The scalar value.
returns The resulting vector.

Multiplies this vector with the given one.

[Pure]
public method Mul (float32 x, float32 y)
type Vec2F
params x X-component of vector.
  y Y-component of vector.
returns The resulting vector.

Neg

Negates this vector.

[Pure]
public method Neg ()
type Vec2F
returns The resulting vector.

Norm

Normalizes this vector to unit length.

[Pure]
public method Norm ()
type Vec2F
returns The resulting vector.

Sub

Subtracts the given vector from this one.

[Pure]
public method Sub (Vec2F v)
type Vec2F
params v The vector.
returns The resulting vector.

Subtracts the given vector from this one.

[Pure]
public method Sub (float32 x, float32 y)
type Vec2F
params x X-component of vector.
  y Y-component of vector.
returns The resulting vector.

ToString

Returns a formatted string representation of this vector.

[Pure]
public override method ToString ()
type string
returns [not-null] The formatted string value.