- Improved API documentation #668

This commit is contained in:
Christophe Riccio 2017-08-17 16:24:32 +02:00
parent b9936ac0ca
commit d93a3be4ac
97 changed files with 265 additions and 240 deletions

View File

@ -6,6 +6,8 @@
/// @defgroup core_func_common Common functions /// @defgroup core_func_common Common functions
/// @ingroup core /// @ingroup core
/// ///
/// Include <glm/common.hpp> to use these core features.
///
/// These all operate component-wise. The description is per component. /// These all operate component-wise. The description is per component.
#pragma once #pragma once

View File

@ -6,6 +6,8 @@
/// @defgroup core_func_exponential Exponential functions /// @defgroup core_func_exponential Exponential functions
/// @ingroup core /// @ingroup core
/// ///
/// Include <glm/exponential.hpp> to use these core features.
///
/// These all operate component-wise. The description is per component. /// These all operate component-wise. The description is per component.
#pragma once #pragma once

View File

@ -6,6 +6,8 @@
/// @defgroup core_func_geometric Geometric functions /// @defgroup core_func_geometric Geometric functions
/// @ingroup core /// @ingroup core
/// ///
/// Include <glm/geometric.hpp> to use these core features.
///
/// These operate on vectors as vectors, not component-wise. /// These operate on vectors as vectors, not component-wise.
#pragma once #pragma once

View File

@ -6,6 +6,8 @@
/// @defgroup core_func_integer Integer functions /// @defgroup core_func_integer Integer functions
/// @ingroup core /// @ingroup core
/// ///
/// Include <glm/integer.hpp> to use these core features.
///
/// These all operate component-wise. The description is per component. /// These all operate component-wise. The description is per component.
/// The notation [a, b] means the set of bits from bit-number a through bit-number /// The notation [a, b] means the set of bits from bit-number a through bit-number
/// b, inclusive. The lowest-order bit is bit 0. /// b, inclusive. The lowest-order bit is bit 0.

View File

@ -6,6 +6,8 @@
/// @defgroup core_func_matrix Matrix functions /// @defgroup core_func_matrix Matrix functions
/// @ingroup core /// @ingroup core
/// ///
/// Include <glm/matrix.hpp> to use these core features.
///
/// For each of the following built-in matrix functions, there is both a /// For each of the following built-in matrix functions, there is both a
/// single-qualifier floating point version, where all arguments and return values /// single-qualifier floating point version, where all arguments and return values
/// are single qualifier, and a double-qualifier floating version, where all /// are single qualifier, and a double-qualifier floating version, where all

View File

@ -7,6 +7,8 @@
/// @defgroup core_func_packing Floating-Point Pack and Unpack Functions /// @defgroup core_func_packing Floating-Point Pack and Unpack Functions
/// @ingroup core /// @ingroup core
/// ///
/// Include <glm/packing.hpp> to use these core features.
///
/// These functions do not operate component-wise, rather as described in each case. /// These functions do not operate component-wise, rather as described in each case.
#pragma once #pragma once

View File

@ -6,6 +6,8 @@
/// @defgroup core_func_trigonometric Angle and Trigonometry Functions /// @defgroup core_func_trigonometric Angle and Trigonometry Functions
/// @ingroup core /// @ingroup core
/// ///
/// Include <glm/trigonometric.hpp> to use these core features.
///
/// Function parameters specified as angle are assumed to be in units of radians. /// Function parameters specified as angle are assumed to be in units of radians.
/// In no case will any of these functions result in a divide by zero error. If /// In no case will any of these functions result in a divide by zero error. If
/// the divisor of a ratio is 0, then results will be undefined. /// the divisor of a ratio is 0, then results will be undefined.

View File

@ -6,6 +6,8 @@
/// @defgroup core_func_vector_relational Vector Relational Functions /// @defgroup core_func_vector_relational Vector Relational Functions
/// @ingroup core /// @ingroup core
/// ///
/// Include <glm/relational.hpp> to use these core features.
///
/// Relational and equality operators (<, <=, >, >=, ==, !=) are defined to /// Relational and equality operators (<, <=, >, >=, ==, !=) are defined to
/// operate on scalars and produce scalar Boolean results. For vector results, /// operate on scalars and produce scalar Boolean results. For vector results,
/// use the following built-in functions. /// use the following built-in functions.

View File

@ -40,7 +40,6 @@
#include "./gtc/color_space.hpp" #include "./gtc/color_space.hpp"
#include "./gtc/constants.hpp" #include "./gtc/constants.hpp"
#include "./gtc/epsilon.hpp" #include "./gtc/epsilon.hpp"
#include "./gtc/functions.hpp"
#include "./gtc/integer.hpp" #include "./gtc/integer.hpp"
#include "./gtc/matrix_access.hpp" #include "./gtc/matrix_access.hpp"
#include "./gtc/matrix_integer.hpp" #include "./gtc/matrix_integer.hpp"
@ -77,6 +76,7 @@
#include "./gtx/fast_exponential.hpp" #include "./gtx/fast_exponential.hpp"
#include "./gtx/fast_square_root.hpp" #include "./gtx/fast_square_root.hpp"
#include "./gtx/fast_trigonometry.hpp" #include "./gtx/fast_trigonometry.hpp"
#include "./gtx/functions.hpp"
#include "./gtx/gradient_paint.hpp" #include "./gtx/gradient_paint.hpp"
#include "./gtx/handed_coordinate_space.hpp" #include "./gtx/handed_coordinate_space.hpp"
#include "./gtx/integer.hpp" #include "./gtx/integer.hpp"

View File

@ -7,9 +7,9 @@
/// @defgroup gtc_bitfield GLM_GTC_bitfield /// @defgroup gtc_bitfield GLM_GTC_bitfield
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief Allow to perform bit operations on integer values /// Include <glm/gtc/bitfield.hpp> to use the features of this extension.
/// ///
/// <glm/gtc/bitfield.hpp> need to be included to use these functionalities. /// Allow to perform bit operations on integer values
#include "../detail/setup.hpp" #include "../detail/setup.hpp"

View File

@ -7,9 +7,9 @@
/// @defgroup gtc_color_space GLM_GTC_color_space /// @defgroup gtc_color_space GLM_GTC_color_space
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief Allow to perform bit operations on integer values /// Include <glm/gtc/color_space.hpp> to use the features of this extension.
/// ///
/// <glm/gtc/color_space.hpp> need to be included to use these functionalities. /// Allow to perform bit operations on integer values
#pragma once #pragma once

View File

@ -5,10 +5,10 @@
/// ///
/// @defgroup gtc_constants GLM_GTC_constants /// @defgroup gtc_constants GLM_GTC_constants
/// @ingroup gtc /// @ingroup gtc
///
/// Include <glm/gtc/constants.hpp> to use the features of this extension.
/// ///
/// @brief Provide a list of constants and precomputed useful values. /// Provide a list of constants and precomputed useful values.
///
/// <glm/gtc/constants.hpp> need to be included to use these features.
#pragma once #pragma once

View File

@ -6,10 +6,10 @@
/// ///
/// @defgroup gtc_epsilon GLM_GTC_epsilon /// @defgroup gtc_epsilon GLM_GTC_epsilon
/// @ingroup gtc /// @ingroup gtc
///
/// Include <glm/gtc/epsilon.hpp> to use the features of this extension.
/// ///
/// @brief Comparison functions for a user defined epsilon values. /// Comparison functions for a user defined epsilon values.
///
/// <glm/gtc/epsilon.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtc_integer GLM_GTC_integer /// @defgroup gtc_integer GLM_GTC_integer
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief Allow to perform bit operations on integer values /// Include <glm/gtc/integer.hpp> to use the features of this extension.
/// ///
/// <glm/gtc/integer.hpp> need to be included to use these functionalities. /// @brief Allow to perform bit operations on integer values
#pragma once #pragma once

