DGtal
2.2.0
Toggle main menu visibility
Loading...
Searching...
No Matches
CanonicEmbedder.h
1
16
17
#pragma once
18
30
31
#if defined(CanonicEmbedder_RECURSES)
32
#error Recursive header files inclusion detected in CanonicEmbedder.h
33
#else
// defined(CanonicEmbedder_RECURSES)
35
#define CanonicEmbedder_RECURSES
36
37
#if !defined CanonicEmbedder_h
39
#define CanonicEmbedder_h
40
42
// Inclusions
43
#include <iostream>
44
#include "DGtal/base/Common.h"
45
#include "DGtal/kernel/CSpace.h"
47
48
namespace
DGtal
49
{
50
52
// class CanonicEmbedder
63
template
<
typename
TSpace>
64
struct
CanonicEmbedder
65
{
66
public
:
67
typedef
CanonicEmbedder<TSpace>
Self
;
68
BOOST_CONCEPT_ASSERT
((
concepts::CSpace< TSpace >
));
69
70
typedef
TSpace
Space
;
71
typedef
typename
Space::Integer
Integer
;
72
typedef
typename
Space::Point
Point
;
73
typedef
typename
Space::Vector
Vector
;
74
typedef
typename
Space::RealPoint
RealPoint
;
75
typedef
Point
Argument
;
76
typedef
RealPoint
Value
;
77
78
// ----------------------- Standard services ------------------------------
79
public
:
80
84
virtual
~CanonicEmbedder
(){};
85
86
91
Point
floor
(
const
RealPoint
& p )
const
;
92
97
Point
ceil
(
const
RealPoint
& p )
const
;
98
105
Point
round
(
const
RealPoint
& p )
const
;
106
114
virtual
RealPoint
embed
(
const
Point
& dp )
const
;
115
123
virtual
RealPoint
operator()
(
const
Point
& dp )
const
;
124
125
126
127
// ----------------------- Interface --------------------------------------
128
public
:
129
134
void
selfDisplay
( std::ostream & out )
const
;
135
140
bool
isValid
()
const
;
141
142
// ------------------------- Protected Data ------------------------------
143
private
:
144
// ------------------------- Private Data --------------------------------
145
private
:
146
147
// ------------------------- Hidden services ------------------------------
148
protected
:
149
150
151
// ------------------------- Internals ------------------------------------
152
private
:
153
154
};
// end of class CanonicEmbedder
155
156
163
template
<
typename
TSpace>
164
std::ostream&
165
operator<<
( std::ostream & out,
const
CanonicEmbedder<TSpace>
&
object
);
166
167
168
}
// namespace DGtal
169
170
172
// Includes inline functions.
173
#include "DGtal/kernel/CanonicEmbedder.ih"
174
175
176
// //
178
179
#endif
// !defined CanonicEmbedder_h
180
181
#undef CanonicEmbedder_RECURSES
182
#endif
// else defined(CanonicEmbedder_RECURSES)
DGtal::SpaceND< 3, Integer >::Integer
Integer Integer
Definition
SpaceND.h:102
DGtal::SpaceND< 3, Integer >::Point
PointVector< dim, Integer > Point
Definition
SpaceND.h:110
DGtal::SpaceND< 3, Integer >::RealPoint
PointVector< dim, double > RealPoint
Definition
SpaceND.h:117
DGtal::SpaceND< 3, Integer >::Vector
PointVector< dim, Integer > Vector
Definition
SpaceND.h:113
DGtal
DGtal is the top-level namespace which contains all DGtal functions and types.
Definition
ClosedIntegerHalfPlane.h:49
DGtal::operator<<
std::ostream & operator<<(std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)
DGtal::CanonicEmbedder
Aim: A trivial embedder for digital points, which corresponds to the canonic injection of Zn into Rn.
Definition
CanonicEmbedder.h:65
DGtal::CanonicEmbedder< Space >::Integer
Space::Integer Integer
Definition
CanonicEmbedder.h:71
DGtal::CanonicEmbedder::isValid
bool isValid() const
DGtal::CanonicEmbedder::round
Point round(const RealPoint &p) const
DGtal::CanonicEmbedder< Space >::Argument
Point Argument
Definition
CanonicEmbedder.h:75
DGtal::CanonicEmbedder::selfDisplay
void selfDisplay(std::ostream &out) const
DGtal::CanonicEmbedder< Space >::Space
Space Space
Definition
CanonicEmbedder.h:70
DGtal::CanonicEmbedder< Space >::Value
RealPoint Value
Definition
CanonicEmbedder.h:76
DGtal::CanonicEmbedder::embed
virtual RealPoint embed(const Point &dp) const
DGtal::CanonicEmbedder::~CanonicEmbedder
virtual ~CanonicEmbedder()
Definition
CanonicEmbedder.h:84
DGtal::CanonicEmbedder::operator()
virtual RealPoint operator()(const Point &dp) const
DGtal::CanonicEmbedder::ceil
Point ceil(const RealPoint &p) const
DGtal::CanonicEmbedder::BOOST_CONCEPT_ASSERT
BOOST_CONCEPT_ASSERT((concepts::CSpace< TSpace >))
DGtal::CanonicEmbedder< Space >::RealPoint
Space::RealPoint RealPoint
Definition
CanonicEmbedder.h:74
DGtal::CanonicEmbedder< Space >::Point
Space::Point Point
Definition
CanonicEmbedder.h:72
DGtal::CanonicEmbedder< Space >::Vector
Space::Vector Vector
Definition
CanonicEmbedder.h:73
DGtal::CanonicEmbedder< Space >::Self
CanonicEmbedder< Space > Self
Definition
CanonicEmbedder.h:67
DGtal::CanonicEmbedder::floor
Point floor(const RealPoint &p) const
DGtal::concepts::CSpace
Aim: Defines the concept describing a digital space, ie a cartesian product of integer lines.
Definition
CSpace.h:106
src
DGtal
kernel
CanonicEmbedder.h
Generated on
for DGtal by
1.18.0