BasePrimitiveShape Class Reference

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

+ Inheritance diagram for BasePrimitiveShape:

Protected Member Functions

template<class ShapeT >
unsigned int ConfidenceTests (unsigned int numTests, float epsilon, float normalThresh, float rms, const PointCloud &pc, const MiscLib::Vector< size_t > &indices) const
 
- Protected Member Functions inherited from RefCount
virtual ~RefCount ()
 

Additional Inherited Members

- Public Types inherited from PrimitiveShape
typedef MiscLib::Vector< GfxTL::VectorXD< 2, size_t > > BitmapPolygon
 
typedef MiscLib::Vector< BitmapPolygonComponentPolygons
 
- Public Member Functions inherited from PrimitiveShape
virtual PrimitiveShapeClone () const =0
 
virtual size_t ConnectedComponent (const PointCloud &pc, float epsilon, MiscLib::Vector< size_t > *indices, bool doFiltering=true, float *borderRatio=0)=0
 
virtual void Description (std::string *s) const =0
 
virtual float Distance (const Vec3f &p) const =0
 
virtual void DistanceAndNormalDeviation (const Vec3f &p, const Vec3f &n, std::pair< float, float > *dn) const =0
 
virtual bool Fit (const PointCloud &pc, float epsilon, float normalThresh, MiscLib::Vector< size_t >::const_iterator begin, MiscLib::Vector< size_t >::const_iterator end)=0
 
virtual void GenerateBitmapPoints (const PointCloud &pc, float epsilon, size_t begin, size_t end, PointCloud *bmpPc) const =0
 
virtual size_t Identifier () const =0
 
virtual bool InSpace (float u, float v, Vec3f *p, Vec3f *n) const =0
 
virtual PrimitiveShapeLSFit (const PointCloud &pc, float epsilon, float normalThresh, MiscLib::Vector< size_t >::const_iterator begin, MiscLib::Vector< size_t >::const_iterator end, std::pair< size_t, float > *score) const =0
 
virtual void Normal (const Vec3f &p, Vec3f *n) const =0
 
virtual float NormalDeviation (const Vec3f &p, const Vec3f &n) const =0
 
virtual void OptimizeParametrization (const PointCloud &pc, size_t begin, size_t end, float epsilon)
 
virtual void Parameters (const Vec3f &p, std::pair< float, float > *param) const =0
 
virtual void Project (const Vec3f &p, Vec3f *pp) const =0
 
virtual unsigned int RequiredSamples () const =0
 
virtual void Serialize (float *array) const =0
 
virtual void Serialize (std::ostream *o, bool binary=true) const =0
 This is the one and only serialization function It stores all the parameters of the shape as well as the parametrization. More...
 
virtual size_t SerializedFloatSize () const =0
 
virtual size_t SerializedSize () const =0
 
virtual float SignedDistance (const Vec3f &p) const =0
 
virtual LevMarFunc< float > * SignedDistanceFunc () const =0
 
virtual void SuggestSimplifications (const PointCloud &pc, MiscLib::Vector< size_t >::const_iterator begin, MiscLib::Vector< size_t >::const_iterator end, float distThresh, MiscLib::Vector< MiscLib::RefCountPtr< PrimitiveShape > > *suggestions) const
 
virtual void Transform (float scale, const Vec3f &translate)=0
 
virtual void TrimmingPolygons (const PointCloud &pc, float epsilon, size_t begin, size_t end, std::deque< ComponentPolygons > *polys) const =0
 
virtual void Visit (PrimitiveShapeVisitor *visitor) const =0
 
- Public Member Functions inherited from RefCount
unsigned int AddRef () const
 
RefCountoperator= (const RefCount &)
 
 RefCount ()
 
 RefCount (const RefCount &)
 
unsigned int Release () const
 

Detailed Description

Definition at line 12 of file BasePrimitiveShape.h.

Member Function Documentation

◆ ConfidenceTests()

unsigned int ConfidenceTests ( unsigned int  numTests,
float  epsilon,
float  normalThresh,
float  rms,
const PointCloud pc,
const MiscLib::Vector< size_t > &  indices 
) const
inlineprotectedvirtual

Implements PrimitiveShape.

Reimplemented in SpherePrimitiveShape, CylinderPrimitiveShape, PlanePrimitiveShape, TorusPrimitiveShape, and ConePrimitiveShape.

Definition at line 17 of file BasePrimitiveShape.h.

+ Here is the call graph for this function:

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