View File

@ -5,9 +5,10 @@
/// ///
/// @defgroup gtc_matrix_access GLM_GTC_matrix_access /// @defgroup gtc_matrix_access GLM_GTC_matrix_access
/// @ingroup gtc /// @ingroup gtc
/// ///
/// Include <glm/gtc/matrix_access.hpp> to use the features of this extension.
///
/// Defines functions to access rows or columns of a matrix easily. /// Defines functions to access rows or columns of a matrix easily.
/// <glm/gtc/matrix_access.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -6,8 +6,9 @@
/// @defgroup gtc_matrix_integer GLM_GTC_matrix_integer /// @defgroup gtc_matrix_integer GLM_GTC_matrix_integer
/// @ingroup gtc /// @ingroup gtc
/// ///
/// Include <glm/gtc/matrix_integer.hpp> to use the features of this extension.
///
/// Defines a number of matrices with integer types. /// Defines a number of matrices with integer types.
/// <glm/gtc/matrix_integer.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -6,8 +6,9 @@
/// @defgroup gtc_matrix_inverse GLM_GTC_matrix_inverse /// @defgroup gtc_matrix_inverse GLM_GTC_matrix_inverse
/// @ingroup gtc /// @ingroup gtc
/// ///
/// Include <glm/gtc/matrix_integer.hpp> to use the features of this extension.
///
/// Defines additional matrix inverting functions. /// Defines additional matrix inverting functions.
/// <glm/gtc/matrix_inverse.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -8,15 +8,15 @@
/// @defgroup gtc_matrix_transform GLM_GTC_matrix_transform /// @defgroup gtc_matrix_transform GLM_GTC_matrix_transform
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief Defines functions that generate common transformation matrices. /// Include <glm/gtc/matrix_transform.hpp> to use the features of this extension.
///
/// Defines functions that generate common transformation matrices.
/// ///
/// The matrices generated by this extension use standard OpenGL fixed-function /// The matrices generated by this extension use standard OpenGL fixed-function
/// conventions. For example, the lookAt function generates a transform from world /// conventions. For example, the lookAt function generates a transform from world
/// space into the specific eye space that the projective matrix functions /// space into the specific eye space that the projective matrix functions
/// (perspective, ortho, etc) are designed to expect. The OpenGL compatibility /// (perspective, ortho, etc) are designed to expect. The OpenGL compatibility
/// specifications defines the particular layout of this eye space. /// specifications defines the particular layout of this eye space.
///
/// <glm/gtc/matrix_transform.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -6,12 +6,13 @@
/// @defgroup gtc_noise GLM_GTC_noise /// @defgroup gtc_noise GLM_GTC_noise
/// @ingroup gtc /// @ingroup gtc
/// ///
/// Include <glm/gtc/noise.hpp> to use the features of this extension.
///
/// Defines 2D, 3D and 4D procedural noise functions /// Defines 2D, 3D and 4D procedural noise functions
/// Based on the work of Stefan Gustavson and Ashima Arts on "webgl-noise": /// Based on the work of Stefan Gustavson and Ashima Arts on "webgl-noise":
/// https://github.com/ashima/webgl-noise /// https://github.com/ashima/webgl-noise
/// Following Stefan Gustavson's paper "Simplex noise demystified": /// Following Stefan Gustavson's paper "Simplex noise demystified":
/// http://www.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf /// http://www.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf
/// <glm/gtc/noise.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -6,10 +6,10 @@
/// @defgroup gtc_packing GLM_GTC_packing /// @defgroup gtc_packing GLM_GTC_packing
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief This extension provides a set of function to convert vertors to packed /// Include <glm/gtc/packing.hpp> to use the features of this extension.
/// formats.
/// ///
/// <glm/gtc/packing.hpp> need to be included to use these features. /// This extension provides a set of function to convert vertors to packed
/// formats.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtc_quaternion GLM_GTC_quaternion /// @defgroup gtc_quaternion GLM_GTC_quaternion
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief Defines a templated quaternion type and several quaternion operations. /// Include <glm/gtc/quaternion.hpp> to use the features of this extension.
/// ///
/// <glm/gtc/quaternion.hpp> need to be included to use these functionalities. /// Defines a templated quaternion type and several quaternion operations.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtc_random GLM_GTC_random /// @defgroup gtc_random GLM_GTC_random
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief Generate random number from various distribution methods. /// Include <glm/gtc/random.hpp> to use the features of this extension.
/// ///
/// <glm/gtc/random.hpp> need to be included to use these functionalities. /// Generate random number from various distribution methods.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtc_reciprocal GLM_GTC_reciprocal /// @defgroup gtc_reciprocal GLM_GTC_reciprocal
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief Define secant, cosecant and cotangent functions. /// Include <glm/gtc/reciprocal.hpp> to use the features of this extension.
/// ///
/// <glm/gtc/reciprocal.hpp> need to be included to use these features. /// Define secant, cosecant and cotangent functions.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtc_round GLM_GTC_round /// @defgroup gtc_round GLM_GTC_round
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief rounding value to specific boundings /// Include <glm/gtc/round.hpp> to use the features of this extension.
/// ///
/// <glm/gtc/round.hpp> need to be included to use these functionalities. /// Rounding value to specific boundings
#pragma once #pragma once

View File

@ -6,8 +6,9 @@
/// @defgroup gtc_type_aligned GLM_GTC_type_aligned /// @defgroup gtc_type_aligned GLM_GTC_type_aligned
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief Aligned types. /// Include <glm/gtc/type_aligned.hpp> to use the features of this extension.
/// <glm/gtc/type_aligned.hpp> need to be included to use these features. ///
/// Aligned types allowing SIMD optimizations of vectors and matrices types
#pragma once #pragma once

View File

@ -7,12 +7,12 @@
/// @defgroup gtc_type_precision GLM_GTC_type_precision /// @defgroup gtc_type_precision GLM_GTC_type_precision
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief Defines specific C++-based qualifier types. /// Include <glm/gtc/type_precision.hpp> to use the features of this extension.
///
/// Defines specific C++-based qualifier types.
/// ///
/// @ref core_precision defines types based on GLSL's qualifier qualifiers. This /// @ref core_precision defines types based on GLSL's qualifier qualifiers. This
/// extension defines types based on explicitly-sized C++ data types. /// extension defines types based on explicitly-sized C++ data types.
///
/// <glm/gtc/type_precision.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -7,7 +7,9 @@
/// @defgroup gtc_type_ptr GLM_GTC_type_ptr /// @defgroup gtc_type_ptr GLM_GTC_type_ptr
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief Handles the interaction between pointers and vector, matrix types. /// Include <glm/gtc/type_ptr.hpp> to use the features of this extension.
///
/// Handles the interaction between pointers and vector, matrix types.
/// ///
/// This extension defines an overloaded function, glm::value_ptr, which /// This extension defines an overloaded function, glm::value_ptr, which
/// takes any of the \ref core_template "core template types". It returns /// takes any of the \ref core_template "core template types". It returns
@ -28,7 +30,7 @@
/// glUniformMatrix4fv(uniformMatrixLoc, 1, GL_FALSE, glm::value_ptr(someMatrix)); /// glUniformMatrix4fv(uniformMatrixLoc, 1, GL_FALSE, glm::value_ptr(someMatrix));
/// @endcode /// @endcode
/// ///
/// <glm/gtc/type_ptr.hpp> need to be included to use these functionalities. /// <glm/gtc/type_ptr.hpp> need to be included to use the features of this extension.
#pragma once #pragma once

