0.9.6: func_geometric.hpp Source File

| 0.9.6

- Main Page
- Modules
- Files

- File List

func_geometric.hpp
Go to the documentation of this file.
1
40 #pragma once
41
42 #include "type_vec3.hpp"
43
44 namespace glm
45 {
48
55 template <typename T, precision P, template <typename, precision> class vecType>
56 GLM_FUNC_DECL T length(
57 vecType<T, P> const & x);
58
65 template <typename T, precision P, template <typename, precision> class vecType>
66 GLM_FUNC_DECL T distance(
67 vecType<T, P> const & p0,
68 vecType<T, P> const & p1);
69
76 template <typename T, precision P, template <typename, precision> class vecType>
77 GLM_FUNC_DECL T dot(
78 vecType<T, P> const & x,
79 vecType<T, P> const & y);
80
87 template <typename T, precision P>
88 GLM_FUNC_DECL tvec3<T, P> cross(
89 tvec3<T, P> const & x,
90 tvec3<T, P> const & y);
91
97 template <typename T, precision P, template <typename, precision> class vecType>
98 GLM_FUNC_DECL vecType<T, P> normalize(
99 vecType<T, P> const & x);
100
107 template <typename genType>
108 GLM_FUNC_DECL genType faceforward(
109 genType const & N,
110 genType const & I,
111 genType const & Nref);
112
120 template <typename genType>
121 GLM_FUNC_DECL genType reflect(
122 genType const & I,
123 genType const & N);
124
133 template <typename T, precision P, template <typename, precision> class vecType>
134 GLM_FUNC_DECL vecType<T, P> refract(
135 vecType<T, P> const & I,
136 vecType<T, P> const & N,
137 T eta);
138
140 }//namespace glm
141
142 #include "func_geometric.inl"
glm::refract
GLM_FUNC_DECL vecType< T, P > refract(vecType< T, P > const &I, vecType< T, P > const &N, T eta)
For the incident vector I and surface normal N, and the ratio of indices of refraction eta...
glm::reflect
GLM_FUNC_DECL genType reflect(genType const &I, genType const &N)
For the incident vector I and surface orientation N, returns the reflection direction : result = I - ...
glm::distance
GLM_FUNC_DECL T distance(vecType< T, P > const &p0, vecType< T, P > const &p1)
Returns the distance betwwen p0 and p1, i.e., length(p0 - p1).
glm::faceforward
GLM_FUNC_DECL genType faceforward(genType const &N, genType const &I, genType const &Nref)
If dot(Nref, I) < 0.0, return N, otherwise, return -N.
glm::dot
GLM_FUNC_DECL T dot(vecType< T, P > const &x, vecType< T, P > const &y)
Returns the dot product of x and y, i.e., result = x * y.
type_vec3.hpp
OpenGL Mathematics (glm.g-truc.net)
glm::length
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
glm::normalize
GLM_FUNC_DECL vecType< T, P > normalize(vecType< T, P > const &x)
Returns a vector in the same direction as x but with length of 1.
glm::cross
GLM_FUNC_DECL tvec3< T, P > cross(tvec3< T, P > const &x, tvec3< T, P > const &y)
Returns the cross product of x and y.
glm
Definition: _noise.hpp:39