DGtal 1.4.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.
Todo
assert dimensions of space, embedder and implicit function.
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.

◆ ~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.

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.

Referenced by main(), DGtal::Shortcuts< TKSpace >::makePolygonalSurface(), and DGtal::Shortcuts< TKSpace >::makeTriangulatedSurface().

◆ 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'.

◆ 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: