Basics
Guides
API Reference
Basics
Guides
API Reference
[29:7] extends: object
A point with three components: X, Y, and Z.
GraphenePoint3D (Handle = null)
Allocates a #graphene_point3d_t structure.
Handle is an optional native handle or wrapper whose handle to adopt; when the native constructor is called.toNativeHandle (Source)
Normalizes a constructor argument into a raw pointer carrier. Accepts a raw NativeHandle, a raw NativeBuffer returned from
fn.call(...), another generated wrapper exposinghandle(), or null. Returns null when the argument carries no pointer.
Source is the raw handle, raw buffer, wrapper, or null.A raw pointer carrier or null when no pointer is present.getLib ()
Returns the opened native library for this generated wrapper.
The opened native library.handle ()
Returns the wrapped NativeHandle.
The wrapped NativeHandle.isNull ()
Returns true when the wrapped handle is null.
A bool.describe ()
Returns a small string for debugging generated wrappers.
A string.cross (object b)
Computes the cross product of the two given #graphene_point3d_t.
b is a #graphene_point3d_t.res is return location for the cross product.None.distance (object b)
Computes the distance between the two given #graphene_point3d_t.
b is a #graphene_point3d_t.delta is return location for the distance components on the X, Y, and Z axis.the distance between two points.dot (object b)
Computes the dot product of the two given #graphene_point3d_t.
b is a #graphene_point3d_t.the value of the dot product.equal (object b)
Checks whether two given points are equal.
b is a #graphene_point3d_t.true if the points are equal.free ()
Frees the resources allocated via graphene_point3d_alloc().
None.init (double x, double y, double z)
Initializes a #graphene_point3d_t with the given coordinates.
x is the X coordinate of the point.y is the Y coordinate of the point.z is the Z coordinate of the point.the initialized #graphene_point3d_t.init_from_point (object src)
Initializes a #graphene_point3d_t using the coordinates of another #graphene_point3d_t.
src is a #graphene_point3d_t.the initialized point.init_from_vec3 (object v)
Initializes a #graphene_point3d_t using the components of a #graphene_vec3_t.
v is a #graphene_vec3_t.the initialized #graphene_point3d_t.interpolate (object b, double factor)
Linearly interpolates each component of @a and @b using the provided
and places the result in @res.b is a #graphene_point3d_t.factor is the interpolation factor.res is the return location for the interpolated #graphene_point3d_t.None.length ()
Computes the length of the vector represented by the coordinates of the given #graphene_point3d_t.
the length of the vector represented by the point.near (object b, double epsilon)
Checks whether the two points are near each other, within an @epsilon factor.
b is a #graphene_point3d_t.epsilon is fuzzyness factor.true if the points are near each other.normalize ()
Computes the normalization of the vector represented by the coordinates of the given #graphene_point3d_t.
res is return location for the normalized #graphene_point3d_t.None.normalize_viewport (object viewport, double z_near, double z_far)
Normalizes the coordinates of a #graphene_point3d_t using the given viewport and clipping planes. The coordinates of the resulting #graphene_point3d_t will be in the [ -1, 1 ] range.
viewport is a #graphene_rect_t representing a viewport.z_near is the coordinate of the near clipping plane, or 0 for the default near clipping plane.z_far is the coordinate of the far clipping plane, or 1 for the default far clipping plane.res is the return location for the normalized #graphene_point3d_t.None.scale (double factor)
Scales the coordinates of the given #graphene_point3d_t by the given
factor is the scaling factor.res is return location for the scaled point.None.to_vec3 ()
Stores the coordinates of a #graphene_point3d_t into a #graphene_vec3_t.
v is return location for a #graphene_vec3_t.None.[12:14] static extends: object
Generated struct layout helper for GIR record Point3D.
layout ()
Returns the Panama struct layout for
Point3D.

Aussom
Write once. Embed everywhere.
Copyright 2026 Austin Lehman. All rights reserved.