DGtal  0.6.devel
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Namespaces | Data Structures | Typedefs | Enumerations | Functions | Variables
DGtal Namespace Reference

Namespaces

namespace  BasicColorToScalarFunctors
namespace  ConceptUtils
namespace  deprecated
namespace  detail
namespace  details
namespace  experimental
namespace  Z2i
namespace  Z3i

Data Structures

struct  ClosedIntegerHalfPlane
 Aim: A half-space specified by a vector N and a constant c. The half-space is the set \( \{ P \in Z^2, N.P \le c \} \). More...
struct  CPositiveIrreducibleFraction
 Aim: Defines positive irreducible fractions, i.e. fraction p/q, p and q non-negative integers, with gcd(p,q)=1. More...
class  IntegerComputer
 Aim: This class gathers several types and methods to make computation with integers. More...
class  LatticePolytope2D
 Aim: Represents a 2D polytope, i.e. a convex polygon, in the two-dimensional digital plane. The list of points must follow the clockwise ordering. More...
class  LighterSternBrocot
 Aim: The Stern-Brocot tree is the tree of irreducible fractions. This class allows to construct it progressively and to navigate within fractions in O(1) time for most operations. It is well known that the structure of this tree is a coding of the continued fraction representation of fractions. More...
class  LightSternBrocot
 Aim: The Stern-Brocot tree is the tree of irreducible fractions. This class allows to construct it progressively and to navigate within fractions in O(1) time for most operations. It is well known that the structure of this tree is a coding of the continued fraction representation of fractions. More...
class  ModuloComputer
 implements basic functions on modular arithmetic. More...
class  Pattern
 Aim: This class represents a pattern, i.e. the path between two consecutive upper leaning points on a digital straight line. More...
class  StandardDSLQ0
class  SternBrocot
 Aim: The Stern-Brocot tree is the tree of irreducible fractions. This class allows to construct it progressively and to navigate within fractions in O(1) time for most operations. It is well known that the structure of this tree is a coding of the continued fraction representation of fractions. More...
struct  CBidirectionalIteratorArchetype
 An archetype of BidirectionalIterator. More...
struct  CConstBidirectionalIteratorArchetype
 An archetype of ConstBidirectionalIterator. More...
struct  CForwardIteratorArchetype
 An archetype of ForwardIterator. More...
struct  TrueBoolFct0
struct  FalseBoolFct0
struct  IdentityBoolFct1
struct  NotBoolFct1
struct  AndBoolFct2
struct  OrBoolFct2
struct  XorBoolFct2
struct  ImpliesBoolFct2
struct  MinFunctor
struct  MaxFunctor
struct  MinusFunctor
struct  AbsFunctor
struct  DefaultFunctor
 Aim: Define a simple default functor that just returns its argument. More...
class  ConstValueFunctor
 Aim: Define a simple functor that returns a constant value (0 by default). More...
struct  CastFunctor
 Aim: Define a simple functor using the static cast operator. More...
class  Composer
 Aim: Define a new Functor from the composition of two other functors. More...
class  Thresholder
 Aim: A small functor with an operator () that compares one value to a threshold value according to two bool template parameters. More...
struct  Thresholder< T, false, false >
struct  Thresholder< T, false, true >
struct  Thresholder< T, true, false >
struct  Thresholder< T, true, true >
struct  PredicateCombiner
 Aim: The predicate returns true when the given binary functor returns true for the two Predicates given at construction. More...
class  IntervalThresholder
 Aim: A small functor with an operator () that compares one value to an interval. More...
class  Pair1st
 Aim: Define a simple functor that returns the first member of a pair. More...
class  Pair2nd
 Aim: Define a simple functor that returns the second member of a pair. More...
class  Pair1stMutator
 Aim: Define a simple unary functor that returns a reference on the first member of a pair in order to update it. More...
class  Pair2ndMutator
 Aim: Define a simple unary functor that returns a reference on the first member of a pair in order to update it. More...
struct  Bits
struct  CBackInsertable
 Aim: Represents types for which a std::back_insert_iterator can be constructed with std::back_inserter. Back Insertion Sequence are refinements of CBackInsertable. They require more services than CBackInsertable, for instance read services or erase services. More...
struct  CBidirectionalOutputRange
 Aim: refined concept of bidirectional range which require that a reverse output iterator exists. More...
struct  CBidirectionalOutputRangeFromPoint
 Aim: refined concept of single pass range with an routputIterator() method from a point. More...
struct  CBidirectionalRange
 Aim: Defines the concept describing a bidirectional range. More...
struct  CBidirectionalRangeFromPoint
 Aim: refined concept of single pass range with a begin() method from a point. More...
struct  CConstBidirectionalRange
struct  CConstBidirectionalRangeFromPoint
 Aim: refined concept of const bidirectional range with a begin() method from a point. More...
struct  CConstSinglePassRange
 Aim: Defines the concept describing a const range. More...
struct  CConstSinglePassRangeFromPoint
 Aim: refined concept of const single pass range with a begin() method from a point. More...
class  Circulator
 Aim: Provides an adapter for STL iterators that can iterate through the underlying data structure as in a loop. The increment (resp. decrement if at least bidirectionnal) operator encapsulates the validity test and the assignement to the first (resp. last) iterator of a given range. For instance, the pre-increment operator does: More...
struct  CLabel
 Aim: Define the concept of DGtal labels. Models of CLabel can be default-constructible, assignable and equality comparable. More...
class  Clock
struct  DrawableWithDisplay3D
struct  DrawableWithBoard2D
struct  TagFalse
struct  TagTrue
struct  TagUnknown
struct  Negate
struct  Negate< TagTrue >
struct  Negate< TagFalse >
struct  DummyObject
class  ConstIteratorAdapter
 This class adapts any iterator so that operator* returns another element than the one pointed to by the iterator. More...
class  ConstRangeAdapter
 Aim: model of CConstBidirectionalRange that adapts any range of elements bounded by two iterators [itb, ite) and provides services to (circularly)iterate over it (in a read-only manner). More...
class  ConstRangeFromPointAdapter
 Aim: model of CConstBidirectionalRangeFromPoint that adapts any bidirectional range and provides services to iterate over it (in a read-only manner). More...
class  CountedPtr
 Aim: Smart pointer based on reference counts. More...
class  CowPtr
 Aim: Copy on write shared pointer. More...
struct  CPredicate
 Aim: Defines a predicate function, ie. a functor mapping a domain into the set of booleans. More...
struct  CQuantity
 Aim: defines the concept of quantity in DGtal. More...
struct  CSinglePassOutputRange
 Aim: refined concept of single pass range which require that an output iterator exists. More...
struct  CSinglePassOutputRangeFromPoint
 Aim: refined concept of single pass range with a outputIterator() method from a point. More...
struct  CSinglePassRange
 Aim: Defines the concept describing a range. More...
struct  CSinglePassRangeFromPoint
 Aim: refined concept of single pass range with a begin() method from a point. More...
struct  CUnaryFunctor
 Aim: Defines a unary functor, which associates arguments to results. More...
class  IOException
class  InputException
class  ConnectivityException
class  MemoryException
class  InfiniteNumberException
class  POW
class  POW< X, 1 >
class  LOG2
class  LOG2< 2 >
class  LOG2< 1 >
class  IndexedListWithBlocks
 Aim: Represents a mixed list/array structure which is useful in some context. It is essentially a list of blocks. More...
class  InputIteratorWithRankOnSequence
 Aim: Useful to create an iterator that returns a pair (value,rank) when visiting a sequence. The sequence is smartly copied within the iterator. Hence, the given sequence need not to persist during the visit. Since it is only an input sequence, it is not necessary to give a valid sequence when creating the end() iterator. More...
class  IteratorAdapter
 This class adapts any lvalue iterator so that operator* returns a member on the element pointed to by the iterator, instead the element itself. More...
struct  IteratorType
struct  CirculatorType
struct  ForwardCategory
struct  BidirectionalCategory
struct  RandomAccessCategory
struct  IsCirculator
 Aim: Checks whether type is a circular or a classical iterator. More...
struct  IteratorCirculatorType
 Aim: Provides the type of as a nested type. More...
struct  IteratorCirculatorTagTraits
 Aim: Provides the category of the iterator (resp. circulator) {ForwardCategory,BidirectionalCategory,RandomAccessCategory}. More...
struct  IteratorCirculatorTagTraits< std::forward_iterator_tag >
struct  IteratorCirculatorTagTraits< std::bidirectional_iterator_tag >
struct  IteratorCirculatorTagTraits< std::random_access_iterator_tag >
struct  IteratorCirculatorTagTraits< boost::forward_traversal_tag >
struct  IteratorCirculatorTagTraits< boost::bidirectional_traversal_tag >
struct  IteratorCirculatorTagTraits< boost::random_access_traversal_tag >
struct  IteratorCirculatorTagTraits< boost::detail::iterator_category_with_traversal< std::input_iterator_tag, boost::forward_traversal_tag > >
struct  IteratorCirculatorTagTraits< boost::detail::iterator_category_with_traversal< std::input_iterator_tag, boost::bidirectional_traversal_tag > >
struct  IteratorCirculatorTagTraits< boost::detail::iterator_category_with_traversal< std::input_iterator_tag, boost::random_access_traversal_tag > >
struct  IteratorCirculatorTraits
 Aim: Provides nested types for both iterators and circulators: Type, Category, Value, Difference, Pointer and Reference. More...
struct  IteratorCirculatorTraits< T * >
struct  IteratorCirculatorTraits< T const * >
class  LabelledMap
 Aim: Represents a map label -> data, where the label is an integer between 0 and a constant L-1. It is based on a binary coding of labels and a mixed list/array structure. The assumption is that the number of used labels is much less than L. The objective is to minimize the memory usage. More...
class  Labels
 Aim: Stores a set of labels in {O..L-1} as a sequence of bits. More...
struct  OpInSTLContainers
 Aim: Implementation of an adapter for erase and insert methods of STL containers so that they not only work for the iterator type, but also for the reverse_iterator type. More...
struct  OpInSTLContainers< Container, std::reverse_iterator< typename Container::iterator > >
class  OrderedAlphabet
 Aim: Describes an alphabet over an interval of (ascii) letters, where the lexicographic order can be changed (shifted, reversed, ...). Useful for the arithmetic minimum length polygon (AMLP). More...
class  OutputIteratorAdapter
 Aim: Adapts an output iterator i with a unary functor f, both given at construction, so that the element pointed to by i is updated with a given value through f. More...
class  OwningOrAliasingPtr
 Aim: This class describes a smart pointer that is, given the constructor called by the user, either an alias pointer on existing data or an owning pointer on a copy. More...
class  ReverseIterator
 This class adapts any bidirectional iterator so that operator++ calls operator– and vice versa. More...
class  SimpleConstRange
 Aim: model of CConstRange that adapts any range of elements bounded by two iterators [itb, ite) and provides services to (circularly)iterate over it (in a read-only manner). More...
class  SimpleRandomAccessConstRangeFromPoint
 Aim: model of CConstBidirectionalRangeFromPoint that adapts any range of elements bounded by two iterators [itb, ite) and provides services to (circularly)iterate over it (in a read-only manner). More...
class  SimpleRandomAccessRangeFromPoint
 Aim: model of CBidirectionalRangeFromPoint that adapts any range of elements bounded by two iterators [itb, ite) and provides services to (circularly)iterate over it (in a read-only manner). More...
class  Statistic
 Aim: This class processes a set of sample values for one variable and can then compute different statistics, like sample mean, sample variance, sample unbiased variance, etc. It is minimalistic for space efficiency. For multiple variables, sample storage and others, see Statistics class. More...
struct  StdMapRebinder
class  Trace
 implementation of basic methods to trace out messages with indentation levels. More...
class  TraceWriter
 Virtual Class to implement trace writers. More...
class  TraceWriterFile
class  TraceWriterTerm
 Implements trace prefix for color terminals. More...
class  ArithmeticalDSS
 Aim: Dynamic recognition of a digital straight segment (DSS) defined as the sequence of simply connected points (x,y) such that mu <= ax - by < mu + omega. More...
class  ArithmeticalDSS3d
 Aim: Dynamic recognition of a 3d-digital straight segment (DSS) More...
class  BinomialConvolver
 Aim: This class represents a 2D contour convolved by some binomial. It computes first and second order derivatives so as to be able to estimate tangent and curvature. In particular, it smoothes digital contours but could be used for other kind of contours. More...
struct  TangentFromBinomialConvolverFunctor
 Aim: This class is a functor for getting the tangent vector of a binomial convolver. More...
struct  CurvatureFromBinomialConvolverFunctor
 Aim: This class is a functor for getting the tangent vector of a binomial convolver. More...
class  BinomialConvolverEstimator
 Aim: This class encapsulates a BinomialConvolver and a functor on BinomialConvolver so as to be a model of CLocalGeometricEstimator. More...
struct  CBidirectionalSegmentComputer
 Aim: Defines the concept describing a bidirectional segment computer, ie. a model of CSegment that can extend itself in the two possible directions. More...
struct  CDynamicBidirectionalSegmentComputer
 Aim: Defines the concept describing a dynamic and bidirectional segment computer, ie. a model of CSegment that can extend and retract itself in either direction. More...
struct  CDynamicSegmentComputer
 Aim: Defines the concept describing a dynamic segment computer, ie. a model of CSegment that can extend and retract itself (in the direction that is relative to the underlying iterator). More...
struct  CForwardSegmentComputer
 Aim: Defines the concept describing a forward segment computer. Like any model of CIncrementalSegmentComputer, it can control its own extension (in the direction that is relative to the underlying iterator) so that an implicit predicate P remains true. However, contrary to models of CIncrementalSegmentComputer, it garantees that P is also true for any subrange of the whole segment at any time. This extra constraint is necessary to be able to incrementally check whether or not the segment is maximal. More...
struct  CIncrementalSegmentComputer
 Aim: Defines the concept describing an incremental segment computer, ie. a model of CSegmentFactory that can, in addition, incrementally check whether or not an implicit predicate P is true. In other words, it can control its own extension from a range of one element (in the direction that is relative to the underlying iterator) so that an implicit predicate P remains true. More...
class  CombinatorialDSS
 Aim: More...
struct  CSegment
 Aim: Defines the concept describing a segment, ie. a valid and not empty range. More...
struct  CSegmentFactory
 Aim: Defines the concept describing a segment ie. a valid and not empty subrange, which can construct instances of its own type or of derived type. More...
class  BLUELocalLengthEstimator
 Aim: Best Linear Unbiased Two step length estimator. More...
struct  CGlobalGeometricEstimator
 Aim: This concept describes an object that can process a range so as to return one estimated quantity for the whole range. More...
struct  CLocalGeometricEstimator
 Aim: This concept describes an object that can process a range so as to return one estimated quantity for each element of the range (or a given subrange). More...
struct  CompareLocalEstimators
 Aim: Functor to compare two local geometric estimators. More...
struct  CSegmentComputerEstimator
 Aim: This concept is a refinement of CLocalGeometricEstimator devoted to the estimation of a geometric quantiy along a segment detected by a segment computer. More...
class  DSSLengthEstimator
 Aim: a model of CGlobalCurveEstimator that segments the digital curve into DSS and computes the length of the resulting (not uniquely defined) polygon. More...
class  FPLengthEstimator
 Aim: a model of CGlobalCurveEstimator that computes the length of a digital curve using its FP (faithful polygon) More...
class  L1LengthEstimator
 Aim: a simple model of CGlobalCurveEstimator that compute the length of a curve using the l_1 metric (just add 1/h for every step). More...
class  MLPLengthEstimator
 Aim: a model of CGlobalCurveEstimator that computes the length of a digital curve using its MLP (given by the FP) More...
class  MostCenteredMaximalSegmentEstimator
 Aim: A model of CLocalCurveGeometricEstimator that assigns to each element of a (sub)range a quantity estimated from the most centered maximal segment passing through this element. More...
class  ParametricShapeArcLengthFunctor
 Aim: implements a functor that estimates the arc length of a paramtric curve. More...
class  ParametricShapeCurvatureFunctor
 Aim: implements a functor that computes the curvature at a given point of a parametric shape. More...
class  ParametricShapeTangentFunctor
 Aim: implements a functor that computes the tangent vector at a given point of a parametric shape. More...
class  RosenProffittLocalLengthEstimator
 Aim: Rosen-Proffitt Length Estimator. More...
class  TangentFromDSSEstimator
class  TangentVectorFromDSSEstimator
class  TangentAngleFromDSSEstimator
class  CurvatureFromDCAEstimator
class  NormalFromDCAEstimator
class  TangentFromDCAEstimator
class  DistanceFromDCAEstimator
class  CurvatureFromDSSLengthEstimator
class  CurvatureFromDSSEstimator
class  TrueGlobalEstimatorOnPoints
 Aim: Computes the true quantity to each element of a range associated to a parametric shape. More...
class  TrueLocalEstimatorOnPoints
 Aim: Computes the true quantity to each element of a range associated to a parametric shape. More...
class  TwoStepLocalLengthEstimator
 Aim: a simple model of CGlobalCurveEstimator that compute the length of a curve using the l_1 metric (just add 1/h for every step). More...
class  Adapter
 Aim: abstract adapter for ArithmeticalDSS. Has 2 virtual methods: More...
class  Adapter4ConvexPart
 Aim: adapter for ArithmeticalDSS used by FP in convex parts. Has 2 methods: More...
class  Adapter4ConcavePart
 Aim: adapter for ArithmeticalDSS used by FP in concave parts. Has 2 methods: More...
class  FP
 Aim: Computes the faithful polygon (FP) of a range of 4/8-connected 2D Points. More...
class  FrechetShortcut
 Aim: On-line computation Computation of the longest shortcut according to the Fréchet distance for a given error. See related article: Sivignon, I., (2011). A Near-Linear Time Guaranteed Algorithm for Digital Curve Simplification under the Fréchet Distance. DGCI 2011. Retrieved from http://link.springer.com/chapter/10.1007/978-3-642-19867-0_28. More...
class  FreemanChain
class  GeometricalDCA
 Aim: On-line recognition of a digital circular arcs (DCA) defined as a sequence of connected grid edges such that there is at least one (Euclidean) circle that separates the centers of the two incident pixels of each grid edge. More...
class  GeometricalDSS
 Aim: On-line recognition of a digital straight segment (DSS) defined as a sequence of connected grid edges such that there is at least one straight line that separates the centers of the two incident pixels of each grid edge. More...
class  GreedySegmentation
 Aim: Computes the greedy segmentation of a range given by a pair of ConstIterators. The last element of a given segment is the first one one of the next segment. More...
class  GridCurve
 Aim: describes, in a cellular space of dimension n, a closed of open sequence of signed d-cells (or d-scells), d being either equal to 1 or (n-1). More...
class  SaturatedSegmentation
 Aim: Computes the saturated segmentation, that is the whole set of maximal segments within a range given by a pair of ConstIterators (maximal segments are segments that cannot be included in greater segments). More...
struct  ForwardSegmentComputer
struct  BidirectionalSegmentComputer
struct  DynamicSegmentComputer
struct  DynamicBidirectionalSegmentComputer
struct  SegmentComputerTraits
 Aim: Provides the category of the segment computer {ForwardSegmentComputer,BidirectionalSegmentComputer, DynamicSegmentComputer, DynamicBidirectionalSegmentComputer}. More...
class  ContourHelper
 Aim: a helper class to process sequences of points. More...
class  COBAGenericNaivePlane
 Aim: A class that recognizes pieces of digital planes of given axis width. When the width is 1, it corresponds to naive planes. Contrary to COBANaivePlane, the axis is not specified at initialization of the object. This class uses three instances of COBANaivePlane, one per axis. More...
class  COBANaivePlane
 Aim: A class that contains the COBA algorithm (Emilie Charrier, Lilian Buzer, DGCI2008) for recognizing pieces of digital planes of given axis width. When the width is 1, it corresponds to naive planes. The axis is specified at initialization of the object. More...
class  ConstantConvolutionWeights
 Aim: implement a trivial constant convolution kernel which returns 1 to each distance. More...
class  GaussianConvolutionWeights
 Aim: implement a Gaussian centered convolution kernel. More...
struct  CConvolutionWeights
 Aim: defines models of centered convolution kernel used for normal vector integration for instance. More...
struct  CNormalVectorEstimator
 Aim: Represents the concept of estimator of normal vector along digital surfaces. More...
class  DigitalSurfaceEmbedderWithNormalVectorEstimator
 Aim: Combines a digital surface embedder with a normal vector estimator to get a model of CDigitalSurfaceEmbedder and CWithGradientMap. (also default constructible, copy constructible, assignable). More...
class  DigitalSurfaceEmbedderWithNormalVectorEstimatorGradientMap
class  LocalConvolutionNormalVectorEstimator
 Aim: Computes the normal vector at a surface element by convolution of elementary normal vector to adjacent surfel. More...
class  NormalVectorEstimatorLinearCellEmbedder
 Aim: model of cellular embedder for normal vector estimators on digital surface, (default constructible, copy constructible, assignable). More...
class  Preimage2D
 Aim: Computes the preimage of the 2D Euclidean shapes crossing a sequence of n straigth segments in O(n), with the algorithm of O'Rourke (1981). More...
class  SphericalAccumulator
 Aim: implements an accumulator (as histograms for 1D scalars) adapted to spherical point samples. More...
struct  CSeparableMetric
class  DistanceTransformation
 Aim: Implementation of the linear in time distance transformation for separable metrics. More...
class  FMM
 Aim: Fast Marching Method (FMM) for nd distance transforms. More...
class  L2FirstOrderLocalDistance
 Aim: Class for the computation of the Euclidean distance at some point p, from the available distance values of some points lying in the 1-neighborhood of p (ie. points at a L1-distance to p equal to 1). More...
class  L2SecondOrderLocalDistance
 Aim: Class for the computation of the Euclidean distance at some point p, from the available distance values of some points lying in the neighborhood of p, such that only one of their coordinate differ from the coordinates of p by at most two. More...
class  LInfLocalDistance
 Aim: Class for the computation of the LInf-distance at some point p, from the available distance values of some points lying in the 1-neighborhood of p (ie. points at a L1-distance to p equal to 1). More...
class  L1LocalDistance
 Aim: Class for the computation of the L1-distance at some point p, from the available distance values of some points lying in the 1-neighborhood of p (ie. points at a L1-distance to p equal to 1). More...
class  L2FirstOrderLocalDistanceFromCells
 Aim: Class for the computation of the Euclidean distance at some point p, from the available distance values in the neighborhood of p. Contrary to L2FirstOrderLocalDistance, the distance values are not available from the points adjacent to p but instead from the (d-1)-cells lying between p and these points. More...
class  SpeedExtrapolator
 Aim: Class for the computation of the a speed value at some point p, from the available distance values and speed values of some points lying in the 1-neighborhood of p (ie. points at a L1-distance to p equal to 1) in order to extrapolate a speed field in the normal direction to the interface. More...
class  ReverseDistanceTransformation
 Aim: Implementation of the linear in time reverse distance transformation. More...