View File

@ -6,10 +6,11 @@
/// @defgroup gtc_ulp GLM_GTC_ulp /// @defgroup gtc_ulp GLM_GTC_ulp
/// @ingroup gtc /// @ingroup gtc
/// ///
/// @brief Allow the measurement of the accuracy of a function against a reference /// Include <glm/gtc/ulp.hpp> to use the features of this extension.
///
/// Allow the measurement of the accuracy of a function against a reference
/// implementation. This extension works on floating-point data and provide results /// implementation. This extension works on floating-point data and provide results
/// in ULP. /// in ULP.
/// <glm/gtc/ulp.hpp> need to be included to use these features.
#pragma once #pragma once

View File

@ -5,9 +5,10 @@
/// ///
/// @defgroup gtc_vec1 GLM_GTC_vec1 /// @defgroup gtc_vec1 GLM_GTC_vec1
/// @ingroup gtc /// @ingroup gtc
///
/// Include <glm/gtc/vec1.hpp> to use the features of this extension.
/// ///
/// @brief Add vec1, ivec1, uvec1 and bvec1 types. /// Add vec1, ivec1, uvec1 and bvec1 types.
/// <glm/gtc/vec1.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -6,9 +6,10 @@
/// ///
/// @defgroup gtx_associated_min_max GLM_GTX_associated_min_max /// @defgroup gtx_associated_min_max GLM_GTX_associated_min_max
/// @ingroup gtx /// @ingroup gtx
///
/// Include <glm/gtx/associated_min_max.hpp> to use the features of this extension.
/// ///
/// @brief Min and max functions that return associated values not the compared onces. /// @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.
#pragma once #pragma once

View File

@ -5,10 +5,10 @@
/// ///
/// @defgroup gtx_bit GLM_GTX_bit /// @defgroup gtx_bit GLM_GTX_bit
/// @ingroup gtx /// @ingroup gtx
///
/// Include <glm/gtx/bit.hpp> to use the features of this extension.
/// ///
/// @brief Allow to perform bit operations on integer values /// Allow to perform bit operations on integer values
///
/// <glm/gtx/bit.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_closest_point GLM_GTX_closest_point /// @defgroup gtx_closest_point GLM_GTX_closest_point
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Find the point on a straight line which is the closet of a point. /// Include <glm/gtx/closest_point.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/closest_point.hpp> need to be included to use these functionalities. /// Find the point on a straight line which is the closet of a point.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_color_encoding GLM_GTX_color_encoding /// @defgroup gtx_color_encoding GLM_GTX_color_encoding
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Allow to perform bit operations on integer values /// Include <glm/gtx/color_encoding.hpp> to use the features of this extension.
/// ///
/// <glm/gtc/color_encoding.hpp> need to be included to use these functionalities. /// @brief Allow to perform bit operations on integer values
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_color_space GLM_GTX_color_space /// @defgroup gtx_color_space GLM_GTX_color_space
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Related to RGB to HSV conversions and operations. /// Include <glm/gtx/color_space.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/color_space.hpp> need to be included to use these functionalities. /// Related to RGB to HSV conversions and operations.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_color_space_YCoCg GLM_GTX_color_space_YCoCg /// @defgroup gtx_color_space_YCoCg GLM_GTX_color_space_YCoCg
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief RGB to YCoCg conversions and operations /// Include <glm/gtx/color_space_YCoCg.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/color_space_YCoCg.hpp> need to be included to use these functionalities. /// RGB to YCoCg conversions and operations
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_common GLM_GTX_common /// @defgroup gtx_common GLM_GTX_common
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Provide functions to increase the compatibility with Cg and HLSL languages /// Include <glm/gtx/common.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/common.hpp> need to be included to use these functionalities. /// @brief Provide functions to increase the compatibility with Cg and HLSL languages
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_compatibility GLM_GTX_compatibility /// @defgroup gtx_compatibility GLM_GTX_compatibility
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Provide functions to increase the compatibility with Cg and HLSL languages /// Include <glm/gtx/compatibility.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/compatibility.hpp> need to be included to use these functionalities. /// Provide functions to increase the compatibility with Cg and HLSL languages
#pragma once #pragma once

View File

@ -8,9 +8,9 @@
/// @defgroup gtx_component_wise GLM_GTX_component_wise /// @defgroup gtx_component_wise GLM_GTX_component_wise
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Operations between components of a type /// Include <glm/gtx/component_wise.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/component_wise.hpp> need to be included to use these functionalities. /// Operations between components of a type
#pragma once #pragma once

View File

@ -9,9 +9,9 @@
/// @defgroup gtx_dual_quaternion GLM_GTX_dual_quaternion /// @defgroup gtx_dual_quaternion GLM_GTX_dual_quaternion
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Defines a templated dual-quaternion type and several dual-quaternion operations. /// Include <glm/gtx/dual_quaternion.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/dual_quaternion.hpp> need to be included to use these functionalities. /// Defines a templated dual-quaternion type and several dual-quaternion operations.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_euler_angles GLM_GTX_euler_angles /// @defgroup gtx_euler_angles GLM_GTX_euler_angles
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Build matrices from Euler angles. /// Include <glm/gtx/euler_angles.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/euler_angles.hpp> need to be included to use these functionalities. /// Build matrices from Euler angles.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_extend GLM_GTX_extend /// @defgroup gtx_extend GLM_GTX_extend
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Extend a position from a source to a position at a defined length. /// Include <glm/gtx/extend.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/extend.hpp> need to be included to use these functionalities. /// Extend a position from a source to a position at a defined length.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_extented_min_max GLM_GTX_extented_min_max /// @defgroup gtx_extented_min_max GLM_GTX_extented_min_max
/// @ingroup gtx /// @ingroup gtx
/// ///
/// Min and max functions for 3 to 4 parameters. /// Include <glm/gtx/extented_min_max.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/extented_min_max.hpp> need to be included to use these functionalities. /// Min and max functions for 3 to 4 parameters.
#pragma once #pragma once

View File

@ -6,10 +6,10 @@
/// ///
/// @defgroup gtx_exterior_product GLM_GTX_exterior_product /// @defgroup gtx_exterior_product GLM_GTX_exterior_product
/// @ingroup gtx /// @ingroup gtx
///
/// Include <glm/gtx/exterior_product.hpp> to use the features of this extension.
/// ///
/// @brief Allow to perform bit operations on integer values /// @brief Allow to perform bit operations on integer values
///
/// <glm/gtc/bitfield.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_fast_exponential GLM_GTX_fast_exponential /// @defgroup gtx_fast_exponential GLM_GTX_fast_exponential
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Fast but less accurate implementations of exponential based functions. /// Include <glm/gtx/fast_exponential.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/fast_exponential.hpp> need to be included to use these functionalities. /// Fast but less accurate implementations of exponential based functions.
#pragma once #pragma once

View File

