graphene.c.types

C types for graphene1 library

Types 21

enumgraphene_euler_order_t

Specify the order of the rotations on each axis.

The GRAPHENE_EULER_ORDER_DEFAULT value is special, and is used as an alias for one of the other orders.

Default = - 1Rotate in the default order; the default order is one of the following enumeration values
Xyz = 0Rotate in the X, Y, and Z order. Deprecated in Graphene 1.10, it's an alias for `GRAPHENEEULERORDER_SXYZ`
Yzx = 1Rotate in the Y, Z, and X order. Deprecated in Graphene 1.10, it's an alias for `GRAPHENEEULERORDER_SYZX`
Zxy = 2Rotate in the Z, X, and Y order. Deprecated in Graphene 1.10, it's an alias for `GRAPHENEEULERORDER_SZXY`
Xzy = 3Rotate in the X, Z, and Y order. Deprecated in Graphene 1.10, it's an alias for `GRAPHENEEULERORDER_SXZY`
Yxz = 4Rotate in the Y, X, and Z order. Deprecated in Graphene 1.10, it's an alias for `GRAPHENEEULERORDER_SYXZ`
Zyx = 5Rotate in the Z, Y, and X order. Deprecated in Graphene 1.10, it's an alias for `GRAPHENEEULERORDER_SZYX`
Sxyz = 6Defines a static rotation along the X, Y, and Z axes (Since: 1.10)
Sxyx = 7Defines a static rotation along the X, Y, and X axes (Since: 1.10)
Sxzy = 8Defines a static rotation along the X, Z, and Y axes (Since: 1.10)
Sxzx = 9Defines a static rotation along the X, Z, and X axes (Since: 1.10)
Syzx = 10Defines a static rotation along the Y, Z, and X axes (Since: 1.10)
Syzy = 11Defines a static rotation along the Y, Z, and Y axes (Since: 1.10)
Syxz = 12Defines a static rotation along the Y, X, and Z axes (Since: 1.10)
Syxy = 13Defines a static rotation along the Y, X, and Y axes (Since: 1.10)
Szxy = 14Defines a static rotation along the Z, X, and Y axes (Since: 1.10)
Szxz = 15Defines a static rotation along the Z, X, and Z axes (Since: 1.10)
Szyx = 16Defines a static rotation along the Z, Y, and X axes (Since: 1.10)
Szyz = 17Defines a static rotation along the Z, Y, and Z axes (Since: 1.10)
Rzyx = 18Defines a relative rotation along the Z, Y, and X axes (Since: 1.10)
Rxyx = 19Defines a relative rotation along the X, Y, and X axes (Since: 1.10)
Ryzx = 20Defines a relative rotation along the Y, Z, and X axes (Since: 1.10)
Rxzx = 21Defines a relative rotation along the X, Z, and X axes (Since: 1.10)
Rxzy = 22Defines a relative rotation along the X, Z, and Y axes (Since: 1.10)
Ryzy = 23Defines a relative rotation along the Y, Z, and Y axes (Since: 1.10)
Rzxy = 24Defines a relative rotation along the Z, X, and Y axes (Since: 1.10)
Ryxy = 25Defines a relative rotation along the Y, X, and Y axes (Since: 1.10)
Ryxz = 26Defines a relative rotation along the Y, X, and Z axes (Since: 1.10)
Rzxz = 27Defines a relative rotation along the Z, X, and Z axes (Since: 1.10)
Rxyz = 28Defines a relative rotation along the X, Y, and Z axes (Since: 1.10)
Rzyz = 29Defines a relative rotation along the Z, Y, and Z axes (Since: 1.10)
enumgraphene_ray_intersection_kind_t

The type of intersection.

None = 0No intersection
Enter = 1The ray is entering the intersected object
Leave = 2The ray is leaving the intersected object
structgraphene_box_t

A 3D box, described as the volume between a minimum and a maximum vertices.

Fields
graphene_vec3_t min
graphene_vec3_t max
structgraphene_euler_t

Describe a rotation using Euler angles.

The contents of the #graphene_euler_t structure are private and should never be accessed directly.

Fields
graphene_vec3_t angles
graphene_euler_order_t order
structgraphene_frustum_t

A 3D volume delimited by 2D clip planes.

The contents of the [graphene.frustum.Frustum] are private, and should not be modified directly.

Fields
graphene_plane_t[6] planes
structgraphene_matrix_t

A structure capable of holding a 4x4 matrix.

The contents of the #graphene_matrix_t structure are private and should never be accessed directly.

Fields
graphene_simd4x4f_t value
structgraphene_plane_t

A 2D plane that extends infinitely in a 3D volume.

The contents of the [graphene.plane.Plane] are private, and should not be modified directly.

Fields
graphene_vec3_t normal
float constant
structgraphene_point_t

A point with two coordinates.

Fields
float xthe X coordinate of the point
float ythe Y coordinate of the point
structgraphene_point3d_t

A point with three components: X, Y, and Z.

Fields
float xthe X coordinate
float ythe Y coordinate
float zthe Z coordinate
structgraphene_quad_t

A 4 vertex quadrilateral, as represented by four #graphene_point_t.

The contents of a #graphene_quad_t are private and should never be accessed directly.

Fields
graphene_point_t[4] points
structgraphene_quaternion_t

A quaternion.

The contents of the #graphene_quaternion_t structure are private and should never be accessed directly.

Fields
float x
float y
float z
float w
structgraphene_ray_t

A ray emitted from an origin in a given direction.

The contents of the [graphene.ray.Ray] structure are private, and should not be modified directly.

Fields
graphene_vec3_t origin
graphene_vec3_t direction
structgraphene_rect_t

The location and size of a rectangle region.

The width and height of a #graphene_rect_t can be negative; for instance, a #graphene_rect_t with an origin of [ 0, 0 ] and a size of [ 10, 10 ] is equivalent to a #graphene_rect_t with an origin of [ 10, 10 ] and a size of [ -10, -10 ].

Application code can normalize rectangles using [graphene.rect.Rect.normalize]; this function will ensure that the width and height of a rectangle are positive values. All functions taking a #graphene_rect_t as an argument will internally operate on a normalized copy; all functions returning a #graphene_rect_t will always return a normalized rectangle.

Fields
graphene_point_t originthe coordinates of the origin of the rectangle
graphene_size_t sizethe size of the rectangle
structgraphene_simd4f_t
Fields
float x
float y
float z
float w
structgraphene_simd4x4f_t
Fields
graphene_simd4f_t x
graphene_simd4f_t y
graphene_simd4f_t z
graphene_simd4f_t w
structgraphene_size_t

A size.

Fields
float widththe width
float heightthe height
structgraphene_sphere_t

A sphere, represented by its center and radius.

Fields
graphene_vec3_t center
float radius
structgraphene_triangle_t

A triangle.

Fields
graphene_vec3_t a
graphene_vec3_t b
graphene_vec3_t c
structgraphene_vec2_t

A structure capable of holding a vector with two dimensions, x and y.

The contents of the #graphene_vec2_t structure are private and should never be accessed directly.

Fields
graphene_simd4f_t value
structgraphene_vec3_t

A structure capable of holding a vector with three dimensions: x, y, and z.

The contents of the #graphene_vec3_t structure are private and should never be accessed directly.

Fields
graphene_simd4f_t value
structgraphene_vec4_t

A structure capable of holding a vector with four dimensions: x, y, z, and w.

The contents of the #graphene_vec4_t structure are private and should never be accessed directly.

Fields
graphene_simd4f_t value