pbpt
|
Defines a class for N-dimensional homogeneous coordinates. More...
#include "point.hpp"
#include "matrix.hpp"
#include <concepts>
#include <stdexcept>
#include <type_traits>
#include <iostream>
Go to the source code of this file.
Classes | |
class | pbpt::math::Homogeneous< T, N > |
A template class for an N-dimensional homogeneous coordinate. More... |
Namespaces | |
namespace | pbpt::math |
The namespace for math library implementation. |
Typedefs | |
using | pbpt::math::Homo3 = Homogeneous<Float, 3> |
A 3-dimensional homogeneous coordinate using the library's default Float type. | |
using | pbpt::math::Homo2 = Homogeneous<Float, 2> |
Defines a class for N-dimensional homogeneous coordinates.
This file provides the Homo class, which is essential for performing 3D transformations in a unified manner. It allows points and vectors to be treated consistently when multiplied by transformation matrices. The key idea is to represent an N-dimensional concept using an (N+1)-dimensional vector.