struct  SeparableMetricHelper
 Aim: Implements basic functions associated to metrics used by separable volumetric algorithms. More...
struct  SeparableMetricHelper< TPoint, TInternalValue, 2 >
struct  SeparableMetricHelper< TPoint, TInternalValue, 1 >
struct  SeparableMetricHelper< TPoint, TInternalValue, 0 >
class  VoronoiMap
 Aim: Implementation of the linear in time Voronoi map construction. More...
class  Measure
 Aim: Implements a simple measure computation (in the Lesbegue sens) of a set. In dimension 2, it corresponds to the area of the set, to the volume in dimension 3,... More...
struct  CConstImage
struct  CImage
class  ConstImageAdapter
 Aim: implements a const image adapter with a given domain (i.e. a subdomain) and 2 functors : g for domain, f for accessing point values. More...
struct  CTrivialConstImage
struct  CTrivialImage
class  DefaultConstImageRange
 Aim: model of CConstBidirectionalRangeFromPoint that adapts the domain of an image in order to iterate over the values associated to its domain points (in a read-only as well as a write-only manner). More...
class  DefaultImageRange
 Aim: model of CConstBidirectionalRangeFromPoint and CBidirectionalOutputRangeFromPoint that adapts the domain of an image in order to iterate over the values associated to its domain points (in a read-only as well as a write-only manner). More...
class  Image
 Aim: implements association bewteen points lying in a digital domain and values. More...
class  ImageAdapter
 Aim: implements an image adapter with a given domain (i.e. a subdomain) and 3 functors : g for domain, f for accessing point values and f-1 for writing point values. More...
class  ImageContainerByHashTree
 Model of CImageContainer implementing the association key<->Value using a hash tree. This class provides a built-in iterator. More...
class  ImageContainerBySTLMap
class  DistanceFunctorFromPoint
class  ImageContainerBySTLVector
class  ImageLinearCellEmbedder
 Aim: a cellular embedder for images. (default constructible, copy constructible, assignable). Model of CCellEmbedder. More...
struct  ImageSelector
 Aim: Automatically defines an adequate image type according to the hints given by the user. More...
struct  ImageSelector< Domain, Value, LOW_ITER_I+LOW_BEL_I >
struct  ImageFromSet
 Aim: Define utilities to convert a digital set into an image. More...
class  IntervalForegroundPredicate
 Aim: Define a simple Foreground predicate thresholding image values between two constant values. More...
struct  SetFromImage
 Aim: Define utilities to convert a digital set into an image. More...
class  SimpleThresholdForegroundPredicate
 Aim: Define a simple Foreground predicate thresholding image values given a single thresold. More precisely, the functor operator() returns true if the value is greater than a given threshold. More...
class  Morton
 Aim: Implements the binary Morton code construction in nD. More...
class  SetValueIterator
 Aim: implements an output iterator, which is able to write values in an underlying image, by calling its setValue method. More...
class  Board2D
 Aim: This class specializes a 'Board' class so as to display DGtal objects more naturally (with <<). The user has simply to declare a Board2D object and uses stream operators to display most digital objects. Furthermore, one can use this class to modify the current style for drawing. More...
struct  DrawWithBoardModifier
struct  CustomStyle
struct  SetMode
 Modifier class in a Board2D stream. Useful to choose your own mode for a given class. Realizes the concept CDrawableWithBoard2D. More...
struct  CustomColors
 Custom style class redefining the pen color and the fill color. You may use Board2D::Color::None for transparent color. More...
struct  CustomPenColor
 Custom style class redefining the pen color. You may use Board2D::Color::None for transparent color. More...
struct  CustomFillColor
 Custom style class redefining the fill color. You may use Board2D::Color::None for transparent color. More...
struct  CustomPen
 Custom style class redefining the pen attributes. You may use Board2D::Color::None for transparent color. More...
class  Board3DTo2D
 Class for PDF, PNG, PS, EPS, SVG export drawings with Cairo with 3D->2D projection. More...
struct  CDrawableWithBoard2D
struct  CDrawableWithDisplay3D
class  Color
 Structure representing an RGB triple. More...
struct  CColorMap
 Aim: Defines the concept describing a color map. A color map converts a value within a given range into an RGB triple. More...
class  ColorBrightnessColorMap
 Aim: This class template may be used to (linearly) convert scalar values in a given range into a color with given lightness. More...
class  GradientColorMap
 Aim: This class template may be used to (linearly) convert scalar values in a given range into a color in a gradient defined by two or more colors. More...
class  GrayscaleColorMap
 Aim: This class template may be used to (linearly) convert scalar values in a given range into gray levels. More...
class  HueShadeColorMap
 Aim: This class template may be used to (linearly) convert scalar values in a given range into a color in a cyclic hue shade colormap, maybe aka rainbow color map. This color map is suitable, for example, to colorize distance functions. By default, only one hue cycle is used. More...
class  RandomColorMap
 Aim: access to random color from a gradientColorMap. More...
struct  Display2DFactory
 Factory for Display2D: More...
class  Display3D
 Aim: This semi abstract class defines the stream mechanism to display 3d primitive (like PointVector, DigitalSetBySTLSet, Object ...). The class Viewer3D and Board3DTo2D implement two different ways to display 3D objects. The first one (Viewer3D), permits an interactive visualisation (based on OpenGL ) and the second one (Board3DTo2D) provides 3D visualisation from 2D vectorial display (based on the CAIRO library) More...
struct  Display3DFactory
 Factory for GPL Display3D: More...
struct  DrawWithDisplay3DModifier
 Base class specifying the methods for classes which intend to modify a Viewer3D stream. More...
struct  SetMode3D
 Modifier class in a Display3D stream. Useful to choose your own mode for a given class. Realizes the concept CDrawableWithDisplay3D. More...
struct  CustomStyle3D
 Modifier class in a Display3D stream. Useful to choose your own style for a given class. Realizes the concept CDrawableWithDisplay3D. More...
struct  CustomColors3D
 Custom style class redefining the fill color and the gl_LINE/gl_POINT color. You can use DGtal::Color with alpha transparency value but you nedd to take into account the z-buffer during the Open-GL based rendering. More...
struct  ClippingPlane
 Class for adding a Clipping plane through the Viewer3D stream. Realizes the concept CDrawableWithViewer3D. More...
struct  CameraPosition
 CameraPosition class to set camera position. More...
struct  CameraDirection
 CameraDirection class to set camera direction. More...
struct  CameraUpVector
 CameraUpVector class to set camera up-vector. More...
struct  CameraZNearFar
 CameraZNearFar class to set near and far distance. More...
struct  TransformedKSSurfel
 class to modify the position and scale to construct better illustration mode. More...
struct  LongvolReader
 Aim: implements methods to read a "Longvol" file format (with DGtal::uint64_t value type). More...
struct  MagickReader
 Aim: implements methods to read a 2D image using the ImageMagick library. More...
struct  MeshReader
 Aim: Defined to import OFF and OFS surface mesh. It allows to import a MeshFromPoints object and takes into accouts the optional color faces. More...
struct  PNMReader
 Aim: Import a 2D or 3D using the Netpbm formats (ASCII mode). More...
struct  PointListReader
 Aim: Implements method to read a set of points represented in each line of a file. More...
struct  RawReader
 Aim: implements methods to read a "Vol" file format. More...
struct  VolReader
 Aim: implements methods to read a "Vol" file format. More...
struct  Style2DFactory
struct  DefaultDrawStyleCircular_AngleLinearMinimizer
struct  DefaultDrawStyleBB_ArithmeticalDSS
struct  DefaultDrawStylePoints_ArithmeticalDSS
struct  DefaultDrawStyle_DigitalSetBySTLSet
struct  DefaultDrawStyle_DigitalSetBySTLVector
struct  DefaultDrawStyle_FP
struct  DefaultDrawStyleGrid_FreemanChain
struct  DefaultDrawStyleInterGrid_FreemanChain
struct  DefaultDrawStyle_GeometricalDSS
struct  DefaultDrawStyle_GeometricalDCA
struct  DefaultDrawStyle_FrechetShortcut
struct  DefaultDrawStylePaving_HyperRectDomain
struct  DefaultDrawStyleGrid_HyperRectDomain
struct  DefaultDrawStyle_ImageContainerByHashTree
struct  DefaultDrawStyle_ImageContainerBySTLVector
struct  DefaultDrawStyle_KhalimskyCell
struct  DefaultDrawStyle_Object
struct  DefaultDrawStylePaving_PointVector
struct  DefaultDrawStyleGrid_PointVector
struct  DefaultDrawStyle_SignedKhalimskyCell
struct  DefaultDrawStyleFilled_LatticePolytope2D
struct  DefaultDrawStyleTransparent_LatticePolytope2D
class  DGtalInventor
 Aim: A stream object based on Open Inventor for exporting or displaying DGtal objects. More...
class  IVViewer
 Aim: A facade to represent an inventor window for 3D objects. May be a SoXt or a SoQt examiner viewer. NB: backported from ImaGeneUtils library. More...
class  Lattice
 Aim: Represents an n-dimensional integer lattice in an m-dimensional real vector space. More...
class  Viewer3D
 Aim: Display 3D primitive (like PointVector, DigitalSetBySTLSet, Object ...). This class uses the libQGLViewer library (http://www.libqglviewer.com ). It inherits of the class Display3D and permits to display object using a simple stream mechanism of "<<". More...
struct  LongvolWriter
 Aim: Export a 3D Image using the Longvol formats (volumetric image with DGtal::uint64_t value type). More...
struct  MeshWriter
 Aim: Export a Mesh (MeshFromPoints object) in different format as OFF and OBJ). More...
struct  PGMWriter
 Aim: Export a 2D and a 3D Image using the Netpbm PGM formats (ASCII mode). More...
struct  PPMWriter
 Aim: Export a 2D and a 3D Image using the Netpbm PPM formats (ASCII mode). More...
struct  RawWriter
 Aim: Raw binary export of an Image. More...
struct  VolWriter
 Aim: Export a 3D Image using the Vol formats. More...
struct  Projector
 Aim: Functor that maps a point P of dimension i to a point Q of dimension j. The member myDims is an array containing the coordinates - (0, 1, ..., j-1) by default - that are copied from P to Q. More...
struct  ConstantPointPredicate
 Aim: The predicate that returns always the same value boolCst. More...
struct  TruePointPredicate
 Aim: The predicate that returns always true. More...
struct  FalsePointPredicate
 Aim: The predicate that returns always false. More...
struct  IsLowerPointPredicate
 Aim: The predicate returns true when the point is below (or equal) the given upper bound. More...
struct  IsUpperPointPredicate
 Aim: The predicate returns true when the point is above (or equal) the given lower bound. More...
struct  IsWithinPointPredicate
 Aim: The predicate returns true when the point is within the given bounds. More...
struct  NotPointPredicate
 Aim: The predicate returns true when the point predicate given at construction return false. Thus inverse a predicate: NOT operator. More...
struct  EqualPointPredicate
 Aim: The predicate returns true when the point given as argument equals the reference point given at construction. More...
struct  BinaryPointPredicate
 Aim: The predicate returns true when the given binary functor returns true for the two PointPredicates given at construction. More...
struct  PointFunctorPredicate
 Aim: The predicate returns true when the predicate returns true for the value assigned to a given point in the point functor. More...
struct  CanonicCellEmbedder
 Aim: A trivial embedder for unsigned cell, which corresponds to the canonic injection of cell centroids into Rn. More...
struct  CanonicDigitalSurfaceEmbedder
 Aim: A trivial embedder for digital surfaces, which corresponds to the canonic injection of cell centroids into Rn. More...
struct  CanonicEmbedder
 Aim: A trivial embedder for digital points, which corresponds to the canonic injection of Zn into Rn. More...
struct  CanonicSCellEmbedder
 Aim: A trivial embedder for signed cell, which corresponds to the canonic injection of cell centroids into Rn. More...
struct  CBoundedInteger
 Aim: The concept CBoundedInteger specifies what are the bounded integer numbers. Hence, it is a refinement of CInteger Concept ensuring that the numbers are bounded. More...
struct  CCommutativeRing
 Aim: Defines the mathematical concept equivalent to a unitary commutative ring. More...
struct  CEuclideanRing
 Aim: Defines the mathematical concept equivalent to a unitary commutative ring with a division operator. More...
struct  CInteger
 Aim: The concept CInteger specifies what are the usual integer numbers, more precisely the ones that are representable on a computer. More...
struct  CPointEmbedder
 Aim: A point embedder is a mapping from digital points to Euclidean points. It adds inner types to functor. More...
struct  CPointFunctor
 Aim: Defines a functor on points. More...
struct  CPointPredicate
 Aim: Defines a predicate on a point. More...
struct  CSignedInteger
 Aim: Concept checking for Signed Integer. More...
struct  CSpace
 Aim: Defines the concept describing a digital space, ie a cartesian product of integer lines. More...
struct  CUnsignedInteger
 Aim: Concept checking for Unsigned Integer. More...
struct  CWithGradientMap
 Aim: Such object provides a gradient map that associates to each argument some real vector. More...
struct  CDomain
 Aim: This concept represents a digital domain, i.e. a non mutable subset of points of the given digital space. More...
class  CDomainArchetype
 Aim: The archetype of a class that represents a digital domain, i.e. a non mutable subset of points of the given digital space. More...
struct  DomainPredicate
 Aim: The predicate returning true iff the point is in the domain given at construction. It is just a wrapper class around the methods Domain::isInside( const Point & ), where Domain stands for any model of CDomain. More...
class  HyperRectDomain
 Aim: Parallelepidec region of a digital space, model of a 'CDomain'. More...
class  HyperRectDomain_Iterator
class  HyperRectDomain_subIterator
struct  LinearAlgebra
 Aim: A utility class that contains methods to perform integral linear algebra. More...
struct  NumberTraits
 Aim: The traits class for all models of Cinteger. More...
struct  NumberTraits< uint16_t >
struct  NumberTraits< int16_t >
struct  NumberTraits< uint8_t >
struct  NumberTraits< int8_t >
struct  NumberTraits< uint32_t >
struct  NumberTraits< int32_t >
struct  NumberTraits< uint64_t >
struct  NumberTraits< int64_t >
struct  NumberTraits< float >
struct  NumberTraits< double >
struct  NumberTraits< long double >
class  Warning_promote_trait_not_specialized_for_this_case
struct  promote_trait
struct  promote_trait< int32_t, int64_t >
class  PointVector
 Aim: Implements basic operations that will be used in Point and Vector classes. More...
class  RegularPointEmbedder
 Aim: A simple point embedder where grid steps are given for each axis. Note that the real point (0,...,0) is mapped onto the digital point (0,...,0). More...
struct  CDigitalSet
 Aim: Represents a set of points within the given domain. This set of points is modifiable by the user. More...
class  CDigitalSetArchetype
 Aim: The archetype of a container class for storing sets of digital points within some given domain. More...
class  DigitalSetBySTLSet
 Aim: A container class for storing sets of digital points within some given domain. More...
class  DigitalSetBySTLVector
 Aim: Realizes the concept CDigitalSet by using the STL container std::vector. More...
struct  DigitalSetConverter
 Aim: Utility class to convert between types of sets. More...
class  DigitalSetDomain
 Aim: Constructs a domain limited to the given digital set. More...
class  DigitalSetFromMap
 Aim: An adapter for viewing an associative image container like ImageContainerBySTLMap as a simple digital set. This class is merely based on an aliasing pointer on the image, which must exists elsewhere. More...
class  DigitalSetInserter
 Aim: this output iterator class is designed to allow algorithms to insert points in the digital set. Using the assignment operator, even when dereferenced, causes the digital set to insert a point. More...
struct  DigitalSetSelector
 Aim: Automatically defines an adequate digital set type according to the hints given by the user. More...
struct  DigitalSetSelector< Domain, SMALL_DS+LOW_VAR_DS+LOW_ITER_DS+LOW_BEL_DS >
struct  DigitalSetSelector< Domain, SMALL_DS+LOW_VAR_DS+HIGH_ITER_DS+LOW_BEL_DS >
struct  SetPredicate
 Aim: The predicate returning true iff the point is in the domain given at construction. More...
class  SimpleMatrix
 Aim: implements basic MxN Matrix services (M,N>=1). More...
struct  SimpleMatrixSpecializations
 Aim: Implement internal matrix services for specialized matrix size. More...
struct  SimpleMatrixSpecializations< TMatrix, 2, 2 >
 Aim: More...
struct  SimpleMatrixSpecializations< TMatrix, 1, 1 >
 Aim: More...
struct  SimpleMatrixSpecializations< TMatrix, 3, 3 >
 Aim: More...
class  SpaceND
 Aim: SpaceND is a utility class that defines the fundamental structure of a Digital Space in ND. More...
struct  AngleComputer
class  AngleLinearMinimizer
 Aim: Used to minimize the angle variation between different angles while taking into accounts min and max constraints. Example (. More...
class  AngleLinearMinimizerByRelaxation
class  AngleLinearMinimizerByGradientDescent
class  AngleLinearMinimizerByAdaptiveStepGradientDescent
class  MeasureOfStraightLines
 The aim of this class is to compute the measure in the Lebesgues sense of the set of straight lines associated to domains defined as polygons in the (a,b)-parameter space. This parameter space maps the line $ax-y+b=0$ to the point $(a,b)$. More...
class  MPolynomialEvaluatorImpl< 1, TRing, TOwner, TAlloc, TX >
class  MPolynomialEvaluatorImpl
class  MPolynomialEvaluator< 1, TRing, TAlloc, TX >
class  MPolynomialEvaluator
class  MPolynomial< 0, TRing, TAlloc >
 Aim: Specialization of MPolynomial for degree 0. More...
class  IVector
class  IVector< T, TAlloc, true >
class  MPolynomial
 Aim: Represents a multivariate polynomial, i.e. an element of \( K[X_0, ..., X_{n-1}] \), where K is some ring or field. More...
class  Xe_kComputer
class  Xe_kComputer< 0, Ring, Alloc >
class  MPolynomialDerivativeComputer< 0, n, Ring, Alloc >
class  MPolynomialDerivativeComputer
class  MPolynomialDerivativeComputer< 0, 0, Ring, Alloc >
class  MPolynomialDerivativeComputer< N, 0, Ring, Alloc >
struct  SignalData
class  Signal
 Aim: Represents a discrete signal, periodic or not. The signal can be passed by value since it is only cloned when modified. More...
struct  CDigitalBoundedShape
struct  CDigitalOrientedShape
 Aim: characterizes models of digital oriented shapes. For example, models should provide an orientation method for points on a SpaceND. Returned value type corresponds to DGtal::Orientation. More...
struct  CEuclideanBoundedShape
struct  CEuclideanOrientedShape
 Aim: characterizes models of digital oriented shapes. For example, models should provide an orientation method for real points. Returned value type corresponds to DGtal::Orientation. More...
class  CircleFrom2Points
 Aim: Represents a circle that passes through a given point and that is thus uniquely defined by two other points. It is able to return for any given point its signed distance to itself. More...
class  CircleFrom3Points
 Aim: Represents a circle uniquely defined by three 2D points and that is able to return for any given 2D point its signed distance to itself. More...
class  MeshFromPoints
 Aim: This class is defined to represent a surface mesh through a set a vertex and a set of faces represented by its vertex index. By default it does not memorize the color Face and all faces will have the white color. More...
class  Point2ShapePredicate
 Aim: Predicate returning 'true' iff a given point is in the 'interior' of a given shape, 'false' otherwise. More...
struct  Point2ShapePredicateComparator
 Aim: A small struct with an operator that compares two values according to two bool template parameters. More...
struct  Point2ShapePredicateComparator< T, false, false >
 Aim: A small struct with an operator that compares two values (<). More...
struct  Point2ShapePredicateComparator< T, false, true >
 Aim: A small struct with an operator that compares two values (<=). More...
struct  Point2ShapePredicateComparator< T, true, false >
 Aim: A small struct with an operator that compares two values (>). More...
struct  Point2ShapePredicateComparator< T, true, true >
 Aim: A small struct with an operator that compares two values (>=). More...
class  StraightLineFrom2Points
 Aim: Represents a straight line uniquely defined by two 2D points and that is able to return for any given 2D point its signed distance to itself. More...
class  GaussDigitizer
 Aim: A class for computing the Gauss digitization of some Euclidean shape, i.e. its intersection with some \( h_1 Z \times h_2 Z \times \cdots \times h_n Z \). Note that the real point (0,...,0) is mapped onto the digital point (0,...,0). More...
struct  CImplicitFunction
 Aim: Describes any function of the form f(x), where x is some real point in the given space, and f(x) is some value. More...
struct  CImplicitFunctionDiff1
 Aim: Describes a 1-differentiable function of the form f(x), where x is some real point in the given space, and f(x) is some value. More...
class  ImplicitBall
 Aim: model of CEuclideanOrientedShape and CEuclideanBoundedShape concepts to create a ball in nD.. More...
class  ImplicitFunctionDiff1LinearCellEmbedder
 Aim: a cellular embedder for implicit functions, (default constructible, copy constructible, assignable). Model of CCellEmbedder and CWithGradientMap. More...
struct  ImplicitFunctionDiff1LinearCellEmbedderGradientMap
class  ImplicitFunctionLinearCellEmbedder
 Aim: a cellular embedder for implicit functions, (default constructible, copy constructible, assignable). Model of CCellEmbedder. More...
class  ImplicitHyperCube
 Aim: model of CEuclideanOrientedShape and CEuclideanBoundedShape concepts to create an hypercube in nD.. More...
class  ImplicitNorm1Ball
 Aim: model of CEuclideanOrientedShape and CEuclideanBoundedShape concepts to create a ball for the L_1 norm in nD. More...
class  ImplicitPolynomial3Shape
 Aim: model of CEuclideanOrientedShape concepts to create a shape from a polynomial. More...
class  ImplicitRoundedHyperCube
 Aim: model of CEuclideanOrientedShape and CEuclideanBoundedShape concepts to create a rounded hypercube in nD.. More...
class  AccFlower2D
 Aim: Model of the concept StarShaped represents any accelerated flower in the plane. More...
class  Ball2D
 Aim: Model of the concept StarShaped represents any circle in the plane. More...
class  Ball3D
 Aim: Model of the concept StarShaped3D represents any Sphere in the space. More...
class  Ellipse2D
 Aim: Model of the concept StarShaped represents any ellipse in the plane. More...
class  Flower2D
 Aim: Model of the concept StarShaped represents any flower with k-petals in the plane. More...
class  NGon2D
 Aim: Model of the concept StarShaped represents any regular k-gon in the plane. More...
class  StarShaped2D
class  StarShaped3D
class  Shapes
 Aim: A utility class for constructing different shapes (balls, diamonds, and others). More...
class  BreadthFirstVisitor
 Aim: This class is useful to perform a breadth-first exploration of a graph given a starting point or set (called initial core). More...
struct  CAdjacency
 Aim: The concept CAdjacency defines an elementary adjacency relation between points of a digital space. More...
struct  CCellEmbedder
 Aim: A cell embedder is a mapping from unsigned cells to Euclidean points. It adds inner types to functor. More...
struct  CCellularGridSpaceND
 Aim: This concept describes a cellular grid space in nD. In these spaces obtained by cartesian product, cells have a cubic shape that depends on the dimension: 0-cells are points, 1-cells are unit segments, 2-cells are squares, 3-cells are cubes, and so on. More...
struct  CDigitalSurfaceContainer
 Aim: More...
struct  CDigitalSurfaceEmbedder
 Aim: A digital surface embedder is a specialized mapping from signed cells to Euclidean points. It adds inner types to functor as well as a method to access the digital surface. More...
struct  CDigitalSurfaceTracker
 Aim: More...
struct  CDomainAdjacency
 Aim: Refines the concept CAdjacency by telling that the adjacency is specific to a given domain of the embedding digital space. More...
struct  CSCellEmbedder
 Aim: A cell embedder is a mapping from signed cells to Euclidean points. It adds inner types to functor. More...
struct  CSurfelPredicate
 Aim: Defines a predicate on a surfel. More...
struct  CUndirectedSimpleGraph
 Aim: Represents the concept of local graph: each vertex has neighboring vertices, but we do not necessarily know all the vertices. More...
struct  CUndirectedSimpleLocalGraph
 Aim: Represents the concept of local graph: each vertex has neighboring vertices, but we do not necessarily know all the vertices. More...
struct  CVertexMap
 Aim: models of CVertexMap concept implement mapping between graph vertices and values. More...
struct  CVertexPredicate
 Aim: Defines a predicate on a vertex. More...
class  DepthFirstVisitor
 Aim: This class is useful to perform a depth-first exploration of a graph given a starting point or set (called initial core). More...
class  DigitalSetBoundary
 Aim: A model of CDigitalSurfaceContainer which defines the digital surface as the boundary of a given digital set. More...
class  DigitalSurface
 Aim: Represents a set of n-1-cells in a nD space, together with adjacency relation between these cells. Therefore, a digital surface is a pure cubical complex (model of CCubicalComplex), made of k-cells, 0 <= k < n. This complex is generally not a manifold (i.e. a kind of surface), except when it has the property of being well-composed. More...
class  DigitalSurface2DSlice
 Aim: Represents a 2-dimensional slice in a DigitalSurface. In a sense, it is a 4-connected contour, open or not. To be valid, it must be connected to some digital surface and a starting surfel. More...
class  DigitalTopology
 Aim: Represents a digital topology as a couple of adjacency relations. More...
class  DomainAdjacency
 Aim: Given a domain and an adjacency, limits the given adjacency to the specified domain for all adjacency and neighborhood computations. More...
class  Expander
 Aim: This class is useful to visit an object by adjacencies, layer by layer. More...
class  ExplicitDigitalSurface
 Aim: A model of CDigitalSurfaceContainer which defines the digital surface as connected surfels. The shape is determined by a predicate telling whether a given surfel belongs or not to the shape boundary. Compute once the boundary of the surface with a tracking. More...
class  BoundaryPredicate
 Aim: The predicate on surfels that represents the frontier between a region and its complementary in an image. It can be used with ExplicitDigitalSurface or LightExplicitDigitalSurface so as to define a digital surface. Such surfaces may of course be open. More...
class  FrontierPredicate
 Aim: The predicate on surfels that represents the frontier between two regions in an image. It can be used with ExplicitDigitalSurface or LightExplicitDigitalSurface so as to define a digital surface. Such surfaces may of course be open. More...
class  Surfaces
 Aim: A utility class for constructing surfaces (i.e. set of (n-1)-cells). More...
class  ImplicitDigitalSurface
 Aim: A model of CDigitalSurfaceContainer which defines the digital surface as the boundary of an implicitly define shape. Compute once the boundary of the surface with a tracking. More...
struct  KhalimskyCell
 Represents an (unsigned) cell in a cellular grid space by its Khalimsky coordinates. More...
struct  SignedKhalimskyCell
 Represents a signed cell in a cellular grid space by its Khalimsky coordinates and a boolean value. More...
class  CellDirectionIterator
class  KhalimskySpaceND
 Aim: This class is a model of CCellularGridSpaceND. It represents the cubical grid as a cell complex, whose cells are defined as an array of integers. The topology of the cells is defined by the parity of the coordinates (even: closed, odd: open). More...
class  LightExplicitDigitalSurface
 Aim: A model of CDigitalSurfaceContainer which defines the digital surface as connected surfels. The shape is determined by a predicate telling whether a given surfel belongs or not to the shape boundary. The whole boundary is not precomputed nor stored. You may use an iterator to visit it. More...
class  LightImplicitDigitalSurface
 Aim: A model of CDigitalSurfaceContainer which defines the digital surface as the boundary of an implicitly define shape. The whole boundary is not precomputed nor stored. You may use an iterator to visit it. More...
class  MetricAdjacency
 Aim: Describes digital adjacencies in digital spaces that are defined with the 1-norm and the infinity-norm. More...
class  MetricAdjacency< TSpace, 2, 2 >
class  MetricAdjacency< TSpace, 1, 2 >
class  MetricAdjacency< TSpace, 3, 3 >
class  MetricAdjacency< TSpace, 2, 3 >
class  MetricAdjacency< TSpace, 1, 3 >
class  Object
 Aim: An object (or digital object) represents a set in some digital space associated with a digital topology. More...
class  SCellToPoint
 Aim: transforms a scell into a point. More...
class  SCellToMidPoint
 Aim: transforms a scell into a real point (the coordinates are divided by 2) More...
class  SCellToArrow
 Aim: transforms a signed cell into an arrow, ie. a pair point-vector. More...
class  SCellToInnerPoint
 Aim: transforms a signed cell c into a point corresponding to the signed cell of greater dimension that is indirectly incident to c. More...
class  SCellToOuterPoint
 Aim: transforms a signed cell c into a point corresponding to the signed cell of greater dimension that is directly incident to c. More...
class  SCellToIncidentPoints
 Aim: transforms a signed cell c into a pair of points corresponding to the signed cells of greater dimension that are indirectly and directly incident to c. More...
class  SCellToCode
 Aim: transforms a 2d signed cell, basically a linel, into a code (0,1,2 or 3),. More...
class  SetOfSurfels
 Aim: A model of CDigitalSurfaceContainer which defines the digital surface as connected surfels. The shape is determined by the set of surfels that composed the surface. The set of surfels is stored in this container. More...
class  STLMapToVertexMapAdapter
 Aim: This class adapts any map of the STL to match with the CVertexMap concept. More...
class  SurfelAdjacency
 Aim: Represent adjacencies between surfel elements, telling if it follows an interior to exterior ordering or exterior to interior ordering. It allows tracking of boundaries and of surfaces. More...
class  SurfelNeighborhood
 Aim: This helper class is useful to compute the neighboring surfels of a given surfel, especially over a digital surface or over an object boundary. Two signed surfels are incident if they share a common n-2 cell. This class uses a SurfelAdjacency so as to determine adjacent surfels (either looking for them from interior to exterior or inversely). More...
struct  SurfelSetPredicate
 Aim: The predicate returning true iff the point is in the domain given at construction. More...
class  UmbrellaComputer
 Aim: Useful for computing umbrellas on 'DigitalSurface's, ie set of n-1 cells around a n-3 cell. More...
struct  ImplicitDigitalEllipse3

Typedefs

typedef boost::function0< bool > BoolFunction0
typedef boost::function1< bool,
bool > 
BoolFunction1
typedef boost::function2< bool,
bool, bool > 
BoolFunction2
typedef boost::function3< bool,
bool, bool, bool > 
BoolFunction3
typedef boost::uint8_t uint8_t
typedef boost::uint16_t uint16_t
typedef boost::uint32_t uint32_t
typedef boost::uint64_t uint64_t
typedef boost::int8_t int8_t
typedef boost::int16_t int16_t
typedef boost::int32_t int32_t
typedef boost::int64_t int64_t
typedef DGtal::uint32_t Dimension

Enumerations

enum  Orientation { INSIDE = 0, ON = 1, OUTSIDE = 2 }
enum  ImageIterability { HIGH_ITER_IMAGE = 0, LOW_ITER_I = 1 }
enum  ImageBelongTestability { HIGH_BEL_I = 0, LOW_BEL_I = 2 }
enum  ImageSpecificContainer { NORMAL_CONTAINER_I = 0, VTKIMAGEDATA_CONTAINER_I = 4 }
enum  DomainDrawMode { GRID = 0, PAVING = 1 }
enum  ColorGradientPreset {
  CMAP_CUSTOM = 0, CMAP_GRAYSCALE, CMAP_SPRING, CMAP_SUMMER,
  CMAP_AUTUMN, CMAP_WINTER, CMAP_COOL, CMAP_COPPER,
  CMAP_HOT, CMAP_JET
}
enum  BoundEnum { BOUNDED = 0, UNBOUNDED = 1, BOUND_UNKNOWN = 2 }
enum  SignEnum { SIGNED = 0, UNSIGNED = 1, SIGN_UNKNOWN = 2 }
enum  DigitalSetSize { SMALL_DS = 0, MEDIUM_DS = 1, BIG_DS = 2, WHOLE_DS = 3 }
enum  DigitalSetVariability { LOW_VAR_DS = 0, HIGH_VAR_DS = 4 }
enum  DigitalSetIterability { LOW_ITER_DS = 0, HIGH_ITER_DS = 8 }
enum  DigitalSetBelongTestability { LOW_BEL_DS = 0, HIGH_BEL_DS = 16 }
enum  DigitalTopologyProperties { UNKNOWN_DT = 0, NOT_JORDAN_DT = 1, JORDAN_DT = 2 }
enum  Connectedness { DISCONNECTED = 0, CONNECTED = 1, UNKNOWN = 2 }

Functions

template<typename TSpace >
std::ostream & operator<< (std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)
template<typename TInteger >
std::ostream & operator<< (std::ostream &out, const IntegerComputer< TInteger > &object)
template<typename TSpace , typename TSequence >
std::ostream & operator<< (std::ostream &out, const LatticePolytope2D< TSpace, TSequence > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const ModuloComputer< T > &object)
template<typename TFraction >
std::ostream & operator<< (std::ostream &out, const Pattern< TFraction > &object)
template<typename TFraction >
std::ostream & operator<< (std::ostream &out, const StandardDSLQ0< TFraction > &object)
std::ostream & operator<< (std::ostream &out, const Clock &object)
template<typename TIterator , typename TFunctor , typename TReturnType >
std::ostream & operator<< (std::ostream &out, const ConstRangeAdapter< TIterator, TFunctor, TReturnType > &object)
template<typename A , typename B >
std::ostream & operator<< (std::ostream &out, const std::pair< A, B > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const CountedPtr< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const CowPtr< T > &object)
template<typename T >
minDGtal (const T &a, const T &b)
template<typename T >
maxDGtal (const T &a, const T &b)
template<typename T >
abs (const T &a)
template<typename TValue , unsigned int N, unsigned int M>
std::ostream & operator<< (std::ostream &out, const IndexedListWithBlocks< TValue, N, M > &object)
template<typename TSequence , typename TRank >
std::ostream & operator<< (std::ostream &out, const InputIteratorWithRankOnSequence< TSequence, TRank > &object)
template<typename IC >
bool isEmpty (const IC &itb, const IC &ite)
template<typename IC >
bool isNotEmpty (const IC &itb, const IC &ite)
template<typename TData , unsigned int L, typename TWord , unsigned int N, unsigned int M>
std::ostream & operator<< (std::ostream &out, const LabelledMap< TData, L, TWord, N, M > &object)
template<unsigned int L, typename TWord >
std::ostream & operator<< (std::ostream &out, const Labels< L, TWord > &object)
std::ostream & operator<< (std::ostream &out, const OrderedAlphabet &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const OwningOrAliasingPtr< T > &object)
template<typename RealNumberType >
std::ostream & operator<< (std::ostream &thatStream, const Statistic< RealNumberType > &that_object_to_display)
std::ostream & operator<< (std::ostream &out, const Trace &object)
std::ostream & operator<< (std::ostream &out, const TraceWriter &object)
std::ostream & operator<< (std::ostream &out, const TraceWriterFile &object)
std::ostream & operator<< (std::ostream &out, const TraceWriterTerm &object)
template<typename TIterator , typename TInteger , int connectivity>
std::ostream & operator<< (std::ostream &out, ArithmeticalDSS< TIterator, TInteger, connectivity > &object)
template<typename TIterator , typename TInteger , int connectivity>
std::ostream & operator<< (std::ostream &out, ArithmeticalDSS3d< TIterator, TInteger, connectivity > &object)
template<typename TConstIteratorOnPoints , typename TValue >
std::ostream & operator<< (std::ostream &out, const BinomialConvolver< TConstIteratorOnPoints, TValue > &object)
template<typename T1 , typename T2 >
std::ostream & operator<< (std::ostream &out, const CombinatorialDSS< T1, T2 > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const BLUELocalLengthEstimator< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const DSSLengthEstimator< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const FPLengthEstimator< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const L1LengthEstimator< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const MLPLengthEstimator< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const RosenProffittLocalLengthEstimator< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const TwoStepLocalLengthEstimator< T > &object)
template<typename TIterator , typename TInteger , int connectivity>
std::ostream & operator<< (std::ostream &out, const FP< TIterator, TInteger, connectivity > &object)
template<typename TIterator , typename TInteger >
std::ostream & operator<< (std::ostream &out, const FrechetShortcut< TIterator, TInteger > &object)
template<typename TInteger >
std::ostream & operator<< (std::ostream &out, const FreemanChain< TInteger > &object)
template<typename TConstIterator >
std::ostream & operator<< (std::ostream &out, const GeometricalDCA< TConstIterator > &object)
template<typename TConstIterator >
std::ostream & operator<< (std::ostream &out, const GeometricalDSS< TConstIterator > &object)
template<typename SegmentComputer >
std::ostream & operator<< (std::ostream &out, const GreedySegmentation< SegmentComputer > &object)
template<typename TKSpace >
std::ostream & operator<< (std::ostream &out, const GridCurve< TKSpace > &object)
template<typename SegmentComputer >
std::ostream & operator<< (std::ostream &out, const SaturatedSegmentation< SegmentComputer > &object)
template<typename IC >
IC getMiddleIterator (const IC &itb, const IC &ite, RandomAccessCategory)
template<typename IC >
IC getMiddleIterator (const IC &itb, const IC &ite, BidirectionalCategory)
template<typename IC >
IC getMiddleIterator (const IC &itb, const IC &ite, ForwardCategory)
template<typename IC >
IC getMiddleIterator (const IC &itb, const IC &ite)
template<typename SC >
void maximalExtension (SC &s, const typename SC::ConstIterator &end, IteratorType)
template<typename SC >
void maximalExtension (SC &s, const typename SC::ConstIterator &, CirculatorType)
template<typename SC >
void maximalExtension (SC &s, const typename SC::ConstIterator &end)
template<typename SC >
void oppositeEndMaximalExtension (SC &s, const typename SC::ConstIterator &begin, IteratorType)
template<typename SC >
void oppositeEndMaximalExtension (SC &s, const typename SC::ConstIterator &begin, CirculatorType)
template<typename SC >
void oppositeEndMaximalExtension (SC &s, const typename SC::ConstIterator &begin)
template<typename SC >
bool maximalSymmetricExtension (SC &s, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, IteratorType)
template<typename SC >
bool maximalSymmetricExtension (SC &s, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, CirculatorType)
template<typename SC >
bool maximalSymmetricExtension (SC &s, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end)
template<typename SC >
void maximalRetraction (SC &s, const typename SC::ConstIterator &end)
template<typename SC >
void oppositeEndMaximalRetraction (SC &s, const typename SC::ConstIterator &begin)
template<typename SC >
void longestSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &end, IteratorType)
template<typename SC >
void longestSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &end, CirculatorType)
template<typename SC >
void longestSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &end)
template<typename SC >
void firstMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, DGtal::ForwardSegmentComputer)
template<typename SC >
void firstMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, DGtal::BidirectionalSegmentComputer)
template<typename SC >
void firstMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, DGtal::DynamicSegmentComputer)
template<typename SC >
void firstMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, DGtal::DynamicBidirectionalSegmentComputer)
template<typename SC >
void firstMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end)
template<typename SC >
void mostCenteredMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, DGtal::ForwardSegmentComputer)
template<typename SC >
void mostCenteredMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, DGtal::BidirectionalSegmentComputer)
template<typename SC >
void mostCenteredMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, DGtal::DynamicSegmentComputer)
template<typename SC >
void mostCenteredMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, DGtal::DynamicBidirectionalSegmentComputer)
template<typename SC >
void mostCenteredMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end)
template<typename SC >
void lastMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, DGtal::ForwardSegmentComputer)
template<typename SC >
void lastMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, BidirectionalSegmentComputer)
template<typename SC >
void lastMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, DGtal::DynamicSegmentComputer)
template<typename SC >
void lastMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end, DGtal::DynamicBidirectionalSegmentComputer)
template<typename SC >
void lastMaximalSegment (SC &s, const typename SC::ConstIterator &i, const typename SC::ConstIterator &begin, const typename SC::ConstIterator &end)
template<typename SC >
void nextMaximalSegment (SC &s, const typename SC::ConstIterator &end, DGtal::ForwardSegmentComputer)
template<typename SC >
void nextMaximalSegment (SC &s, const typename SC::ConstIterator &end, DGtal::BidirectionalSegmentComputer)
template<typename SC >
void nextMaximalSegment (SC &s, const typename SC::ConstIterator &end, DGtal::DynamicSegmentComputer)
template<typename SC >
void nextMaximalSegment (SC &s, const typename SC::ConstIterator &end, DGtal::DynamicBidirectionalSegmentComputer)
template<typename SC >
void nextMaximalSegment (SC &s, const typename SC::ConstIterator &end)
template<typename SC >
void previousMaximalSegment (SC &s, const typename SC::ConstIterator &begin, DGtal::ForwardSegmentComputer)
template<typename SC >
void previousMaximalSegment (SC &s, const typename SC::ConstIterator &begin, DGtal::BidirectionalSegmentComputer)
template<typename SC >
void previousMaximalSegment (SC &s, const typename SC::ConstIterator &begin, DGtal::DynamicSegmentComputer)
template<typename SC >
void previousMaximalSegment (SC &s, const typename SC::ConstIterator &end, DGtal::DynamicBidirectionalSegmentComputer)
template<typename SC >
void previousMaximalSegment (SC &s, const typename SC::ConstIterator &begin)
std::ostream & operator<< (std::ostream &out, const ContourHelper &object)
template<typename TSpace , typename TInternalInteger >
std::ostream & operator<< (std::ostream &out, const COBAGenericNaivePlane< TSpace, TInternalInteger > &object)
template<typename TSpace , typename TInternalInteger >
std::ostream & operator<< (std::ostream &out, const COBANaivePlane< TSpace, TInternalInteger > &object)
template<typename TDigitalSurfaceEmbedder , typename TNormalVectorEstimator >
std::ostream & operator<< (std::ostream &out, const DigitalSurfaceEmbedderWithNormalVectorEstimator< TDigitalSurfaceEmbedder, TNormalVectorEstimator > &object)
template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
std::ostream & operator<< (std::ostream &out, const NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder > &object)
template<typename Shape >
std::ostream & operator<< (std::ostream &out, const Preimage2D< Shape > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const SphericalAccumulator< T > &object)
template<typename TImage , typename TSet , typename TPointPredicate , typename TPointFunctor >
std::ostream & operator<< (std::ostream &out, const FMM< TImage, TSet, TPointPredicate, TPointFunctor > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const Measure< T > &object)
template<typename TImageContainer , typename TNewDomain , typename TFunctorD , typename TNewValue , typename TFunctorV >
std::ostream & operator<< (std::ostream &out, const ConstImageAdapter< TImageContainer, TNewDomain, TFunctorD, TNewValue, TFunctorV > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const Image< T > &object)
template<typename TImageContainer , typename TNewDomain , typename TFunctorD , typename TNewValue , typename TFunctorV , typename TFunctorVm1 >
std::ostream & operator<< (std::ostream &out, const ImageAdapter< TImageContainer, TNewDomain, TFunctorD, TNewValue, TFunctorV, TFunctorVm1 > &object)
template<typename TDomain , typename TValue , typename THashKey >
std::ostream & operator<< (std::ostream &out, ImageContainerByHashTree< TDomain, TValue, THashKey > &object)
template<typename T , typename TV >
std::ostream & operator<< (std::ostream &out, const experimental::ImageContainerByITKImage< T, TV > &object)
template<typename TDomain , typename TValue >
std::ostream & operator<< (std::ostream &out, const experimental::ImageContainerByITKImage< TDomain, TValue > &object)
template<typename TDomain , typename TValue >
std::ostream & operator<< (std::ostream &out, const ImageContainerBySTLMap< TDomain, TValue > &object)
template<typename Domain , typename V >
std::ostream & operator<< (std::ostream &out, const ImageContainerBySTLVector< Domain, V > &object)
template<typename I , typename O , typename P >
void setFromPointsRangeAndPredicate (const I &itb, const I &ite, const O &ito, const P &aPred)
template<typename I , typename O , typename F >
void setFromPointsRangeAndFunctor (const I &itb, const I &ite, const O &ito, const F &aFunctor, const typename F::Value &aThreshold=0)
template<typename I , typename O >
void setFromImage (const I &aImg, const O &ito, const typename I::Value &aThreshold=0)
template<typename I , typename O >
void setFromImage (const I &aImg, const O &ito, const typename I::Value &low, const typename I::Value &up)
template<typename It , typename Im >
void imageFromRangeAndValue (const It &itb, const It &ite, Im &aImg, const typename Im::Value &aValue=0)
template<typename R , typename I >
void imageFromRangeAndValue (const R &aRange, I &aImg, const typename I::Value &aValue=0)
template<typename I , typename F >
void imageFromFunctor (I &aImg, const F &aFun)
template<typename I >
void imageFromImage (I &aImg1, const I &aImg2)
template<typename I , typename S >
bool insertAndSetValue (I &aImg, S &aSet, const typename I::Point &aPoint, const typename I::Value &aValue)
template<typename I , typename S >
bool insertAndAlwaysSetValue (I &aImg, S &aSet, const typename I::Point &aPoint, const typename I::Value &aValue)
template<typename I , typename S >
bool findAndGetValue (const I &aImg, const S &aSet, const typename I::Point &aPoint, typename I::Value &aValue)
template<typename TKSpace , typename TImage , typename TEmbedder >
std::ostream & operator<< (std::ostream &out, const ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder > &object)
std::ostream & operator<< (std::ostream &out, const Board2D &object)
std::ostream & operator<< (std::ostream &out, const Board3DTo2D &object)
std::ostream & operator<< (std::ostream &out, const Color &aColor)
template<typename PValue , int PDefaultColor>
std::ostream & operator<< (std::ostream &out, const ColorBrightnessColorMap< PValue, PDefaultColor > &object)
template<typename PValue , int PDefaultPreset, int PDefaultFirstColor, int PDefaultLastColor>
std::ostream & operator<< (std::ostream &out, const GradientColorMap< PValue, PDefaultPreset, PDefaultFirstColor, PDefaultLastColor > &object)
template<typename PValue >
std::ostream & operator<< (std::ostream &out, const GrayscaleColorMap< PValue > &object)
template<typename PValue , int DefaultCycles>
std::ostream & operator<< (std::ostream &out, const HueShadeColorMap< PValue, DefaultCycles > &object)
std::ostream & operator<< (std::ostream &out, const RandomColorMap &object)
static void cross (double dst[3], double srcA[3], double srcB[3])
static void normalize (double vec[3])
std::ostream & operator<< (std::ostream &out, const DGtal::Display3D &object)
void operator>> (const Display3D &aDisplay3D, DGtal::MeshFromPoints< Display3D::pointD3D > &aMesh)
void operator>> (const Display3D &aDisplay3D, string aFilename)
template<typename TPoint >
bool operator<< (MeshFromPoints< TPoint > &mesh, const std::string &filename)
template<typename TSpace >
std::ostream & operator<< (std::ostream &out, const DGtalInventor< TSpace > &object)
std::ostream & operator<< (std::ostream &out, const IVViewer &object)
template<typename TSpace >
std::ostream & operator<< (std::ostream &out, const Lattice< TSpace > &object)
std::ostream & operator<< (std::ostream &out, const Viewer3D &object)
template<typename TPoint >
bool operator>> (MeshFromPoints< TPoint > &aMesh, const std::string &aFilename)
template<typename TPoint >
bool operator>> (MeshFromPoints< TPoint > &aMesh, ostream &out)
template<typename TKSpace >
std::ostream & operator<< (std::ostream &out, const CanonicCellEmbedder< TKSpace > &object)
template<typename TDigitalSurface >
std::ostream & operator<< (std::ostream &out, const CanonicDigitalSurfaceEmbedder< TDigitalSurface > &object)
template<typename TSpace >
std::ostream & operator<< (std::ostream &out, const CanonicEmbedder< TSpace > &object)
template<typename TKSpace >
std::ostream & operator<< (std::ostream &out, const CanonicSCellEmbedder< TKSpace > &object)
template<typename TSpace >
std::ostream & operator<< (std::ostream &out, const HyperRectDomain< TSpace > &object)
template<Dimension dim, typename Container >
std::bitset< dim > setDimensionsIn (const Container &dimensions)
template<Dimension dim, typename Container >
std::bitset< dim > setDimensionsNotIn (const Container &dimensions)
template<Dimension dim, typename Component >
std::ostream & operator<< (std::ostream &out, const PointVector< dim, Component > &object)
template<typename TSpace >
std::ostream & operator<< (std::ostream &out, const RegularPointEmbedder< TSpace > &object)
template<typename Domain >
std::ostream & operator<< (std::ostream &out, const DigitalSetBySTLSet< Domain > &object)
template<typename Domain >
std::ostream & operator<< (std::ostream &out, const DigitalSetBySTLVector< Domain > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const DigitalSetDomain< T > &object)
template<typename TMapImage >
std::ostream & operator<< (std::ostream &out, const DigitalSetFromMap< TMapImage > &object)
template<typename T , DGtal::Dimension M, DGtal::Dimension N>
std::ostream & operator<< (std::ostream &out, const SimpleMatrix< T, M, N > &object)
std::ostream & operator<< (std::ostream &out, const AngleLinearMinimizer &object)
std::ostream & operator<< (std::ostream &out, const MeasureOfStraightLines &object)
template<typename TRing , typename TAlloc >
void euclidDiv (const MPolynomial< 1, TRing, TAlloc > &f, const MPolynomial< 1, TRing, TAlloc > &g, MPolynomial< 1, TRing, TAlloc > &q, MPolynomial< 1, TRing, TAlloc > &r)
template<int N, typename TRing , class TAlloc >
std::ostream & operator<< (std::ostream &out, const MPolynomial< N, TRing, TAlloc > &object)
template<int n, typename Ring , typename Alloc >
MPolynomial< n, Ring, Alloc > Xe_k (unsigned int k, unsigned int e)
template<int n, typename Ring >
MPolynomial< n, Ring,
std::allocator< Ring > > 
Xe_k (unsigned int k, unsigned int e)
template<typename Ring , typename Alloc >
MPolynomial< 1, Ring, Alloc > mmonomial (unsigned int e)
template<typename Ring , typename Alloc >
MPolynomial< 2, Ring, Alloc > mmonomial (unsigned int e, unsigned int f)
template<typename Ring , typename Alloc >
MPolynomial< 3, Ring, Alloc > mmonomial (unsigned int e, unsigned int f, unsigned int g)
template<typename Ring , typename Alloc >
MPolynomial< 4, Ring, Alloc > mmonomial (unsigned int e, unsigned int f, unsigned int g, unsigned int h)
template<typename Ring >
MPolynomial< 1, Ring,
std::allocator< Ring > > 
mmonomial (unsigned int e)
template<typename Ring >
MPolynomial< 2, Ring,
std::allocator< Ring > > 
mmonomial (unsigned int e, unsigned int f)
template<typename Ring >
MPolynomial< 3, Ring,
std::allocator< Ring > > 
mmonomial (unsigned int e, unsigned int f, unsigned int g)
template<typename Ring >
MPolynomial< 4, Ring,
std::allocator< Ring > > 
mmonomial (unsigned int e, unsigned int f, unsigned int g, unsigned int h)
template<int N, int n, typename Ring , typename Alloc >
MPolynomial< n, Ring, Alloc > derivative (const MPolynomial< n, Ring, Alloc > &p)
template<int N, int n, typename Ring >
MPolynomial< n, Ring,
std::allocator< Ring > > 
derivative (const MPolynomial< n, Ring, std::allocator< Ring > > &p)
template<typename Ring , typename Alloc >
void euclidDiv (const MPolynomial< 1, Ring, Alloc > &f, const MPolynomial< 1, Ring, Alloc > &g, MPolynomial< 1, Ring, Alloc > &q, MPolynomial< 1, Ring, Alloc > &r)
template<typename Ring >
void euclidDiv (const MPolynomial< 1, Ring, std::allocator< Ring > > &f, const MPolynomial< 1, Ring, std::allocator< Ring > > &g, MPolynomial< 1, Ring, std::allocator< Ring > > &q, MPolynomial< 1, Ring, std::allocator< Ring > > &r)
template<typename Ring , typename Alloc >
MPolynomial< 1, Ring, Alloc > gcd (const MPolynomial< 1, Ring, Alloc > &f, const MPolynomial< 1, Ring, Alloc > &g)
template<typename Ring >
MPolynomial< 1, Ring,
std::allocator< Ring > > 
gcd (const MPolynomial< 1, Ring, std::allocator< Ring > > &f, const MPolynomial< 1, Ring, std::allocator< Ring > > &g)
template<typename TValue >
std::ostream & operator<< (std::ostream &out, const Signal< TValue > &object)
template<typename TPoint >
std::ostream & operator<< (std::ostream &out, const CircleFrom2Points< TPoint > &object)
template<typename TPoint >
std::ostream & operator<< (std::ostream &out, const CircleFrom3Points< TPoint > &object)
template<typename TPoint >
std::ostream & operator<< (std::ostream &out, const MeshFromPoints< TPoint > &object)
template<typename TSurface , bool isUpward, bool isClosed>
std::ostream & operator<< (std::ostream &out, const Point2ShapePredicate< TSurface, isUpward, isClosed > &object)
template<typename TPoint >
std::ostream & operator<< (std::ostream &out, const StraightLineFrom2Points< TPoint > &object)
template<typename TSpace , typename TEuclideanShape >
std::ostream & operator<< (std::ostream &out, const GaussDigitizer< TSpace, TEuclideanShape > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const ImplicitBall< T > &object)
template<typename TKSpace , typename TImplicitFunctionDiff1 , typename TEmbedder >
std::ostream & operator<< (std::ostream &out, const ImplicitFunctionDiff1LinearCellEmbedder< TKSpace, TImplicitFunctionDiff1, TEmbedder > &object)
template<typename TKSpace , typename TImplicitFunction , typename TEmbedder >
std::ostream & operator<< (std::ostream &out, const ImplicitFunctionLinearCellEmbedder< TKSpace, TImplicitFunction, TEmbedder > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const ImplicitHyperCube< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const ImplicitNorm1Ball< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const ImplicitPolynomial3Shape< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const ImplicitRoundedHyperCube< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const AccFlower2D< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const Ball2D< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const Ball3D< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const Ellipse2D< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const Flower2D< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const NGon2D< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const StarShaped2D< T > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const StarShaped3D< T > &object)
template<typename TDomain >
std::ostream & operator<< (std::ostream &out, const Shapes< TDomain > &object)
template<typename TGraph , typename TMarkSet >
std::ostream & operator<< (std::ostream &out, const BreadthFirstVisitor< TGraph, TMarkSet > &object)
template<typename TGraph , typename TMarkSet >
std::ostream & operator<< (std::ostream &out, const DepthFirstVisitor< TGraph, TMarkSet > &object)
template<typename TKSpace , typename TDigitalSet >
std::ostream & operator<< (std::ostream &out, const DigitalSetBoundary< TKSpace, TDigitalSet > &object)
template<typename TDigitalSurfaceContainer >
std::ostream & operator<< (std::ostream &out, const DigitalSurface< TDigitalSurfaceContainer > &object)
template<typename TDigitalSurfaceTracker >
std::ostream & operator<< (std::ostream &out, const DigitalSurface2DSlice< TDigitalSurfaceTracker > &object)
template<typename TForegroundAdjacency , typename TBackgroundAdjacency >
std::ostream & operator<< (std::ostream &out, const DigitalTopology< TForegroundAdjacency, TBackgroundAdjacency > &object)
template<typename TDomain , typename TAdjacency >
std::ostream & operator<< (std::ostream &out, const DomainAdjacency< TDomain, TAdjacency > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const Expander< T > &object)
template<typename TKSpace , typename TSurfelPredicate >
std::ostream & operator<< (std::ostream &out, const ExplicitDigitalSurface< TKSpace, TSurfelPredicate > &object)
template<typename TKSpace , typename TImage >
std::ostream & operator<< (std::ostream &out, const BoundaryPredicate< TKSpace, TImage > &object)
template<typename TKSpace , typename TImage >
std::ostream & operator<< (std::ostream &out, const FrontierPredicate< TKSpace, TImage > &object)
template<typename TKSpace >
std::ostream & operator<< (std::ostream &out, const Surfaces< TKSpace > &object)
template<typename TKSpace , typename TPointPredicate >
std::ostream & operator<< (std::ostream &out, const ImplicitDigitalSurface< TKSpace, TPointPredicate > &object)
template<Dimension dim, typename TInteger >
std::ostream & operator<< (std::ostream &out, const KhalimskyCell< dim, TInteger > &object)
template<Dimension dim, typename TInteger >
std::ostream & operator<< (std::ostream &out, const SignedKhalimskyCell< dim, TInteger > &object)
template<Dimension dim, typename TInteger >
std::ostream & operator<< (std::ostream &out, const KhalimskySpaceND< dim, TInteger > &object)
template<typename TKSpace , typename TSurfelPredicate >
std::ostream & operator<< (std::ostream &out, const LightExplicitDigitalSurface< TKSpace, TSurfelPredicate > &object)
template<typename TKSpace , typename TPointPredicate >
std::ostream & operator<< (std::ostream &out, const LightImplicitDigitalSurface< TKSpace, TPointPredicate > &object)
template<typename TSpace , Dimension maxNorm1>
std::ostream & operator<< (std::ostream &out, const MetricAdjacency< TSpace, maxNorm1, TSpace::dimension > &object)
template<typename TDigitalTopology , typename TDigitalSet >
std::ostream & operator<< (std::ostream &out, const Object< TDigitalTopology, TDigitalSet > &object)
template<typename TKSpace , typename TSurfelSet >
std::ostream & operator<< (std::ostream &out, const SetOfSurfels< TKSpace, TSurfelSet > &object)
template<Dimension dim>
std::ostream & operator<< (std::ostream &out, const SurfelAdjacency< dim > &object)
template<typename T >
std::ostream & operator<< (std::ostream &out, const SurfelNeighborhood< T > &object)
template<typename TDigitalSurfaceTracker >
std::ostream & operator<< (std::ostream &out, const UmbrellaComputer< TDigitalSurfaceTracker > &object)
template<typename KSpace , typename PointPredicate >
bool testImplicitDigitalSurface (const KSpace &K, const PointPredicate &pp, const typename KSpace::Surfel &bel)
template<typename KSpace , typename PointPredicate >
bool testLightImplicitDigitalSurface (const KSpace &K, const PointPredicate &pp, const typename KSpace::Surfel &bel)

