VolViz
A volume visualization tool
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
Classes | Namespaces | Typedefs | Enumerations | Functions
Types.h File Reference
#include <Eigen/Core>
#include <Eigen/Geometry>
#include <gsl/gsl>
#include <phys/units/quantity.hpp>
#include <array>
+ Include dependency graph for Types.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  VolViz::Range< T >
 An 1D range. More...
 
struct  VolViz::DepthRange
 

Namespaces

 VolViz
 
 VolViz::Colors
 

Typedefs

using VolViz::Vector3f = Eigen::Vector3f
 
using VolViz::Matrix3 = Eigen::Matrix3f
 
using VolViz::Matrix4 = Eigen::Matrix4f
 
using VolViz::Position = Eigen::Vector3f
 Position in 3D euclidean space. More...
 
using VolViz::PositionH = Eigen::Vector4f
 Position in homogenous coordinates. More...
 
using VolViz::Position2 = Eigen::Vector2f
 Position in 2D space. More...
 
using VolViz::Size2 = Eigen::Matrix< std::size_t, 2, 1 >
 
using VolViz::Size3 = Eigen::Matrix< std::size_t, 3, 1 >
 
using VolViz::Size3f = Eigen::Vector3f
 
using VolViz::Color = Eigen::Vector3f
 Normalized RGB color. More...
 
using VolViz::Orientation = Eigen::Quaternionf
 6-DOF orientation, represented as a quaternion More...
 
using VolViz::Scale = float
 
using VolViz::Length = phys::units::quantity< phys::units::length_d >
 
using VolViz::Angle = double
 
using VolViz::PhysicalPosition = Eigen::Matrix< Length, 3, 1 >
 
using VolViz::VoxelSize = std::array< Length, 3 >
 

Enumerations

enum  VolViz::Axis { VolViz::Axis::X, VolViz::Axis::Y, VolViz::Axis::Z }
 

Functions

auto VolViz::Colors::Black () noexcept
 
auto VolViz::Colors::White () noexcept
 
auto VolViz::Colors::Red () noexcept
 
auto VolViz::Colors::Green () noexcept
 
auto VolViz::Colors::Blue () noexcept
 
auto VolViz::Colors::Yellow () noexcept
 
auto VolViz::Colors::Magenta () noexcept
 
auto VolViz::Colors::Cyan () noexcept
 
template<class T >
constexpr const T & std::clamp (const T &v, const T &lo, const T &hi)
 
template<class T , class Compare >
constexpr const T & std::clamp (const T &v, const T &lo, const T &hi, Compare comp)
 
template<class T >
constexpr auto VolViz::as_span (T *ptr, typename span< T >::index_type size) noexcept
 Conveniance wrapper for span<> More...
 
template<class Container , class = std::enable_if_t< !details::is_span<Container>::value && !details::is_std_array<Container>::value && std::is_convertible<typename Container::pointer, decltype(std::declval<Container>().data())>::value>>
constexpr auto VolViz::as_span (Container &c)
 
template<class Container , class = std::enable_if_t< !details::is_span<Container>::value && !details::is_std_array<Container>::value && std::is_convertible<typename Container::pointer, decltype(std::declval<Container>().data())>::value>>
constexpr auto VolViz::as_span (Container const &c)