glm/doc/gtxModules.doxy

499 lines
12 KiB
Plaintext
Raw Normal View History

2011-02-07 12:31:35 +00:00
/*!
\defgroup gtx GTX Extensions (Experimental)
2011-02-05 00:52:58 +00:00
\brief Functions and types that the GLSL specification doesn't define, but useful to have for a C++ program.
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
Experimental extensions are useful functions and types, but the development of
their API and functionality is not necessarily stable. They can change substantially
between versions. Backwards compatibility is not much of an issue for them.
2011-02-05 00:52:58 +00:00
Even if it's highly unrecommended, it's possible to include all the extensions at once by
including <glm/ext.hpp>. Otherwise, each extension needs to be included a specific file.
2011-02-05 00:52:58 +00:00
**/
2011-02-07 12:31:35 +00:00
/*!
\defgroup gtx_associated_min_max GLM_GTX_associated_min_max: Associated Min/Max
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Min and max functions that return associated values not the compared onces.
<glm/gtx/associated_min_max.hpp> need to be included to use these functionalities.
2011-02-05 00:52:58 +00:00
**/
2011-02-07 12:31:35 +00:00
/*!
\defgroup gtx_bit GLM_GTX_bit: Extended bitwise operations
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Allow to perform bit operations on integer values
2011-02-05 00:52:58 +00:00
<glm/gtx/bit.hpp> need to be included to use these functionalities.
2011-02-05 00:52:58 +00:00
**/
2011-02-07 12:31:35 +00:00
/*!
\defgroup gtx_closest_point GLM_GTX_closest_point: Find closest point
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Find the point on a straight line which is the closet of a point.
<glm/gtx/closest_point.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_color_cast GLM_GTX_color_cast: Color conversion
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Conversion between two color types.
<glm/gtx/color_cast.hpp> need to be included to use these functionalities.
2011-02-05 00:52:58 +00:00
**/
2011-02-07 12:31:35 +00:00
/*!
\defgroup gtx_color_space GLM_GTX_color_space: RGB to HSV conversion
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Related to RGB to HSV conversions and operations.
<glm/gtx/color_space.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_color_space_YCoCg GLM_GTX_color_space_YCoCg: RGB to YCoCg conversion
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief RGB to YCoCg conversions and operations
<glm/gtx/color_space_YCoCg.hpp> need to be included to use these functionalities.
2011-02-05 00:52:58 +00:00
**/
2011-02-07 12:31:35 +00:00
/*!
\defgroup gtx_compatibility GLM_GTX_compatibility: Cg and HLSL compatibility
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Provide functions to increase the compatibility with Cg and HLSL languages
<glm/gtx/compatibility.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_component_wise GLM_GTX_component_wise: Component wise
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Operations between components of a type
<glm/gtx/component_wise.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_epsilon GLM_GTX_epsilon: Epsilon comparison
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Comparison functions for a user defined epsilon values.
<glm/gtx/epsilon.hpp> need to be included to use these functionalities.
2011-02-05 00:52:58 +00:00
**/
2011-02-07 12:31:35 +00:00
/*!
\defgroup gtx_euler_angles GLM_GTX_euler_angles: Matrix from euler angles
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Build matrices from Euler angles.
<glm/gtx/euler_angles.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_extend GLM_GTX_extend: Position extending
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Extend a position from a source to a position at a defined length.
<glm/gtx/extend.hpp> need to be included to use these functionalities.
2011-02-05 00:52:58 +00:00
**/
2011-02-07 12:31:35 +00:00
/*!
\defgroup gtx_extented_min_max GLM_GTX_extented_min_max: Extended min max
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Min and max functions for 3 to 4 parameters.
<glm/gtx/extented_min_max.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_fast_exponential GLM_GTX_fast_exponential: Fast exponentiation functions
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Fast but less accurate implementations of exponential based functions.
<glm/gtx/fast_exponential.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_fast_square_root GLM_GTX_fast_square_root: Fast square root functions
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Fast but less accurate implementations of square root based functions.
<glm/gtx/fast_square_root.hpp> need to be included to use these functionalities.
2011-02-05 00:52:58 +00:00
**/
2011-02-07 12:31:35 +00:00
/*!
\defgroup gtx_fast_trigonometry GLM_GTX_fast_trigonometry: Fast trigonometric functions
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Fast but less accurate implementations of trigonometric functions.
<glm/gtx/fast_trigonometry.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_handed_coordinate_space GLM_GTX_handed_coordinate_space: Space Handedness
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief To know if a set of three basis vectors defines a right or left-handed coordinate system.
<glm/gtx/handed_coordinate_system.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_inertia GLM_GTX_inertia: Intertial matrix
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Create inertia matrices
<glm/gtx/inertia.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_int_10_10_10_2 GLM_GTX_int_10_10_10_2: Packed integer
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
\brief Pack vector to 1010102 integers. Storage only.
2011-02-07 12:31:35 +00:00
<glm/gtx/int_10_10_10_2.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_integer GLM_GTX_integer: Extended integer functions
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Add support for integer for core functions
<glm/gtx/integer.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_intersect GLM_GTX_intersect: Intersection tests
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Add intersection functions
2011-02-05 00:52:58 +00:00
<glm/gtx/intersect.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_log_base GLM_GTX_log_base: Log with base
2011-02-07 12:31:35 +00:00
\ingroup gtx
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
\brief Logarithm for any base. base can be a vector or a scalar.
<glm/gtx/log_base.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_matrix_cross_product GLM_GTX_matrix_cross_product: Cross product matrix form
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Build cross product matrices
<glm/gtx/matrix_cross_product.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_matrix_major_storage GLM_GTX_matrix_major_storage: Build matrix
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Build matrices with specific matrix order, row or column
<glm/gtx/matrix_major_storage.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_matrix_operation GLM_GTX_matrix_operation: Extended matrix operations
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Build diagonal matrices from vectors.
<glm/gtx/matrix_operation.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_matrix_query GLM_GTX_matrix_query: Query matrix properties
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Query to evaluate matrix properties
<glm/gtx/matrix_query.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_mixed_product GLM_GTX_mixed_producte: Mixed product
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Mixed product of 3 vectors.
<glm/gtx/mixed_product.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_multiple GLM_GTX_multiple: Multiples
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Find the closest number of a number multiple of other number.
<glm/gtx/multiple.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_norm GLM_GTX_norm: Vector norm calculations
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Various way to compute vector norms.
<glm/gtx/norm.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_normal GLM_GTX_normal: Compute normals
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Compute the normal of a triangle.
<glm/gtx/normal.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_normalize_dot GLM_GTX_normalize_dot: Normalize dot product
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Dot product of vectors that need to be normalize with a single square root.
<glm/gtx/normalized_dot.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_number_precision GLM_GTX_number_precision: Number precision
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Defined size types.
<glm/gtx/number_precision.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_ocl_type GLM_GTX_ocl_type: OpenCL types
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief OpenCL types.
<glm/gtx/ocl_type.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_optimum_pow GLM_GTX_optimum_pow: Optimum pow
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Integer exponentiation of power functions.
<glm/gtx/optimum_pow.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_orthonormalize GLM_GTX_orthonormalize: Orthonormalize
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Orthonormalize matrices.
<glm/gtx/orthonormalize.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_perpendicular GLM_GTX_perpendicular: Perpendicular
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Perpendicular of a vector from other one
<glm/gtx/perpendicular.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_polar_coordinates GLM_GTX_polar_coordinates: Polar coordinates
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Conversion from Euclidean space to polar space and revert.
<glm/gtx/polar_coordinates.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_projection GLM_GTX_projection: Projection
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Projection of a vector to other one
<glm/gtx/projection.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_quaternion GLM_GTX_quaternion: Extented quaternion types and functions
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Extented quaternion types and functions
2011-02-07 12:31:35 +00:00
<glm/gtx/quaternion.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_random GLM_GTX_random: Random
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Generate random number from various distribution methods
<glm/gtx/random.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_raw_data GLM_GTX_raw_data: Raw data
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Projection of a vector to other one
<glm/gtx/raw_data.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_reciprocal GLM_GTX_reciprocal: Reciprocal
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Define secant, cosecant and cotangent functions.
<glm/gtx/reciprocal.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_rotate_vector GLM_GTX_rotate_vector: Rotate vector
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Function to directly rotate a vector
<glm/gtx/rotate_vector.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_simd_mat4 GLM_GTX_simd_mat4: SIMD mat4 type and functions
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief SIMD implementation of mat4 type.
<glm/gtx/simd_mat4.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_simd_vec4 GLM_GTX_simd_vec4: SIMD vec4 type and functions
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief SIMD implementation of vec4 type.
<glm/gtx/simd_vec4.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_spline GLM_GTX_spline: Spline
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Spline functions
<glm/gtx/spline.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_string_cast GLM_GTX_string_cast: String cast
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Setup strings for GLM type values
<glm/gtx/string_cast.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_transform GLM_GTX_transform: Extented transformation matrices
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Add transformation matrices
<glm/gtx/transform.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_transform2 GLM_GTX_transform2: Extra transformation matrices
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Add extra transformation matrices
<glm/gtx/transform2.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_unsigned_int GLM_GTX_unsigned_int: Unsigned int
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Add support for unsigned integer for core functions
<glm/gtx/unsigned_int.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_vector_access GLM_GTX_vector_angle: Vector access
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Function to set values to vectors
<glm/gtx/vector_access.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_vector_angle GLM_GTX_vector_angle: Vector angle
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Compute angle between vectors
<glm/gtx/vector_angle.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_vector_query GLM_GTX_vector_query: Vector query
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Query informations of vector types
<glm/gtx/vector_query.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_verbose_operator GLM_GTX_verbose_operator: Verbose operator
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Use words to replace operators
<glm/gtx/verbose_operator.hpp> need to be included to use these functionalities.
2011-02-07 12:31:35 +00:00
**/
/*!
\defgroup gtx_wrap GLM_GTX_wrap: Texture coordinate wrap modes
2011-02-07 12:31:35 +00:00
\ingroup gtx
\brief Wrapping mode of texture coordinates.
2011-02-07 12:31:35 +00:00
<glm/gtx/wrap.hpp> need to be included to use these functionalities.
2011-02-05 00:52:58 +00:00
**/