0.9.9 API documentation
Loading...
Searching...
No Matches
random.hpp
Go to the documentation of this file.
1
13
14#pragma once
15
16// Dependency:
17#include "../ext/scalar_int_sized.hpp"
18#include "../ext/scalar_uint_sized.hpp"
19#include "../detail/qualifier.hpp"
20
21#if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
22# pragma message("GLM: GLM_GTC_random extension included")
23#endif
24
25namespace glm
26{
29
36 template<typename genType>
37 GLM_FUNC_DECL genType linearRand(genType Min, genType Max);
38
46 template<length_t L, typename T, qualifier Q>
47 GLM_FUNC_DECL vec<L, T, Q> linearRand(vec<L, T, Q> const& Min, vec<L, T, Q> const& Max);
48
52 template<typename genType>
53 GLM_FUNC_DECL genType gaussRand(genType Mean, genType Deviation);
54
58 template<typename T>
59 GLM_FUNC_DECL vec<2, T, defaultp> circularRand(T Radius);
60
64 template<typename T>
65 GLM_FUNC_DECL vec<3, T, defaultp> sphericalRand(T Radius);
66
70 template<typename T>
71 GLM_FUNC_DECL vec<2, T, defaultp> diskRand(T Radius);
72
76 template<typename T>
77 GLM_FUNC_DECL vec<3, T, defaultp> ballRand(T Radius);
78
80}//namespace glm
81
82#include "random.inl"
GLM_FUNC_DECL genType gaussRand(genType Mean, genType Deviation)
Generate random numbers in the interval [Min, Max], according a gaussian distribution.
GLM_FUNC_DECL genType linearRand(genType Min, genType Max)
Generate random numbers in the interval [Min, Max], according a linear distribution.
GLM_FUNC_DECL vec< 3, T, defaultp > ballRand(T Radius)
Generate a random 3D vector which coordinates are regulary distributed within the volume of a ball of...
GLM_FUNC_DECL vec< 3, T, defaultp > sphericalRand(T Radius)
Generate a random 3D vector which coordinates are regulary distributed on a sphere of a given radius.
GLM_FUNC_DECL vec< 2, T, defaultp > diskRand(T Radius)
Generate a random 2D vector which coordinates are regulary distributed within the area of a disk of a...
GLM_FUNC_DECL vec< 2, T, defaultp > circularRand(T Radius)
Generate a random 2D vector which coordinates are regulary distributed on a circle of a given radius.