Euclid
Geometry Processing and Shape Analysis in C++
Euclid::OBB< Kernel > Class Template Reference

Object oriented bounding box. More...

#include <OBB.h>

Public Types

using Point_3 = typename Kernel::Point_3
 
using Vector_3 = typename Kernel::Vector_3
 
using FT = typename Kernel::FT
 

Public Member Functions

void build (const std::vector< FT > &positions)
 Build OBB for a set of raw positions.
 
template<typename ForwardIterator , typename VPMap >
void build (ForwardIterator first, ForwardIterator beyond, VPMap vpmap)
 Build OBB for a range of points.
 
template<typename Derived >
void build (const Eigen::MatrixBase< Derived > &v)
 Build OBB for points represented by a matrix.
 
Point_3 center () const
 Return the center of the box.
 
Vector_3 axis (int n) const
 Return the unit-length axis. More...
 
FT length (int n) const
 Return the length of an axis. More...
 

Detailed Description

template<typename Kernel>
class Euclid::OBB< Kernel >

This class uses right-handed coordinate system.

Member Function Documentation

template<typename Kernel >
OBB< Kernel >::Vector_3 Euclid::OBB< Kernel >::axis ( int  n) const

The accepted values of n are 0, 1 and 2. The axis are sorted in descending order w.r.t. to the length, so OBB<KerneL>::axis(0) returns the longest axis, although the sign is arbitrary.

template<typename Kernel >
OBB< Kernel >::FT Euclid::OBB< Kernel >::length ( int  n) const

The accepted values of n are 0, 1 and 2. The length are sorted in descending order.


The documentation for this class was generated from the following files: