Cone Class Reference

#include <VisionX/components/pointcloud_processor/EfficientRANSACPrimitiveExtractor/EfficientRANSAC/Cone.h>

Classes

struct  ParallelPlanesError
 

Public Types

enum  { RequiredSamples = 3 }
 

Public Member Functions

float Angle () const
 
const Vec3f AngularDirection () const
 
Vec3fAxisDirection ()
 
const Vec3fAxisDirection () const
 
const Vec3fCenter () const
 
 Cone ()
 
 Cone (const Vec3f &center, const Vec3f &axisDir, float angle)
 
 Cone (const Vec3f &p1, const Vec3f &p2, const Vec3f &p3, const Vec3f &n1, const Vec3f &n2, const Vec3f &n3)
 
float Distance (const Vec3f &p) const
 
float DistanceAndNormal (const Vec3f &p, Vec3f *n) const
 
bool Fit (const PointCloud &pc, MiscLib::Vector< size_t >::const_iterator begin, MiscLib::Vector< size_t >::const_iterator end)
 
float Height (const Vec3f &p) const
 
bool Init (bool binary, std::istream *i)
 
bool Init (const MiscLib::Vector< Vec3f > &samples)
 
bool Init (const Vec3f &center, const Vec3f &axisDir, float angle)
 
bool Init (const Vec3f &p1, const Vec3f &p2, const Vec3f &p3, const Vec3f &n1, const Vec3f &n2, const Vec3f &n3)
 
void Init (FILE *i)
 
void Init (float *array)
 
bool InitAverage (const MiscLib::Vector< Vec3f > &samples)
 
unsigned int Intersect (const Vec3f &p, const Vec3f &r, float lambda[2], Vec3f interPts[2]) const
 
bool LeastSquaresFit (const PointCloud &pc, MiscLib::Vector< size_t >::const_iterator begin, MiscLib::Vector< size_t >::const_iterator end)
 
template<class IteratorT >
bool LeastSquaresFit (IteratorT begin, IteratorT end)
 
void Normal (const Vec3f &p, Vec3f *n) const
 
void Parameters (const Vec3f &p, std::pair< float, float > *param) const
 
void Project (const Vec3f &p, Vec3f *pp) const
 
float RadiusAtLength (float length) const
 
void RotateAngularDirection (float radians)
 
void Serialize (bool binary, std::ostream *o) const
 
void Serialize (FILE *o) const
 
void Serialize (float *array) const
 
float SignedDistance (const Vec3f &p) const
 
float SignedDistanceAndNormal (const Vec3f &p, Vec3f *n) const
 
void Transform (const GfxTL::MatrixXX< 3, 3, float > &rot, const GfxTL::Vector3Df &trans)
 
void Transform (float scale, const Vec3f &translate)
 

Static Public Member Functions

static bool Interpolate (const MiscLib::Vector< Cone > &cones, const MiscLib::Vector< float > &weights, Cone *ic)
 
static size_t SerializedFloatSize ()
 
static size_t SerializedSize ()
 

Detailed Description

Definition at line 24 of file Cone.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
RequiredSamples 

Definition at line 34 of file Cone.h.

Constructor & Destructor Documentation

◆ Cone() [1/3]

Cone ( )

Definition at line 15 of file Cone.cpp.

◆ Cone() [2/3]

Cone ( const Vec3f center,
const Vec3f axisDir,
float  angle 
)

Definition at line 19 of file Cone.cpp.

+ Here is the call graph for this function:

◆ Cone() [3/3]

Cone ( const Vec3f p1,
const Vec3f p2,
const Vec3f p3,
const Vec3f n1,
const Vec3f n2,
const Vec3f n3 
)

Definition at line 32 of file Cone.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ Angle()

float Angle ( ) const
inline

Definition at line 389 of file Cone.h.

+ Here is the caller graph for this function:

◆ AngularDirection()

const Vec3f AngularDirection ( ) const
inline

Definition at line 407 of file Cone.h.

+ Here is the caller graph for this function:

◆ AxisDirection() [1/2]

Vec3f& AxisDirection ( )
inline

Definition at line 73 of file Cone.h.

◆ AxisDirection() [2/2]

const Vec3f & AxisDirection ( ) const
inline

Definition at line 401 of file Cone.h.

+ Here is the caller graph for this function:

◆ Center()

const Vec3f & Center ( ) const
inline

Definition at line 395 of file Cone.h.

+ Here is the caller graph for this function:

◆ Distance()

float Distance ( const Vec3f p) const
inline

Definition at line 252 of file Cone.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DistanceAndNormal()

float DistanceAndNormal ( const Vec3f p,
Vec3f n 
) const
inline

