Skip to content

shapeworks::MeshWrapper

Inherited by shapeworks::TriMeshWrapper, shapeworks::VtkMeshWrapper

Public Types

Name
typedef ParticleDomain::PointType PointType
typedef ParticleDomain::GradNType GradNType

Public Functions

Name
virtual double ComputeDistance(const PointType & pointa, int idx_a, const PointType & pointb, int idx_b, vnl_vector_fixed< double, 3 > * out_grad =nullptr) const =0
virtual bool IsWithinDistance(const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & dist) const =0
virtual PointType GeodesicWalk(PointType pointa, int idx, vnl_vector_fixed< double, DIMENSION > vector) const =0
virtual PointType GetPointOnMesh() const =0
virtual const PointType & GetMeshLowerBound() const =0
virtual const PointType & GetMeshUpperBound() const =0
virtual vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent(const PointType & pointa, int idx, vnl_vector_fixed< double, DIMENSION > & vector) const =0
virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint(PointType p, int idx) const =0
virtual GradNType SampleGradNAtPoint(PointType p, int idx) const =0
virtual PointType SnapToMesh(PointType pointa, int idx) const =0
virtual void InvalidateParticle(int idx)
virtual bool IsGeodesicsEnabled() const =0
virtual vtkSmartPointer< vtkPolyData > GetPolydata() const =0

Public Types Documentation

typedef PointType

typedef ParticleDomain::PointType shapeworks::MeshWrapper::PointType;

typedef GradNType

typedef ParticleDomain::GradNType shapeworks::MeshWrapper::GradNType;

Public Functions Documentation

function ComputeDistance

virtual double ComputeDistance(
    const PointType & pointa,
    int idx_a,
    const PointType & pointb,
    int idx_b,
    vnl_vector_fixed< double, 3 > * out_grad =nullptr
) const =0

Reimplemented by: shapeworks::TriMeshWrapper::ComputeDistance

function IsWithinDistance

virtual bool IsWithinDistance(
    const PointType & a,
    int idx_a,
    const PointType & b,
    int idx_b,
    double test_dist,
    double & dist
) const =0

Reimplemented by: shapeworks::VtkMeshWrapper::IsWithinDistance

function GeodesicWalk

virtual PointType GeodesicWalk(
    PointType pointa,
    int idx,
    vnl_vector_fixed< double, DIMENSION > vector
) const =0

Reimplemented by: shapeworks::VtkMeshWrapper::GeodesicWalk, shapeworks::TriMeshWrapper::GeodesicWalk

function GetPointOnMesh

virtual PointType GetPointOnMesh() const =0

Reimplemented by: shapeworks::TriMeshWrapper::GetPointOnMesh, shapeworks::VtkMeshWrapper::GetPointOnMesh

function GetMeshLowerBound

virtual const PointType & GetMeshLowerBound() const =0

Reimplemented by: shapeworks::TriMeshWrapper::GetMeshLowerBound, shapeworks::VtkMeshWrapper::GetMeshLowerBound

function GetMeshUpperBound

virtual const PointType & GetMeshUpperBound() const =0

Reimplemented by: shapeworks::TriMeshWrapper::GetMeshUpperBound, shapeworks::VtkMeshWrapper::GetMeshUpperBound

function ProjectVectorToSurfaceTangent

virtual vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent(
    const PointType & pointa,
    int idx,
    vnl_vector_fixed< double, DIMENSION > & vector
) const =0

Reimplemented by: shapeworks::VtkMeshWrapper::ProjectVectorToSurfaceTangent, shapeworks::TriMeshWrapper::ProjectVectorToSurfaceTangent

function SampleNormalAtPoint

virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint(
    PointType p,
    int idx
) const =0

Reimplemented by: shapeworks::TriMeshWrapper::SampleNormalAtPoint, shapeworks::VtkMeshWrapper::SampleNormalAtPoint

function SampleGradNAtPoint

virtual GradNType SampleGradNAtPoint(
    PointType p,
    int idx
) const =0

Reimplemented by: shapeworks::TriMeshWrapper::SampleGradNAtPoint, shapeworks::VtkMeshWrapper::SampleGradNAtPoint

function SnapToMesh

virtual PointType SnapToMesh(
    PointType pointa,
    int idx
) const =0

Reimplemented by: shapeworks::TriMeshWrapper::SnapToMesh, shapeworks::VtkMeshWrapper::SnapToMesh

function InvalidateParticle

inline virtual void InvalidateParticle(
    int idx
)

Reimplemented by: shapeworks::VtkMeshWrapper::InvalidateParticle

function IsGeodesicsEnabled

virtual bool IsGeodesicsEnabled() const =0

Reimplemented by: shapeworks::TriMeshWrapper::IsGeodesicsEnabled, shapeworks::VtkMeshWrapper::IsGeodesicsEnabled

function GetPolydata

virtual vtkSmartPointer< vtkPolyData > GetPolydata() const =0

Reimplemented by: shapeworks::TriMeshWrapper::GetPolydata, shapeworks::VtkMeshWrapper::GetPolydata


Updated on 2022-07-23 at 17:50:03 -0600