A point with three components: X, Y, and Z.
procedure Cross
(Self : not null access Graphene_Point3D_T;
B : not null access Graphene_Point3D_T;
Res : not null access Graphene_Point3D_T)
Computes the cross product of the two given Graphene.Point3d.Graphene_Point3D_T. Since: gtk+ 1.0
a Graphene.Point3d.Graphene_Point3D_T
return location for the cross product
function Distance
(Self : not null access Graphene_Point3D_T;
B : not null access Graphene_Point3D_T;
The_Delta : access Graphene.Vec3.Graphene_Vec3_T := null)
return Interfaces.C.C_float
Computes the distance between the two given Graphene.Point3d.Graphene_Point3D_T. Since: gtk+ 1.4
a Graphene.Point3d.Graphene_Point3D_T
return location for the distance components on the X, Y, and Z axis
the distance between two points
function Dot
(Self : not null access Graphene_Point3D_T;
B : not null access Graphene_Point3D_T)
return Interfaces.C.C_float
Computes the dot product of the two given Graphene.Point3d.Graphene_Point3D_T. Since: gtk+ 1.0
a Graphene.Point3d.Graphene_Point3D_T
the value of the dot product
function Equal
(Self : not null access Graphene_Point3D_T;
B : not null access Graphene_Point3D_T) return Boolean
Checks whether two given points are equal. Since: gtk+ 1.0
a Graphene.Point3d.Graphene_Point3D_T
true if the points are equal
procedure Free (Self : not null access Graphene_Point3D_T)
Frees the resources allocated via graphene_point3d_alloc. Since: gtk+ 1.0
function From_Object_Free
(B : not null access Graphene_Point3D_T) return Graphene_Point3D_T
Return the underlying object and free the pointer. This is meant to be used internally by GtkAda, and should not in general be called by user code.
function Get_Type return Glib.GType
type Graphene_Point3D_Array is array (Natural range <>) of Graphene_Point3D_T;
type Graphene_Point3D_T is record
X : Interfaces.C.C_float;
Y : Interfaces.C.C_float;
Z : Interfaces.C.C_float;
end record;
A point with three components: X, Y, and Z.
function Init
(Self : not null access Graphene_Point3D_T;
X : Interfaces.C.C_float;
Y : Interfaces.C.C_float;
Z : Interfaces.C.C_float) return access Graphene_Point3D_T
Initializes a Graphene.Point3d.Graphene_Point3D_T with the given coordinates. Since: gtk+ 1.0
the X coordinate of the point
the Y coordinate of the point
the Z coordinate of the point
the initialized Graphene.Point3d.Graphene_Point3D_T
function Init_From_Point
(Self : not null access Graphene_Point3D_T;
Src : not null access Graphene_Point3D_T)
return access Graphene_Point3D_T
Initializes a Graphene.Point3d.Graphene_Point3D_T using the coordinates of another Graphene.Point3d.Graphene_Point3D_T. Since: gtk+ 1.0
a Graphene.Point3d.Graphene_Point3D_T
the initialized point
function Init_From_Vec3
(Self : not null access Graphene_Point3D_T;
V : not null access Graphene.Vec3.Graphene_Vec3_T)
return access Graphene_Point3D_T
Initializes a Graphene.Point3d.Graphene_Point3D_T using the components of a Graphene.Vec3.Graphene_Vec3_T. Since: gtk+ 1.0
a Graphene.Vec3.Graphene_Vec3_T
the initialized Graphene.Point3d.Graphene_Point3D_T
procedure Interpolate
(Self : not null access Graphene_Point3D_T;
B : not null access Graphene_Point3D_T;
Factor : Gdouble;
Res : not null access Graphene_Point3D_T)
Linearly interpolates each component of A and B using the provided Factor, and places the result in Res. Since: gtk+ 1.0
a Graphene.Point3d.Graphene_Point3D_T
the interpolation factor
the return location for the interpolated Graphene.Point3d.Graphene_Point3D_T
function Length
(Self : not null access Graphene_Point3D_T)
return Interfaces.C.C_float
Computes the length of the vector represented by the coordinates of the given Graphene.Point3d.Graphene_Point3D_T. Since: gtk+ 1.0
the length of the vector represented by the point
function Near
(Self : not null access Graphene_Point3D_T;
B : not null access Graphene_Point3D_T;
Epsilon : Interfaces.C.C_float) return Boolean
Checks whether the two points are near each other, within an Epsilon factor. Since: gtk+ 1.0
a Graphene.Point3d.Graphene_Point3D_T
fuzzyness factor
true if the points are near each other
procedure Normalize
(Self : not null access Graphene_Point3D_T;
Res : not null access Graphene_Point3D_T)
Computes the normalization of the vector represented by the coordinates of the given Graphene.Point3d.Graphene_Point3D_T. Since: gtk+ 1.0
return location for the normalized Graphene.Point3d.Graphene_Point3D_T
procedure Normalize_Viewport
(Self : not null access Graphene_Point3D_T;
Viewport : not null access Graphene.Rect.Graphene_Rect_T;
Z_Near : Interfaces.C.C_float;
Z_Far : Interfaces.C.C_float;
Res : not null access Graphene_Point3D_T)
Normalizes the coordinates of a Graphene.Point3d.Graphene_Point3D_T using the given viewport and clipping planes. The coordinates of the resulting Graphene.Point3d.Graphene_Point3D_T will be in the [ -1, 1 ] range. Since: gtk+ 1.4
a Graphene.Rect.Graphene_Rect_T representing a viewport
the coordinate of the near clipping plane, or 0 for the default near clipping plane
the coordinate of the far clipping plane, or 1 for the default far clipping plane
the return location for the normalized Graphene.Point3d.Graphene_Point3D_T
procedure Scale
(Self : not null access Graphene_Point3D_T;
Factor : Interfaces.C.C_float;
Res : not null access Graphene_Point3D_T)
Scales the coordinates of the given Graphene.Point3d.Graphene_Point3D_T by the given Factor. Since: gtk+ 1.0
the scaling factor
return location for the scaled point
procedure To_Vec3
(Self : not null access Graphene_Point3D_T;
V : not null access Graphene.Vec3.Graphene_Vec3_T)
Stores the coordinates of a Graphene.Point3d.Graphene_Point3D_T into a Graphene.Vec3.Graphene_Vec3_T. Since: gtk+ 1.0
return location for a Graphene.Vec3.Graphene_Vec3_T
function Zero return access constant Graphene_Point3D_T
Retrieves a constant point with all three coordinates set to 0. Since: gtk+ 1.0
a zero point