Definition at line 290 of file Cone.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Fit()

bool Fit ( const PointCloud pc,
MiscLib::Vector< size_t >::const_iterator  begin,
MiscLib::Vector< size_t >::const_iterator  end 
)
inline

Definition at line 89 of file Cone.h.

◆ Height()

float Height ( const Vec3f p) const
inline

Definition at line 419 of file Cone.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Init() [1/6]

bool Init ( bool  binary,
std::istream *  i 
)

Definition at line 387 of file Cone.cpp.

+ Here is the call graph for this function:

◆ Init() [2/6]

bool Init ( const MiscLib::Vector< Vec3f > &  samples)

Definition at line 47 of file Cone.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Init() [3/6]

bool Init ( const Vec3f center,
const Vec3f axisDir,
float  angle 
)

Definition at line 234 of file Cone.cpp.

+ Here is the call graph for this function:

◆ Init() [4/6]

bool Init ( const Vec3f p1,
const Vec3f p2,
const Vec3f p3,
const Vec3f n1,
const Vec3f n2,
const Vec3f n3 
)

Definition at line 253 of file Cone.cpp.

+ Here is the call graph for this function:

◆ Init() [5/6]

void Init ( FILE *  i)

Definition at line 442 of file Cone.cpp.

+ Here is the call graph for this function:

◆ Init() [6/6]

void Init ( float array)

Definition at line 421 of file Cone.cpp.

+ Here is the call graph for this function:

◆ InitAverage()

bool InitAverage ( const MiscLib::Vector< Vec3f > &  samples)

Definition at line 119 of file Cone.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Interpolate()

bool Interpolate ( const MiscLib::Vector< Cone > &  cones,
const MiscLib::Vector< float > &  weights,
Cone ic 
)
static

Definition at line 709 of file Cone.cpp.

+ Here is the call graph for this function:

◆ Intersect()

unsigned int Intersect ( const Vec3f p,
const Vec3f r,
float  lambda[2],
Vec3f  interPts[2] 
) const
inline

Definition at line 486 of file Cone.h.

+ Here is the call graph for this function:

◆ LeastSquaresFit() [1/2]

bool LeastSquaresFit ( const PointCloud pc,
MiscLib::Vector< size_t >::const_iterator  begin,
MiscLib::Vector< size_t >::const_iterator  end 
)

Definition at line 699 of file Cone.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ LeastSquaresFit() [2/2]

bool LeastSquaresFit ( IteratorT  begin,
IteratorT  end 
)

Definition at line 427 of file Cone.h.

+ Here is the call graph for this function:

◆ Normal()

void Normal ( const Vec3f p,
Vec3f n 
) const
inline

Definition at line 279 of file Cone.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Parameters()

void Parameters ( const Vec3f p,
std::pair< float, float > *  param 
) const

Definition at line 492 of file Cone.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Project()

void Project ( const Vec3f p,
Vec3f pp 
) const

Definition at line 459 of file Cone.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RadiusAtLength()

float RadiusAtLength ( float  length) const
inline

Definition at line 413 of file Cone.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RotateAngularDirection()

void RotateAngularDirection ( float  radians)

Definition at line 581 of file Cone.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Serialize() [1/3]

void Serialize ( bool  binary,
std::ostream *  o 
) const

Definition at line 727 of file Cone.cpp.

+ Here is the caller graph for this function:

◆ Serialize() [2/3]

void Serialize ( FILE *  o) const

Definition at line 751 of file Cone.cpp.

◆ Serialize() [3/3]

void Serialize ( float array) const

Definition at line 766 of file Cone.cpp.

◆ SerializedFloatSize()

size_t SerializedFloatSize ( )
static

Definition at line 760 of file Cone.cpp.

◆ SerializedSize()

size_t SerializedSize ( )
static

Definition at line 745 of file Cone.cpp.

+ Here is the caller graph for this function:

◆ SignedDistance()

float SignedDistance ( const Vec3f p) const
inline

Definition at line 326 of file Cone.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SignedDistanceAndNormal()

float SignedDistanceAndNormal ( const Vec3f p,
Vec3f n 
) const
inline

Definition at line 353 of file Cone.h.

+ Here is the call graph for this function:

◆ Transform() [1/2]

void Transform ( const GfxTL::MatrixXX< 3, 3, float > &  rot,
const GfxTL::Vector3Df trans 
)

Definition at line 785 of file Cone.cpp.

◆ Transform() [2/2]

void Transform ( float  scale,
const Vec3f translate 
)

Definition at line 778 of file Cone.cpp.

+ Here is the caller graph for this function:

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