@ -6,11 +6,11 @@
/// @defgroup gtx_fast_square_root GLM_GTX_fast_square_root /// @defgroup gtx_fast_square_root GLM_GTX_fast_square_root
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Fast but less accurate implementations of square root based functions. /// Include <glm/gtx/fast_square_root.hpp> to use the features of this extension.
///
/// Fast but less accurate implementations of square root based functions.
/// - Sqrt optimisation based on Newton's method, /// - Sqrt optimisation based on Newton's method,
/// www.gamedev.net/community/forums/topic.asp?topic id=139956 /// www.gamedev.net/community/forums/topic.asp?topic id=139956
///
/// <glm/gtx/fast_square_root.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_fast_trigonometry GLM_GTX_fast_trigonometry /// @defgroup gtx_fast_trigonometry GLM_GTX_fast_trigonometry
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Fast but less accurate implementations of trigonometric functions. /// Include <glm/gtx/fast_trigonometry.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/fast_trigonometry.hpp> need to be included to use these functionalities. /// Fast but less accurate implementations of trigonometric functions.
#pragma once #pragma once

View File

@ -1,15 +1,15 @@
/// @ref gtc_functions /// @ref gtx_functions
/// @file glm/gtc/functions.hpp /// @file glm/gtx/functions.hpp
/// ///
/// @see core (dependence) /// @see core (dependence)
/// @see gtc_quaternion (dependence) /// @see gtc_quaternion (dependence)
/// ///
/// @defgroup gtc_functions GLM_GTC_functions /// @defgroup gtx_functions GLM_GTX_functions
/// @ingroup gtc /// @ingroup gtx
///
/// Include <glm/gtx/functions.hpp> to use the features of this extension.
/// ///
/// @brief List of useful common functions. /// List of useful common functions.
///
/// <glm/gtc/functions.hpp> need to be included to use these functionalities.
#pragma once #pragma once
@ -19,12 +19,12 @@
#include "../detail/type_vec2.hpp" #include "../detail/type_vec2.hpp"
#if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED) #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
# pragma message("GLM: GLM_GTC_functions extension included") # pragma message("GLM: GLM_GTX_functions extension included")
#endif #endif
namespace glm namespace glm
{ {
/// @addtogroup gtc_functions /// @addtogroup gtx_functions
/// @{ /// @{
/// 1D gauss function /// 1D gauss function

View File

@ -1,5 +1,5 @@
/// @ref gtc_functions /// @ref gtx_functions
/// @file glm/gtc/functions.inl /// @file glm/gtx/functions.inl
#include "../detail/func_exponential.hpp" #include "../detail/func_exponential.hpp"

View File

@ -7,8 +7,9 @@
/// @defgroup gtx_gradient_paint GLM_GTX_gradient_paint /// @defgroup gtx_gradient_paint GLM_GTX_gradient_paint
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Functions that return the color of procedural gradient for specific coordinates. /// Include <glm/gtx/gradient_paint.hpp> to use the features of this extension.
/// <glm/gtx/gradient_paint.hpp> need to be included to use these functionalities. ///
/// Functions that return the color of procedural gradient for specific coordinates.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_handed_coordinate_space GLM_GTX_handed_coordinate_space /// @defgroup gtx_handed_coordinate_space GLM_GTX_handed_coordinate_space
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief To know if a set of three basis vectors defines a right or left-handed coordinate system. /// Include <glm/gtx/handed_coordinate_system.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/handed_coordinate_system.hpp> need to be included to use these functionalities. /// To know if a set of three basis vectors defines a right or left-handed coordinate system.
#pragma once #pragma once

View File

@ -5,10 +5,10 @@
/// ///
/// @defgroup gtx_hash GLM_GTX_hash /// @defgroup gtx_hash GLM_GTX_hash
/// @ingroup gtx /// @ingroup gtx
///
/// Include <glm/gtx/hash.hpp> to use the features of this extension.
/// ///
/// @brief Add std::hash support for glm types /// Add std::hash support for glm types
///
/// <glm/gtx/hash.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -8,7 +8,7 @@
/// ///
/// @brief Add std::hash support for glm types /// @brief Add std::hash support for glm types
/// ///
/// <glm/gtx/hash.inl> need to be included to use these functionalities. /// <glm/gtx/hash.inl> need to be included to use the features of this extension.
namespace glm { namespace glm {
namespace detail namespace detail

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_integer GLM_GTX_integer /// @defgroup gtx_integer GLM_GTX_integer
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Add support for integer for core functions /// Include <glm/gtx/integer.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/integer.hpp> need to be included to use these functionalities. /// Add support for integer for core functions
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_intersect GLM_GTX_intersect /// @defgroup gtx_intersect GLM_GTX_intersect
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Add intersection functions /// Include <glm/gtx/intersect.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/intersect.hpp> need to be included to use these functionalities. /// Add intersection functions
#pragma once #pragma once

View File

@ -8,14 +8,14 @@
/// ///
/// @defgroup gtx_io GLM_GTX_io /// @defgroup gtx_io GLM_GTX_io
/// @ingroup gtx /// @ingroup gtx
///
/// Include <glm/gtx/io.hpp> to use the features of this extension.
/// ///
/// @brief std::[w]ostream support for glm types /// std::[w]ostream support for glm types
/// ///
/// std::[w]ostream support for glm types + qualifier/width/etc. manipulators /// std::[w]ostream support for glm types + qualifier/width/etc. manipulators
/// based on howard hinnant's std::chrono io proposal /// based on howard hinnant's std::chrono io proposal
/// [http://home.roadrunner.com/~hinnant/bloomington/chrono_io.html] /// [http://home.roadrunner.com/~hinnant/bloomington/chrono_io.html]
///
/// <glm/gtx/io.hpp> needs to be included to use these functionalities.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_log_base GLM_GTX_log_base /// @defgroup gtx_log_base GLM_GTX_log_base
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Logarithm for any base. base can be a vector or a scalar. /// Include <glm/gtx/log_base.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/log_base.hpp> need to be included to use these functionalities. /// Logarithm for any base. base can be a vector or a scalar.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_matrix_cross_product GLM_GTX_matrix_cross_product /// @defgroup gtx_matrix_cross_product GLM_GTX_matrix_cross_product
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Build cross product matrices /// Include <glm/gtx/matrix_cross_product.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/matrix_cross_product.hpp> need to be included to use these functionalities. /// Build cross product matrices
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_matrix_decompose GLM_GTX_matrix_decompose /// @defgroup gtx_matrix_decompose GLM_GTX_matrix_decompose
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Decomposes a model matrix to translations, rotation and scale components /// Include <glm/gtx/matrix_decompose.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/matrix_decompose.hpp> need to be included to use these functionalities. /// Decomposes a model matrix to translations, rotation and scale components
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_matrix_factorisation GLM_GTX_matrix_factorisation /// @defgroup gtx_matrix_factorisation GLM_GTX_matrix_factorisation
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Functions to factor matrices in various forms /// Include <glm/gtx/matrix_factorisation.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/matrix_factorisation.hpp> need to be included to use these functionalities. /// Functions to factor matrices in various forms
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_matrix_interpolation GLM_GTX_matrix_interpolation /// @defgroup gtx_matrix_interpolation GLM_GTX_matrix_interpolation
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Allows to directly interpolate two exiciting matrices. /// Include <glm/gtx/matrix_interpolation.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/matrix_interpolation.hpp> need to be included to use these functionalities. /// Allows to directly interpolate two exiciting matrices.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_matrix_major_storage GLM_GTX_matrix_major_storage /// @defgroup gtx_matrix_major_storage GLM_GTX_matrix_major_storage
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Build matrices with specific matrix order, row or column /// Include <glm/gtx/matrix_major_storage.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/matrix_major_storage.hpp> need to be included to use these functionalities. /// Build matrices with specific matrix order, row or column
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_matrix_operation GLM_GTX_matrix_operation /// @defgroup gtx_matrix_operation GLM_GTX_matrix_operation
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Build diagonal matrices from vectors. /// Include <glm/gtx/matrix_operation.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/matrix_operation.hpp> need to be included to use these functionalities. /// Build diagonal matrices from vectors.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_matrix_query GLM_GTX_matrix_query /// @defgroup gtx_matrix_query GLM_GTX_matrix_query
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Query to evaluate matrix properties /// Include <glm/gtx/matrix_query.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/matrix_query.hpp> need to be included to use these functionalities. /// Query to evaluate matrix properties
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_matrix_transform_2d GLM_GTX_matrix_transform_2d /// @defgroup gtx_matrix_transform_2d GLM_GTX_matrix_transform_2d
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Defines functions that generate common 2d transformation matrices. /// Include <glm/gtx/matrix_transform_2d.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/matrix_transform_2d.hpp> need to be included to use these functionalities. /// Defines functions that generate common 2d transformation matrices.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_mixed_product GLM_GTX_mixed_producte /// @defgroup gtx_mixed_product GLM_GTX_mixed_producte
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Mixed product of 3 vectors. /// Include <glm/gtx/mixed_product.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/mixed_product.hpp> need to be included to use these functionalities. /// Mixed product of 3 vectors.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_norm GLM_GTX_norm /// @defgroup gtx_norm GLM_GTX_norm
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Various ways to compute vector norms. /// Include <glm/gtx/norm.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/norm.hpp> need to be included to use these functionalities. /// Various ways to compute vector norms.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_normal GLM_GTX_normal /// @defgroup gtx_normal GLM_GTX_normal
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Compute the normal of a triangle. /// Include <glm/gtx/normal.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/normal.hpp> need to be included to use these functionalities. /// Compute the normal of a triangle.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_normalize_dot GLM_GTX_normalize_dot /// @defgroup gtx_normalize_dot GLM_GTX_normalize_dot
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Dot product of vectors that need to be normalize with a single square root. /// Include <glm/gtx/normalized_dot.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/normalized_dot.hpp> need to be included to use these functionalities. /// Dot product of vectors that need to be normalize with a single square root.
#pragma once #pragma once

View File

@ -8,9 +8,9 @@
/// @defgroup gtx_number_precision GLM_GTX_number_precision /// @defgroup gtx_number_precision GLM_GTX_number_precision
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Defined size types. /// Include <glm/gtx/number_precision.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/number_precision.hpp> need to be included to use these functionalities. /// Defined size types.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_optimum_pow GLM_GTX_optimum_pow /// @defgroup gtx_optimum_pow GLM_GTX_optimum_pow
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Integer exponentiation of power functions. /// Include <glm/gtx/optimum_pow.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/optimum_pow.hpp> need to be included to use these functionalities. /// Integer exponentiation of power functions.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_orthonormalize GLM_GTX_orthonormalize /// @defgroup gtx_orthonormalize GLM_GTX_orthonormalize
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Orthonormalize matrices. /// Include <glm/gtx/orthonormalize.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/orthonormalize.hpp> need to be included to use these functionalities. /// Orthonormalize matrices.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_perpendicular GLM_GTX_perpendicular /// @defgroup gtx_perpendicular GLM_GTX_perpendicular
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Perpendicular of a vector from other one /// Include <glm/gtx/perpendicular.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/perpendicular.hpp> need to be included to use these functionalities. /// Perpendicular of a vector from other one
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_polar_coordinates GLM_GTX_polar_coordinates /// @defgroup gtx_polar_coordinates GLM_GTX_polar_coordinates
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Conversion from Euclidean space to polar space and revert. /// Include <glm/gtx/polar_coordinates.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/polar_coordinates.hpp> need to be included to use these functionalities. /// Conversion from Euclidean space to polar space and revert.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_projection GLM_GTX_projection /// @defgroup gtx_projection GLM_GTX_projection
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Projection of a vector to other one /// Include <glm/gtx/projection.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/projection.hpp> need to be included to use these functionalities. /// Projection of a vector to other one
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_quaternion GLM_GTX_quaternion /// @defgroup gtx_quaternion GLM_GTX_quaternion
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Extented quaternion types and functions /// Include <glm/gtx/quaternion.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/quaternion.hpp> need to be included to use these functionalities. /// Extented quaternion types and functions
#pragma once #pragma once

View File

@ -5,10 +5,10 @@
/// @defgroup gtx_range GLM_GTX_range /// @defgroup gtx_range GLM_GTX_range
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Defines begin and end for vectors and matrices. Useful for range-based for loop. /// Include <glm/gtx/range.hpp> to use the features of this extension.
/// The range is defined over the elements, not over columns or rows (e.g. mat4 has 16 elements).
/// ///
/// <glm/gtx/range.hpp> need to be included to use these functionalities. /// Defines begin and end for vectors and matrices. Useful for range-based for loop.
/// The range is defined over the elements, not over columns or rows (e.g. mat4 has 16 elements).
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_raw_data GLM_GTX_raw_data /// @defgroup gtx_raw_data GLM_GTX_raw_data
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Projection of a vector to other one /// Include <glm/gtx/raw_data.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/raw_data.hpp> need to be included to use these functionalities. /// Projection of a vector to other one
#pragma once #pragma once

View File

@ -8,9 +8,9 @@
/// @defgroup gtx_rotate_normalized_axis GLM_GTX_rotate_normalized_axis /// @defgroup gtx_rotate_normalized_axis GLM_GTX_rotate_normalized_axis
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Quaternions and matrices rotations around normalized axis. /// Include <glm/gtx/rotate_normalized_axis.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/rotate_normalized_axis.hpp> need to be included to use these functionalities. /// Quaternions and matrices rotations around normalized axis.
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_rotate_vector GLM_GTX_rotate_vector /// @defgroup gtx_rotate_vector GLM_GTX_rotate_vector
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Function to directly rotate a vector /// Include <glm/gtx/rotate_vector.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/rotate_vector.hpp> need to be included to use these functionalities. /// Function to directly rotate a vector
#pragma once #pragma once

View File

@ -2,7 +2,9 @@
/// @file glm/gtx/scalar_multiplication.hpp /// @file glm/gtx/scalar_multiplication.hpp
/// @author Joshua Moerman /// @author Joshua Moerman
/// ///
/// @brief Enables scalar multiplication for all types /// Include <glm/gtx/scalar_multiplication.hpp> to use the features of this extension.
///
/// Enables scalar multiplication for all types
/// ///
/// Since GLSL is very strict about types, the following (often used) combinations do not work: /// Since GLSL is very strict about types, the following (often used) combinations do not work:
/// double * vec4 /// double * vec4

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_scalar_relational GLM_GTX_scalar_relational /// @defgroup gtx_scalar_relational GLM_GTX_scalar_relational
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Extend a position from a source to a position at a defined length. /// Include <glm/gtx/scalar_relational.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/scalar_relational.hpp> need to be included to use these functionalities. /// Extend a position from a source to a position at a defined length.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_spline GLM_GTX_spline /// @defgroup gtx_spline GLM_GTX_spline
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Spline functions /// Include <glm/gtx/spline.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/spline.hpp> need to be included to use these functionalities. /// Spline functions
#pragma once #pragma once

View File

@ -7,8 +7,9 @@
/// @defgroup gtx_std_based_type GLM_GTX_std_based_type /// @defgroup gtx_std_based_type GLM_GTX_std_based_type
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Adds vector types based on STL value types. /// Include <glm/gtx/std_based_type.hpp> to use the features of this extension.
/// <glm/gtx/std_based_type.hpp> need to be included to use these functionalities. ///
/// Adds vector types based on STL value types.
#pragma once #pragma once

View File

@ -8,9 +8,10 @@
/// @defgroup gtx_string_cast GLM_GTX_string_cast /// @defgroup gtx_string_cast GLM_GTX_string_cast
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Setup strings for GLM type values /// Include <glm/gtx/string_cast.hpp> to use the features of this extension.
///
/// Setup strings for GLM type values
/// ///
/// <glm/gtx/string_cast.hpp> need to be included to use these functionalities.
/// This extension is not supported with CUDA /// This extension is not supported with CUDA
#pragma once #pragma once

View File

@ -9,9 +9,9 @@
/// @defgroup gtx_transform GLM_GTX_transform /// @defgroup gtx_transform GLM_GTX_transform
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Add transformation matrices /// Include <glm/gtx/transform.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/transform.hpp> need to be included to use these functionalities. /// Add transformation matrices
#pragma once #pragma once

View File

@ -7,9 +7,9 @@
/// @defgroup gtx_transform2 GLM_GTX_transform2 /// @defgroup gtx_transform2 GLM_GTX_transform2
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Add extra transformation matrices /// Include <glm/gtx/transform2.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/transform2.hpp> need to be included to use these functionalities. /// Add extra transformation matrices
#pragma once #pragma once

View File

@ -7,11 +7,11 @@
/// @defgroup gtx_type_aligned GLM_GTX_type_aligned /// @defgroup gtx_type_aligned GLM_GTX_type_aligned
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Defines aligned types. /// Include <glm/gtx/type_aligned.hpp> to use the features of this extension.
///
/// Defines aligned types.
/// ///
/// @ref core_precision defines aligned types. /// @ref core_precision defines aligned types.
///
/// <glm/gtx/type_aligned.hpp> need to be included to use these functionalities.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_type_trait GLM_GTX_type_trait /// @defgroup gtx_type_trait GLM_GTX_type_trait
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Defines traits for each type. /// Include <glm/gtx/type_trait.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/type_trait.hpp> need to be included to use these functionalities. /// Defines traits for each type.
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_vec_swizzle GLM_GTX_vec_swizzle /// @defgroup gtx_vec_swizzle GLM_GTX_vec_swizzle
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Functions to perform swizzle operation. /// Include <glm/gtx/vec_swizzle.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/vec_swizzle.hpp> need to be included to use these functionalities. /// Functions to perform swizzle operation.
#pragma once #pragma once

View File

@ -8,9 +8,9 @@
/// @defgroup gtx_vector_angle GLM_GTX_vector_angle /// @defgroup gtx_vector_angle GLM_GTX_vector_angle
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Compute angle between vectors /// Include <glm/gtx/vector_angle.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/vector_angle.hpp> need to be included to use these functionalities. /// Compute angle between vectors
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_vector_query GLM_GTX_vector_query /// @defgroup gtx_vector_query GLM_GTX_vector_query
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Query informations of vector types /// Include <glm/gtx/vector_query.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/vector_query.hpp> need to be included to use these functionalities. /// Query informations of vector types
#pragma once #pragma once

View File

@ -6,9 +6,9 @@
/// @defgroup gtx_wrap GLM_GTX_wrap /// @defgroup gtx_wrap GLM_GTX_wrap
/// @ingroup gtx /// @ingroup gtx
/// ///
/// @brief Wrapping mode of texture coordinates. /// Include <glm/gtx/wrap.hpp> to use the features of this extension.
/// ///
/// <glm/gtx/wrap.hpp> need to be included to use these functionalities. /// Wrapping mode of texture coordinates.
#pragma once #pragma once

109
manual.md
View File

@ -29,23 +29,22 @@
+ [4.2. GLM_GTC_color_space](#section4_2) + [4.2. GLM_GTC_color_space](#section4_2)
+ [4.3. GLM_GTC_constants](#section4_3) + [4.3. GLM_GTC_constants](#section4_3)
+ [4.4. GLM_GTC_epsilon](#section4_4) + [4.4. GLM_GTC_epsilon](#section4_4)
+ [4.5. GLM_GTC_functions](#section4_5) + [4.5. GLM_GTC_integer](#section4_5)
+ [4.6. GLM_GTC_integer](#section4_6) + [4.6. GLM_GTC_matrix_access](#section4_6)
+ [4.7. GLM_GTC_matrix_access](#section4_7) + [4.7. GLM_GTC_matrix_integer](#section4_7)
+ [4.8. GLM_GTC_matrix_integer](#section4_8) + [4.8. GLM_GTC_matrix_inverse](#section4_8)
+ [4.9. GLM_GTC_matrix_inverse](#section4_9) + [4.9. GLM_GTC_matrix_transform](#section4_9)
+ [4.10. GLM_GTC_matrix_transform](#section4_10) + [4.10. GLM_GTC_noise](#section4_10)
+ [4.11. GLM_GTC_noise](#section4_11) + [4.11. GLM_GTC_packing](#section4_11)
+ [4.12. GLM_GTC_packing](#section4_12) + [4.12. GLM_GTC_quaternion](#section4_12)
+ [4.13. GLM_GTC_quaternion](#section4_13) + [4.13. GLM_GTC_random](#section4_13)
+ [4.14. GLM_GTC_random](#section4_14) + [4.14. GLM_GTC_reciprocal](#section4_14)
+ [4.15. GLM_GTC_reciprocal](#section4_15) + [4.15. GLM_GTC_round](#section4_15)
+ [4.16. GLM_GTC_round](#section4_16) + [4.16. GLM_GTC_type_alignment](#section4_16)
+ [4.17. GLM_GTC_type_alignment](#section4_17) + [4.17. GLM_GTC_type_precision](#section4_17)
+ [4.18. GLM_GTC_type_precision](#section4_18) + [4.18. GLM_GTC_type_ptr](#section4_18)
+ [4.19. GLM_GTC_type_ptr](#section4_19) + [4.19. GLM_GTC_ulp](#section4_19)
+ [4.20. GLM_GTC_ulp](#section4_20) + [4.20. GLM_GTC_vec1](#section4_20)
+ [4.21. GLM_GTC_vec1](#section4_21)
+ [5. OpenGL interoperability](#section5) + [5. OpenGL interoperability](#section5)
+ [5.1. GLM Replacements for deprecated OpenGL functions](#section5_1) + [5.1. GLM Replacements for deprecated OpenGL functions](#section5_1)
+ [5.2. GLM Replacements for GPU functions](#section5_2) + [5.2. GLM Replacements for GPU functions](#section5_2)
@ -578,37 +577,31 @@ Approximate equality comparisons for floating-point numbers, possibly with a use
&lt;glm/gtc/epsilon.hpp&gt; need to be included to use these features. &lt;glm/gtc/epsilon.hpp&gt; need to be included to use these features.
### <a name="section4_5"></a> 4.5. GLM\_GTC\_functions ### <a name="section4_5"></a> 4.5. GLM\_GTC\_integer
Useful functions.
&lt;glm/gtc/functions.hpp&gt; need to be included to use these features.
### <a name="section4_6"></a> 4.6. GLM\_GTC\_integer
Integer variants of core GLM functions. Integer variants of core GLM functions.
&lt;glm/gtc/integer.hpp&gt; need to be included to use these features. &lt;glm/gtc/integer.hpp&gt; need to be included to use these features.
### <a name="section4_7"></a> 4.7. GLM\_GTC\_matrix\_access ### <a name="section4_6"></a> 4.6. GLM\_GTC\_matrix\_access
Functions to conveniently access the individual rows or columns of a matrix. Functions to conveniently access the individual rows or columns of a matrix.
&lt;glm/gtc/matrix\_access.hpp&gt; need to be included to use these features. &lt;glm/gtc/matrix\_access.hpp&gt; need to be included to use these features.
### <a name="section4_8"></a> 4.8. GLM\_GTC\_matrix\_integer ### <a name="section4_7"></a> 4.7. GLM\_GTC\_matrix\_integer
Integer matrix types similar to the core floating-point matrices. Some operations (such as inverse and determinant) are not supported. Integer matrix types similar to the core floating-point matrices. Some operations (such as inverse and determinant) are not supported.
&lt;glm/gtc/matrix\_integer.hpp&gt; need to be included to use these features. &lt;glm/gtc/matrix\_integer.hpp&gt; need to be included to use these features.
### <a name="section4_9"></a> 4.9. GLM\_GTC\_matrix\_inverse ### <a name="section4_8"></a> 4.8. GLM\_GTC\_matrix\_inverse
Additional matrix inverse functions. Additional matrix inverse functions.
&lt;glm/gtc/matrix\_inverse.hpp&gt; need to be included to use these features. &lt;glm/gtc/matrix\_inverse.hpp&gt; need to be included to use these features.
### <a name="section4_10"></a> 4.10. GLM\_GTC\_matrix\_transform ### <a name="section4_9"></a> 4.9. GLM\_GTC\_matrix\_transform
Matrix transformation functions that follow the OpenGL fixed-function conventions. Matrix transformation functions that follow the OpenGL fixed-function conventions.
@ -619,7 +612,7 @@ projective matrix functions (***perspective***, ***ortho***, etc) are designed t
&lt;glm/gtc/matrix\_transform.hpp&gt; need to be included to use these features. &lt;glm/gtc/matrix\_transform.hpp&gt; need to be included to use these features.
### <a name="section4_11"></a> 4.11. GLM\_GTC\_noise ### <a name="section4_10"></a> 4.10. GLM\_GTC\_noise
Define 2D, 3D and 4D procedural noise functions. Define 2D, 3D and 4D procedural noise functions.
@ -627,53 +620,53 @@ Define 2D, 3D and 4D procedural noise functions.
![](/doc/manual/noise-simplex1.jpg) ![](/doc/manual/noise-simplex1.jpg)
Figure 4.11.1: glm::simplex(glm::vec2(x / 16.f, y / 16.f)); Figure 4.10.1: glm::simplex(glm::vec2(x / 16.f, y / 16.f));
![](/doc/manual/noise-simplex2.jpg) ![](/doc/manual/noise-simplex2.jpg)
Figure 4.11.2: glm::simplex(glm::vec3(x / 16.f, y / 16.f, 0.5f)); Figure 4.10.2: glm::simplex(glm::vec3(x / 16.f, y / 16.f, 0.5f));
![](/doc/manual/noise-simplex3.jpg) ![](/doc/manual/noise-simplex3.jpg)
Figure 4.11.3: glm::simplex(glm::vec4(x / 16.f, y / 16.f, 0.5f, 0.5f)); Figure 4.10.3: glm::simplex(glm::vec4(x / 16.f, y / 16.f, 0.5f, 0.5f));
![](/doc/manual/noise-perlin1.jpg) ![](/doc/manual/noise-perlin1.jpg)
Figure 4.11.4: glm::perlin(glm::vec2(x / 16.f, y / 16.f)); Figure 4.10.4: glm::perlin(glm::vec2(x / 16.f, y / 16.f));
![](/doc/manual/noise-perlin2.jpg) ![](/doc/manual/noise-perlin2.jpg)
Figure 4.11.5: glm::perlin(glm::vec3(x / 16.f, y / 16.f, 0.5f)); Figure 4.10.5: glm::perlin(glm::vec3(x / 16.f, y / 16.f, 0.5f));
![](/doc/manual/noise-perlin3.jpg) ![](/doc/manual/noise-perlin3.jpg)
Figure 4.11.6: glm::perlin(glm::vec4(x / 16.f, y / 16.f, 0.5f, 0.5f))); Figure 4.10.6: glm::perlin(glm::vec4(x / 16.f, y / 16.f, 0.5f, 0.5f)));
![](/doc/manual/noise-perlin4.png) ![](/doc/manual/noise-perlin4.png)
Figure 4.11.7: glm::perlin(glm::vec2(x / 16.f, y / 16.f), glm::vec2(2.0f)); Figure 4.10.7: glm::perlin(glm::vec2(x / 16.f, y / 16.f), glm::vec2(2.0f));
![](/doc/manual/noise-perlin5.png) ![](/doc/manual/noise-perlin5.png)
Figure 4.11.8: glm::perlin(glm::vec3(x / 16.f, y / 16.f, 0.5f), glm::vec3(2.0f)); Figure 4.10.8: glm::perlin(glm::vec3(x / 16.f, y / 16.f, 0.5f), glm::vec3(2.0f));
![](/doc/manual/noise-perlin6.png) ![](/doc/manual/noise-perlin6.png)
Figure 4.11.9: glm::perlin(glm::vec4(x / 16.f, y / 16.f, glm::vec2(0.5f)), glm::vec4(2.0f)); Figure 4.10.9: glm::perlin(glm::vec4(x / 16.f, y / 16.f, glm::vec2(0.5f)), glm::vec4(2.0f));
### <a name="section4_12"></a> 4.12. GLM\_GTC\_packing ### <a name="section4_11"></a> 4.11. GLM\_GTC\_packing
Convert scalar and vector types to and from packed formats, saving space at the cost of precision. However, packing a value into a format that it was previously unpacked from is guaranteed to be lossless. Convert scalar and vector types to and from packed formats, saving space at the cost of precision. However, packing a value into a format that it was previously unpacked from is guaranteed to be lossless.
&lt;glm/gtc/packing.hpp&gt; need to be included to use these features. &lt;glm/gtc/packing.hpp&gt; need to be included to use these features.
### <a name="section4_13"></a> 4.13. GLM\_GTC\_quaternion ### <a name="section4_12"></a> 4.12. GLM\_GTC\_quaternion
Quaternions and operations upon thereof. Quaternions and operations upon thereof.
&lt;glm/gtc/quaternion.hpp&gt; need to be included to use these features. &lt;glm/gtc/quaternion.hpp&gt; need to be included to use these features.
### <a name="section4_14"></a> 4.14. GLM\_GTC\_random ### <a name="section4_13"></a> 4.13. GLM\_GTC\_random
Probability distributions in up to four dimensions. Probability distributions in up to four dimensions.
@ -681,47 +674,47 @@ Probability distributions in up to four dimensions.
![](/doc/manual/random-linearrand.png) ![](/doc/manual/random-linearrand.png)
Figure 4.14.1: glm::vec4(glm::linearRand(glm::vec2(-1), glm::vec2(1)), 0, 1); Figure 4.13.1: glm::vec4(glm::linearRand(glm::vec2(-1), glm::vec2(1)), 0, 1);
![](/doc/manual/random-circularrand.png) ![](/doc/manual/random-circularrand.png)
Figure 4.14.2: glm::vec4(glm::circularRand(1.0f), 0, 1); Figure 4.13.2: glm::vec4(glm::circularRand(1.0f), 0, 1);
![](/doc/manual/random-sphericalrand.png) ![](/doc/manual/random-sphericalrand.png)
Figure 4.14.3: glm::vec4(glm::sphericalRand(1.0f), 1); Figure 4.13.3: glm::vec4(glm::sphericalRand(1.0f), 1);
![](/doc/manual/random-diskrand.png) ![](/doc/manual/random-diskrand.png)
Figure 4.14.4: glm::vec4(glm::diskRand(1.0f), 0, 1); Figure 4.13.4: glm::vec4(glm::diskRand(1.0f), 0, 1);
![](/doc/manual/random-ballrand.png) ![](/doc/manual/random-ballrand.png)
Figure 4.14.5: glm::vec4(glm::ballRand(1.0f), 1); Figure 4.13.5: glm::vec4(glm::ballRand(1.0f), 1);
![](/doc/manual/random-gaussrand.png) ![](/doc/manual/random-gaussrand.png)
Figure 4.14.6: glm::vec4(glm::gaussRand(glm::vec3(0), glm::vec3(1)), 1); Figure 4.13.6: glm::vec4(glm::gaussRand(glm::vec3(0), glm::vec3(1)), 1);
### <a name="section4_15"></a> 4.15. GLM\_GTC\_reciprocal ### <a name="section4_14"></a> 4.14. GLM\_GTC\_reciprocal
Reciprocal trigonometric functions (e.g. secant, cosecant, tangent). Reciprocal trigonometric functions (e.g. secant, cosecant, tangent).
&lt;glm/gtc/reciprocal.hpp&gt; need to be included to use these functionalities. &lt;glm/gtc/reciprocal.hpp&gt; need to be included to use the features of this extension.
### <a name="section4_16"></a> 4.16. GLM\_GTC\_round ### <a name="section4_15"></a> 4.15. GLM\_GTC\_round
Various rounding operations and common special cases thereof. Various rounding operations and common special cases thereof.
&lt;glm/gtc/round.hpp&gt; need to be included to use these functionalities. &lt;glm/gtc/round.hpp&gt; need to be included to use the features of this extension.
### <a name="section4_17"></a> 4.17. GLM\_GTC\_type\_aligned ### <a name="section4_16"></a> 4.16. GLM\_GTC\_type\_aligned
Aligned vector types. Aligned vector types.
&lt;glm/gtc/type\_aligned.hpp&gt; need to be included to use these functionalities. &lt;glm/gtc/type\_aligned.hpp&gt; need to be included to use the features of this extension.
### <a name="section4_18"></a> 4.18. GLM\_GTC\_type\_precision ### <a name="section4_17"></a> 4.17. GLM\_GTC\_type\_precision
Vector and matrix types with defined precisions, e.g. i8vec4, which is a 4D vector of signed 8-bit integers. Vector and matrix types with defined precisions, e.g. i8vec4, which is a 4D vector of signed 8-bit integers.
@ -787,9 +780,9 @@ Available defines for 64-bit floating-point types (glm::f64vec\*, glm::f64mat\*,
* GLM\_PRECISION\_MEDIUMP\_FLOAT64: Medium precision * GLM\_PRECISION\_MEDIUMP\_FLOAT64: Medium precision
* GLM\_PRECISION\_HIGHP\_FLOAT64: High precision (default) * GLM\_PRECISION\_HIGHP\_FLOAT64: High precision (default)
&lt;glm/gtc/type\_precision.hpp&gt; need to be included to use these functionalities. &lt;glm/gtc/type\_precision.hpp&gt; need to be included to use the features of this extension.
### <a name="section4_19"></a> 4.19. GLM\_GTC\_type\_ptr ### <a name="section4_18"></a> 4.18. GLM\_GTC\_type\_ptr
Facilitate interactions between pointers to basic types (e.g. float*) and GLM types (e.g. mat4). Facilitate interactions between pointers to basic types (e.g. float*) and GLM types (e.g. mat4).
@ -827,13 +820,13 @@ implicit cast in this example. However cast operators may produce programs runni
&lt;glm/gtc/type\_ptr.hpp&gt; need to be included to use these features. &lt;glm/gtc/type\_ptr.hpp&gt; need to be included to use these features.
### <a name="section4_20"></a> 4.20. GLM\_GTC\_ulp ### <a name="section4_19"></a> 4.19. GLM\_GTC\_ulp
Measure a function's accuracy given a reference implementation of it. This extension works on floating-point data and provides results in [ULP](http://ljk.imag.fr/membres/Carine.Lucas/TPScilab/JMMuller/ulp-toms.pdf). Measure a function's accuracy given a reference implementation of it. This extension works on floating-point data and provides results in [ULP](http://ljk.imag.fr/membres/Carine.Lucas/TPScilab/JMMuller/ulp-toms.pdf).
&lt;glm/gtc/ulp.hpp&gt; need to be included to use these features. &lt;glm/gtc/ulp.hpp&gt; need to be included to use these features.
### <a name="section4_21"></a> 4.21. GLM\_GTC\_vec1 ### <a name="section4_20"></a> 4.20. GLM\_GTC\_vec1
Add \*vec1 types. Add \*vec1 types.

View File

@ -67,6 +67,7 @@ glm::mat4 camera(float Translate, glm::vec2 const& Rotate)
- No more default initialization of vector, matrix and quaternion types - No more default initialization of vector, matrix and quaternion types
- Added lowp variant of GTC_color_space convertLinearToSRGB #419 - Added lowp variant of GTC_color_space convertLinearToSRGB #419
- Replaced the manual by a markdown version #458 - Replaced the manual by a markdown version #458
- Improved API documentation #668
- Optimized GTC_packing implementation - Optimized GTC_packing implementation
- Optimized GTC_noise functions - Optimized GTC_noise functions
- Optimized GTC_color_space HSV to RGB conversions - Optimized GTC_color_space HSV to RGB conversions

View File

@ -2,7 +2,6 @@ glmCreateTestGTC(gtc_bitfield)
glmCreateTestGTC(gtc_color_space) glmCreateTestGTC(gtc_color_space)
glmCreateTestGTC(gtc_constants) glmCreateTestGTC(gtc_constants)
glmCreateTestGTC(gtc_epsilon) glmCreateTestGTC(gtc_epsilon)
glmCreateTestGTC(gtc_functions)
glmCreateTestGTC(gtc_integer) glmCreateTestGTC(gtc_integer)
glmCreateTestGTC(gtc_matrix_access) glmCreateTestGTC(gtc_matrix_access)
glmCreateTestGTC(gtc_matrix_integer) glmCreateTestGTC(gtc_matrix_integer)

View File

@ -14,6 +14,7 @@ glmCreateTestGTC(gtx_exterior_product)
glmCreateTestGTC(gtx_fast_exponential) glmCreateTestGTC(gtx_fast_exponential)
glmCreateTestGTC(gtx_fast_square_root) glmCreateTestGTC(gtx_fast_square_root)
glmCreateTestGTC(gtx_fast_trigonometry) glmCreateTestGTC(gtx_fast_trigonometry)
glmCreateTestGTC(gtx_functions)
glmCreateTestGTC(gtx_gradient_paint) glmCreateTestGTC(gtx_gradient_paint)
glmCreateTestGTC(gtx_handed_coordinate_space) glmCreateTestGTC(gtx_handed_coordinate_space)
glmCreateTestGTC(gtx_integer) glmCreateTestGTC(gtx_integer)

View File

@ -1,4 +1,4 @@
#include <glm/gtc/functions.hpp> #include <glm/gtx/functions.hpp>
#include <vector> #include <vector>
int test_gauss_1d() int test_gauss_1d()