DGtal
2.2.0
Toggle main menu visibility
Loading...
Searching...
No Matches
CDigitalSurfaceEmbedder.h
1
16
17
#pragma once
18
30
31
#if defined(CDigitalSurfaceEmbedder_RECURSES)
32
#error Recursive header files inclusion detected in CDigitalSurfaceEmbedder.h
33
#else
// defined(CDigitalSurfaceEmbedder_RECURSES)
35
#define CDigitalSurfaceEmbedder_RECURSES
36
37
#if !defined CDigitalSurfaceEmbedder_h
39
#define CDigitalSurfaceEmbedder_h
40
42
// Inclusions
43
#include <iostream>
44
#include "DGtal/base/Common.h"
45
#include "DGtal/base/CUnaryFunctor.h"
46
#include "DGtal/topology/CSCellEmbedder.h"
48
49
// @since 0.8 In DGtal::concepts
50
namespace
DGtal
{
51
namespace
concepts
{
52
54
// class CDigitalSurfaceEmbedder
95
template
<
typename
T>
96
struct
CDigitalSurfaceEmbedder
:
CSCellEmbedder
<T>
97
{
98
// ----------------------- Concept checks ------------------------------
99
public
:
100
typedef
typename
T::KSpace
KSpace
;
101
typedef
typename
T::Surface
Surface
;
102
typedef
typename
T::SCell
SCell
;
103
typedef
typename
T::RealPoint
RealPoint
;
104
typedef
typename
T::Argument
Argument
;
105
typedef
typename
T::Value
Value
;
106
107
// Already checked in CSCellEmbedder
108
// BOOST_CONCEPT_ASSERT(( CCellularGridSpaceND< KSpace > ));
109
// BOOST_STATIC_ASSERT(( ConceptUtils::SameType< SCell, typename KSpace::SCell >::value ));
110
// BOOST_STATIC_ASSERT(( ConceptUtils::SameType< SCell, Argument >::value ));
111
// BOOST_STATIC_ASSERT(( ConceptUtils::SameType< RealPoint, typename KSpace::RealPoint >::value ));
112
// BOOST_STATIC_ASSERT(( ConceptUtils::SameType< RealPoint, Value >::value ));
113
BOOST_CONCEPT_USAGE
(
CDigitalSurfaceEmbedder
)
114
{
115
checkConstConstraints
();
116
}
117
118
void
checkConstConstraints
()
const
119
{
// operator()
120
// ConceptUtils::sameType( myRP, myX( myP ) );
121
ConceptUtils::sameType
(
mySurface
,
myX
.surface() );
122
}
123
// ------------------------- Private Data --------------------------------
124
private
:
125
T
myX
;
// do not require T to be default constructible.
126
// SCell myP;
127
// RealPoint myRP;
128
Surface
mySurface
;
129
130
// ------------------------- Internals ------------------------------------
131
private
:
132
133
};
// end of concept CDigitalSurfaceEmbedder
134
135
}
// namespace concepts
136
}
// namespace DGtal
137
138
// //
140
141
#endif
// !defined CDigitalSurfaceEmbedder_h
142
143
#undef CDigitalSurfaceEmbedder_RECURSES
144
#endif
// else defined(CDigitalSurfaceEmbedder_RECURSES)
DGtal::concepts::ConceptUtils::sameType
void sameType(const T &, const T &)
Definition
ConceptUtils.h:117
DGtal::concepts
Aim: Gathers several functions useful for concept checks.
Definition
CPositiveIrreducibleFraction.h:54
DGtal
DGtal is the top-level namespace which contains all DGtal functions and types.
Definition
ClosedIntegerHalfPlane.h:49
DGtal::concepts::CDigitalSurfaceEmbedder
Aim: A digital surface embedder is a specialized mapping from signed cells to Euclidean points....
Definition
CDigitalSurfaceEmbedder.h:97
DGtal::concepts::CDigitalSurfaceEmbedder::checkConstConstraints
void checkConstConstraints() const
Definition
CDigitalSurfaceEmbedder.h:118
DGtal::concepts::CDigitalSurfaceEmbedder::mySurface
Surface mySurface
Definition
CDigitalSurfaceEmbedder.h:128
DGtal::concepts::CDigitalSurfaceEmbedder::BOOST_CONCEPT_USAGE
BOOST_CONCEPT_USAGE(CDigitalSurfaceEmbedder)
Definition
CDigitalSurfaceEmbedder.h:113
DGtal::concepts::CDigitalSurfaceEmbedder::Argument
T::Argument Argument
Definition
CDigitalSurfaceEmbedder.h:104
DGtal::concepts::CDigitalSurfaceEmbedder::Surface
T::Surface Surface
Definition
CDigitalSurfaceEmbedder.h:101
DGtal::concepts::CDigitalSurfaceEmbedder::RealPoint
T::RealPoint RealPoint
Definition
CDigitalSurfaceEmbedder.h:103
DGtal::concepts::CDigitalSurfaceEmbedder::SCell
T::SCell SCell
Definition
CDigitalSurfaceEmbedder.h:102
DGtal::concepts::CDigitalSurfaceEmbedder::KSpace
T::KSpace KSpace
Definition
CDigitalSurfaceEmbedder.h:100
DGtal::concepts::CDigitalSurfaceEmbedder::Value
T::Value Value
Definition
CDigitalSurfaceEmbedder.h:105
DGtal::concepts::CDigitalSurfaceEmbedder::myX
T myX
Definition
CDigitalSurfaceEmbedder.h:125
DGtal::concepts::CSCellEmbedder
Aim: A cell embedder is a mapping from signed cells to Euclidean points. It adds inner types to funct...
Definition
CSCellEmbedder.h:98
src
DGtal
topology
CDigitalSurfaceEmbedder.h
Generated on
for DGtal by
1.18.0