Variables

It also possible to remove the
visualisation of the
transparent clipping plane by
adding boolean 
option
It also possible to remove the
visualisation of the
transparent clipping plane by
adding boolean 
false
static const BoolFunction0 trueBF0 = TrueBoolFct0()
static const BoolFunction0 falseBF0 = FalseBoolFct0()
static const BoolFunction1 identityBF1 = IdentityBoolFct1()
static const BoolFunction1 notBF1 = NotBoolFct1()
static const BoolFunction2 andBF2 = AndBoolFct2()
static const BoolFunction2 orBF2 = OrBoolFct2()
static const BoolFunction2 xorBF2 = XorBoolFct2()
static const BoolFunction2 impliesBF2 = ImpliesBoolFct2()
TraceWriterTerm traceWriterTerm (std::cerr)
Trace trace (traceWriterTerm)

Detailed Description

Aim: Defines the concept describing a bidirectional const range.

DGtal is the top-level namespace which contains all DGtal functions and types.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Author:
Jacques-Olivier Lachaud (jacqu.nosp@m.es-o.nosp@m.livie.nosp@m.r.la.nosp@m.chaud.nosp@m.@uni.nosp@m.v-sav.nosp@m.oie..nosp@m.fr ) Laboratory of Mathematics (CNRS, UMR 5807), University of Savoie, France
Date:
2011/09/19

Documentation file for feature Geometric

This file is part of the DGtal library.

DGtal Global variables

DescriptionDescription of concept 'CConstBidirectionalRange'

Refinement of

CConstSinglePassRange

Provided types :

Name Expression Type requirements Return type Precondition Semantics Postcondition Complexity
rbegin x.rbegin() const ConstReverseIterator
rend x.rend() const ConstReverseIterator

Invariants

Models

Notes

Template Parameters:
Tthe type that is checked. T should be a model of CConstBidirectionalRange.

Typedef Documentation

typedef boost::function0< bool > DGtal::BoolFunction0

May hold bool functions taking no arguments.

Definition at line 53 of file BasicBoolFunctions.h.

typedef boost::function1< bool, bool > DGtal::BoolFunction1

May hold bool functions taking one bool argument.

Definition at line 58 of file BasicBoolFunctions.h.

typedef boost::function2< bool, bool, bool > DGtal::BoolFunction2

May hold bool functions taking two bool arguments.

Definition at line 63 of file BasicBoolFunctions.h.

typedef boost::function3< bool, bool, bool, bool > DGtal::BoolFunction3

May hold bool functions taking three bool arguments (Useful ?).

Definition at line 68 of file BasicBoolFunctions.h.

Global static type to represent the dimension in DGtal

Definition at line 127 of file Common.h.

typedef boost::int16_t DGtal::int16_t

signed 16-bit integer.

Definition at line 71 of file BasicTypes.h.

typedef boost::int32_t DGtal::int32_t

signed 32-bit integer.

Definition at line 73 of file BasicTypes.h.

typedef boost::int64_t DGtal::int64_t

signed 94-bit integer.

Definition at line 75 of file BasicTypes.h.

typedef boost::int8_t DGtal::int8_t

signed 8-bit integer.

Definition at line 69 of file BasicTypes.h.

typedef boost::uint16_t DGtal::uint16_t

unsigned 16-bit integer.

Definition at line 62 of file BasicTypes.h.

typedef boost::uint32_t DGtal::uint32_t

unsigned 32-bit integer.

Definition at line 64 of file BasicTypes.h.

typedef boost::uint64_t DGtal::uint64_t

unsigned 64-bit integer.

Definition at line 66 of file BasicTypes.h.

typedef boost::uint8_t DGtal::uint8_t

unsigned 8-bit integer.

Definition at line 60 of file BasicTypes.h.


Enumeration Type Documentation

Enumerator:
BOUNDED 
UNBOUNDED 
BOUND_UNKNOWN 

Definition at line 55 of file NumberTraits.h.

Enumerator:
CMAP_CUSTOM 
CMAP_GRAYSCALE 
CMAP_SPRING 
CMAP_SUMMER 
CMAP_AUTUMN 
CMAP_WINTER 
CMAP_COOL 
CMAP_COPPER 
CMAP_HOT 
CMAP_JET 

Definition at line 60 of file GradientColorMap.h.

Kinds of connectedness for an object or a graph.

Enumerator:
DISCONNECTED 
CONNECTED 
UNKNOWN 

Definition at line 50 of file Topology.h.

{
};
Enumerator:
LOW_BEL_DS 
HIGH_BEL_DS 

Definition at line 60 of file DigitalSetSelector.h.

{ LOW_BEL_DS = 0, HIGH_BEL_DS = 16 };
Enumerator:
LOW_ITER_DS 
HIGH_ITER_DS 

Definition at line 59 of file DigitalSetSelector.h.

Enumerator:
SMALL_DS 
MEDIUM_DS 
BIG_DS 
WHOLE_DS 

Definition at line 57 of file DigitalSetSelector.h.

{ SMALL_DS = 0, MEDIUM_DS = 1, BIG_DS = 2, WHOLE_DS = 3 };
Enumerator:
LOW_VAR_DS 
HIGH_VAR_DS 

Definition at line 58 of file DigitalSetSelector.h.

{ LOW_VAR_DS = 0, HIGH_VAR_DS = 4 };

Possible properties of digital topologies.

Enumerator:
UNKNOWN_DT 
NOT_JORDAN_DT 
JORDAN_DT 

Definition at line 54 of file DigitalTopology.h.

{ UNKNOWN_DT = 0,
JORDAN_DT = 2 };

Specifies the drawing mode for domains.

Enumerator:
GRID 
PAVING 

Definition at line 57 of file Board2D.h.

{ GRID = 0, PAVING = 1 };
Enumerator:
HIGH_BEL_I 
LOW_BEL_I 

Definition at line 55 of file ImageSelector.h.

{ HIGH_BEL_I = 0, LOW_BEL_I = 2 };
Enumerator:
HIGH_ITER_IMAGE 
LOW_ITER_I 

Definition at line 54 of file ImageSelector.h.

Enumerator:
NORMAL_CONTAINER_I 
VTKIMAGEDATA_CONTAINER_I 

Definition at line 56 of file ImageSelector.h.

Global enum definition for orientation.

Enumerator:
INSIDE 
ON 
OUTSIDE 

Definition at line 132 of file Common.h.

{ INSIDE = 0, ON = 1, OUTSIDE = 2};
Enumerator:
SIGNED 
UNSIGNED 
SIGN_UNKNOWN 

Definition at line 56 of file NumberTraits.h.

{SIGNED = 0, UNSIGNED = 1, SIGN_UNKNOWN = 2};

Function Documentation

template<typename T >
T DGtal::abs ( const T &  a)
static void DGtal::cross ( double  dst[3],
double  srcA[3],
double  srcB[3] 
)
inlinestatic

Calculate the cross product of two 3d vectors and return it.

Parameters:
dstdestination vector.
srcAsource vector A.
srcBsource vector B.

Definition at line 59 of file Display3D.ih.

Referenced by DGtal::Display3D::addKSSurfel(), DGtal::Display3D::addPolygon(), DGtal::Display3D::addQuad(), and DGtal::Display3D::addTriangle().

{
dst[0] = srcA[1]*srcB[2] - srcA[2]*srcB[1];
dst[1] = srcA[2]*srcB[0] - srcA[0]*srcB[2];
dst[2] = srcA[0]*srcB[1] - srcA[1]*srcB[0];
}
template<int N, int n, typename Ring , typename Alloc >
MPolynomial<n, Ring, Alloc> DGtal::derivative ( const MPolynomial< n, Ring, Alloc > &  p)
inline

Computes the partial derivative of p with respect to the N-th indeterminate. We assume that 0 <= N < n.

Parameters:
pan arbitrary polynomial.
Template Parameters:
Nthe variable used for derivation.
nthe number of variables or indeterminates.
Ringthe type chosen for the polynomial, defines also the type of the coefficents (generally int, float or double).
Allocis an allocator for Ring, for example std::allocator<Ring>; this is also the default parameter. Usually this parameter does not needs to be changed.

Definition at line 1964 of file MPolynomial.h.

References DGtal::MPolynomialDerivativeComputer< N, n, Ring, Alloc >::computeDerivative(), and DGtal::MPolynomial< n, TRing, TAlloc >::getAllocator().

template<int N, int n, typename Ring >
MPolynomial<n, Ring, std::allocator<Ring> > DGtal::derivative ( const MPolynomial< n, Ring, std::allocator< Ring > > &  p)
inline

Computes the partial derivative of p with respect to the N-th indeterminate. We assume that 0 <= N < n.

Parameters:
pan arbitrary polynomial.
Template Parameters:
Nthe variable used for derivation.
nthe number of variables or indeterminates.
Ringthe type chosen for the polynomial, defines also the type of the coefficents (generally int, float or double).

Definition at line 1988 of file MPolynomial.h.

template<typename TRing , typename TAlloc >
void DGtal::euclidDiv ( const MPolynomial< 1, TRing, TAlloc > &  f,
const MPolynomial< 1, TRing, TAlloc > &  g,
MPolynomial< 1, TRing, TAlloc > &  q,
MPolynomial< 1, TRing, TAlloc > &  r 
)

Forward declaration, to be able to declare this as a friend.

Referenced by gcd().

template<typename Ring , typename Alloc >
void DGtal::euclidDiv ( const MPolynomial< 1, Ring, Alloc > &  f,
const MPolynomial< 1, Ring, Alloc > &  g,
MPolynomial< 1, Ring, Alloc > &  q,
MPolynomial< 1, Ring, Alloc > &  r 
)

Computes q and r such that f = q g + r and degree(r) < degree(g).

Definition at line 2001 of file MPolynomial.h.

References DGtal::MPolynomial< n, TRing, TAlloc >::degree(), DGtal::MPolynomial< n, TRing, TAlloc >::getAllocator(), DGtal::MPolynomial< n, TRing, TAlloc >::leading(), and DGtal::MPolynomial< n, TRing, TAlloc >::normalize().

