aboutsummaryrefslogtreecommitdiff
path: root/src/libraries/glm/gtx/normalize_dot.inl
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2026-08-24 11:16:07 +0200
committerFelix Morgner <felix.morgner@gmail.com>2026-08-24 11:16:07 +0200
commitc068f22329d5cc722622a2183bbb22eef2093df7 (patch)
tree12d56c1aede67988a55e241364606bfbb4dba933 /src/libraries/glm/gtx/normalize_dot.inl
downloadopenparsec-c068f22329d5cc722622a2183bbb22eef2093df7.tar.xz
openparsec-c068f22329d5cc722622a2183bbb22eef2093df7.zip
initial importHEADmain
Diffstat (limited to 'src/libraries/glm/gtx/normalize_dot.inl')
-rwxr-xr-xsrc/libraries/glm/gtx/normalize_dot.inl115
1 files changed, 115 insertions, 0 deletions
diff --git a/src/libraries/glm/gtx/normalize_dot.inl b/src/libraries/glm/gtx/normalize_dot.inl
new file mode 100755
index 0000000..a492d4b
--- /dev/null
+++ b/src/libraries/glm/gtx/normalize_dot.inl
@@ -0,0 +1,115 @@
+//////////////////////////////////////////////////////////////////////////////////
+// OpenGL Mathematics Copyright (c) 2005 - 2012 G-Truc Creation (www.g-truc.net)
+//////////////////////////////////////////////////////////////////////////////////
+// Created : 2007-09-28
+// Updated : 2008-10-07
+// Licence : This source is under MIT License
+// File : glm/gtx/normalize_dot.inl
+//////////////////////////////////////////////////////////////////////////////////
+
+namespace glm
+{
+ template <typename genType>
+ GLM_FUNC_QUALIFIER genType normalizeDot
+ (
+ genType const & x,
+ genType const & y
+ )
+ {
+ return
+ glm::dot(x, y) *
+ glm::inversesqrt(glm::dot(x, x) *
+ glm::dot(y, y));
+ }
+
+ template <typename valType>
+ GLM_FUNC_QUALIFIER valType normalizeDot
+ (
+ detail::tvec2<valType> const & x,
+ detail::tvec2<valType> const & y
+ )
+ {
+ return
+ glm::dot(x, y) *
+ glm::inversesqrt(glm::dot(x, x) *
+ glm::dot(y, y));
+ }
+
+ template <typename valType>
+ GLM_FUNC_QUALIFIER valType normalizeDot
+ (
+ detail::tvec3<valType> const & x,
+ detail::tvec3<valType> const & y
+ )
+ {
+ return
+ glm::dot(x, y) *
+ glm::inversesqrt(glm::dot(x, x) *
+ glm::dot(y, y));
+ }
+
+ template <typename valType>
+ GLM_FUNC_QUALIFIER valType normalizeDot
+ (
+ detail::tvec4<valType> const & x,
+ detail::tvec4<valType> const & y
+ )
+ {
+ return
+ glm::dot(x, y) *
+ glm::inversesqrt(glm::dot(x, x) *
+ glm::dot(y, y));
+ }
+
+ template <typename genType>
+ GLM_FUNC_QUALIFIER genType fastNormalizeDot
+ (
+ genType const & x,
+ genType const & y
+ )
+ {
+ return
+ glm::dot(x, y) *
+ fastInverseSqrt(glm::dot(x, x) *
+ glm::dot(y, y));
+ }
+
+ template <typename valType>
+ GLM_FUNC_QUALIFIER valType fastNormalizeDot
+ (
+ detail::tvec2<valType> const & x,
+ detail::tvec2<valType> const & y
+ )
+ {
+ return
+ glm::dot(x, y) *
+ fastInverseSqrt(glm::dot(x, x) *
+ glm::dot(y, y));
+ }
+
+ template <typename valType>
+ GLM_FUNC_QUALIFIER valType fastNormalizeDot
+ (
+ detail::tvec3<valType> const & x,
+ detail::tvec3<valType> const & y
+ )
+ {
+ return
+ glm::dot(x, y) *
+ fastInverseSqrt(glm::dot(x, x) *
+ glm::dot(y, y));
+ }
+
+ template <typename valType>
+ GLM_FUNC_QUALIFIER valType fastNormalizeDot
+ (
+ detail::tvec4<valType> const & x,
+ detail::tvec4<valType> const & y
+ )
+ {
+ return
+ glm::dot(x, y) *
+ fastInverseSqrt(glm::dot(x, x) *
+ glm::dot(y, y));
+ }
+}//namespace glm