Ponca  7d8ac87a7de01d881c9fde3c42e397b44bffb901
Point Cloud Analysis library
Loading...
Searching...
No Matches
Ponca::internal::Triangle< DataPoint > Struct Template Reference

Stores the three points and normals of the triangles and provides access to Corrected Normal Current formula. More...

#include <cnc.h>

+ Collaboration diagram for Ponca::internal::Triangle< DataPoint >:

Public Types

using Scalar = typename DataPoint::Scalar
 
using VectorType = typename DataPoint::VectorType
 
using MatrixType = typename DataPoint::MatrixType
 

Public Member Functions

 Triangle (DataPoint pointA, DataPoint pointB, DataPoint pointC)
 
 Triangle (const std::array< VectorType, 3 > &points, const std::array< VectorType, 3 > &normals)
 
VectorType & getPos (const int index)
 Get the position of the point at the given index.
 
bool operator== (const Triangle &other) const
 
bool operator!= (const Triangle &other) const
 
template<bool differentOrder = false>
Scalar mu0InterpolatedU ()
 
template<bool differentOrder = false>
Scalar mu1InterpolatedU ()
 
template<bool differentOrder = false>
Scalar mu2InterpolatedU ()
 
template<bool differentOrder = false>
MatrixType muXYInterpolatedU ()
 

Protected Attributes

std::array< VectorType, 3 > m_points
 
std::array< VectorType, 3 > m_normals
 

Detailed Description

template<class DataPoint>
struct Ponca::internal::Triangle< DataPoint >

Stores the three points and normals of the triangles and provides access to Corrected Normal Current formula.

Template Parameters
DataPointType of input points.
See also
CNCEigen

Definition at line 30 of file cnc.h.

Member Typedef Documentation

◆ MatrixType

template<class DataPoint >
using Ponca::internal::Triangle< DataPoint >::MatrixType = typename DataPoint::MatrixType

Definition at line 35 of file cnc.h.

◆ Scalar

template<class DataPoint >
using Ponca::internal::Triangle< DataPoint >::Scalar = typename DataPoint::Scalar

Definition at line 33 of file cnc.h.

◆ VectorType

template<class DataPoint >
using Ponca::internal::Triangle< DataPoint >::VectorType = typename DataPoint::VectorType

Definition at line 34 of file cnc.h.

Constructor & Destructor Documentation

◆ Triangle() [1/2]

template<class DataPoint >
Ponca::internal::Triangle< DataPoint >::Triangle ( DataPoint  pointA,
DataPoint  pointB,
DataPoint  pointC 
)
inline

Definition at line 42 of file cnc.h.

◆ Triangle() [2/2]

template<class DataPoint >
Ponca::internal::Triangle< DataPoint >::Triangle ( const std::array< VectorType, 3 > &  points,
const std::array< VectorType, 3 > &  normals 
)
inline

Definition at line 48 of file cnc.h.

Member Function Documentation

◆ getPos()

template<class DataPoint >
VectorType & Ponca::internal::Triangle< DataPoint >::getPos ( const int  index)
inline

Get the position of the point at the given index.

Parameters
indexIndex of one of the three vertices of the triangle (between 0 and 2)
Returns
The position of vertex

Definition at line 59 of file cnc.h.

◆ mu0InterpolatedU()

template<class DataPoint >
template<bool differentOrder = false>
Scalar Ponca::internal::Triangle< DataPoint >::mu0InterpolatedU ( )
inline

Definition at line 78 of file cnc.h.

◆ mu1InterpolatedU()

template<class DataPoint >
template<bool differentOrder = false>
Scalar Ponca::internal::Triangle< DataPoint >::mu1InterpolatedU ( )
inline

Definition at line 79 of file cnc.h.

◆ mu2InterpolatedU()

template<class DataPoint >
template<bool differentOrder = false>
Scalar Ponca::internal::Triangle< DataPoint >::mu2InterpolatedU ( )
inline

Definition at line 80 of file cnc.h.

◆ muXYInterpolatedU()

template<class DataPoint >
template<bool differentOrder = false>
MatrixType Ponca::internal::Triangle< DataPoint >::muXYInterpolatedU ( )
inline

Definition at line 81 of file cnc.h.

◆ operator!=()

template<class DataPoint >
bool Ponca::internal::Triangle< DataPoint >::operator!= ( const Triangle< DataPoint > &  other) const
inline

Definition at line 67 of file cnc.h.

◆ operator==()

template<class DataPoint >
bool Ponca::internal::Triangle< DataPoint >::operator== ( const Triangle< DataPoint > &  other) const
inline

Definition at line 61 of file cnc.h.

Member Data Documentation

◆ m_normals

template<class DataPoint >
std::array<VectorType, 3> Ponca::internal::Triangle< DataPoint >::m_normals
protected

Definition at line 39 of file cnc.h.

◆ m_points

template<class DataPoint >
std::array<VectorType, 3> Ponca::internal::Triangle< DataPoint >::m_points
protected

Definition at line 38 of file cnc.h.