{
if (f.degree() < g.degree())
{
// Ignore the trivial case
r = f;
return;
}
q = MPolynomial<1, Ring, Alloc>( true, f.degree() - g.degree() + 1,
f.getAllocator() );
r = f;
for (int i = q.degree(); i >= 0; --i)
{
q[i] = r[i + g.degree()] / g.leading();
for (int j = g.degree(); j >= 0; --j)
r[i + j] -= q[i] * g[j];
}
r.normalize();
// Note that the degree of q is already correct.
}
template<typename Ring >
void DGtal::euclidDiv ( const MPolynomial< 1, Ring, std::allocator< Ring > > &  f,
const MPolynomial< 1, Ring, std::allocator< Ring > > &  g,
MPolynomial< 1, Ring, std::allocator< Ring > > &  q,
MPolynomial< 1, Ring, std::allocator< Ring > > &  r 
)

Computes q and r such that f = q g + r and degree(r) < degree(g).

Definition at line 2031 of file MPolynomial.h.

{
euclidDiv<Ring, std::allocator<Ring> >(f, g, q, r);
}
template<typename I , typename S >
bool DGtal::findAndGetValue ( const I &  aImg,
const S &  aSet,
const typename I::Point &  aPoint,
typename I::Value &  aValue 
)
inline

Read the value contained in aImg at aPoint if aPoint belongs to aSet.

Parameters:
aImgan image
aSeta digital set
aPointa point
aValue(returned) value
Returns:
'true' if a new point is found and the value read but 'false' otherwise
Template Parameters:
Iany model of CImage
Sany model of CDigitalSet

The general behavior is like:

However, this code is specialized if I is an ImageContainerBySTLMap and S is a DigitalSetFromMap as follows:

See also:
ImageContainerBySTLMap DigitalSetFromMap
insertAndSetValue

Definition at line 343 of file ImageHelper.ih.

References FindAndGetValue< I, S, D, V >::implementation().

Referenced by DGtal::L2FirstOrderLocalDistance< TImage, TSet >::operator()(), DGtal::L2SecondOrderLocalDistance< TImage, TSet >::operator()(), DGtal::LInfLocalDistance< TImage, TSet >::operator()(), DGtal::L1LocalDistance< TImage, TSet >::operator()(), and DGtal::SpeedExtrapolator< TDistanceImage, TSet, TSpeedFunctor >::operator()().

{
BOOST_CONCEPT_ASSERT(( CImage<I> ));
BOOST_CONCEPT_ASSERT(( CDigitalSet<S> ));
BOOST_STATIC_ASSERT(( boost::is_same< typename I::Point, typename S::Point >::value ));
typedef typename I::Domain D;
typedef typename I::Value V;
return FindAndGetValue<I,S,D,V>::implementation(aImg, aSet, aPoint, aValue);
}
template<typename SC >
void DGtal::firstMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
DGtal::ForwardSegmentComputer   
)

Computes the first maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CForwardSegmentComputer

Definition at line 403 of file SegmentComputerUtils.h.

References longestSegment().

Referenced by firstMaximalSegment(), DGtal::SaturatedSegmentation< TSegmentComputer >::SegmentComputerIterator::initFirstMaximalSegment(), DGtal::SaturatedSegmentation< TSegmentComputer >::SegmentComputerIterator::initLastMaximalSegment(), mostCenteredMaximalSegment(), and nextMaximalSegment().

{
typedef typename SC::ConstIterator ConstIterator;
typedef typename SC::Reverse ReverseSegmentComputer;
typedef typename ReverseSegmentComputer::ConstIterator ConstReverseIterator;
if ( isNotEmpty<ConstIterator>(i,end) ) {
//backward extension
ConstIterator it( i ); ++it;
ConstReverseIterator rit( it );
ConstReverseIterator rend( begin );
ReverseSegmentComputer r( s.getReverse() );
longestSegment(r, rit, rend);
//forward extension
ConstIterator it2( r.end().base() );
longestSegment(s, it2, end);
}
}
template<typename SC >
void DGtal::firstMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
DGtal::BidirectionalSegmentComputer   
)

Computes the first maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CBidirectionalSegmentComputer

Definition at line 438 of file SegmentComputerUtils.h.

References maximalExtension(), and oppositeEndMaximalExtension().

{
s.init(i);
}
template<typename SC >
void DGtal::firstMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
DGtal::DynamicSegmentComputer   
)

Computes the first maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CDynamicSegmentComputer
Note:
calls the function dedicated to ForwardSegmentComputer

Definition at line 458 of file SegmentComputerUtils.h.

References firstMaximalSegment().

template<typename SC >
void DGtal::firstMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
DGtal::DynamicBidirectionalSegmentComputer   
)

Computes the first maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CDynamicBidirectionalSegmentComputer
Note:
calls the function dedicated to BidirectionalSegmentComputer

Definition at line 475 of file SegmentComputerUtils.h.

References firstMaximalSegment().

template<typename SC >
void DGtal::firstMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end 
)

Computes the first maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of segment computer

Definition at line 491 of file SegmentComputerUtils.h.

{
firstMaximalSegment<SC>(s, i, begin, end,
}
template<typename Ring , typename Alloc >
MPolynomial<1, Ring, Alloc> DGtal::gcd ( const MPolynomial< 1, Ring, Alloc > &  f,
const MPolynomial< 1, Ring, Alloc > &  g 
)

Compute the monic greatest common divisor of f and g using the Euclidean Algorithm.

Definition at line 2045 of file MPolynomial.h.

References euclidDiv(), DGtal::MPolynomial< n, TRing, TAlloc >::getAllocator(), DGtal::MPolynomial< n, TRing, TAlloc >::isZero(), and DGtal::MPolynomial< n, TRing, TAlloc >::leading().

Referenced by DGtal::IntegerComputer< TInteger >::reduce().

{
if (f.isZero())
{
if (g.isZero()) return f; // both are zero
else return g / g.leading(); // make g monic
}
d1(f / f.leading()),
d2(g / g.leading()),
q(f.getAllocator()),
r(f.getAllocator());
while (!d2.isZero())
{
euclidDiv(d1, d2, q, r);
d1.swap(d2);
d2 = r;
d2 /= r.leading(); // make r monic
}
return d1;
}
template<typename Ring >
MPolynomial<1, Ring, std::allocator<Ring> > DGtal::gcd ( const MPolynomial< 1, Ring, std::allocator< Ring > > &  f,
const MPolynomial< 1, Ring, std::allocator< Ring > > &  g 
)

Compute the monic greatest common divisor of f and g using the Euclidean Algorithm.

Definition at line 2074 of file MPolynomial.h.

{
return gcd<Ring, std::allocator<Ring> >(f, g);
}
template<typename IC >
IC DGtal::getMiddleIterator ( const IC &  itb,
const IC &  ite,
RandomAccessCategory   
)

Specialization for random access category

Definition at line 87 of file SegmentComputerUtils.h.

Referenced by DGtal::MostCenteredMaximalSegmentEstimator< SegmentComputer, SCEstimator >::endEval(), DGtal::MostCenteredMaximalSegmentEstimator< SegmentComputer, SCEstimator >::eval(), getMiddleIterator(), and mostCenteredMaximalSegment().

{
//how to compute this with circulators ?
//return itb + ((ite-itb)/2);
//does not work
return getMiddleIterator(itb, ite, BidirectionalCategory() );
}
template<typename IC >
IC DGtal::getMiddleIterator ( const IC &  itb,
const IC &  ite,
BidirectionalCategory   
)

Specialization for bidirectional category NB: in O(ite-itb)

Definition at line 100 of file SegmentComputerUtils.h.

{
IC b( itb );
IC f( ite );
bool flag = true;
while (b != f) {
if (flag) {
--f;
flag = false;
} else {
++b;
flag = true;
}
}
return b;
}
template<typename IC >
IC DGtal::getMiddleIterator ( const IC &  itb,
const IC &  ite,
ForwardCategory   
)

Specialization for forward category NB: in O(ite-itb)

Definition at line 122 of file SegmentComputerUtils.h.

{
IC i( itb );
unsigned int c = 0;
while (i != ite) {
++i;
++c;
}
unsigned int k = c/2;
c = 0;
i = itb;
while (c != k) {
++i;
++c;
}
return i;
}
template<typename IC >
IC DGtal::getMiddleIterator ( const IC &  itb,
const IC &  ite 
)

Computes the middle iterator of a given range, i.e. itb + (ite-itb)/2)

Parameters:
itb,ite,beginand end iterators of a range
Returns:
the middle iterator of the range [itb,ite)
Template Parameters:
anyiterator or circulator

Definition at line 150 of file SegmentComputerUtils.h.

References getMiddleIterator().

{
typedef typename IteratorCirculatorTraits<IC>::Category Category;
return getMiddleIterator(itb, ite, Category() );
}
template<typename I , typename F >
void DGtal::imageFromFunctor ( I &  aImg,
const F &  aFun 
)
inline

In a window corresponding to the domain of aImg, copy the values of aFun into aImg

Parameters:
aImg(returned) image
aFuna unary functor
Template Parameters:
Iany model of CImage
Fany model of CPointFunctor

Definition at line 139 of file ImageHelper.ih.

{
BOOST_CONCEPT_ASSERT(( CImage<I> ));
BOOST_CONCEPT_ASSERT(( CPointFunctor<F> ));
typename I::Domain d = aImg.domain();
std::transform(d.begin(), d.end(), aImg.range().outputIterator(), aFun );
}
template<typename I >
void DGtal::imageFromImage ( I &  aImg1,
const I &  aImg2 
)
inline

Copy the values of aImg2 into aImg1 .

Parameters:
aImg1the image to fill
aImg2the image to copy
Template Parameters:
Iany model of CImage

Definition at line 153 of file ImageHelper.ih.

{
BOOST_CONCEPT_ASSERT(( CImage<I> ));
typename I::ConstRange r = aImg2.constRange();
std::copy( r.begin(), r.end(), aImg1.range().outputIterator() );
}
template<typename It , typename Im >
void DGtal::imageFromRangeAndValue ( const It &  itb,
const It &  ite,
Im &  aImg,
const typename Im::Value &  aValue = 0 
)
inline

Set the values of aImg at aValue for each points of the range [ itb , ite )

Parameters:
itbbegin iterator on points
iteend iterator on points
aImg(returned) image
aValueany value (default: 0)
Template Parameters:
Itany model of forward iterator
Imany model of CImage

Definition at line 108 of file ImageHelper.ih.

Referenced by imageFromRangeAndValue().

{
BOOST_CONCEPT_ASSERT(( boost::InputIterator<It> ));
BOOST_CONCEPT_ASSERT(( CImage<Im> ));
typename Im::Domain d = aImg.domain();
for (It it = itb; it != ite; ++it)
{
if (d.isInside( *it ))
aImg.setValue( *it, aValue );
}
}
template<typename R , typename I >
void DGtal::imageFromRangeAndValue ( const R &  aRange,
I &  aImg,
const typename I::Value &  aValue = 0 
)
inline

Set the values of aImg at aValue for each points of the range aRange

Parameters:
aRangeany range
aImg(returned) image
aValueany value (default: 0)
Template Parameters:
Rany model of CConstSinglePassRange
Iany model of CImage

Definition at line 126 of file ImageHelper.ih.

References imageFromRangeAndValue().

{
BOOST_CONCEPT_ASSERT(( CConstSinglePassRange<R> ));
BOOST_CONCEPT_ASSERT(( CImage<I> ));
imageFromRangeAndValue( aRange.begin(), aRange.end(), aImg, aValue);
}
template<typename I , typename S >
bool DGtal::insertAndAlwaysSetValue ( I &  aImg,
S &  aSet,
const typename I::Point &  aPoint,
const typename I::Value &  aValue 
)
inline

Insert aPoint in aSet and set aValue at aPoint in aImg.

Parameters:
aImgan image
aSeta digital set
aPointa point
aValuea value
Returns:
'true' if a new point was inserted in aSet but 'false' if the same point already exist in aSet
Template Parameters:
Iany model of CImage
Sany model of CDigitalSet

The general behavior is like:

bool found = false;
if ( aSet.find( aPoint ) != aSet.end() )
found = true;
//always set value
aSet.insert( aPoint );
aImg.setValue( aPoint, aValue );
return !found;

However, this code is specialized if I is an ImageContainerBySTLMap and S is a DigitalSetFromMap as follows:

std::pair<P, V>
pair( aPoint, aValue );
std::pair<Iterator, bool> res
= aImg.insert( pair );
bool flag = res.second;
if (flag == false) //set value even in this case
res.first->second = aValue;
return flag;

See also:
ImageContainerBySTLMap DigitalSetFromMap
insertAndSetValue

Definition at line 281 of file ImageHelper.ih.

References InsertAndAlwaysSetValue< I, S, D, V >::implementation().

Referenced by DGtal::FMM< TImage, TSet, TPointPredicate, TPointFunctor >::initFromBelsRange(), DGtal::FMM< TImage, TSet, TPointPredicate, TPointFunctor >::initFromIncidentPointsRange(), and DGtal::FMM< TImage, TSet, TPointPredicate, TPointFunctor >::initFromPointsRange().

{
BOOST_CONCEPT_ASSERT(( CImage<I> ));
BOOST_CONCEPT_ASSERT(( CDigitalSet<S> ));
BOOST_STATIC_ASSERT(( boost::is_same< typename I::Point, typename S::Point >::value ));
typedef typename I::Domain D;
typedef typename I::Value V;
return InsertAndAlwaysSetValue<I,S,D,V>::implementation(aImg, aSet, aPoint, aValue);
}
template<typename I , typename S >
bool DGtal::insertAndSetValue ( I &  aImg,
S &  aSet,
const typename I::Point &  aPoint,
const typename I::Value &  aValue 
)
inline

Insert aPoint in aSet and if (and only if) aPoint is a newly inserted point. Then set aValue at aPoint in aImg.

Parameters:
aImgan image
aSeta digital set
aPointa point
aValuea value
Returns:
'true' if a new point was inserted in aSet but 'false' if the same point already exist in aSet
Template Parameters:
Iany model of CImage
Sany model of CDigitalSet

The general behavior is like:

bool found = true;
if ( aSet.find( aPoint ) == aSet.end() )
{ //if not found
found = false;
aSet.insert( aPoint );
aImg.setValue( aPoint, aValue );
}
return !found;

However, this code is specialized if I is an ImageContainerBySTLMap and S is a DigitalSetFromMap as follows:

std::pair<P, V>
pair( aPoint, aValue );
std::pair<Iterator, bool> res
= aImg.insert( pair );
return res.second;

See also:
ImageContainerBySTLMap DigitalSetFromMap
insertAndAlwaysSetValue

Definition at line 213 of file ImageHelper.ih.

References InsertAndSetValue< I, S, D, V >::implementation().

Referenced by DGtal::FMM< TImage, TSet, TPointPredicate, TPointFunctor >::addNewAcceptedPoint().

{
BOOST_CONCEPT_ASSERT(( CImage<I> ));
BOOST_CONCEPT_ASSERT(( CDigitalSet<S> ));
BOOST_STATIC_ASSERT(( boost::is_same< typename I::Point, typename S::Point >::value ));
typedef typename I::Domain D;
typedef typename I::Value V;
return InsertAndSetValue<I,S,D,V>::implementation(aImg, aSet, aPoint, aValue);
}
template<typename IC >
bool DGtal::isEmpty ( const IC &  itb,
const IC &  ite 
)
inline

Definition at line 75 of file IteratorFunctions.h.

Referenced by DGtal::Preimage2D< Shape >::addBack(), and DGtal::Preimage2D< Shape >::addFront().

{
return !detail::isNotEmpty<IC>( itb, ite, typename IteratorCirculatorTraits<IC>::Type() );
}
template<typename IC >
bool DGtal::isNotEmpty ( const IC &  itb,
const IC &  ite 
)
inline
template<typename SC >
void DGtal::lastMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
DGtal::ForwardSegmentComputer   
)

Computes the last maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CForwardSegmentComputer

Definition at line 652 of file SegmentComputerUtils.h.

References longestSegment().

Referenced by DGtal::SaturatedSegmentation< TSegmentComputer >::SegmentComputerIterator::initFirstMaximalSegment(), DGtal::SaturatedSegmentation< TSegmentComputer >::SegmentComputerIterator::initLastMaximalSegment(), lastMaximalSegment(), and previousMaximalSegment().

{
typedef typename SC::ConstIterator ConstIterator;
typedef typename SC::Reverse ReverseSegmentComputer;
typedef typename ReverseSegmentComputer::ConstIterator ConstReverseIterator;
//forward extension
ConstIterator j( i );
longestSegment(s, j, end);
//backward extension
ConstIterator it( s.end() );
ConstReverseIterator rit( it );
ConstReverseIterator rend( begin );
ReverseSegmentComputer r( s.getReverse() );
longestSegment(r, rit, rend);
//forward extension
ConstIterator it2( r.end().base() );
longestSegment(s, it2, end);
}
template<typename SC >
void DGtal::lastMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
BidirectionalSegmentComputer   
)

Computes the last maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CBidirectionalSegmentComputer

Definition at line 686 of file SegmentComputerUtils.h.

References maximalExtension(), and oppositeEndMaximalExtension().

{
s.init(i);
}
template<typename SC >
void DGtal::lastMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
DGtal::DynamicSegmentComputer   
)

Computes the last maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CDynamicSegmentComputer
Note:
calls the function dedicated to ForwardSegmentComputer

Definition at line 706 of file SegmentComputerUtils.h.

References lastMaximalSegment().

template<typename SC >
void DGtal::lastMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
DGtal::DynamicBidirectionalSegmentComputer   
)

Computes the last maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CDynamicBidirectionalSegmentComputer
Note:
calls the function dedicated to BidirectionalSegmentComputer

Definition at line 723 of file SegmentComputerUtils.h.

References lastMaximalSegment().

template<typename SC >
void DGtal::lastMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end 
)

Computes the last maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of segment computer

Definition at line 739 of file SegmentComputerUtils.h.

{
lastMaximalSegment<SC>(s, i, begin, end,
}
template<typename SC >
void DGtal::longestSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  end,
IteratorType   
)
template<typename SC >
void DGtal::longestSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  end,
CirculatorType   
)

Specialization for Circulator type

Definition at line 367 of file SegmentComputerUtils.h.

References maximalExtension().

{
s.init(i);
maximalExtension(s, end, CirculatorType() );
}
template<typename SC >
void DGtal::longestSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  end 
)

Computes the longest possible segment from [i]

Parameters:
sany instance of segment computer
i,agiven ConstIterator
end,anyend ConstIterator
Template Parameters:
SCany model of segment computer

Definition at line 384 of file SegmentComputerUtils.h.

References longestSegment().

{
typedef typename IteratorCirculatorTraits<typename SC::ConstIterator>::Type Type;
longestSegment( s, i, end, Type() );
}
template<typename T >
T DGtal::maxDGtal ( const T &  a,
const T &  b 
)

Return the max bewteen to instance of type T.

Template Parameters:
Tthe type of elements to compare (model of boost::LessThanComparable and EqualityComparable).
Parameters:
afirst value
bsecond value
Returns:
the maximum between a and b.

Definition at line 85 of file GlobalFunctions.h.

{
BOOST_CONCEPT_ASSERT((boost::EqualityComparable<T>));
BOOST_CONCEPT_ASSERT((boost::LessThanComparable<T>));
if (a>=b)
return a;
else
return b;
}
template<typename SC >
void DGtal::maximalExtension ( SC &  s,
const typename SC::ConstIterator &  end,
IteratorType   
)

Specialization for Iterator type

Definition at line 163 of file SegmentComputerUtils.h.

Referenced by firstMaximalSegment(), lastMaximalSegment(), longestSegment(), maximalExtension(), mostCenteredMaximalSegment(), and nextMaximalSegment().

{
//stop if s.end() == end
while ( (s.end() != end)
&& (s.extendForward()) ) {}
}
template<typename SC >
void DGtal::maximalExtension ( SC &  s,
const typename SC::ConstIterator &  ,
CirculatorType   
)

Specialization for Circulator type

Definition at line 173 of file SegmentComputerUtils.h.

{
//stop if the segment is the whole range
const typename SC::ConstIterator newEnd( s.begin() );
while ( (s.extendForward())
&& (s.end() != newEnd) ) {}
}
template<typename SC >
void DGtal::maximalExtension ( SC &  s,
const typename SC::ConstIterator &  end 
)

Calls s.extendForward() while possible

Parameters:
sany instance of segment computer
endany ConstIterator
Template Parameters:
SCany model of segment computer

Definition at line 187 of file SegmentComputerUtils.h.

References maximalExtension().

{
typedef typename IteratorCirculatorTraits<typename SC::ConstIterator>::Type Type;
maximalExtension( s, end, Type() );
}
template<typename SC >
void DGtal::maximalRetraction ( SC &  s,
const typename SC::ConstIterator &  end 
)

Calls s.retractForward() while s.isExtendableForward() returns false

Parameters:
sany instance of segment computer
endany ConstIterator
Template Parameters:
SCany model of segment computer

Definition at line 316 of file SegmentComputerUtils.h.

Referenced by nextMaximalSegment().

{
if ( isNotEmpty<typename SC::ConstIterator>(s.end(),end) ) {
while ( (! s.isExtendableForward() )
&&(s.retractForward() ) ) {}
} else {
while ( s.retractForward() ) {}
}
}
template<typename SC >
bool DGtal::maximalSymmetricExtension ( SC &  s,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
IteratorType   
)

Specialization for Iterator type

Definition at line 233 of file SegmentComputerUtils.h.

Referenced by maximalSymmetricExtension(), and mostCenteredMaximalSegment().

{
bool flagOk = true;
bool flagForward = true;
//while the extension is possible
//at the front and (then) at the back
while (flagOk) {
if (flagForward) {
flagForward = false;
if ( s.end() != end ) flagOk = s.extendForward();
else flagOk = false;
} else {
flagForward = true;
if ( s.begin() != begin ) flagOk = s.extendBackward();
else flagOk = false;
}
}
//extend one more time if s.begin() == begin
if (s.begin() != begin ) {
if (s.extendBackward()) return !s.extendForward();
else return false;
} else {
return !flagForward;
}
}
template<typename SC >
bool DGtal::maximalSymmetricExtension ( SC &  s,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
CirculatorType   
)

Specialization for Circulator type

Definition at line 267 of file SegmentComputerUtils.h.

{
bool flagOk = true;
bool flagForward = true;
//while the extensions are possible and
//the segment does not correspond to the whole range
while ( (flagOk) && ( s.end() != s.begin() ) ) {
if (flagForward) {
flagForward = false;
flagOk = s.extendForward();
} else {
flagForward = true;
flagOk = s.extendBackward();
}
}
return !flagForward;
}
template<typename SC >
bool DGtal::maximalSymmetricExtension ( SC &  s,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end 
)

Calls alternatively s.extendForward() and s.extendBackward() while it is possible

Parameters:
sany instance of (bidirectional)segment computer
begin,end,beginand end iterator of a range
Returns:
'true' if the extension at the front fails first and 'false' if the extension at the back fails first
Template Parameters:
SCany model of CBidirectionalSegmentComputer

Definition at line 298 of file SegmentComputerUtils.h.

References maximalSymmetricExtension().

{
typedef typename IteratorCirculatorTraits<typename SC::ConstIterator>::Type Type;
return maximalSymmetricExtension( s, begin, end, Type() );
}
template<typename T >
T DGtal::minDGtal ( const T &  a,
const T &  b 
)

