FLImaging 7.8.25.3
Skeleton3D.h
1#pragma once
2
11
12#include "DefinitionsThreeDim.h"
13#include "AlgorithmFeature3D_SO_DO.h"
14
16namespace FLImaging
17{
19 namespace ThreeDim
20 {
21 class CInternalSkeleton3D;
22
32 class FL_EXPORT CSkeleton3D : public CAlgorithmFeature3D_SO_DO
33 {
34 public:
35
41
46 CSkeleton3D(const CSkeleton3D& Skeleton3D);
47
52 CSkeleton3D(const CSkeleton3D* pSkeleton3D);
53
58 virtual ~CSkeleton3D();
59
73 const CSkeleton3D& operator=(const CSkeleton3D& Skeleton3D);
74
90 virtual const CResult Assign(const CSkeleton3D& Skeleton3D);
91
107 virtual const CResult Assign(const CSkeleton3D* pSkeleton3D);
108
122 virtual const CResult Execute() override;
123
137 virtual const CResult Clear() override;
138
154 virtual const CResult SetSkeletonSamplingSize(int32_t i32Size = 1000);
155
163 virtual int32_t GetSkeletonSamplingSize() const;
164
184 virtual const CResult SetSourceSamplingSize(int32_t i32Size = 10000);
185
193 virtual int32_t GetSourceSamplingSize() const;
194
211 virtual const CResult SetRadius(float f32Radius);
212
220 virtual float GetRadius() const;
221
241 virtual const CResult SetRadiusCoefficient(float f32Coefficient = 6);
242
250 virtual float GetRadiusCoefficient() const;
251
275 virtual const CResult EnableAutoRadiusCalculation(bool bAutoRadius = true);
276
284 virtual bool IsAutoRadiusCalculationEnabled() const;
285
300 virtual const CResult StopImmediately();
301
316 virtual const CResult Pause();
317
331 virtual const CResult Resume();
332
344 virtual double GetProgress() const;
345
355 virtual bool IsRunning() const;
356
358
380
402
403 virtual bool IsLicenseAvailable() const override;
404
405 DeclareGetClassType();
406 SupportToDuplicateObject(CSkeleton3D, *this);
407
408 protected:
409
418
427
436
437 protected:
438 CInternalSkeleton3D* m_pInternal;
439 friend class CInternalSkeleton3D;
440 };
441 }
442}
Template type array class.
Definition FLArray.h:71
Simplified class representing a 3-D point.
Definition TPoint3.h:37
FLImaging module execution result object.
Definition ResultsDef.h:1704
A class representing 3D object data.
Definition FL3DObject.h:42
virtual bool IsRunning() const
virtual const CResult EnableAutoRadiusCalculation(bool bAutoRadius=true)
CSkeleton3D(const CSkeleton3D &Skeleton3D)
virtual const CResult SetRadiusCoefficient(float f32Coefficient=6)
virtual const CResult Resume()
virtual float GetRadius() const
int32_t m_i32SourceSamplingSize
Definition Skeleton3D.h:435
virtual const CResult SetRadius(float f32Radius)
int32_t m_i32SkeletonSamplingSize
Definition Skeleton3D.h:426
virtual const CResult Clear() override
virtual const CResult Assign(const CSkeleton3D *pSkeleton3D)
virtual int32_t GetSourceSamplingSize() const
virtual const CResult Assign(const CSkeleton3D &Skeleton3D)
virtual const CResult StopImmediately()
virtual const CResult SetSourceSamplingSize(int32_t i32Size=10000)
float m_f32Radius
Definition Skeleton3D.h:417
virtual float GetRadiusCoefficient() const
virtual bool IsLicenseAvailable() const override
Returns whether the algorithm can be used with the current license.
virtual const CResult GetResultBranches(Base::CFLArray< Base::CFLArray< Base::TPoint3< float > > > &fla2Result)
virtual double GetProgress() const
virtual const CResult Execute() override
CSkeleton3D(const CSkeleton3D *pSkeleton3D)
virtual const CResult GetIntermediate3DObjectResult(Foundation::CFL3DObject *pFloResult)
virtual const CResult SetSkeletonSamplingSize(int32_t i32Size=1000)
virtual int32_t GetSkeletonSamplingSize() const
virtual bool IsAutoRadiusCalculationEnabled() const
virtual const CResult Pause()
virtual const CResult GetIntermediate3DObjectResult(Foundation::CFL3DObject &floResult)
const CSkeleton3D & operator=(const CSkeleton3D &Skeleton3D)
Definition Algorithm3DBase.h:16