transform Namespace
Transformation utilities for 3D graphics and scene graph inheritance. More...
Definition
namespace helios::math::transform { ... }
Functions Index
| constexpr mat4f | make_rodrigues_rotation_matrix (const float cos_theta, const float sin_theta, const vec3f &normalized_axis) noexcept |
Description
Transformation utilities for 3D graphics and scene graph inheritance.
This module provides transformation functions and utilities for camera and model transformations, as well as selective transform inheritance via TransformType. Provides essential transformation utilities for converting between object space, world space, view space, and clip space in the graphics pipeline.
Functions
make_rodrigues_rotation_matrix()
| constexpr noexcept |
Definition at line 15 of file model.ixx.
15 constexpr mat4f make_rodrigues_rotation_matrix(
16 const float cos_theta,
17 const float sin_theta,
18 const vec3f& normalized_axis
19 ) noexcept {
20
21 const float t = 1.0f - cos_theta;
22
23 const float x = normalized_axis[0],
24 y = normalized_axis[1],
25 z = normalized_axis[2];
26
27
28 return mat4f{
29 cos_theta + x * x * t,
30 x * y * t + z * sin_theta,
31 x * z * t - y * sin_theta,
32 0,
33
34 x * y * t - z * sin_theta,
35 cos_theta + y * y * t,
36 y * z * t + x * sin_theta,
37 0,
38
39 x * z * t + y * sin_theta,
40 y * z * t - x * sin_theta,
41 cos_theta + z * z * t,
42 0,
43
44 0, 0, 0, 1
45 };
46 };
Referenced by helios::math::rotate.
The documentation for this namespace was generated from the following file:
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.