Return the min bewteen to instance of type T.

Template Parameters:
Tthe type of elements to compare (model of boost::LessThanComparable and EqualityComparable).
Parameters:
afirst value
bsecond value
Returns:
the minimum between a and b.

Definition at line 64 of file GlobalFunctions.h.

{
BOOST_CONCEPT_ASSERT((boost::EqualityComparable<T>));
BOOST_CONCEPT_ASSERT((boost::LessThanComparable<T>));
if (a<=b)
return a;
else
return b;
}
template<typename Ring , typename Alloc >
MPolynomial<1, Ring, Alloc> DGtal::mmonomial ( unsigned int  e)
inline

Creates a monomial in one indeterminate.

Parameters:
ethe exponent for X_0
Returns:
the 1-variable polynomial X_0^e
Template Parameters:
Ringthe type for the coefficent ring of the polynomial.
Allocthe type of allocator.

Definition at line 1684 of file MPolynomial.h.

{
p[e] = 1;
return p;
}
template<typename Ring , typename Alloc >
MPolynomial<2, Ring, Alloc> DGtal::mmonomial ( unsigned int  e,
unsigned int  f 
)
inline

Creates a monomial in two indeterminates.

Parameters:
ethe exponent for X_0
fthe exponent for X_1
Returns:
the 2-variables polynomial X_0^e X_1^f
Template Parameters:
Ringthe type for the coefficent ring of the polynomial.
Allocthe type of allocator.

Definition at line 1702 of file MPolynomial.h.

{
p[e][f] = 1;
return p;
}
template<typename Ring , typename Alloc >
MPolynomial<3, Ring, Alloc> DGtal::mmonomial ( unsigned int  e,
unsigned int  f,
unsigned int  g 
)
inline

Creates a monomial in three indeterminates.

Parameters:
ethe exponent for X_0
fthe exponent for X_1
gthe exponent for X_2
Returns:
the 3-variables polynomial X_0^e X_1^f X_2^g
Template Parameters:
Ringthe type for the coefficent ring of the polynomial.
Allocthe type of allocator.

Definition at line 1720 of file MPolynomial.h.

{
p[e][f][g] = 1;
return p;
}
template<typename Ring , typename Alloc >
MPolynomial<4, Ring, Alloc> DGtal::mmonomial ( unsigned int  e,
unsigned int  f,
unsigned int  g,
unsigned int  h 
)
inline

Creates a monomial in four indeterminates.

Parameters:
ethe exponent for X_0
fthe exponent for X_1
gthe exponent for X_2
hthe exponent for X_3
Returns:
the 3-variables polynomial X_0^e X_1^f X_2^g X_3^h
Template Parameters:
Ringthe type for the coefficent ring of the polynomial.
Allocthe type of allocator.

Definition at line 1740 of file MPolynomial.h.

{
p[e][f][g][h] = 1;
return p;
}
template<typename Ring >
MPolynomial<1, Ring, std::allocator<Ring> > DGtal::mmonomial ( unsigned int  e)
inline

Creates a monomial in one indeterminate.

Parameters:
ethe exponent for X_0
Returns:
the 1-variable polynomial X_0^e
Template Parameters:
Ringthe type for the coefficent ring of the polynomial.

Definition at line 1756 of file MPolynomial.h.

{
p[e] = 1;
return p;
}
template<typename Ring >
MPolynomial<2, Ring, std::allocator<Ring> > DGtal::mmonomial ( unsigned int  e,
unsigned int  f 
)
inline

Creates a monomial in two indeterminates.

Parameters:
ethe exponent for X_0
fthe exponent for X_1
Returns:
the 2-variables polynomial X_0^e X_1^f
Template Parameters:
Ringthe type for the coefficent ring of the polynomial.

Definition at line 1773 of file MPolynomial.h.

{
p[e][f] = 1;
return p;
}
template<typename Ring >
MPolynomial<3, Ring, std::allocator<Ring> > DGtal::mmonomial ( unsigned int  e,
unsigned int  f,
unsigned int  g 
)
inline

Creates a monomial in three indeterminates.

Parameters:
ethe exponent for X_0
fthe exponent for X_1
gthe exponent for X_2
Returns:
the 3-variables polynomial X_0^e X_1^f X_2^g
Template Parameters:
Ringthe type for the coefficent ring of the polynomial.

Definition at line 1791 of file MPolynomial.h.

{
p[e][f][g] = 1;
return p;
}
template<typename Ring >
MPolynomial<4, Ring, std::allocator<Ring> > DGtal::mmonomial ( unsigned int  e,
unsigned int  f,
unsigned int  g,
unsigned int  h 
)
inline

Creates a monomial in four indeterminates.

Parameters:
ethe exponent for X_0
fthe exponent for X_1
gthe exponent for X_2
hthe exponent for X_3
Returns:
the 3-variables polynomial X_0^e X_1^f X_2^g X_3^h
Template Parameters:
Ringthe type for the coefficent ring of the polynomial.

Definition at line 1811 of file MPolynomial.h.

{
p[e][f][g][h] = 1;
return p;
}
template<typename SC >
void DGtal::mostCenteredMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
DGtal::ForwardSegmentComputer   
)

Computes the most centered maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CForwardSegmentComputer

Definition at line 510 of file SegmentComputerUtils.h.

References firstMaximalSegment(), getMiddleIterator(), and longestSegment().

Referenced by DGtal::MostCenteredMaximalSegmentEstimator< SegmentComputer, SCEstimator >::eval(), DGtal::SaturatedSegmentation< TSegmentComputer >::SegmentComputerIterator::initFirstMaximalSegment(), DGtal::SaturatedSegmentation< TSegmentComputer >::SegmentComputerIterator::initLastMaximalSegment(), and mostCenteredMaximalSegment().

{
typedef typename SC::ConstIterator ConstIterator;
typedef typename SC::Reverse ReverseSegmentComputer;
typedef typename ReverseSegmentComputer::ConstIterator ConstReverseIterator;
//get the first maximal segment passing through i
//get the next maximal segment while i is not at the middle of
//the current maximal segment.
ConstIterator k( s.begin() );
while ( k != i ) {
if ( isNotEmpty<ConstIterator>(s.end(),end) ) {
//backward extension
ConstIterator it( s.end() ); ++it;
ConstReverseIterator rit( it );
ConstReverseIterator rend( s.begin() );
ReverseSegmentComputer r( s.getReverse() );
longestSegment(r, rit, rend);
ConstIterator newBegin = r.end().base();
ASSERT( newBegin != s.begin() );
while ( ( k != getMiddleIterator(newBegin, s.end() ) )
&&( k != i ) ) {
++k;
}
if ( k != i ) {
//get the next maximal segment
longestSegment(s, newBegin, end);
}
} else {
k = i;
}
}
}
template<typename SC >
void DGtal::mostCenteredMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
DGtal::BidirectionalSegmentComputer   
)

Computes the most centered maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CBidirectionalSegmentComputer

Definition at line 566 of file SegmentComputerUtils.h.

References isNotEmpty(), maximalExtension(), maximalSymmetricExtension(), and oppositeEndMaximalExtension().

{
if ( (isNotEmpty(i,end)) || (isNotEmpty(i,begin)) ) {
s.init(i);
//symmetric extension
if ( (isNotEmpty(i,end)) && (isNotEmpty(i,begin)) ) {
maximalSymmetricExtension(s, begin, end);
}
//forward extension
//backward extension
}
}
template<typename SC >
void DGtal::mostCenteredMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
DGtal::DynamicSegmentComputer   
)

Computes the most centered maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CDynamicSegmentComputer
Note:
calls the function dedicated to ForwardSegmentComputer

Definition at line 600 of file SegmentComputerUtils.h.

References mostCenteredMaximalSegment().

template<typename SC >
void DGtal::mostCenteredMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end,
DGtal::DynamicBidirectionalSegmentComputer   
)

Computes the most centered maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of CDynamicBidirectionalSegmentComputer
Note:
calls the function dedicated to BidirectionalSegmentComputer

Definition at line 617 of file SegmentComputerUtils.h.

References mostCenteredMaximalSegment().

template<typename SC >
void DGtal::mostCenteredMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  i,
const typename SC::ConstIterator &  begin,
const typename SC::ConstIterator &  end 
)

Computes the most centered maximal segment passing through i

Parameters:
iany ConstIterator
begin,end,anypair of ConstIterators bounding a range
Template Parameters:
SCany model of segment computer

Definition at line 633 of file SegmentComputerUtils.h.

{
mostCenteredMaximalSegment<SC>(s, i, begin, end,
}
template<typename SC >
void DGtal::nextMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  end,
DGtal::ForwardSegmentComputer   
)
template<typename SC >
void DGtal::nextMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  end,
DGtal::BidirectionalSegmentComputer   
)

Computes the next maximal segment of s (s is assumed to be maximal)

Parameters:
end,endConstIterator
Template Parameters:
SCany model of CBidirectionalSegmentComputer
Note:
fistMaximalSegment of s.end()

Definition at line 774 of file SegmentComputerUtils.h.

References firstMaximalSegment().

{
}
template<typename SC >
void DGtal::nextMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  end,
DGtal::DynamicSegmentComputer   
)

Computes the next maximal segment of s (s is assumed to be maximal)

Parameters:
end,endConstIterator
Template Parameters:
SCany model of CDynamicSegmentComputer

Definition at line 788 of file SegmentComputerUtils.h.

References maximalExtension(), and maximalRetraction().

{
typedef typename SC::ConstIterator ConstIterator;
//rectract
//intersection test
ConstIterator i( s.begin() ); ++i;
//if the intersection between the two
// consecutive maximal segments is empty
if ( i == s.end() ) {
if ( isNotEmpty<ConstIterator>(i, end) ) {
++i;
s.init(i);
}
}
//extend
}
template<typename SC >
void DGtal::nextMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  end,
DGtal::DynamicBidirectionalSegmentComputer   
)

Computes the next maximal segment of s (s is assumed to be maximal)

Parameters:
end,endConstIterator
Template Parameters:
SCany model of CDynamicBidirectionalSegmentComputer
Note:
calls the function dedicated to DynamicSegmentComputer

Definition at line 820 of file SegmentComputerUtils.h.

References nextMaximalSegment().

template<typename SC >
void DGtal::nextMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  end 
)

Computes the next maximal segment of s (s is assumed to be maximal)

Parameters:
end,anyend ConstIterator
Template Parameters:
SCany model of segment computer

Definition at line 834 of file SegmentComputerUtils.h.

{
nextMaximalSegment<SC>(s, end,
}
static void DGtal::normalize ( double  vec[3])
inlinestatic

Normalize the input 3d vector.

Parameters:
vecsource & destination vector.

Definition at line 72 of file Display3D.ih.

Referenced by DGtal::Display3D::addKSSurfel(), DGtal::Display3D::addPolygon(), DGtal::Display3D::addQuad(), and DGtal::Display3D::addTriangle().

{
const double squaredLen = vec[0]*vec[0] + vec[1]*vec[1] + vec[2]*vec[2];
vec[0] /= sqrt (squaredLen);
vec[1] /= sqrt (squaredLen);
vec[2] /= sqrt (squaredLen);
}
template<typename T >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const BLUELocalLengthEstimator< T > &  object 
)

Overloads 'operator<<' for displaying objects of class 'BLUELocalLengthEstimator'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'BLUELocalLengthEstimator' to write.
Returns:
the output stream after the writing.
template<typename T >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const RosenProffittLocalLengthEstimator< T > &  object 
)

Overloads 'operator<<' for displaying objects of class 'RosenProffittLocalLengthEstimator'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'RosenProffittLocalLengthEstimator' to write.
Returns:
the output stream after the writing.
std::ostream& DGtal::operator<< ( std::ostream &  out,
const TraceWriter &  object 
)

Overloads 'operator<<' for displaying objects of class 'TraceWriter'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'TraceWriter' to write.
Returns:
the output stream after the writing.
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ContourHelper &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ContourHelper'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ContourHelper' to write.
Returns:
the output stream after the writing.

Definition at line 70 of file ContourHelper.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename TPoint >
bool DGtal::operator<< ( MeshFromPoints< TPoint > &  mesh,
const std::string &  filename 
)

'operator<<' for importing objects of class 'MeshFromPoints'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'MeshFromPoints' to write.
Returns:
the output stream after the writing.

Definition at line 276 of file MeshReader.ih.

References DGtal::MeshReader< TPoint >::importOFFFile(), and DGtal::MeshReader< TPoint >::importOFSFile().

{
string extension = filename.substr(filename.find_last_of(".") + 1);
if(extension== "off") {
return true;
}else if(extension== "ofs") {
return true;
}
return false;
}
std::ostream& DGtal::operator<< ( std::ostream &  out,
const TraceWriterFile &  object 
)

Overloads 'operator<<' for displaying objects of class 'TraceWriterFile'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'TraceWriterFile' to write.
Returns:
the output stream after the writing.
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const CowPtr< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'CowPtr'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'CowPtr' to write.
Returns:
the output stream after the writing.

Definition at line 77 of file CowPtr.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TSpace >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const CanonicEmbedder< TSpace > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'CanonicEmbedder'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'CanonicEmbedder' to write.
Returns:
the output stream after the writing.

Definition at line 115 of file CanonicEmbedder.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const CountedPtr< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'CountedPtr'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'CountedPtr' to write.
Returns:
the output stream after the writing.

Definition at line 80 of file CountedPtr.ih.

{
object.selfDisplay( out );
return out;
}
template<Dimension dim, typename TInteger >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const KhalimskyCell< dim, TInteger > &  object 
)
inline

Definition at line 127 of file KhalimskySpaceND.ih.

{
out << "(" << object.myCoordinates[ 0 ];
for ( Dimension i = 1; i < dim; ++i )
out << "," << object.myCoordinates[ i ];
out << ")";
return out;
}
std::ostream& DGtal::operator<< ( std::ostream &  out,
const Clock object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Clock'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Clock' to write.
Returns:
the output stream after the writing.

Definition at line 160 of file Clock.h.

{
object.selfDisplay( out );
return out;
}
template<typename TSpace >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ClosedIntegerHalfPlane< TSpace > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ClosedIntegerHalfPlane'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ClosedIntegerHalfPlane' to write.
Returns:
the output stream after the writing.

Definition at line 149 of file ClosedIntegerHalfPlane.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TKSpace , typename TImage >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const BoundaryPredicate< TKSpace, TImage > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'BoundaryPredicate'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'BoundaryPredicate' to write.
Returns:
the output stream after the writing.

Definition at line 128 of file BoundaryPredicate.ih.

{
object.selfDisplay ( out );
return out;
}
template<Dimension dim>
std::ostream & DGtal::operator<< ( std::ostream &  out,
const SurfelAdjacency< dim > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'SurfelAdjacency'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'SurfelAdjacency' to write.
Returns:
the output stream after the writing.

Definition at line 131 of file SurfelAdjacency.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename TKSpace , typename TImage >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const FrontierPredicate< TKSpace, TImage > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'FrontierPredicate'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'FrontierPredicate' to write.
Returns:
the output stream after the writing.

Definition at line 127 of file FrontierPredicate.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const L1LengthEstimator< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'L1LengthEstimator'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'L1LengthEstimator' to write.
Returns:
the output stream after the writing.

Definition at line 145 of file L1LengthEstimator.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TKSpace >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const CanonicCellEmbedder< TKSpace > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'CanonicCellEmbedder'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'CanonicCellEmbedder' to write.
Returns:
the output stream after the writing.

Definition at line 130 of file CanonicCellEmbedder.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename TKSpace >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const CanonicSCellEmbedder< TKSpace > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'CanonicSCellEmbedder'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'CanonicSCellEmbedder' to write.
Returns:
the output stream after the writing.

Definition at line 130 of file CanonicSCellEmbedder.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename TDigitalSurface >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const CanonicDigitalSurfaceEmbedder< TDigitalSurface > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'CanonicDigitalSurfaceEmbedder'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'CanonicDigitalSurfaceEmbedder' to write.
Returns:
the output stream after the writing.

Definition at line 130 of file CanonicDigitalSurfaceEmbedder.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const FPLengthEstimator< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'FPLengthEstimator'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'FPLengthEstimator' to write.
Returns:
the output stream after the writing.

Definition at line 154 of file FPLengthEstimator.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const MLPLengthEstimator< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'MLPLengthEstimator'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'MLPLengthEstimator' to write.
Returns:
the output stream after the writing.

Definition at line 153 of file MLPLengthEstimator.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const Measure< T > &  object 
)

Overloads 'operator<<' for displaying objects of class 'Measure'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Measure' to write.
Returns:
the output stream after the writing.
template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder > &  object 
)

Overloads 'operator<<' for displaying objects of class 'NormalVectorEstimatorLinearCellEmbedder'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'NormalVectorEstimatorLinearCellEmbedder' to write.
Returns:
the output stream after the writing.
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const TwoStepLocalLengthEstimator< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'TwoStepLocalLengthEstimator'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'TwoStepLocalLengthEstimator' to write.
Returns:
the output stream after the writing.

Definition at line 154 of file TwoStepLocalLengthEstimator.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DSSLengthEstimator< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DSSLengthEstimator'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DSSLengthEstimator' to write.
Returns:
the output stream after the writing.

Definition at line 159 of file DSSLengthEstimator.ih.

{
object.selfDisplay( out );
return out;
}
std::ostream& DGtal::operator<< ( std::ostream &  out,
const TraceWriterTerm &  object 
)

Overloads 'operator<<' for displaying objects of class 'TraceWriterTerm'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'TraceWriterTerm' to write.
Returns:
the output stream after the writing.
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ImplicitBall< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ImplicitBall'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImplicitBall' to write.
Returns:
the output stream after the writing.

Definition at line 85 of file ImplicitBall.ih.

{
object.selfDisplay( out );
return out;
}
std::ostream & DGtal::operator<< ( std::ostream &  out,
const RandomColorMap &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'RandomColorMap'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'RandomColorMap' to write.
Returns:
the output stream after the writing.

Definition at line 157 of file RandomColorMap.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const OwningOrAliasingPtr< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'OwningOrAliasingPtr'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'OwningOrAliasingPtr' to write.
Returns:
the output stream after the writing.

Definition at line 160 of file OwningOrAliasingPtr.ih.

{
object.selfDisplay( out );
return out;
}
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Board2D object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Board2D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Board2D' to write.
Returns:
the output stream after the writing.

Definition at line 149 of file Board2D.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename TSpace >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const RegularPointEmbedder< TSpace > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'RegularPointEmbedder'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'RegularPointEmbedder' to write.
Returns:
the output stream after the writing.

Definition at line 189 of file RegularPointEmbedder.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TKSpace , typename TImplicitFunction , typename TEmbedder >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ImplicitFunctionLinearCellEmbedder< TKSpace, TImplicitFunction, TEmbedder > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ImplicitFunctionLinearCellEmbedder'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImplicitFunctionLinearCellEmbedder' to write.
Returns:
the output stream after the writing.

Definition at line 195 of file ImplicitFunctionLinearCellEmbedder.ih.

{
object.selfDisplay( out );
return out;
}
std::ostream & DGtal::operator<< ( std::ostream &  out,
const IVViewer &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'IVViewer'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'IVViewer' to write.
Returns:
the output stream after the writing.

Definition at line 54 of file IVViewer.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename T >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const ModuloComputer< T > &  object 
)

Displays object on the output stream out.

Template Parameters:
Tthe type of integer for the modulo computer.
Parameters:
outthe output stream
objectthe object to display.

Definition at line 208 of file ModuloComputer.h.

{
object.selfDisplay( out );
return out;
}
template<typename TKSpace , typename TImage , typename TEmbedder >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ImageLinearCellEmbedder< TKSpace, TImage, TEmbedder > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ImageLinearCellEmbedder'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImageLinearCellEmbedder' to write.
Returns:
the output stream after the writing.

Definition at line 206 of file ImageLinearCellEmbedder.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ImplicitNorm1Ball< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ImplicitNorm1Ball'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImplicitNorm1Ball' to write.
Returns:
the output stream after the writing.

Definition at line 85 of file ImplicitNorm1Ball.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TPoint >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const StraightLineFrom2Points< TPoint > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'StraightLineFrom2Points'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'StraightLineFrom2Points' to write.
Returns:
the output stream after the writing.

Definition at line 210 of file StraightLineFrom2Points.h.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ImplicitHyperCube< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ImplicitHyperCube'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImplicitHyperCube' to write.
Returns:
the output stream after the writing.

Definition at line 85 of file ImplicitHyperCube.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const DigitalSetDomain< T > &  object 
)

Overloads 'operator<<' for displaying objects of class 'DigitalSetDomain'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DigitalSetDomain' to write.
Returns:
the output stream after the writing.
template<typename PValue >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const GrayscaleColorMap< PValue > &  object 
)

Overloads 'operator<<' for displaying objects of class 'GrayscaleColorMap'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'GrayscaleColorMap' to write.
Returns:
the output stream after the writing.
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Trace &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Trace'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Trace' to write.
Returns:
the output stream after the writing.

Definition at line 258 of file Trace.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Ball2D< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Ball2D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Ball2D' to write.
Returns:
the output stream after the writing.

Definition at line 191 of file Ball2D.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ImplicitRoundedHyperCube< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ImplicitRoundedHyperCube'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImplicitRoundedHyperCube' to write.
Returns:
the output stream after the writing.

Definition at line 85 of file ImplicitRoundedHyperCube.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TSequence , typename TRank >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const InputIteratorWithRankOnSequence< TSequence, TRank > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'InputIteratorWithRankOnSequence'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'InputIteratorWithRankOnSequence' to write.
Returns:
the output stream after the writing.

Definition at line 204 of file InputIteratorWithRankOnSequence.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TPoint >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const CircleFrom2Points< TPoint > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'CircleFrom2Points'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'CircleFrom2Points' to write.
Returns:
the output stream after the writing.

Definition at line 231 of file CircleFrom2Points.h.

{
object.selfDisplay( out );
return out;
}
template<typename TForegroundAdjacency , typename TBackgroundAdjacency >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DigitalTopology< TForegroundAdjacency, TBackgroundAdjacency > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DigitalTopology'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DigitalTopology' to write.
Returns:
the output stream after the writing.

Definition at line 181 of file DigitalTopology.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TPoint >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const CircleFrom3Points< TPoint > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'CircleFrom3Points'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'CircleFrom3Points' to write.
Returns:
the output stream after the writing.

Definition at line 236 of file CircleFrom3Points.h.

{
object.selfDisplay( out );
return out;
}
std::ostream& DGtal::operator<< ( std::ostream &  out,
const Board3DTo2D object 
)

Overloads 'operator<<' for displaying objects of class 'Board3DTo2D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Board3DTo2D' to write.
Returns:
the output stream after the writing.
template<typename PValue , int PDefaultColor>
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ColorBrightnessColorMap< PValue, PDefaultColor > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ColorBrightnessColorMap'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ColorBrightnessColorMap' to write.
Returns:
the output stream after the writing.

