Promote and deprecate extensions
This commit is contained in:
parent
c26057d07b
commit
9a394874c3
121
glm/gtc/reciprocal.hpp
Normal file
121
glm/gtc/reciprocal.hpp
Normal file
@ -0,0 +1,121 @@
|
|||||||
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
|
/// OpenGL Mathematics (glm.g-truc.net)
|
||||||
|
///
|
||||||
|
/// Copyright (c) 2005 - 2012 G-Truc Creation (www.g-truc.net)
|
||||||
|
/// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
/// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
/// in the Software without restriction, including without limitation the rights
|
||||||
|
/// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
/// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
/// furnished to do so, subject to the following conditions:
|
||||||
|
///
|
||||||
|
/// The above copyright notice and this permission notice shall be included in
|
||||||
|
/// all copies or substantial portions of the Software.
|
||||||
|
///
|
||||||
|
/// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
/// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
/// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
/// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
/// THE SOFTWARE.
|
||||||
|
///
|
||||||
|
/// @ref gtx_reciprocal
|
||||||
|
/// @file glm/gtx/reciprocal.hpp
|
||||||
|
/// @date 2008-10-09 / 2011-06-07
|
||||||
|
/// @author Christophe Riccio
|
||||||
|
///
|
||||||
|
/// @see core (dependence)
|
||||||
|
///
|
||||||
|
/// @defgroup gtx_reciprocal GLM_GTX_reciprocal: Reciprocal
|
||||||
|
/// @ingroup gtx
|
||||||
|
///
|
||||||
|
/// @brief Define secant, cosecant and cotangent functions.
|
||||||
|
///
|
||||||
|
/// <glm/gtx/reciprocal.hpp> need to be included to use these functionalities.
|
||||||
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#ifndef GLM_GTX_reciprocal
|
||||||
|
#define GLM_GTX_reciprocal GLM_VERSION
|
||||||
|
|
||||||
|
// Dependency:
|
||||||
|
#include "../glm.hpp"
|
||||||
|
|
||||||
|
#if(defined(GLM_MESSAGES) && !defined(glm_ext))
|
||||||
|
# pragma message("GLM: GLM_GTX_reciprocal extension included")
|
||||||
|
#endif
|
||||||
|
|
||||||
|
namespace glm
|
||||||
|
{
|
||||||
|
/// @addtogroup gtx_reciprocal
|
||||||
|
/// @{
|
||||||
|
|
||||||
|
//! Secant function.
|
||||||
|
//! hypotenuse / adjacent or 1 / cos(x)
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType sec(genType const & angle);
|
||||||
|
|
||||||
|
//! Cosecant function.
|
||||||
|
//! hypotenuse / opposite or 1 / sin(x)
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType csc(genType const & angle);
|
||||||
|
|
||||||
|
//! Cotangent function.
|
||||||
|
//! adjacent / opposite or 1 / tan(x)
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType cot(genType const & angle);
|
||||||
|
|
||||||
|
//! Inverse secant function.
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType asec(genType const & x);
|
||||||
|
|
||||||
|
//! Inverse cosecant function.
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType acsc(genType const & x);
|
||||||
|
|
||||||
|
//! Inverse cotangent function.
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType acot(genType const & x);
|
||||||
|
|
||||||
|
//! Secant hyperbolic function.
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType sech(genType const & angle);
|
||||||
|
|
||||||
|
//! Cosecant hyperbolic function.
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType csch(genType const & angle);
|
||||||
|
|
||||||
|
//! Cotangent hyperbolic function.
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType coth(genType const & angle);
|
||||||
|
|
||||||
|
//! Inverse secant hyperbolic function.
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType asech(genType const & x);
|
||||||
|
|
||||||
|
//! Inverse cosecant hyperbolic function.
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType acsch(genType const & x);
|
||||||
|
|
||||||
|
//! Inverse cotangent hyperbolic function.
|
||||||
|
//! From GLM_GTX_reciprocal extension.
|
||||||
|
template <typename genType>
|
||||||
|
genType acoth(genType const & x);
|
||||||
|
|
||||||
|
/// @}
|
||||||
|
}//namespace glm
|
||||||
|
|
||||||
|
#include "reciprocal.inl"
|
||||||
|
|
||||||
|
#endif//GLM_GTX_reciprocal
|
@ -61,7 +61,7 @@ namespace glm
|
|||||||
/// genType and genIType could be a scalar or a vector.
|
/// genType and genIType could be a scalar or a vector.
|
||||||
/// @see gtx_bit
|
/// @see gtx_bit
|
||||||
template <typename genIUType, typename sizeType>
|
template <typename genIUType, typename sizeType>
|
||||||
genIUType extractField(
|
GLM_DEPRECATED genIUType extractField(
|
||||||
genIUType const & v,
|
genIUType const & v,
|
||||||
sizeType const & first,
|
sizeType const & first,
|
||||||
sizeType const & count);
|
sizeType const & count);
|
||||||
@ -69,12 +69,12 @@ namespace glm
|
|||||||
//! Find the lowest bit set to 1 in a integer variable.
|
//! Find the lowest bit set to 1 in a integer variable.
|
||||||
/// @see gtx_bit
|
/// @see gtx_bit
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
int lowestBit(genType const & value);
|
GLM_DEPRECATED int lowestBit(genType const & value);
|
||||||
|
|
||||||
//! Find the highest bit set to 1 in a integer variable.
|
//! Find the highest bit set to 1 in a integer variable.
|
||||||
/// @see gtx_bit
|
/// @see gtx_bit
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
int highestBit(genType const & value);
|
GLM_DEPRECATED int highestBit(genType const & value);
|
||||||
|
|
||||||
//! Find the highest bit set to 1 in a integer variable and return its value.
|
//! Find the highest bit set to 1 in a integer variable and return its value.
|
||||||
/// @see gtx_bit
|
/// @see gtx_bit
|
||||||
@ -104,7 +104,7 @@ namespace glm
|
|||||||
//! Revert all bits of any integer based type.
|
//! Revert all bits of any integer based type.
|
||||||
/// @see gtx_bit
|
/// @see gtx_bit
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
genType bitRevert(genType const & value);
|
GLM_DEPRECATED genType bitRevert(genType const & value);
|
||||||
|
|
||||||
//! Rotate all bits to the right.
|
//! Rotate all bits to the right.
|
||||||
/// @see gtx_bit
|
/// @see gtx_bit
|
||||||
|
@ -19,45 +19,8 @@
|
|||||||
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
/// THE SOFTWARE.
|
/// THE SOFTWARE.
|
||||||
///
|
|
||||||
/// @ref gtx_noise
|
|
||||||
/// @file glm/gtx/noise.hpp
|
|
||||||
/// @date 2011-04-21 / 2011-06-07
|
|
||||||
/// @author Christophe Riccio
|
|
||||||
///
|
|
||||||
/// @see core (dependence)
|
|
||||||
///
|
|
||||||
/// @defgroup gtx_noise GLM_GTX_noise: Procedural noise functions
|
|
||||||
/// @ingroup gtx
|
|
||||||
///
|
|
||||||
/// Defines 2D, 3D and 4D procedural noise functions
|
|
||||||
/// Based on the work of Stefan Gustavson and Ashima Arts on "webgl-noise":
|
|
||||||
/// https://github.com/ashima/webgl-noise
|
|
||||||
/// Following Stefan Gustavson's paper "Simplex noise demystified":
|
|
||||||
/// http://www.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf
|
|
||||||
/// Defines the half-precision floating-point type, along with various typedefs for vectors and matrices.
|
|
||||||
/// <glm/gtx/noise.hpp> need to be included to use these functionalities.
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#ifndef GLM_GTX_noise
|
#if(defined(GLM_MESSAGES))
|
||||||
#define GLM_GTX_noise GLM_VERSION
|
# pragma message("GLM: GLM_GTX_random extension is deprecated, include GLM_GTC_random instead")
|
||||||
|
|
||||||
// Dependency:
|
|
||||||
#include "../glm.hpp"
|
|
||||||
#include "../gtc/noise.hpp"
|
|
||||||
|
|
||||||
#if(defined(GLM_MESSAGES) && !defined(glm_ext))
|
|
||||||
# pragma message("GLM: GLM_GTX_noise extension included")
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
namespace glm
|
|
||||||
{
|
|
||||||
/// @addtogroup gtx_noise
|
|
||||||
/// @{
|
|
||||||
|
|
||||||
/// @}
|
|
||||||
}//namespace glm
|
|
||||||
|
|
||||||
#include "noise.inl"
|
|
||||||
|
|
||||||
#endif//glm_gtx_noise
|
|
||||||
|
@ -19,89 +19,8 @@
|
|||||||
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
/// THE SOFTWARE.
|
/// THE SOFTWARE.
|
||||||
///
|
|
||||||
/// @ref gtx_random
|
|
||||||
/// @file glm/gtx/random.hpp
|
|
||||||
/// @date 2006-01-16 / 2011-06-07
|
|
||||||
/// @author Christophe Riccio
|
|
||||||
///
|
|
||||||
/// @see core (dependence)
|
|
||||||
/// @see gtc_half_float (dependence)
|
|
||||||
///
|
|
||||||
/// @defgroup gtx_random GLM_GTX_random: Random
|
|
||||||
/// @ingroup gtx
|
|
||||||
///
|
|
||||||
/// @brief Generate random number from various distribution methods
|
|
||||||
///
|
|
||||||
/// <glm/gtx/random.hpp> need to be included to use these functionalities.
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#ifndef GLM_GTX_random
|
#if(defined(GLM_MESSAGES))
|
||||||
#define GLM_GTX_random GLM_VERSION
|
# pragma message("GLM: GLM_GTX_random extension is deprecated, include GLM_GTC_random instead")
|
||||||
|
|
||||||
// Dependency:
|
|
||||||
#include "../glm.hpp"
|
|
||||||
#include "../gtc/random.hpp"
|
|
||||||
|
|
||||||
#if(defined(GLM_MESSAGES) && !defined(glm_ext))
|
|
||||||
# pragma message("GLM: GLM_GTX_random extension included")
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
namespace glm
|
|
||||||
{
|
|
||||||
/// @addtogroup gtx_random
|
|
||||||
/// @{
|
|
||||||
|
|
||||||
/// Generate a random number in the interval [-1, 1], according a linear distribution.
|
|
||||||
/// From GLM_GTX_random extension.
|
|
||||||
template <typename T> T signedRand1();
|
|
||||||
|
|
||||||
template <> float signedRand1(); //!< \brief Generate a random number in the interval [-1, 1], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <> double signedRand1(); //!< \brief Generate a random number in the interval [-1, 1], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec2<T> signedRand2(); //!< \brief Generate 2 random numbers in the interval [-1, 1], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> signedRand3(); //!< \brief Generate 3 random numbers in the interval [-1, 1], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec4<T> signedRand4(); //!< \brief Generate 4 random numbers in the interval [-1, 1], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
|
|
||||||
template <typename T> detail::tvec2<T> normalizedRand2(); //!< \brief Generate a normalized 2D vector regulary distribute on a circle (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec2<T> normalizedRand2(T Min, T Max); //!< \brief Generate a scaled and normalized 2D vector regulary distribute on a circle (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> normalizedRand3(); //!< \brief Generate a normalized 3D vector regulary distribute on a sphere (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> normalizedRand3(T Min, T Max); //!< \brief Generate a scaled and normalized 3D vector regulary distribute on a sphere (From GLM_GTX_random extension)
|
|
||||||
|
|
||||||
template <typename T> T compRand1(); //!< \brief Generate a random number in the interval [0, 1], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <> float compRand1(); //!< \brief Generate a random number in the interval [0, 1], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <> double compRand1(); //!< \brief Generate a random number in the interval [0, 1], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <typename T> T compRand1(T Min, T Max); //!< \brief Generate a random number in the interval [Min, Max], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec2<T> compRand2(T Min, T Max); //!< \brief Generate 2 random numbers in the interval [Min, Max], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> compRand3(T Min, T Max); //!< \brief Generate 3 random numbers in the interval [Min, Max], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec4<T> compRand4(T Min, T Max); //!< \brief Generate 4 random numbers in the interval [Min, Max], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec2<T> compRand2(const detail::tvec2<T>& Min, const detail::tvec2<T>& Max); //!< \brief Generate 2 random numbers in the interval [Min, Max], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> compRand3(const detail::tvec3<T>& Min, const detail::tvec3<T>& Max); //!< \brief Generate 3 random numbers in the interval [Min, Max], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> compRand4(const detail::tvec4<T>& Min, const detail::tvec4<T>& Max); //!< \brief Generate 4 random numbers in the interval [Min, Max], according a linear distribution (From GLM_GTX_random extension)
|
|
||||||
|
|
||||||
template <typename T> detail::tvec2<T> vecRand2(); //!< \brief Generate a random normalized 2 component vector. It's a spherical uniform distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec2<T> vecRand2(T MinRadius, T MaxRadius); //!< \brief Generate a random normalized 2 component vector. It's a spherical uniform distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> vecRand3(); //!< \brief Generate a random normalized 3 component vector. It's a spherical uniform distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> vecRand3(T MinRadius, T MaxRadius); //!< \brief Generate a random normalized 3 component vector. It's a spherical uniform distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec4<T> vecRand4(); //!< \brief Generate a random normalized 4 component vector. It's a spherical uniform distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec4<T> vecRand4(T MinRadius, T MaxRadius); //!< \brief Generate a random normalized 4 component vector. It's a spherical uniform distribution. (From GLM_GTX_random extension)
|
|
||||||
|
|
||||||
template <typename T> T gaussRand1(T mean, T std_deviation); //!< \brief Gererate a random floating number according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec2<T> gaussRand2(T mean, T std_deviation); //!< \brief Gererate 2 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> gaussRand3(T mean, T std_deviation); //!< \brief Gererate 3 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec4<T> gaussRand4(T mean, T std_deviation); //!< \brief Gererate 4 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec2<T> gaussRand2(const detail::tvec2<T>& mean, T std_deviation); //!< \brief Gererate 2 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> gaussRand3(const detail::tvec3<T>& mean, T std_deviation); //!< \brief Gererate 3 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec4<T> gaussRand4(const detail::tvec4<T>& mean, T std_deviation); //!< \brief Gererate 4 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec2<T> gaussRand2(T mean, const detail::tvec2<T>& std_deviation); //!< \brief Gererate 2 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> gaussRand3(T mean, const detail::tvec3<T>& std_deviation); //!< \brief Gererate 3 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec4<T> gaussRand4(T mean, const detail::tvec4<T>& std_deviation); //!< \brief Gererate 4 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec2<T> gaussRand2(const detail::tvec2<T>& mean, const detail::tvec2<T>& std_deviation); //!< \brief Gererate 2 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec3<T> gaussRand3(const detail::tvec3<T>& mean, const detail::tvec3<T>& std_deviation); //!< \brief Gererate 3 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
template <typename T> detail::tvec4<T> gaussRand4(const detail::tvec4<T>& mean, const detail::tvec4<T>& std_deviation); //!< \brief Gererate 4 random floating numbers according a Gauss distribution. (From GLM_GTX_random extension)
|
|
||||||
|
|
||||||
/// @}
|
|
||||||
}//namespace glm
|
|
||||||
|
|
||||||
#include "random.inl"
|
|
||||||
|
|
||||||
#endif//GLM_GTX_random
|
|
||||||
|
@ -19,103 +19,8 @@
|
|||||||
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
/// THE SOFTWARE.
|
/// THE SOFTWARE.
|
||||||
///
|
|
||||||
/// @ref gtx_reciprocal
|
|
||||||
/// @file glm/gtx/reciprocal.hpp
|
|
||||||
/// @date 2008-10-09 / 2011-06-07
|
|
||||||
/// @author Christophe Riccio
|
|
||||||
///
|
|
||||||
/// @see core (dependence)
|
|
||||||
///
|
|
||||||
/// @defgroup gtx_reciprocal GLM_GTX_reciprocal: Reciprocal
|
|
||||||
/// @ingroup gtx
|
|
||||||
///
|
|
||||||
/// @brief Define secant, cosecant and cotangent functions.
|
|
||||||
///
|
|
||||||
/// <glm/gtx/reciprocal.hpp> need to be included to use these functionalities.
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#ifndef GLM_GTX_reciprocal
|
#if(defined(GLM_MESSAGES))
|
||||||
#define GLM_GTX_reciprocal GLM_VERSION
|
# pragma message("GLM: GLM_GTX_reciprocal extension is deprecated, include GLM_GTC_reciprocal instead")
|
||||||
|
|
||||||
// Dependency:
|
|
||||||
#include "../glm.hpp"
|
|
||||||
|
|
||||||
#if(defined(GLM_MESSAGES) && !defined(glm_ext))
|
|
||||||
# pragma message("GLM: GLM_GTX_reciprocal extension included")
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
namespace glm
|
|
||||||
{
|
|
||||||
/// @addtogroup gtx_reciprocal
|
|
||||||
/// @{
|
|
||||||
|
|
||||||
//! Secant function.
|
|
||||||
//! hypotenuse / adjacent or 1 / cos(x)
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType sec(genType const & angle);
|
|
||||||
|
|
||||||
//! Cosecant function.
|
|
||||||
//! hypotenuse / opposite or 1 / sin(x)
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType csc(genType const & angle);
|
|
||||||
|
|
||||||
//! Cotangent function.
|
|
||||||
//! adjacent / opposite or 1 / tan(x)
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType cot(genType const & angle);
|
|
||||||
|
|
||||||
//! Inverse secant function.
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType asec(genType const & x);
|
|
||||||
|
|
||||||
//! Inverse cosecant function.
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType acsc(genType const & x);
|
|
||||||
|
|
||||||
//! Inverse cotangent function.
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType acot(genType const & x);
|
|
||||||
|
|
||||||
//! Secant hyperbolic function.
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType sech(genType const & angle);
|
|
||||||
|
|
||||||
//! Cosecant hyperbolic function.
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType csch(genType const & angle);
|
|
||||||
|
|
||||||
//! Cotangent hyperbolic function.
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType coth(genType const & angle);
|
|
||||||
|
|
||||||
//! Inverse secant hyperbolic function.
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType asech(genType const & x);
|
|
||||||
|
|
||||||
//! Inverse cosecant hyperbolic function.
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType acsch(genType const & x);
|
|
||||||
|
|
||||||
//! Inverse cotangent hyperbolic function.
|
|
||||||
//! From GLM_GTX_reciprocal extension.
|
|
||||||
template <typename genType>
|
|
||||||
genType acoth(genType const & x);
|
|
||||||
|
|
||||||
/// @}
|
|
||||||
}//namespace glm
|
|
||||||
|
|
||||||
#include "reciprocal.inl"
|
|
||||||
|
|
||||||
#endif//GLM_GTX_reciprocal
|
|
||||||
|
@ -52,27 +52,27 @@ namespace glm
|
|||||||
/// @{
|
/// @{
|
||||||
|
|
||||||
/// Vector type based of two std::size_t components.
|
/// Vector type based of two std::size_t components.
|
||||||
/// @see - GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec2<std::size_t> size2;
|
typedef detail::tvec2<std::size_t> size2;
|
||||||
|
|
||||||
/// Vector type based of three std::size_t components.
|
/// Vector type based of three std::size_t components.
|
||||||
/// @see - GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec3<std::size_t> size3;
|
typedef detail::tvec3<std::size_t> size3;
|
||||||
|
|
||||||
/// Vector type based of four std::size_t components.
|
/// Vector type based of four std::size_t components.
|
||||||
/// @see - GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec4<std::size_t> size4;
|
typedef detail::tvec4<std::size_t> size4;
|
||||||
|
|
||||||
/// Vector type based of two std::size_t components.
|
/// Vector type based of two std::size_t components.
|
||||||
/// @see - GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec2<std::size_t> size2_t;
|
typedef detail::tvec2<std::size_t> size2_t;
|
||||||
|
|
||||||
/// Vector type based of three std::size_t components.
|
/// Vector type based of three std::size_t components.
|
||||||
/// @see - GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec3<std::size_t> size3_t;
|
typedef detail::tvec3<std::size_t> size3_t;
|
||||||
|
|
||||||
/// Vector type based of four std::size_t components.
|
/// Vector type based of four std::size_t components.
|
||||||
/// @see - GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec4<std::size_t> size4_t;
|
typedef detail::tvec4<std::size_t> size4_t;
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
|
26
glm/gtx/ulp.hpp
Normal file
26
glm/gtx/ulp.hpp
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
|
/// OpenGL Mathematics (glm.g-truc.net)
|
||||||
|
///
|
||||||
|
/// Copyright (c) 2005 - 2012 G-Truc Creation (www.g-truc.net)
|
||||||
|
/// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
/// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
/// in the Software without restriction, including without limitation the rights
|
||||||
|
/// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
/// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
/// furnished to do so, subject to the following conditions:
|
||||||
|
///
|
||||||
|
/// The above copyright notice and this permission notice shall be included in
|
||||||
|
/// all copies or substantial portions of the Software.
|
||||||
|
///
|
||||||
|
/// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
/// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
/// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
/// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
/// THE SOFTWARE.
|
||||||
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#if(defined(GLM_MESSAGES))
|
||||||
|
# pragma message("GLM: GLM_GTX_ulp extension is deprecated, include GLM_GTC_ulp instead")
|
||||||
|
#endif
|
Loading…
x
Reference in New Issue
Block a user