shapeworks::ParticleRegionDomain
Inherits from shapeworks::ParticleDomain
Inherited by shapeworks::ImageDomain< T >
Public Types
Name | |
---|---|
using std::shared_ptr< ParticleRegionDomain > | Pointer |
typedef ParticleDomain::PointType | PointType |
Public Functions
Name | |
---|---|
virtual bool | ApplyConstraints(PointType & p) const |
virtual const PointType & | GetUpperBound() const |
virtual const PointType & | GetLowerBound() const |
void | SetUpperBound(const PointType _UpperBound) |
void | SetLowerBound(const PointType _LowerBound) |
void | SetRegion(const PointType & lowerBound, const PointType & upperBound) |
Protected Functions
Name | |
---|---|
ParticleRegionDomain() | |
virtual | ~ParticleRegionDomain() |
void | PrintSelf(std::ostream & os, itk::Indent indent) const |
bool | IsInsideBuffer(const PointType & p) const |
Additional inherited members
Public Types inherited from shapeworks::ParticleDomain
Name | |
---|---|
using vnl_matrix_fixed< float, 3, 3 > | GradNType |
using vnl_vector_fixed< double, 3 > | VectorDoubleType |
using vnl_vector_fixed< float, 3 > | VectorFloatType |
Public Functions inherited from shapeworks::ParticleDomain
Name | |
---|---|
virtual PointType | UpdateParticlePosition(const PointType & point, int idx, VectorDoubleType & update) const =0 |
virtual void | InvalidateParticlePosition(int idx) const |
virtual VectorDoubleType | ProjectVectorToSurfaceTangent(VectorDoubleType & gradE, const PointType & pos, int idx) const =0 |
virtual VectorFloatType | SampleGradientAtPoint(const PointType & point, int idx) const =0 |
virtual VectorFloatType | SampleNormalAtPoint(const PointType & point, int idx) const =0 |
virtual GradNType | SampleGradNAtPoint(const PointType & p, int idx) const =0 |
virtual double | Distance(const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const |
virtual double | SquaredDistance(const PointType & a, int idx_a, const PointType & b, int idx_b) const |
virtual bool | IsWithinDistance(const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const |
virtual double | GetCurvature(const PointType & p, int idx) const =0 |
virtual double | GetSurfaceMeanCurvature() const =0 |
virtual double | GetSurfaceStdDevCurvature() const =0 |
virtual PointType | GetZeroCrossingPoint() const =0 |
virtual double | GetSurfaceArea() const =0 |
virtual PointType | GetValidLocationNear(PointType p) const =0 |
virtual double | GetMaxDiameter() const =0 |
virtual void | DeleteImages() =0 |
virtual void | DeletePartialDerivativeImages() =0 |
virtual void | UpdateZeroCrossingPoint() =0 |
bool | IsDomainFixed() const |
virtual shapeworks::DomainType | GetDomainType() const =0 |
std::shared_ptr< shapeworks::Constraints > | GetConstraints() const |
virtual PointType | GetPositionAfterSplit(const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const |
void | SetDomainID(int id) |
void | SetDomainName(std::string name) |
Protected Functions inherited from shapeworks::ParticleDomain
Name | |
---|---|
ParticleDomain() | |
virtual | ~ParticleDomain() |
Protected Attributes inherited from shapeworks::ParticleDomain
Name | |
---|---|
bool | m_FixedDomain |
int | m_DomainID |
std::string | m_DomainName |
std::shared_ptr< shapeworks::Constraints > | constraints |
Public Types Documentation
using Pointer
using shapeworks::ParticleRegionDomain::Pointer = std::shared_ptr<ParticleRegionDomain>;
Standard class typedefs
typedef PointType
typedef ParticleDomain::PointType shapeworks::ParticleRegionDomain::PointType;
Point type used to store particle locations.
Public Functions Documentation
function ApplyConstraints
inline virtual bool ApplyConstraints(
PointType & p
) const
Apply any constraints to the given point location. This method may, for example, implement boundary conditions or restrict points to lie on a surface. This function will clip the point to the boundaries.
function GetUpperBound
inline virtual const PointType & GetUpperBound() const
Reimplements: shapeworks::ParticleDomain::GetUpperBound
Gets the maximum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree.
function GetLowerBound
inline virtual const PointType & GetLowerBound() const
Reimplements: shapeworks::ParticleDomain::GetLowerBound
Gets the minimum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree.
function SetUpperBound
inline void SetUpperBound(
const PointType _UpperBound
)
function SetLowerBound
inline void SetLowerBound(
const PointType _LowerBound
)
function SetRegion
inline void SetRegion(
const PointType & lowerBound,
const PointType & upperBound
)
Protected Functions Documentation
function ParticleRegionDomain
inline ParticleRegionDomain()
function ~ParticleRegionDomain
inline virtual ~ParticleRegionDomain()
function PrintSelf
inline void PrintSelf(
std::ostream & os,
itk::Indent indent
) const
function IsInsideBuffer
inline bool IsInsideBuffer(
const PointType & p
) const
Check whether the point p may be sampled in this domain.
Updated on 2024-03-17 at 12:58:44 -0600