DGtal 2.0.0
Loading...
Searching...
No Matches
DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder > Class Template Reference

Aim: a cellular embedder for images. (default constructible, copy constructible, assignable). Model of CCellEmbedder. More...

#include <DGtal/images/ImageLinearCellEmbedder.h>

Public Types

typedef TKSpace KSpace
typedef TImage Image
typedef TEmbedder Embedder
typedef KSpace::Cell Cell
typedef KSpace::SCell SCell
typedef KSpace::Space Space
typedef Space::Point Point
typedef Space::RealPoint RealPoint
typedef Space::RealVector RealVector
typedef Space::Integer Integer
typedef Image::Value ImageValue
typedef Cell Argument
typedef RealPoint Value

Public Member Functions

 ImageLinearCellEmbedder ()
 ~ImageLinearCellEmbedder ()
 ImageLinearCellEmbedder (const ImageLinearCellEmbedder &other)
ImageLinearCellEmbedderoperator= (const ImageLinearCellEmbedder &other)
void init (ConstAlias< KSpace > K, ConstAlias< Image > f, ConstAlias< Embedder > e, double iso_value)
RealPoint embed (const Point &p) const
RealPoint embedCell (const Cell &cell) const
RealPoint embedSCell (const SCell &scell) const
RealPoint operator() (const Cell &cell) const
void selfDisplay (std::ostream &out) const
bool isValid () const

Private Member Functions

 BOOST_CONCEPT_ASSERT ((concepts::CImage< TImage >))

Private Attributes

const KSpacemyPtrK
 A pointer on the cellular grid space.
const ImagemyPtrImage
 A pointer on the image.
const EmbeddermyPtrEmbedder
 A pointer on the digital embedder.
double myIsoValue
 The threshold value for the linear embedding.

Detailed Description

template<typename TKSpace, typename TImage, typename TEmbedder>
class DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >

Aim: a cellular embedder for images. (default constructible, copy constructible, assignable). Model of CCellEmbedder.

Description of template class 'ImageLinearCellEmbedder'

Template Parameters
TKSpacethe cellular grid space definition.
TImagethe type of implicit function, a model of CImage.
TEmbedderthe type of digital embedder.
Examples
shapes/viewMarchingCubes.cpp, shapes/viewPolygonalMarchingCubes.cpp, and topology/volMarchingCubes.cpp.

Definition at line 69 of file ImageLinearCellEmbedder.h.

Member Typedef Documentation

◆ Argument

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef Cell DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::Argument

Definition at line 85 of file ImageLinearCellEmbedder.h.

◆ Cell

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef KSpace::Cell DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::Cell

Definition at line 77 of file ImageLinearCellEmbedder.h.

◆ Embedder

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef TEmbedder DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::Embedder

Definition at line 76 of file ImageLinearCellEmbedder.h.

◆ Image

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef TImage DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::Image

Definition at line 75 of file ImageLinearCellEmbedder.h.

◆ ImageValue

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef Image::Value DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::ImageValue

Definition at line 84 of file ImageLinearCellEmbedder.h.

◆ Integer

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef Space::Integer DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::Integer

Definition at line 83 of file ImageLinearCellEmbedder.h.

◆ KSpace

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef TKSpace DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::KSpace

Definition at line 74 of file ImageLinearCellEmbedder.h.

◆ Point

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef Space::Point DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::Point

Definition at line 80 of file ImageLinearCellEmbedder.h.

◆ RealPoint

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef Space::RealPoint DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::RealPoint

Definition at line 81 of file ImageLinearCellEmbedder.h.

◆ RealVector

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef Space::RealVector DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::RealVector

Definition at line 82 of file ImageLinearCellEmbedder.h.

◆ SCell

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef KSpace::SCell DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::SCell

Definition at line 78 of file ImageLinearCellEmbedder.h.

◆ Space

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef KSpace::Space DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::Space

Definition at line 79 of file ImageLinearCellEmbedder.h.

◆ Value

template<typename TKSpace, typename TImage, typename TEmbedder>
typedef RealPoint DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::Value

Definition at line 86 of file ImageLinearCellEmbedder.h.

Constructor & Destructor Documentation

◆ ImageLinearCellEmbedder() [1/2]

template<typename TKSpace, typename TImage, typename TEmbedder>
DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::ImageLinearCellEmbedder ( )

