Vec3
Object Hierarchy:
Description:
[ CCode ( cname = "graphene_vec3_t" , copy_function = "g_boxed_copy" , free_function = "g_boxed_free" , type_id = "graphene_vec3_get_type ()" ) ]
public struct Vec3
public struct Vec3
A structure capable of holding a vector with three dimensions: x, y, and z.
The contents of the Vec3 structure are private and should never be accessed directly.
Namespace: Graphene
Package: graphene-gobject-1.0
Content:
Static methods:
- public static unowned Vec3? one ()
Provides a constant pointer to a vector with three components, all sets to 1.
- public static unowned Vec3? x_axis ()
Provides a constant pointer to a vector with three components with values set to (1, 0, 0).
- public static unowned Vec3? y_axis ()
Provides a constant pointer to a vector with three components with values set to (0, 1, 0).
- public static unowned Vec3? z_axis ()
Provides a constant pointer to a vector with three components with values set to (0, 0, 1).
- public static unowned Vec3? zero ()
Provides a constant pointer to a vector with three components, all sets to 0.
Methods:
- public Vec3 add (Vec3 b)
Adds each component of the two given vectors.
- public Vec3 cross (Vec3 b)
Computes the cross product of the two given vectors.
- public Vec3 divide (Vec3 b)
Divides each component of the first operand this by the corresponding component of the second operand
b
, and places the results into the vectorres
. - public float dot (Vec3 b)
Computes the dot product of the two given vectors.
- public bool equal (Vec3 v2)
Checks whether the two given Vec3 are equal.
- public float get_x ()
Retrieves the first component of the given vector this.
- public Vec2 get_xy ()
Creates a Vec2 that contains the first and second components of the given Vec3.
- public Vec3 get_xy0 ()
Creates a Vec3 that contains the first two components of the given Vec3, and the third component set to 0.
- public Vec4 get_xyz0 ()
Converts a Vec3 in a Vec4 using 0.0 as the value for the fourth component of the resulting vector.
- public Vec4 get_xyz1 ()
Converts a Vec3 in a Vec4 using 1.0 as the value for the fourth component of the resulting vector.
- public Vec4 get_xyzw (float w)
Converts a Vec3 in a Vec4 using
w
as the value of the fourth component of the resulting vector. - public float get_y ()
Retrieves the second component of the given vector this.
- public float get_z ()
Retrieves the third component of the given vector this.
- public unowned Vec3? init (float x, float y, float z)
Initializes a Vec3 using the given values.
- public unowned Vec3? init_from_float (float[] src)
Initializes a Vec3 with the values from an array.
- public unowned Vec3? init_from_vec3 (Vec3 src)
Initializes a Vec3 with the values of another Vec3.
- public Vec3 interpolate (Vec3 v2, double factor)
Linearly interpolates this and
v2
using the givenfactor
. - public float length ()
Retrieves the length of the given vector this .
- public Vec3 max (Vec3 b)
Compares each component of the two given vectors and creates a vector that contains the maximum values.
- public Vec3 min (Vec3 b)
Compares each component of the two given vectors and creates a vector that contains the minimum values.
- public Vec3 multiply (Vec3 b)
Multiplies each component of the two given vectors.
- public bool near (Vec3 v2, float epsilon)
Compares the two given Vec3 vectors and checks whether their values are within the given
epsilon
. - public Vec3 negate ()
Negates the given Vec3.
- public Vec3 normalize ()
Normalizes the given Vec3.
- public Vec3 scale (float factor)
Multiplies all components of the given vector with the given scalar
factor
. - public Vec3 subtract (Vec3 b)
Subtracts from each component of the first operand this the corresponding component of the second operand
b
and places each result into the components ofres
. - public void to_float (ref float[] dest)
Copies the components of a Vec3 into the given array.