# GLM: glm::gtx Namespace Reference

# glm::gtx Namespace Reference

GLM experimental extensions. The interface could change between releases. More...

## Namespaces

namespace | associated_min_max

| GLM_GTX_associated_min_max extension: Min and max functions that return associated values not the compared onces.
namespace | bit

| GLM_GTX_bit extension: Allow to perform bit operations on integer values.
namespace | closest_point

| GLM_GTX_closest_point extension: Find the point on a straight line which is the closet of a point.
namespace | color_cast

| GLM_GTX_color_cast extension: Conversion between two color types.
namespace | color_space

| GLM_GTX_color_space extension: Related to RGB to HSV conversions and operations.
namespace | color_space_YCoCg

| GLM_GTX_color_space_YCoCg extension: RGB to YCoCg conversions and operations.
namespace | comparison

| GLM_GTX_comparison extension: Defined comparison operators for vectors.
namespace | compatibility

| GLM_GTX_compatibility extension: Provide functions to increase the compatibility with Cg and HLSL languages.
namespace | component_wise

| GLM_GTX_component_wise extension: Operations between components of a type.
namespace | determinant

| GLM_GTX_determinant extension: Compute the determinant of a matrix.
namespace | double_float

| GLM_GTX_double_float extension: Add support for double precision flotting-point types.
namespace | epsilon

| GLM_GTX_epsilon extension: Comparaison functions for a user defined epsilon values.
namespace | euler_angles

| GLM_GTX_euler_angles extension: Build matrices from euler angles.
namespace | extend

| GLM_GTX_extend extension: Extend a position from a source to a position at a defined length.
namespace | extented_min_max

| GLM_GTX_extented_min_max extension: Min and max functions for 3 to 4 parameters.
namespace | fast_exponential

| GLM_GTX_fast_exponential extension: Fast but less accurate implementations of exponential based functions.
namespace | fast_square_root

| GLM_GTX_fast_square_root extension: Fast but less accurate implementations of square root based functions.
namespace | fast_trigonometry

| GLM_GTX_fast_trigonometry extension: Fast but less accurate implementations of trigonometric functions.
namespace | gradient_paint

| GLM_GTX_gradient_paint extension: Compute a radient gradient according section OpenVG 1.1 specifications, 9.3.2 Radial Gradients.
namespace | half_float

| GLM_GTX_half_float extension: Add support for half precision flotting-point types.
namespace | handed_coordinate_space

| GLM_GTX_handed_coordinate_space extension: To know if a triedron is right or left handed.
namespace | inertia

| GLM_GTX_inertia extension: Create inertia matrices.
namespace | integer

| GLM_GTX_integer extension: Add support for integer for core functions.
namespace | intersect

| GLM_GTX_intersect extension: Add intersection functions.
namespace | inverse

| GLM_GTX_inverse extension: Inverse matrix functions.
namespace | inverse_transpose

| GLM_GTX_inverse_transpose extension: Inverse transpose matrix functions.
namespace | log_base

| GLM_GTX_log_base extension: Logarithm for any base. base can be a vector or a scalar.
namespace | matrix_access

| GLM_GTX_matrix_access extension: Set a column or a row of a matrix.
namespace | matrix_cross_product

| GLM_GTX_matrix_cross_product: Build cross product matrices.
namespace | matrix_major_storage

| GLM_GTX_matrix_cross_product: Build matrices with specific matrix order, row or column.
namespace | matrix_operation

| GLM_GTX_matrix_operation: Build cross product matrices.
namespace | matrix_projection

| GLM_GTX_matrix_projection: Varius ways to build and operate on projection matrices.
namespace | matrix_query

| GLM_GTX_matrix_query: Query to evaluate matrices properties.
namespace | matrix_selection

| GLM_GTX_matrix_selection extension: Access to matrix columns or rows.
namespace | matx

| GLM_GTX_matx extension: - Work in progress - NxN matrix types.
namespace | mixed_product

| GLM_GTX_mixed_product extension: Mixed product of 3 vectors.
namespace | norm

| GLM_GTX_norm extension: Varius way to compute vector norms.
namespace | normal

| GLM_GTX_normal extension: Compute the normal of a triangle.
namespace | normalize_dot

| GLM_GTX_normalize_dot extension: Dot product of vectors that need to be normalize with a single square root.
namespace | number_precision

| GLM_GTX_number_precision extension: Defined size types.
namespace | ocl_type

| GLM_GTX_ocl_type extension: OpenCL types.
namespace | optimum_pow

| GLM_GTX_optimum_pow extension: Integer exponenciation of power functions.
namespace | orthonormalize

| GLM_GTX_orthonormalize extension: Orthonormalize matrices.
namespace | perpendicular

| GLM_GTX_perpendicular extension: Perpendicular of a vector from other one.
namespace | polar_coordinates

| GLM_GTX_polar_coordinates extension: Conversion from Euclidean space to polar space and revert.
namespace | projection

| GLM_GTX_projection extension: Projection of a vector to other one.
namespace | quaternion

| GLM_GTX_quaternion extension: Quaternion types and functions.
namespace | random

| GLM_GTX_random extension: Generate random number from varius distribution methods.
namespace | raw_data

| GLM_GTX_raw_data extension: Projection of a vector to other one.
namespace | reciprocal

| GLM_GTX_reciprocal extension: Define secant, cosecant and cotangent functions.
namespace | rotate_vector

| GLM_GTX_rotate_vector extension: Function to directly rotate a vector.
namespace | simd_mat4

| GLM_GTX_simd_mat4 extension: SIMD implementation of vec4 type.
namespace | simd_vec4

| GLM_GTX_simd_vec4 extension: SIMD implementation of vec4 type.
namespace | spline

| GLM_GTX_spline extension: Spline functions.
namespace | statistics_operation

| GLM_GTX_statistics_operation extension: - Work in progress - Statistics functions.
namespace | std_based_type

| GLM_GTX_std_based_type extension: Add support vector types based on C++ standard type.
namespace | string_cast

| GLM_GTX_string_cast extension: Setup strings for GLM type values.
namespace | transform

| GLM_GTX_transform extension: Add transformation matrices.
namespace | transform2

| GLM_GTX_transform2 extension: Add extra transformation matrices.
namespace | type_ptr

| GLM_GTX_type_ptr extension: Get access to vectors & matrices value type address.
namespace | unsigned_int

| GLM_GTX_unsigned_int extension: Add support for unsigned integer for core functions.
namespace | vector_access

| GLM_GTX_vector_access extension: Function to set values to vectors.
namespace | vector_angle

| GLM_GTX_vector_angle extension: Compute angle between vectors.
namespace | vector_query

| GLM_GTX_vector_query extension: Query informations of vector types.
namespace | vecx

| GLM_GTX_vecx extension: - Work in progress - Add custom size vectors.
namespace | verbose_operator

| GLM_GTX_verbose_operator extension: Use words to replace operators.

## Detailed Description

GLM experimental extensions. The interface could change between releases.