DGtal  1.1.0
Functions
range.cpp File Reference
#include <iostream>
#include "DGtal/base/Common.h"
#include "DGtal/kernel/SpaceND.h"
#include "DGtal/helpers/StdDefs.h"
#include "DGtal/kernel/domains/HyperRectDomain.h"
#include "DGtal/io/boards/Board2D.h"
Include dependency graph for range.cpp:

Go to the source code of this file.

Functions

int main ()
 

Detailed Description

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
David Coeurjolly (david.nosp@m..coe.nosp@m.urjol.nosp@m.ly@l.nosp@m.iris..nosp@m.cnrs.nosp@m..fr )
Guillaume Damiand Laboratoire d'InfoRmatique en Image et Systèmes d'information - LIRIS (CNRS, UMR 5205), CNRS, France
Date
2011/04/04

An example file named range.

This file is part of the DGtal library.

Definition in file range.cpp.

Function Documentation

◆ main()

int main ( )

Definition at line 55 of file range.cpp.

56 {
57  trace.beginBlock ( "Example range" );
58 
59  typedef SpaceND<3> TSpace;
60  TSpace::Point a(1, 1, 1);
61  TSpace::Point b(5, 5, 5);
63 
64  std::vector<TSpace::Dimension> v(2); v[0]=2; v[1]=1;
65  TSpace::Point c(3,1,1);
67  it = domain.subRange(v, c).rbegin(), itend = domain.subRange(v, c).rend();
68  it != itend;
69  ++it)
70  trace.info() << "Processing point"<< (*it) << endl;
71 
72  trace.endBlock();
73 
74  trace.beginBlock ( "Example range with CPP11 initializer list" );
75 
77  it = domain.subRange({2,1}, c).rbegin(), itend = domain.subRange({2,1}, c).rend();
78  it != itend;
79  ++it)
80  trace.info() << "Processing point"<< (*it) << endl;
81 
82  trace.endBlock();
83 
84 
86  domain2=domain;
87 
89  it = domain.subRange({2,1}, c).rbegin(), itend = domain.subRange({2,1}, c).rend();
90  it != itend;
91  ++it)
92  trace.info() << "Processing point"<< (*it) << endl;
93 
94  return 0;
95 }

References DGtal::Trace::beginBlock(), domain, DGtal::Trace::endBlock(), DGtal::Trace::info(), DGtal::HyperRectDomain< TSpace >::subRange(), and DGtal::trace.

DGtal::HyperRectDomain
Aim: Parallelepidec region of a digital space, model of a 'CDomain'.
Definition: HyperRectDomain.h:100
DGtal::Trace::endBlock
double endBlock()
DGtal::HyperRectDomain_ReverseIterator
Reverse iterator for HyperRectDomain.
Definition: HyperRectDomain_Iterator.h:74
DGtal::trace
Trace trace
Definition: Common.h:150
DGtal::Trace::beginBlock
void beginBlock(const std::string &keyword="")
DGtal::SpaceND
Definition: SpaceND.h:96
DGtal::Trace::info
std::ostream & info()
domain
Domain domain
Definition: testProjection.cpp:88
DGtal::HyperRectDomain::subRange
ConstSubRange subRange(const std::vector< Dimension > &permutation) const
Definition: HyperRectDomain.h:472
Point
MyPointD Point
Definition: testClone2.cpp:383