From 6f67371bb1b46579ae837d0e0c61ac1b291be743 Mon Sep 17 00:00:00 2001
From: LaG1924 <12997935+LaG1924@users.noreply.github.com>
Date: Sat, 13 Jan 2018 07:51:33 +0500
Subject: Directory renamed
---
external/include/glm/detail/func_geometric.hpp | 113 +++++++++++++++++++++++++
1 file changed, 113 insertions(+)
create mode 100644 external/include/glm/detail/func_geometric.hpp
(limited to 'external/include/glm/detail/func_geometric.hpp')
diff --git a/external/include/glm/detail/func_geometric.hpp b/external/include/glm/detail/func_geometric.hpp
new file mode 100644
index 0000000..2f39bf5
--- /dev/null
+++ b/external/include/glm/detail/func_geometric.hpp
@@ -0,0 +1,113 @@
+/// @ref core
+/// @file glm/detail/func_geometric.hpp
+///
+/// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions
+///
+/// @defgroup core_func_geometric Geometric functions
+/// @ingroup core
+///
+/// These operate on vectors as vectors, not component-wise.
+
+#pragma once
+
+#include "type_vec3.hpp"
+
+namespace glm
+{
+ /// @addtogroup core_func_geometric
+ /// @{
+
+ /// Returns the length of x, i.e., sqrt(x * x).
+ ///
+ /// @tparam genType Floating-point vector types.
+ ///
+ /// @see GLSL length man page
+ /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ template class vecType>
+ GLM_FUNC_DECL T length(
+ vecType const & x);
+
+ /// Returns the distance betwwen p0 and p1, i.e., length(p0 - p1).
+ ///
+ /// @tparam genType Floating-point vector types.
+ ///
+ /// @see GLSL distance man page
+ /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ template class vecType>
+ GLM_FUNC_DECL T distance(
+ vecType const & p0,
+ vecType const & p1);
+
+ /// Returns the dot product of x and y, i.e., result = x * y.
+ ///
+ /// @tparam genType Floating-point vector types.
+ ///
+ /// @see GLSL dot man page
+ /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ template class vecType>
+ GLM_FUNC_DECL T dot(
+ vecType const & x,
+ vecType const & y);
+
+ /// Returns the cross product of x and y.
+ ///
+ /// @tparam valType Floating-point scalar types.
+ ///
+ /// @see GLSL cross man page
+ /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ template
+ GLM_FUNC_DECL tvec3 cross(
+ tvec3 const & x,
+ tvec3 const & y);
+
+ /// Returns a vector in the same direction as x but with length of 1.
+ /// According to issue 10 GLSL 1.10 specification, if length(x) == 0 then result is undefined and generate an error.
+ ///
+ /// @see GLSL normalize man page
+ /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ template class vecType>
+ GLM_FUNC_DECL vecType normalize(
+ vecType const & x);
+
+ /// If dot(Nref, I) < 0.0, return N, otherwise, return -N.
+ ///
+ /// @tparam genType Floating-point vector types.
+ ///
+ /// @see GLSL faceforward man page
+ /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ template class vecType>
+ GLM_FUNC_DECL vecType faceforward(
+ vecType const & N,
+ vecType const & I,
+ vecType const & Nref);
+
+ /// For the incident vector I and surface orientation N,
+ /// returns the reflection direction : result = I - 2.0 * dot(N, I) * N.
+ ///
+ /// @tparam genType Floating-point vector types.
+ ///
+ /// @see GLSL reflect man page
+ /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ template
+ GLM_FUNC_DECL genType reflect(
+ genType const & I,
+ genType const & N);
+
+ /// For the incident vector I and surface normal N,
+ /// and the ratio of indices of refraction eta,
+ /// return the refraction vector.
+ ///
+ /// @tparam genType Floating-point vector types.
+ ///
+ /// @see GLSL refract man page
+ /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ template class vecType>
+ GLM_FUNC_DECL vecType refract(
+ vecType const & I,
+ vecType const & N,
+ T eta);
+
+ /// @}
+}//namespace glm
+
+#include "func_geometric.inl"
--
cgit v1.2.3