VolViz
A volume visualization tool
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
Namespaces | Classes | Typedefs | Enumerations | Functions
VolViz Namespace Reference

Namespaces

 Colors
 
 Private_
 

Classes

class  AtomicCache
 
class  DefaultSetPolicy
 Default set policy for AtomicWrapper class, justs sets dest to src. More...
 
class  SetAndNotifyPolicy
 
class  AtomicWrapper
 
class  Camera
 
class  GeometryDescriptor
 
class  AxisAlignedPlaneDescriptor
 A geometry descriptor describing a axis aligned plane. More...
 
class  MeshDescriptor
 A geometry descriptor describing an arbitrary triangle mesh. More...
 
class  CubeDescriptor
 A geomentry descriptor describing an axis aligned cube. More...
 
class  Light
 Directional light. More...
 
struct  Range
 An 1D range. More...
 
struct  DepthRange
 
class  Visualizer
 
struct  VolumeDescriptor
 

Typedefs

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

Enumerations

enum  MoveMask : uint8_t {
  None = 0x00, X = 0x01, Y = 0x02, Z = 0x04,
  All = 0x07
}
 
enum  Axis { Axis::X, Axis::Y, Axis::Z }
 
enum  VolumeType { VolumeType::GrayScale, VolumeType::ColorRGB }
 
enum  InterpolationType { InterpolationType::Nearest, InterpolationType::Linear }
 

Functions

Vector3f maskToUnitVector (MoveMask mask) noexcept
 
template<class T >
constexpr auto 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 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 as_span (Container const &c)
 

Typedef Documentation

using VolViz::Angle = typedef double
using VolViz::Color = typedef Eigen::Vector3f

Normalized RGB color.

using VolViz::Length = typedef phys::units::quantity<phys::units::length_d>
using VolViz::Matrix3 = typedef Eigen::Matrix3f
using VolViz::Matrix4 = typedef Eigen::Matrix4f
using VolViz::Orientation = typedef Eigen::Quaternionf

6-DOF orientation, represented as a quaternion

using VolViz::PhysicalPosition = typedef Eigen::Matrix<Length, 3, 1>
using VolViz::Position = typedef Eigen::Vector3f

Position in 3D euclidean space.

using VolViz::Position2 = typedef Eigen::Vector2f

Position in 2D space.

using VolViz::PositionH = typedef Eigen::Vector4f

Position in homogenous coordinates.

using VolViz::Scale = typedef float
using VolViz::Size2 = typedef Eigen::Matrix<std::size_t, 2, 1>
using VolViz::Size3 = typedef Eigen::Matrix<std::size_t, 3, 1>
using VolViz::Size3f = typedef Eigen::Vector3f
using VolViz::Vector3f = typedef Eigen::Vector3f
using VolViz::VoxelSize = typedef std::array<Length, 3>

Enumeration Type Documentation

enum VolViz::Axis
strong
Enumerator
X 
Y 
Z 
Enumerator
Nearest 
Linear 
enum VolViz::MoveMask : uint8_t
Enumerator
None 
X 
Y 
Z 
All 
enum VolViz::VolumeType
strong
Enumerator
GrayScale 
ColorRGB 

Function Documentation

template<class T >
constexpr auto VolViz::as_span ( T *  ptr,
typename span< T >::index_type  size 
)
inlinenoexcept

Conveniance wrapper for span<>

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)
inline
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)
inline
Vector3f VolViz::maskToUnitVector ( MoveMask  mask)
inlinenoexcept