struct Graphene::Matrix
- Graphene::Matrix
- Struct
- Value
- Object
Overview
A structure capable of holding a 4x4 matrix.
The contents of the #graphene_::matrix_t structure are private and should never be accessed directly.
Defined in:
lib/gi-crystal/src/auto/graphene-1.0/matrix.crConstructors
- .new(pointer : Pointer(Void), transfer : GICrystal::Transfer)
- .new(data : LibGraphene::Matrix, _transfer : GICrystal::Transfer)
- .new(value : Graphene::Simd4X4F? = nil)
Class Method Summary
-
.g_type : UInt64
Returns the type id (GType) registered in GLib type system.
Instance Method Summary
- #==(other : self) : Bool
- #decompose : Graphene::Vec3
- #determinant : Float32
- #equal(b : Graphene::Matrix) : Bool
- #equal_fast(b : Graphene::Matrix) : Bool
- #free : Nil
- #init_from_2d(xx : Float64, yx : Float64, xy : Float64, yy : Float64, x_0 : Float64, y_0 : Float64) : Graphene::Matrix
- #init_from_float(v : Enumerable(Float32)) : Graphene::Matrix
- #init_from_float(*v : Float32)
- #init_from_matrix(src : Graphene::Matrix) : Graphene::Matrix
- #init_from_vec4(v0 : Graphene::Vec4, v1 : Graphene::Vec4, v2 : Graphene::Vec4, v3 : Graphene::Vec4) : Graphene::Matrix
- #init_frustum(left : Float32, right : Float32, bottom : Float32, top : Float32, z_near : Float32, z_far : Float32) : Graphene::Matrix
- #init_identity : Graphene::Matrix
- #init_look_at(eye : Graphene::Vec3, center : Graphene::Vec3, up : Graphene::Vec3) : Graphene::Matrix
- #init_ortho(left : Float32, right : Float32, top : Float32, bottom : Float32, z_near : Float32, z_far : Float32) : Graphene::Matrix
- #init_perspective(fovy : Float32, aspect : Float32, z_near : Float32, z_far : Float32) : Graphene::Matrix
- #init_rotate(angle : Float32, axis : Graphene::Vec3) : Graphene::Matrix
- #init_scale(x : Float32, y : Float32, z : Float32) : Graphene::Matrix
- #init_skew(x_skew : Float32, y_skew : Float32) : Graphene::Matrix
- #init_translate(p : Graphene::Point3D) : Graphene::Matrix
- #interpolate(b : Graphene::Matrix, factor : Float64) : Graphene::Matrix
- #inverse : Graphene::Matrix
- #is_2d : Bool
- #is_backface_visible : Bool
- #is_identity : Bool
- #is_singular : Bool
- #multiply(b : Graphene::Matrix) : Graphene::Matrix
- #near(b : Graphene::Matrix, epsilon : Float32) : Bool
- #normalize : Graphene::Matrix
- #perspective(depth : Float32) : Graphene::Matrix
- #print : Nil
- #project_point(p : Graphene::Point) : Graphene::Point
- #project_rect(r : Graphene::Rect) : Graphene::Quad
- #project_rect_bounds(r : Graphene::Rect) : Graphene::Rect
- #rotate(angle : Float32, axis : Graphene::Vec3) : Nil
- #rotate_euler(e : Graphene::Euler) : Nil
- #rotate_quaternion(q : Graphene::Quaternion) : Nil
- #rotate_x(angle : Float32) : Nil
- #rotate_y(angle : Float32) : Nil
- #rotate_z(angle : Float32) : Nil
- #row(index_ : UInt32) : Graphene::Vec4
- #scale(factor_x : Float32, factor_y : Float32, factor_z : Float32) : Nil
- #skew_xy(factor : Float32) : Nil
- #skew_xz(factor : Float32) : Nil
- #skew_yz(factor : Float32) : Nil
- #to_2d(xx : Float64, yx : Float64, xy : Float64, yy : Float64, x_0 : Float64, y_0 : Float64) : Bool
- #to_float(v : Enumerable(Float32)) : Nil
- #to_float(*v : Float32)
- #transform_bounds(r : Graphene::Rect) : Graphene::Rect
- #transform_box(b : Graphene::Box) : Graphene::Box
- #transform_point(p : Graphene::Point) : Graphene::Point
- #transform_point3d(p : Graphene::Point3D) : Graphene::Point3D
- #transform_ray(r : Graphene::Ray) : Graphene::Ray
- #transform_rect(r : Graphene::Rect) : Graphene::Quad
- #transform_sphere(s : Graphene::Sphere) : Graphene::Sphere
- #transform_vec3(v : Graphene::Vec3) : Graphene::Vec3
- #transform_vec4(v : Graphene::Vec4) : Graphene::Vec4
- #translate(pos : Graphene::Point3D) : Nil
- #transpose : Graphene::Matrix
- #unproject_point3d(modelview : Graphene::Matrix, point : Graphene::Point3D) : Graphene::Point3D
- #untransform_bounds(r : Graphene::Rect, bounds : Graphene::Rect) : Graphene::Rect
- #untransform_point(p : Graphene::Point, bounds : Graphene::Rect) : Graphene::Point
- #value(row : UInt32, col : UInt32) : Float32
- #value(*args, **options)
- #value(*args, **options, &)
- #value=(arg)
- #x_scale : Float32
- #x_translation : Float32
- #y_scale : Float32
- #y_translation : Float32
- #z_scale : Float32
- #z_translation : Float32
Constructor Detail
Class Method Detail
Instance Method Detail
def init_from_2d(xx : Float64, yx : Float64, xy : Float64, yy : Float64, x_0 : Float64, y_0 : Float64) : Graphene::Matrix
#
def init_from_vec4(v0 : Graphene::Vec4, v1 : Graphene::Vec4, v2 : Graphene::Vec4, v3 : Graphene::Vec4) : Graphene::Matrix
#
def init_frustum(left : Float32, right : Float32, bottom : Float32, top : Float32, z_near : Float32, z_far : Float32) : Graphene::Matrix
#
def init_look_at(eye : Graphene::Vec3, center : Graphene::Vec3, up : Graphene::Vec3) : Graphene::Matrix
#
def init_ortho(left : Float32, right : Float32, top : Float32, bottom : Float32, z_near : Float32, z_far : Float32) : Graphene::Matrix
#
def init_perspective(fovy : Float32, aspect : Float32, z_near : Float32, z_far : Float32) : Graphene::Matrix
#
def to_2d(xx : Float64, yx : Float64, xy : Float64, yy : Float64, x_0 : Float64, y_0 : Float64) : Bool
#
def unproject_point3d(modelview : Graphene::Matrix, point : Graphene::Point3D) : Graphene::Point3D
#