Constructor. The object is not valid.

Referenced by ImageLinearCellEmbedder(), and operator=().

◆ ~ImageLinearCellEmbedder()

template<typename TKSpace, typename TImage, typename TEmbedder>
DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::~ImageLinearCellEmbedder ( )

Destructor.

◆ ImageLinearCellEmbedder() [2/2]

template<typename TKSpace, typename TImage, typename TEmbedder>
DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::ImageLinearCellEmbedder ( const ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder > & other)

Copy constructor.

Parameters
otherthe object to copy.

References ImageLinearCellEmbedder().

Member Function Documentation

◆ BOOST_CONCEPT_ASSERT()

template<typename TKSpace, typename TImage, typename TEmbedder>
DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::BOOST_CONCEPT_ASSERT ( (concepts::CImage< TImage >) )
private

◆ embed()

template<typename TKSpace, typename TImage, typename TEmbedder>
RealPoint DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::embed ( const Point & p) const

Maps a digital point to its corresponding point in the Euclidean space.

Parameters
pany digital point in the digital space.
Returns
its embedding by the current embedder in the Euclidean space.

◆ embedCell()

template<typename TKSpace, typename TImage, typename TEmbedder>
RealPoint DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::embedCell ( const Cell & cell) const

Maps a cell to its corresponding point in the Euclidean space, by a linear guess of its position.

Parameters
cellany cell in the cellular grid space.
Returns
its embedding in the Euclidean space.

◆ embedSCell()

template<typename TKSpace, typename TImage, typename TEmbedder>
RealPoint DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::embedSCell ( const SCell & scell) const

Maps a signed cell to its corresponding point in the Euclidean space, by a linear guess of its position. NB: the signed is not used.

Parameters
scellany cell in the cellular grid space.
Returns
its embedding in the Euclidean space.

◆ init()

template<typename TKSpace, typename TImage, typename TEmbedder>
void DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::init ( ConstAlias< KSpace > K,
ConstAlias< Image > f,
ConstAlias< Embedder > e,
double iso_value )

Initializes the embedder with the space K, the implicit function f, the digital embedder e.

Parameters
Kany cellular grid space.
fan image
ea digital embedder (like a GaussDigitizer).
iso_valuethe threshold value that defines the linear embedding.
Examples
topology/volMarchingCubes.cpp.

References K.

Referenced by main().

◆ isValid()

template<typename TKSpace, typename TImage, typename TEmbedder>
bool DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::isValid ( ) const

Checks the validity/consistency of the object.

Returns
'true' if the object is valid, 'false' otherwise.

◆ operator()()

template<typename TKSpace, typename TImage, typename TEmbedder>
RealPoint DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::operator() ( const Cell & cell) const

Maps a cell to its corresponding point in the Euclidean space, by a linear guess of its position.

Parameters
cellany cell in the cellular grid space.
Returns
its embedding in the Euclidean space.

◆ operator=()

template<typename TKSpace, typename TImage, typename TEmbedder>
ImageLinearCellEmbedder & DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::operator= ( const ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder > & other)

Assignment.

Parameters
otherthe object to copy.
Returns
a reference on 'this'.

References ImageLinearCellEmbedder().

◆ selfDisplay()

template<typename TKSpace, typename TImage, typename TEmbedder>
void DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::selfDisplay ( std::ostream & out) const

Writes/Displays the object on an output stream.

Parameters
outthe output stream where the object is written.

Field Documentation

◆ myIsoValue

template<typename TKSpace, typename TImage, typename TEmbedder>
double DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::myIsoValue
private

The threshold value for the linear embedding.

Definition at line 192 of file ImageLinearCellEmbedder.h.

◆ myPtrEmbedder

template<typename TKSpace, typename TImage, typename TEmbedder>
const Embedder* DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::myPtrEmbedder
private

A pointer on the digital embedder.

Definition at line 190 of file ImageLinearCellEmbedder.h.

◆ myPtrImage

template<typename TKSpace, typename TImage, typename TEmbedder>
const Image* DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::myPtrImage
private

A pointer on the image.

Definition at line 188 of file ImageLinearCellEmbedder.h.

◆ myPtrK

template<typename TKSpace, typename TImage, typename TEmbedder>
const KSpace* DGtal::ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder >::myPtrK
private

A pointer on the cellular grid space.

Definition at line 186 of file ImageLinearCellEmbedder.h.


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