Definition at line 163 of file ColorBrightnessColorMap.ih.

{
object.selfDisplay( out );
return out;
}
template<Dimension dim, typename TInteger >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const SignedKhalimskyCell< dim, TInteger > &  object 
)
inline

Definition at line 222 of file KhalimskySpaceND.ih.

{
out << "(" << object.myCoordinates[ 0 ];
for ( Dimension i = 1; i < dim; ++i )
out << "," << object.myCoordinates[ i ];
out << "," << ( object.myPositive ? '+' : '-' );
out << ")";
return out;
}
template<typename TSpace , Dimension maxNorm1>
std::ostream & DGtal::operator<< ( std::ostream &  out,
const MetricAdjacency< TSpace, maxNorm1, TSpace::dimension > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'MetricAdjacency'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'MetricAdjacency' to write.
Returns:
the output stream after the writing.

Definition at line 251 of file MetricAdjacency.ih.

{
object.selfDisplay( out );
return out;
}
template<typename PValue , int DefaultCycles>
std::ostream& DGtal::operator<< ( std::ostream &  out,
const HueShadeColorMap< PValue, DefaultCycles > &  object 
)

Overloads 'operator<<' for displaying objects of class 'HueShadeColorMap'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'HueShadeColorMap' to write.
Returns:
the output stream after the writing.
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Ellipse2D< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Ellipse2D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Ellipse2D' to write.
Returns:
the output stream after the writing.

Definition at line 236 of file Ellipse2D.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const NGon2D< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'NGon2D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'NGon2D' to write.
Returns:
the output stream after the writing.

Definition at line 242 of file NGon2D.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TDomain , typename TValue >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const experimental::ImageContainerByITKImage< TDomain, TValue > &  object 
)
inline

Definition at line 252 of file ImageContainerByITKImage.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const ImplicitPolynomial3Shape< T > &  object 
)

Overloads 'operator<<' for displaying objects of class 'ImplicitPolynomial3Shape'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImplicitPolynomial3Shape' to write.
Returns:
the output stream after the writing.
template<typename TSpace >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DGtalInventor< TSpace > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DGtalInventor'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DGtalInventor' to write.
Returns:
the output stream after the writing.

Definition at line 389 of file DGtalInventor.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TSpace >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Lattice< TSpace > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Lattice'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Lattice' to write.
Returns:
the output stream after the writing.

Definition at line 362 of file Lattice.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TDomain , typename TValue >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const ImageContainerBySTLMap< TDomain, TValue > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Image'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Image' to write.
Returns:
the output stream after the writing.

Definition at line 263 of file ImageContainerBySTLMap.h.

{
object.selfDisplay ( out );
return out;
}
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Color &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Color'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Color' to write.
Returns:
the output stream after the writing.

Definition at line 54 of file Color.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Flower2D< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Flower2D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Flower2D' to write.
Returns:
the output stream after the writing.

Definition at line 212 of file Flower2D.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TDigitalSurfaceEmbedder , typename TNormalVectorEstimator >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DigitalSurfaceEmbedderWithNormalVectorEstimator< TDigitalSurfaceEmbedder, TNormalVectorEstimator > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DigitalSurfaceEmbedderWithNormalVectorEstimator'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DigitalSurfaceEmbedderWithNormalVectorEstimator' to write.
Returns:
the output stream after the writing.

Definition at line 230 of file DigitalSurfaceEmbedderWithNormalVectorEstimator.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TDomain , typename TAdjacency >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DomainAdjacency< TDomain, TAdjacency > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DomainAdjacency'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DomainAdjacency' to write.
Returns:
the output stream after the writing.

Definition at line 125 of file DomainAdjacency.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TDomain >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Shapes< TDomain > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Shapes'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Shapes' to write.
Returns:
the output stream after the writing.

Definition at line 302 of file DGtal/shapes/Shapes.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const AccFlower2D< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'AccFlower2D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'AccFlower2D' to write.
Returns:
the output stream after the writing.

Definition at line 238 of file AccFlower2D.ih.

{
object.selfDisplay( out );
return out;
}
template<typename PValue , int PDefaultPreset, int PDefaultFirstColor, int PDefaultLastColor>
std::ostream & DGtal::operator<< ( std::ostream &  out,
const GradientColorMap< PValue, PDefaultPreset, PDefaultFirstColor, PDefaultLastColor > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'GradientColorMap'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'GradientColorMap' to write.
Returns:
the output stream after the writing.

Definition at line 294 of file GradientColorMap.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TFraction >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Pattern< TFraction > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Pattern'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Pattern' to write.
Returns:
the output stream after the writing.

Definition at line 501 of file Pattern.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Ball3D< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Ball3D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Ball3D' to write.
Returns:
the output stream after the writing.

Definition at line 251 of file Ball3D.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const StarShaped2D< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'StarShaped2D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'StarShaped2D' to write.
Returns:
the output stream after the writing.

Definition at line 243 of file StarShaped2D.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TSpace , typename TEuclideanShape >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const GaussDigitizer< TSpace, TEuclideanShape > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'GaussDigitizer'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'GaussDigitizer' to write.
Returns:
the output stream after the writing.

Definition at line 243 of file GaussDigitizer.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TSurface , bool isUpward, bool isClosed>
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Point2ShapePredicate< TSurface, isUpward, isClosed > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Point2ShapePredicate'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Point2ShapePredicate' to write.
Returns:
the output stream after the writing.

Definition at line 111 of file Point2ShapePredicate.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TIterator , typename TInteger , int connectivity>
std::ostream& DGtal::operator<< ( std::ostream &  out,
ArithmeticalDSS3d< TIterator, TInteger, connectivity > &  object 
)

Overloads 'operator<<' for displaying objects of class 'ArithmeticalDSS3d'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ArithmeticalDSS3d' to write.
Returns:
the output stream after the writing.

Definition at line 283 of file ArithmeticalDSS3d.h.

{
object.selfDisplay( out);
return out;
}
std::ostream & DGtal::operator<< ( std::ostream &  out,
const MeasureOfStraightLines &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'MeasureOfStraightLines'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'MeasureOfStraightLines' to write.
Returns:
the output stream after the writing.

Definition at line 392 of file MeasureOfStraightLines.ih.

{
object.selfDisplay( out );
return out;
}
template<typename RealNumberType >
std::ostream & DGtal::operator<< ( std::ostream &  thatStream,
const Statistic< RealNumberType > &  that_object_to_display 
)
inline

Overloads 'operator<<' for displaying objects of class 'Statistic'.

Parameters:
thatStreamthe output stream where the object is written.
that_object_to_displaythe object of class 'Statistic' to write.
Returns:
the output stream after the writing.

Definition at line 421 of file Statistic.ih.

References DGtal::Statistic< RealNumberType >::selfDisplay().

{
that_object_to_display.selfDisplay( thatStream );
return thatStream;
}
template<typename TImageContainer , typename TNewDomain , typename TFunctorD , typename TNewValue , typename TFunctorV >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ConstImageAdapter< TImageContainer, TNewDomain, TFunctorD, TNewValue, TFunctorV > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ConstImageAdapter'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ConstImageAdapter' to write.
Returns:
the output stream after the writing.

Definition at line 70 of file ConstImageAdapter.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TDigitalSurfaceTracker >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DigitalSurface2DSlice< TDigitalSurfaceTracker > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DigitalSurface2DSlice'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DigitalSurface2DSlice' to write.
Returns:
the output stream after the writing.

Definition at line 254 of file DigitalSurface2DSlice.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TKSpace , typename TImplicitFunctionDiff1 , typename TEmbedder >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ImplicitFunctionDiff1LinearCellEmbedder< TKSpace, TImplicitFunctionDiff1, TEmbedder > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ImplicitFunctionDiff1LinearCellEmbedder'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImplicitFunctionDiff1LinearCellEmbedder' to write.
Returns:
the output stream after the writing.

Definition at line 235 of file ImplicitFunctionDiff1LinearCellEmbedder.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TDigitalSurfaceTracker >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const UmbrellaComputer< TDigitalSurfaceTracker > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'UmbrellaComputer'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'UmbrellaComputer' to write.
Returns:
the output stream after the writing.

Definition at line 359 of file UmbrellaComputer.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TIterator , typename TFunctor , typename TReturnType >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const ConstRangeAdapter< TIterator, TFunctor, TReturnType > &  object 
)

Overloads 'operator<<' for displaying objects of class 'ConstRangeAdapter'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ConstRangeAdapter' to write.
Returns:
the output stream after the writing.

Definition at line 306 of file ConstRangeAdapter.h.

{
object.selfDisplay( out );
return out;
}
template<typename TKSpace , typename TDigitalSet >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DigitalSetBoundary< TKSpace, TDigitalSet > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DigitalSetBoundary'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DigitalSetBoundary' to write.
Returns:
the output stream after the writing.
Template Parameters:
TKSpacea model of CCellularGridSpaceND: the type chosen for the cellular grid space.
TDigitalSeta model of CDigitalSet: the type chosen for the set of digital points.

Definition at line 310 of file DigitalSetBoundary.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Image< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Image'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Image' to write.
Returns:
the output stream after the writing.

Definition at line 65 of file Image.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T , typename TV >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const experimental::ImageContainerByITKImage< T, TV > &  object 
)

Overloads 'operator<<' for displaying objects of class 'ImageContainerByITKImage'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImageContainerByITKImage' to write.
Returns:
the output stream after the writing.
template<typename T >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const Expander< T > &  object 
)

Overloads 'operator<<' for displaying objects of class 'Expander'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Expander' to write.
Returns:
the output stream after the writing.
template<typename A , typename B >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const std::pair< A, B > &  object 
)

//To move elsewhere ? Overloads 'operator<<' for displaying STL pairs.

Parameters:
outthe output stream where the object is written.
objectthe STL pair to write.
Returns:
the output stream after the writing.

Definition at line 320 of file ConstRangeAdapter.h.

{
out << object.first << "|" << object.second;
return out;
}
template<typename TPoint >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const MeshFromPoints< TPoint > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'MeshFromPoints'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'MeshFromPoints' to write.
Returns:
the output stream after the writing.

Definition at line 268 of file MeshFromPoints.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TKSpace , typename TSurfelSet >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const SetOfSurfels< TKSpace, TSurfelSet > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'SetOfSurfels'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'SetOfSurfels' to write.
Returns:
the output stream after the writing.
Template Parameters:
TKSpacea model of CCellularGridSpaceND: the type chosen for the cellular grid space.
TSurfelSeta model of CDigitalSet: the type chosen for the set of digital points.

Definition at line 296 of file SetOfSurfels.ih.

{
object.selfDisplay( out );
return out;
}
template<unsigned int L, typename TWord >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Labels< L, TWord > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Labels'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Labels' to write.
Returns:
the output stream after the writing.

Definition at line 417 of file Labels.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TImageContainer , typename TNewDomain , typename TFunctorD , typename TNewValue , typename TFunctorV , typename TFunctorVm1 >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ImageAdapter< TImageContainer, TNewDomain, TFunctorD, TNewValue, TFunctorV, TFunctorVm1 > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ImageAdapter'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImageAdapter' to write.
Returns:
the output stream after the writing.

Definition at line 70 of file ImageAdapter.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TKSpace , typename TPointPredicate >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ImplicitDigitalSurface< TKSpace, TPointPredicate > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ImplicitDigitalSurface'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImplicitDigitalSurface' to write.
Returns:
the output stream after the writing.
Template Parameters:
TKSpacea model of CCellularGridSpaceND: the type chosen for the cellular grid space.
TPointPredicatea model of CDigitalSet: the type chosen for the set of digital points.

Definition at line 321 of file ImplicitDigitalSurface.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const StarShaped3D< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'StarShaped3D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'StarShaped2D' to write.
Returns:
the output stream after the writing.

Definition at line 330 of file StarShaped3D.ih.

{
object.selfDisplay( out );
return out;
}
template<typename Domain >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DigitalSetBySTLSet< Domain > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DigitalSetBySTLSet'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DigitalSetBySTLSet' to write.
Returns:
the output stream after the writing.

Definition at line 459 of file DigitalSetBySTLSet.ih.

References DGtal::DigitalSetBySTLSet< TDomain >::selfDisplay().

{
object.selfDisplay( out );
return out;
}
template<typename Domain >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DigitalSetBySTLVector< Domain > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DigitalSetBySTLVector'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DigitalSetBySTLVector' to write.
Returns:
the output stream after the writing.

Definition at line 514 of file DigitalSetBySTLVector.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const SurfelNeighborhood< T > &  object 
)

Overloads 'operator<<' for displaying objects of class 'SurfelNeighborhood'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'SurfelNeighborhood' to write.
Returns:
the output stream after the writing.
template<typename TKSpace , typename TSurfelPredicate >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const ExplicitDigitalSurface< TKSpace, TSurfelPredicate > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'ExplicitDigitalSurface'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ExplicitDigitalSurface' to write.
Returns:
the output stream after the writing.
Template Parameters:
TKSpacea model of CCellularGridSpaceND: the type chosen for the cellular grid space.
TSurfelPredicatea model of CDigitalSet: the type chosen for the set of digital points.

Definition at line 321 of file ExplicitDigitalSurface.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TConstIterator >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const GeometricalDCA< TConstIterator > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'GeometricalDCA'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'GeometricalDCA' to write.
Returns:
the output stream after the writing.

Definition at line 635 of file GeometricalDCA.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TMapImage >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DigitalSetFromMap< TMapImage > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DigitalSetFromMap'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DigitalSetFromMap' to write.
Returns:
the output stream after the writing.

Definition at line 360 of file DigitalSetFromMap.ih.

References DGtal::DigitalSetFromMap< TMapImage >::selfDisplay().

{
object.selfDisplay( out );
return out;
}
template<typename TValue >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Signal< TValue > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Signal'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Signal' to write.
Returns:
the output stream after the writing.

Definition at line 607 of file Signal.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TConstIteratorOnPoints , typename TValue >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const BinomialConvolver< TConstIteratorOnPoints, TValue > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'BinomialConvolver'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'BinomialConvolver' to write.
Returns:
the output stream after the writing.

Definition at line 335 of file BinomialConvolver.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TConstIterator >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const GeometricalDSS< TConstIterator > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'GeometricalDSS'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'GeometricalDSS' to write.
Returns:
the output stream after the writing.

Definition at line 528 of file GeometricalDSS.ih.

{
object.selfDisplay( out );
return out;
}
std::ostream & DGtal::operator<< ( std::ostream &  out,
const OrderedAlphabet &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'OrderedAlphabet'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'OrderedAlphabet' to write.
Returns:
the output stream after the writing.

Definition at line 148 of file OrderedAlphabet.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename T >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const SphericalAccumulator< T > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'SphericalAccumulator'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'SphericalAccumulator' to write.
Returns:
the output stream after the writing.

Definition at line 322 of file SphericalAccumulator.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TKSpace , typename TPointPredicate >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const LightImplicitDigitalSurface< TKSpace, TPointPredicate > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'LightImplicitDigitalSurface'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'LightImplicitDigitalSurface' to write.
Returns:
the output stream after the writing.
Template Parameters:
TKSpacea model of CCellularGridSpaceND: the type chosen for the cellular grid space.
TPointPredicatea model of CDigitalSet: the type chosen for the set of digital points.

Definition at line 380 of file LightImplicitDigitalSurface.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T , DGtal::Dimension M, DGtal::Dimension N>
std::ostream & DGtal::operator<< ( std::ostream &  out,
const SimpleMatrix< T, M, N > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'SimpleMatrix'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'SimpleMatrix' to write.
Returns:
the output stream after the writing.

Definition at line 417 of file SimpleMatrix.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TKSpace , typename TSurfelPredicate >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const LightExplicitDigitalSurface< TKSpace, TSurfelPredicate > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'LightExplicitDigitalSurface'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'LightExplicitDigitalSurface' to write.
Returns:
the output stream after the writing.
Template Parameters:
TKSpacea model of CCellularGridSpaceND: the type chosen for the cellular grid space.
TSurfelPredicatea model of CDigitalSet: the type chosen for the set of digital points.

Definition at line 389 of file LightExplicitDigitalSurface.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TFraction >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const StandardDSLQ0< TFraction > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'StandardDSLQ0'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'StandardDSLQ0' to write.
Returns:
the output stream after the writing.

Definition at line 644 of file StandardDSLQ0.ih.

{
object.selfDisplay( out );
return out;
}
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Viewer3D object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Viewer3D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Viewer3D' to write.
Returns:
the output stream after the writing.

Definition at line 119 of file Viewer3D.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename TSpace , typename TInternalInteger >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const COBAGenericNaivePlane< TSpace, TInternalInteger > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'COBAGenericNaivePlane'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'COBAGenericNaivePlane' to write.
Returns:
the output stream after the writing.

Definition at line 408 of file COBAGenericNaivePlane.ih.

{
object.selfDisplay( out );
return out;
}
template<typename Shape >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Preimage2D< Shape > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Preimage2D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Preimage2D' to write.
Returns:
the output stream after the writing.

Definition at line 514 of file Preimage2D.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TIterator , typename TInteger , int connectivity>
std::ostream & DGtal::operator<< ( std::ostream &  out,
const FP< TIterator, TInteger, connectivity > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'FP'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'FP' to write.
Returns:
the output stream after the writing.

Definition at line 496 of file FP.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TGraph , typename TMarkSet >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const BreadthFirstVisitor< TGraph, TMarkSet > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'BreadthFirstVisitor'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'BreadthFirstVisitor' to write.
Returns:
the output stream after the writing.

Definition at line 262 of file BreadthFirstVisitor.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TGraph , typename TMarkSet >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DepthFirstVisitor< TGraph, TMarkSet > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DepthFirstVisitor'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DepthFirstVisitor' to write.
Returns:
the output stream after the writing.

Definition at line 252 of file DepthFirstVisitor.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TKSpace >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const GridCurve< TKSpace > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'GridCurve'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'GridCurve' to write.
Returns:
the output stream after the writing.

Definition at line 423 of file GridCurve.ih.

References DGtal::GridCurve< TKSpace >::selfDisplay().

{
aObject.selfDisplay ( out );
return out;
}
template<typename SegmentComputer >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const GreedySegmentation< SegmentComputer > &  object 
)

Overloads 'operator<<' for displaying objects of class 'GreedySegmentation'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'GreedySegmentation' to write.
Returns:
the output stream after the writing.
template<typename TImage , typename TSet , typename TPointPredicate , typename TPointFunctor >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const FMM< TImage, TSet, TPointPredicate, TPointFunctor > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'FMM'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'FMM' to write.
Returns:
the output stream after the writing.

Definition at line 501 of file FMM.ih.

{
object.selfDisplay( out );
return out;
}
template<typename SegmentComputer >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const SaturatedSegmentation< SegmentComputer > &  object 
)

Overloads 'operator<<' for displaying objects of class 'SaturatedSegmentation'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'SaturatedSegmentation' to write.
Returns:
the output stream after the writing.
template<typename Domain , typename V >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const ImageContainerBySTLVector< Domain, V > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Image'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Image' to write.
Returns:
the output stream after the writing.

Definition at line 537 of file ImageContainerBySTLVector.h.

{
object.selfDisplay ( out );
return out;
}
template<typename TSpace , typename TInternalInteger >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const COBANaivePlane< TSpace, TInternalInteger > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'COBANaivePlane'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'COBANaivePlane' to write.
Returns:
the output stream after the writing.

Definition at line 807 of file COBANaivePlane.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TInteger >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const IntegerComputer< TInteger > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'IntegerComputer'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'IntegerComputer' to write.
Returns:
the output stream after the writing.

Definition at line 610 of file IntegerComputer.ih.

{
object.selfDisplay( out );
return out;
}
std::ostream & DGtal::operator<< ( std::ostream &  out,
const AngleLinearMinimizer &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'AngleLinearMinimizer'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'AngleLinearMinimizer' to write.
Returns:
the output stream after the writing.

Definition at line 213 of file AngleLinearMinimizer.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename TSpace , typename TSequence >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const LatticePolytope2D< TSpace, TSequence > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'LatticePolytope2D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'LatticePolytope2D' to write.
Returns:
the output stream after the writing.

Definition at line 902 of file LatticePolytope2D.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TSpace >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const HyperRectDomain< TSpace > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'HyperRectDomain'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'HyperRectDomain' to write.
Returns:
the output stream after the writing.

Definition at line 178 of file HyperRectDomain.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename TDigitalTopology , typename TDigitalSet >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Object< TDigitalTopology, TDigitalSet > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Object'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Object' to write.
Returns:
the output stream after the writing.

Definition at line 1005 of file Object.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TDigitalSurfaceContainer >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DigitalSurface< TDigitalSurfaceContainer > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'DigitalSurface'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'DigitalSurface' to write.
Returns:
the output stream after the writing.

Definition at line 909 of file DigitalSurface.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TValue , unsigned int N, unsigned int M>
std::ostream & DGtal::operator<< ( std::ostream &  out,
const IndexedListWithBlocks< TValue, N, M > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'IndexedListWithBlocks'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'IndexedListWithBlocks' to write.
Returns:
the output stream after the writing.
Template Parameters:
TValuethe type for the values stored in the list.
Nthe number of value stored in the first block.
Mthe number of value stored in the further blocks.

Definition at line 678 of file IndexedListWithBlocks.ih.

{
object.selfDisplay( out );
return out;
}
std::ostream & DGtal::operator<< ( std::ostream &  out,
const DGtal::Display3D object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Display3D'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Display3D' to write.
Returns:
the output stream after the writing.

Definition at line 908 of file Display3D.ih.

{
object.selfDisplay ( out );
return out;
}
template<typename TIterator , typename TInteger , int connectivity>
std::ostream& DGtal::operator<< ( std::ostream &  out,
ArithmeticalDSS< TIterator, TInteger, connectivity > &  object 
)

Overloads 'operator<<' for displaying objects of class 'ArithmeticalDSS'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ArithmeticalDSS' to write.
Returns:
the output stream after the writing.

Definition at line 773 of file ArithmeticalDSS.h.

{
object.selfDisplay( out);
return out;
}
template<typename TDomain , typename TValue , typename THashKey >
std::ostream& DGtal::operator<< ( std::ostream &  out,
ImageContainerByHashTree< TDomain, TValue, THashKey > &  object 
)

Overloads 'operator<<' for displaying objects of class 'ImageContainerByHashTree'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'ImageContainerByHashTree' to write.
Returns:
the output stream after the writing.

Definition at line 799 of file ImageContainerByHashTree.h.

{
object.selfDisplay( out);
return out;
}
template<Dimension dim, typename Component >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const PointVector< dim, Component > &  object 
)

Operator <<.

template<typename TKSpace >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const Surfaces< TKSpace > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'Surfaces'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'Surfaces' to write.
Returns:
the output stream after the writing.

Definition at line 1030 of file Surfaces.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TIterator , typename TInteger >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const FrechetShortcut< TIterator, TInteger > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'FrechetShortcut'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'FrechetShortcut' to write.
Returns:
the output stream after the writing.

Definition at line 913 of file FrechetShortcut.ih.

{
object.selfDisplay( out );
return out;
}
template<typename T1 , typename T2 >
std::ostream& DGtal::operator<< ( std::ostream &  out,
const CombinatorialDSS< T1, T2 > &  object 
)

Overloads 'operator<<' for displaying objects of class 'CombinatorialDSS'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'CombinatorialDSS' to write.
Returns:
the output stream after the writing.
template<typename TInteger >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const FreemanChain< TInteger > &  aObject 
)
inline

Overloads 'operator<<' for displaying objects of class 'FreemanChain'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'FreemanChain' to write.
Returns:
the output stream after the writing.

Definition at line 1338 of file FreemanChain.ih.

References DGtal::FreemanChain< TInteger >::selfDisplay().

{
aObject.selfDisplay ( out );
return out;
}
template<typename TData , unsigned int L, typename TWord , unsigned int N, unsigned int M>
std::ostream & DGtal::operator<< ( std::ostream &  out,
const LabelledMap< TData, L, TWord, N, M > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'LabelledMap'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'LabelledMap' to write.
Returns:
the output stream after the writing.
Template Parameters:
TDatathe type for the datas stored in the list.
Nthe number of data stored in the first block.
Mthe number of data stored in the further blocks.

Definition at line 1215 of file LabelledMap.ih.

{
object.selfDisplay( out );
return out;
}
template<Dimension dim, typename TInteger >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const KhalimskySpaceND< dim, TInteger > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'KhalimskySpaceND'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'KhalimskySpaceND' to write.
Returns:
the output stream after the writing.

Definition at line 1707 of file KhalimskySpaceND.ih.

{
object.selfDisplay( out );
return out;
}
template<int N, typename TRing , class TAlloc >
std::ostream & DGtal::operator<< ( std::ostream &  out,
const MPolynomial< N, TRing, TAlloc > &  object 
)
inline

Overloads 'operator<<' for displaying objects of class 'MPolynomial'.

Parameters:
outthe output stream where the object is written.
objectthe object of class 'MPolynomial' to write.
Returns:
the output stream after the writing.

Definition at line 74 of file MPolynomial.ih.

{
object.selfDisplay( out );
return out;
}
template<typename TPoint >
bool DGtal::operator>> ( MeshFromPoints< TPoint > &  aMesh,
const std::string &  aFilename 
)
inline

'operator>>' for exporting objects of class 'MeshFromPoints'. This operator automatically selects the good method according to the filename extension (off, obj).

Parameters:
aMesh,:the mesh to be exported.
aFilename,:the filename of the file to be exported.
Returns:
true, if the export was successful.

Definition at line 135 of file MeshWriter.ih.

References DGtal::MeshWriter< TPoint >::export2OBJ(), and DGtal::MeshWriter< TPoint >::export2OFF().

{
string extension = aFilename.substr(aFilename.find_last_of(".") + 1);
ofstream out;
out.open(aFilename.c_str());
if(extension== "off") {
return DGtal::MeshWriter<TPoint>::export2OFF(out, aMesh, true);
}else if(extension== "obj") {
}
out.close();
return false;
}
template<typename TPoint >
bool DGtal::operator>> ( MeshFromPoints< TPoint > &  aMesh,
ostream &  out 
)

'operator>>' for exporting objects of class 'MeshFromPoints' in OFF format.

Parameters:
aMesh,:the mesh to be exported.
out,:the output of the OFF exportation.
Returns:
true, if the export was successful.
void DGtal::operator>> ( const Display3D aDisplay3D,
DGtal::MeshFromPoints< Display3D::pointD3D > &  aMesh 
)
inline

Operator ">>" to export a Display3D into a MeshFromPoints

Parameters:
aDisplay3D,:the Display3D to be exported.
aMesh,:(return) the resulting mesh.

Definition at line 918 of file Display3D.ih.

References DGtal::Display3D::exportToMesh().

{
aDisplay3D.exportToMesh(aMesh);
}
void DGtal::operator>> ( const Display3D aDisplay3D,
string  aFilename 
)
inline

Operator ">>" to export a Display3D directly a file

Parameters:
aDisplay3D,:the Display3D to be exported.
aMesh,:(return) the resulting mesh.

Definition at line 927 of file Display3D.ih.

References DGtal::Trace::info(), and trace.

{
// exporting with a mesh containing color (parameter constructor to true):
aDisplay3D >> mesh;
trace.info() << "generating faces done." << endl;
mesh >> aFilename;
trace.info() << "file exported in file: " << aFilename << endl;
}
template<typename SC >
void DGtal::oppositeEndMaximalExtension ( SC &  s,
const typename SC::ConstIterator &  begin,
IteratorType   
)

Specialization for Iterator type

Definition at line 197 of file SegmentComputerUtils.h.

Referenced by firstMaximalSegment(), lastMaximalSegment(), mostCenteredMaximalSegment(), oppositeEndMaximalExtension(), and previousMaximalSegment().

{
//extend one more time if s.begin() == begin
while ( (s.begin() != begin)
&& (s.extendBackward()) ) {}
if (s.begin() == begin) s.extendBackward();
}
template<typename SC >
void DGtal::oppositeEndMaximalExtension ( SC &  s,
const typename SC::ConstIterator &  begin,
CirculatorType   
)

Specialization for Circulator type

Definition at line 208 of file SegmentComputerUtils.h.

{
//stop if the segment is the whole range
const typename SC::ConstIterator newBegin( s.end() );
while ( (s.extendBackward())
&& (s.begin() != newBegin) ) {}
}
template<typename SC >
void DGtal::oppositeEndMaximalExtension ( SC &  s,
const typename SC::ConstIterator &  begin 
)

Calls s.extendBackward() while possible

Parameters:
sany instance of (bidirectional) segment computer
beginany ConstIterator
Template Parameters:
SCany model of CBidirectionalSegmentComputer

Definition at line 222 of file SegmentComputerUtils.h.

References oppositeEndMaximalExtension().

{
typedef typename IteratorCirculatorTraits<typename SC::ConstIterator>::Type Type;
oppositeEndMaximalExtension( s, begin, Type() );
}
template<typename SC >
void DGtal::oppositeEndMaximalRetraction ( SC &  s,
const typename SC::ConstIterator &  begin 
)

Calls s.retractBackward() while s.isExtendableBackward() returns false

Parameters:
sany instance of segment computer
beginany ConstIterator
Template Parameters:
SCany model of segment computer

Definition at line 334 of file SegmentComputerUtils.h.

Referenced by previousMaximalSegment().

{
if ( isNotEmpty<typename SC::ConstIterator>(s.begin(),begin) ) {
while ( (! s.isExtendableBackward() )
&&(s.retractBackward() ) ) {}
} else {
while ( s.retractBackward() ) {}
}
}
template<typename SC >
void DGtal::previousMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  begin,
DGtal::ForwardSegmentComputer   
)

Computes the previous maximal segment of s (s is assumed to be maximal)

Parameters:
begin,anybegin ConstIterator
Template Parameters:
SCany model of CForwardSegmentComputer
Note:
lastMaximalSegment of –s.begin()

Definition at line 852 of file SegmentComputerUtils.h.

References lastMaximalSegment().

Referenced by DGtal::SaturatedSegmentation< TSegmentComputer >::SegmentComputerIterator::initLastMaximalSegment(), and previousMaximalSegment().

{
if ( isNotEmpty<typename SC::ConstIterator>(s.begin(),begin) )
lastMaximalSegment(s, --s.begin(), begin, s.end(), DGtal::ForwardSegmentComputer() );
}
template<typename SC >
void DGtal::previousMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  begin,
DGtal::BidirectionalSegmentComputer   
)

Computes the previous maximal segment of s (s is assumed to be maximal)

Parameters:
begin,anybegin ConstIterator
Template Parameters:
SCany model of CBidirectionalSegmentComputer
Note:
lastMaximalSegment of –s.begin()

Definition at line 868 of file SegmentComputerUtils.h.

References lastMaximalSegment().

{
if ( isNotEmpty<typename SC::ConstIterator>(s.begin(),begin) )
lastMaximalSegment(s, --s.begin(), begin, s.end(), DGtal::BidirectionalSegmentComputer() );
}
template<typename SC >
void DGtal::previousMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  begin,
DGtal::DynamicSegmentComputer   
)

Computes the previous maximal segment of s (s is assumed to be maximal)

Parameters:
begin,anybegin ConstIterator
Template Parameters:
SCany model of CDynamicSegmentComputer

Definition at line 883 of file SegmentComputerUtils.h.

References oppositeEndMaximalExtension(), and oppositeEndMaximalRetraction().

{
typedef typename SC::ConstIterator ConstIterator;
//rectract
//intersection test
ConstIterator i( s.end() ); --i;
//if the intersection between the two
// consecutive maximal segments is empty
if ( i == s.begin() ) {
if ( isNotEmpty<ConstIterator>(i, begin) ) {
--i;
s.init(i);
}
}
//extend
}
template<typename SC >
void DGtal::previousMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  end,
DGtal::DynamicBidirectionalSegmentComputer   
)

Computes the previous maximal segment of s (s is assumed to be maximal)

Parameters:
end,endConstIterator
Template Parameters:
SCany model of CDynamicBidirectionalSegmentComputer
Note:
calls the function dedicated to DynamicSegmentComputer

Definition at line 917 of file SegmentComputerUtils.h.

References previousMaximalSegment().

template<typename SC >
void DGtal::previousMaximalSegment ( SC &  s,
const typename SC::ConstIterator &  begin 
)

Computes the previous maximal segment of s (s is assumed to be maximal)

Parameters:
begin,anybegin ConstIterator
Template Parameters:
SCany model of segment computer

Definition at line 931 of file SegmentComputerUtils.h.

References previousMaximalSegment().

template<Dimension dim, typename Container >
std::bitset< dim > DGtal::setDimensionsIn ( const Container &  dimensions)
inline
Returns:
a bitset having true for each dimension presents in dimensions.

Definition at line 42 of file PointVector.ih.

{
std::bitset<dim> t1;
for ( typename Container::const_iterator it=dimensions.begin();
it!=dimensions.end(); ++it )
{
ASSERT( *it<dim );
t1.set(*it);
}
return t1;
}
template<Dimension dim, typename Container >
std::bitset< dim > DGtal::setDimensionsNotIn ( const Container &  dimensions)
inline
Returns:
a bitset having true for each dimension not presents in dimensions.

Definition at line 56 of file PointVector.ih.

{
std::bitset<dim> t1; t1.set();
for ( typename Container::const_iterator it=dimensions.begin();
it!=dimensions.end(); ++it )
{
ASSERT( *it<dim );
t1.reset(*it);
}
return t1;
}
template<typename I , typename O >
void DGtal::setFromImage ( const I &  aImg,
const O &  ito,
const typename I::Value &  aThreshold = 0 
)
inline

Fill a set through the inserter ito with the points lying within the domain of the image aImg whose value (in the image) is less than or equal to aThreshold

Parameters:
aImgany image
itoset inserter
aThresholdany value (default: 0)
Template Parameters:
Iany model of CConstImage
Oany model of output iterator

Definition at line 71 of file ImageHelper.ih.

References setFromPointsRangeAndFunctor().

{
BOOST_CONCEPT_ASSERT(( CConstImage<I> ));
typename I::Domain d = aImg.domain();
setFromPointsRangeAndFunctor(d.begin(), d.end(), ito, aImg, aThreshold);
}
template<typename I , typename O >
void DGtal::setFromImage ( const I &  aImg,
const O &  ito,
const typename I::Value &  low,
const typename I::Value &  up 
)
inline

Fill a set through the inserter ito with the points lying within the domain of the image aImg whose value (in the image) lies between low and up (both included)

Parameters:
aImgany image
itoset inserter
lowlower value
upupper value
Template Parameters:
Iany model of CConstImage
Oany model of output iterator

Definition at line 83 of file ImageHelper.ih.

{
BOOST_CONCEPT_ASSERT(( CConstImage<I> ));
ASSERT( low < up );
//domain
typename I::Domain d = aImg.domain();
//predicate from two thresholders and an image
typedef Thresholder<typename I::Value,true,false> T1;
T1 t1( low );
typedef Thresholder<typename I::Value,false,false> T2;
T2 t2( up );
typedef PredicateCombiner<T1,T2,OrBoolFct2 > P;
P p( t1, t2, OrBoolFct2() );
Composer<I, P, bool> aPred(aImg, p);
//call
std::remove_copy_if(d.begin(), d.end(), ito, aPred);
}
template<typename I , typename O , typename F >
void DGtal::setFromPointsRangeAndFunctor ( const I &  itb,
const I &  ite,
const O &  ito,
const F &  aFunctor,
const typename F::Value &  aThreshold = 0 
)
inline

Fill a set through the inserter ito with the points of the range [itb , ite ) such that their associated value (returned by aFunctor ) is less than or equal to aThreshold

Parameters:
itbbegin iterator on points
iteend iterator on points
itooutput iterator on points
aFunctorany functor on points
aThresholdany value (default: 0)
Template Parameters:
Iany model of input iterator
Oany model of output iterator
Fany model of CPointFunctor

Definition at line 54 of file ImageHelper.ih.

Referenced by setFromImage().

{
BOOST_CONCEPT_ASSERT(( CPointFunctor<F> ));
BOOST_CONCEPT_ASSERT(( boost::InputIterator<I> ));
BOOST_CONCEPT_ASSERT(( boost::OutputIterator<O,typename F::Point> ));
typedef Thresholder<typename F::Value,false,false> T;
T t( aThreshold );
Composer<F, T, bool> aPred(aFunctor, t);
std::remove_copy_if(itb, ite, ito, aPred);
}
template<typename I , typename O , typename P >
void DGtal::setFromPointsRangeAndPredicate ( const I &  itb,
const I &  ite,
const O &  ito,
const P &  aPred 
)
inline

useful functions

Fill a set through the inserter ito with the points of the range [itb , ite ) such that aPred is true

Parameters:
itbbegin iterator on points
iteend iterator on points
itooutput iterator on points
aPredany predicate
Template Parameters:
Iany model of input iterator
Oany model of output iterator
Pany model of CPointPredicate

Definition at line 40 of file ImageHelper.ih.

{
BOOST_CONCEPT_ASSERT(( CPointPredicate<P> ));
BOOST_CONCEPT_ASSERT(( boost::InputIterator<I> ));
BOOST_CONCEPT_ASSERT(( boost::OutputIterator<O,typename P::Point> ));
NotPointPredicate<P> nPred( aPred );
std::remove_copy_if(itb, ite, ito, nPred);
}
template<typename KSpace , typename PointPredicate >
bool DGtal::testImplicitDigitalSurface ( const KSpace &  K,
const PointPredicate &  pp,
const typename KSpace::Surfel &  bel 
)

Definition at line 49 of file testImplicitDigitalSurface-benchmark.cpp.

References DGtal::Trace::beginBlock(), DGtal::Trace::endBlock(), DGtal::Trace::info(), and trace.

{
typedef typename KSpace::Point Point;
typedef typename KSpace::Surfel Surfel;
typedef typename Boundary::SurfelConstIterator ConstIterator;
typedef typename Boundary::Tracker Tracker;
unsigned int nbok = 0;
unsigned int nb = 0;
trace.beginBlock ( "Testing block ... ImplicitDigitalSurface" );
trace.beginBlock ( "ImplicitDigitalSurface instanciation" );
Boundary boundary( K, pp,
true );
trace.beginBlock ( "Counting the number of surfels (breadth first traversal)" );
unsigned int nbsurfels = 0;
for ( ConstIterator it = boundary.begin(), it_end = boundary.end();
it != it_end; ++it )
{
++nbsurfels;
}
trace.info() << nbsurfels << " surfels found." << std::endl;
nb++, nbok += nbsurfels == 354382 ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") "
<< "nbsurfels == 354382" << std::endl;
return nbok == nb;
}
template<typename KSpace , typename PointPredicate >
bool DGtal::testLightImplicitDigitalSurface ( const KSpace &  K,
const PointPredicate &  pp,
const typename KSpace::Surfel &  bel 
)

Definition at line 49 of file testLightImplicitDigitalSurface-benchmark.cpp.

References DGtal::Trace::beginBlock(), DGtal::Trace::endBlock(), DGtal::Trace::info(), and trace.

{
typedef typename KSpace::Point Point;
typedef typename KSpace::Surfel Surfel;
typedef typename Boundary::SurfelConstIterator ConstIterator;
typedef typename Boundary::Tracker Tracker;
unsigned int nbok = 0;
unsigned int nb = 0;
trace.beginBlock ( "Testing block ... LightImplicitDigitalSurface" );
trace.beginBlock ( "LightImplicitDigitalSurface instanciation" );
Boundary boundary( K, pp,
trace.beginBlock ( "Counting the number of surfels (breadth first traversal)" );
unsigned int nbsurfels = 0;
for ( ConstIterator it = boundary.begin(), it_end = boundary.end();
it != it_end; ++it )
{
++nbsurfels;
}
trace.info() << nbsurfels << " surfels found." << std::endl;
nb++, nbok += nbsurfels == 354382 ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") "
<< "nbsurfels == 354382" << std::endl;
return nbok == nb;
}
template<int n, typename Ring , typename Alloc >
MPolynomial<n, Ring, Alloc> DGtal::Xe_k ( unsigned int  k,
unsigned int  e 
)
inline

Creates a monomial X_k^e

Parameters:
kthe index of the variable (X_k)
ethe exponent for X_k
Returns:
the 1-variable polynomial X_0^e
Template Parameters:
nthe number of indetermionates.
Ringthe type for the coefficent ring of the polynomial.
Allocthe type of allocator.

Definition at line 1652 of file MPolynomial.h.

{
return Xe_kComputer<n, Ring, Alloc>().get( k, e );
}
template<int n, typename Ring >
MPolynomial<n, Ring, std::allocator<Ring> > DGtal::Xe_k ( unsigned int  k,
unsigned int  e 
)
inline

Creates a monomial X_k^e

Parameters:
kthe index of the variable (X_k)
ethe exponent for X_k
Returns:
the 1-variable polynomial X_0^e
Template Parameters:
nthe number of indetermionates.
Ringthe type for the coefficent ring of the polynomial.

Definition at line 1668 of file MPolynomial.h.

{
}

Variable Documentation

const BoolFunction2 DGtal::andBF2 = AndBoolFct2()
static

The object function and (2 bool args).

Definition at line 149 of file BasicBoolFunctions.h.

Referenced by DGtal::Expander< TObject >::computeNextLayer().

It also possible to remove the visualisation of the transparent clipping plane by adding boolean DGtal::false
const BoolFunction0 DGtal::falseBF0 = FalseBoolFct0()
static

The object function (0 bool args) returning false.

Definition at line 92 of file BasicBoolFunctions.h.

const BoolFunction1 DGtal::identityBF1 = IdentityBoolFct1()
static

The object function identity (1 bool args).

Definition at line 111 of file BasicBoolFunctions.h.

const BoolFunction2 DGtal::impliesBF2 = ImpliesBoolFct2()
static

The object function implies (2 bool args).

Definition at line 164 of file BasicBoolFunctions.h.

const BoolFunction1 DGtal::notBF1 = NotBoolFct1()
static

The object function NOT (1 bool args).

Definition at line 116 of file BasicBoolFunctions.h.

It also possible to remove the visualisation of the transparent clipping plane by adding boolean DGtal::option

Definition at line 359 of file moduleDisplay3D.dox.

const BoolFunction2 DGtal::orBF2 = OrBoolFct2()
static

The object function or (2 bool args).

Definition at line 154 of file BasicBoolFunctions.h.

Trace DGtal::trace

Definition at line 140 of file Common.h.

Referenced by DGtal::Display3D::addPolygon(), DGtal::Display3D::addQuad(), DGtal::Display3D::addTriangle(), DGtal::ImageContainerByHashTree< TDomain, TValue, THashKey >::checkIntegrity(), DGtal::DistanceTransformation< TSpace, TPointPredicate, p, IntegerLong >::checkTypesValidity(), DGtal::DistanceTransformation< TSpace, TPointPredicate, p, IntegerLong >::computeFirstStep(), DGtal::VoronoiMap< TSpace, TPointPredicate, p >::computeOtherSteps(), DGtal::DistanceTransformation< TSpace, TPointPredicate, p, IntegerLong >::computeOtherSteps(), DGtal::ReverseDistanceTransformation< Image, p, IntegerShort >::computeSteps(), DGtal::ConstImageAdapter< TImageContainer, TNewDomain, TFunctorD, TNewValue, TFunctorV >::ConstImageAdapter(), DGtal::Display3DFactory::draw(), DGtal::Display3DFactory::drawAsFaces(), DGtal::MeshWriter< TPoint >::export2OBJ(), DGtal::MeshWriter< TPoint >::export2OFF(), DGtal::ImageContainerByHashTree< TDomain, TValue, THashKey >::getAverageCollisions(), DGtal::SeparableMetricHelper< Point, IntegerLong, p >::hiddenBy(), DGtal::Image< TImageContainer >::Image(), DGtal::ImageAdapter< TImageContainer, TNewDomain, TFunctorD, TNewValue, TFunctorV, TFunctorVm1 >::ImageAdapter(), DGtal::ImageContainerByHashTree< TDomain, TValue, THashKey >::ImageContainerByHashTree(), DGtal::LongvolReader< TImageContainer >::importLongvol(), DGtal::MeshReader< TPoint >::importOFFFile(), DGtal::MeshReader< TPoint >::importOFSFile(), DGtal::PNMReader< TImageContainer >::importPGM(), DGtal::PNMReader< TImageContainer >::importPGM3D(), DGtal::RawReader< TImageContainer >::importRaw8(), DGtal::VolReader< TImageContainer >::importVol(), DGtal::Viewer3D::keyPressEvent(), DGtal::Board2D::operator<<(), DGtal::ConstImageAdapter< TImageContainer, TNewDomain, TFunctorD, TNewValue, TFunctorV >::operator=(), DGtal::ImageAdapter< TImageContainer, TNewDomain, TFunctorD, TNewValue, TFunctorV, TFunctorVm1 >::operator=(), DGtal::Image< TImageContainer >::operator=(), operator>>(), DGtal::Viewer3D::postSelection(), DGtal::Board3DTo2D::saveCairo(), DGtal::Viewer3D::sortPolygonFromCamera(), DGtal::Viewer3D::sortQuadFromCamera(), DGtal::Viewer3D::sortSurfelFromCamera(), DGtal::Viewer3D::sortTriangleFromCamera(), testImplicitDigitalSurface(), and testLightImplicitDigitalSurface().

TraceWriterTerm DGtal::traceWriterTerm

DGtal Global variables

Definition at line 139 of file Common.h.

const BoolFunction0 DGtal::trueBF0 = TrueBoolFct0()
static

The object function (0 bool args) returning true.

Definition at line 87 of file BasicBoolFunctions.h.

const BoolFunction2 DGtal::xorBF2 = XorBoolFct2()
static

The object function xor (2 bool args).

Definition at line 159 of file BasicBoolFunctions.h.