DGtal 1.3.0
Loading...
Searching...
No Matches
ctopo-1.cpp
Go to the documentation of this file.
1
43#include <iostream>
44#include "DGtal/base/Common.h"
45#include "DGtal/helpers/StdDefs.h"
46#include "DGtal/io/boards/Board2D.h"
47#include "DGtal/io/Color.h"
48
50
51using namespace std;
52using namespace DGtal;
53using namespace DGtal::Z2i;
55
56int main()
57{
58 KSpace K;
59 Point plow(-3,-2);
60 Point pup(5,3);
61 Domain domain( plow, pup );
62 Board2D board; // for 2D display
63 K.init( plow, pup, true );
64 board << SetMode( domain.className(), "Paving" )
65 << domain;
66 Cell pixlow = K.uSpel( plow ); // pixel (-3*2+1,-2*2+1)
67 Cell ptlow = K.uPointel( plow ); // pointel (-3*2,-2*2)
68 Cell pixup = K.uSpel( pup ); // pixel (5*2+1,3*2+1)
69 Cell ptup1 = K.uPointel( pup ); // pointel (5*2,3*2)
70 Cell ptup2 = K.uTranslation( ptup1, Point::diagonal() ); // pointel (6*2,4*2)
71 Cell linelb = K.uCell( Point( 1, 0 ) ); // linel (1,0) bottom
72 Cell linelt = K.uCell( Point( 1, 2 ) ); // linel (1,2) top
73 Cell linell = K.uCell( Point( 0, 1 ) ); // linel (0,1) left
74 Cell linelr = K.uCell( Point( 2, 1 ) ); // linel (2,1) right
75 board << CustomStyle( ptlow.className(),
76 new CustomColors( Color( 0, 0, 200 ),
77 Color( 100, 100, 255 ) ) )
78 << ptlow << ptup2;
79 board << CustomStyle( pixlow.className(),
80 new CustomColors( Color( 200, 0, 0 ),
81 Color( 255, 100, 100 ) ) )
82 << pixlow << pixup;
83 board << CustomStyle( linelb.className(),
84 new CustomColors( Color( 0, 200, 0 ),
85 Color( 100, 255, 100 ) ) )
86 << linelb << linelt << linell << linelr;
87 board.saveSVG("ctopo-1.svg");
88 board.saveEPS("ctopo-1.eps");
89 return 0;
90}
91// //
Aim: This class specializes a 'Board' class so as to display DGtal objects more naturally (with <<)....
Definition: Board2D.h:71
Structure representing an RGB triple with alpha component.
Definition: Color.h:68
std::string className() const
Aim: This class is a model of CCellularGridSpaceND. It represents the cubical grid as a cell complex,...
Cell uSpel(Point p) const
From the digital coordinates of a point in Zn, builds the corresponding spel (cell of maximal dimensi...
bool init(const Point &lower, const Point &upper, bool isClosed)
Specifies the upper and lower bounds for the maximal cells in this space.
Cell uTranslation(const Cell &p, const Vector &vec) const
Add the vector [vec] to [p].
Cell uPointel(Point p) const
From the digital coordinates of a point in Zn, builds the corresponding pointel (cell of dimension 0)...
Cell uCell(const PreCell &c) const
From an unsigned cell, returns an unsigned cell lying into this Khalismky space.
static Self diagonal(Component val=1)
void saveEPS(const char *filename, PageSize size=Board::BoundingBox, double margin=10.0) const
Definition: Board.cpp:805
void saveSVG(const char *filename, PageSize size=Board::BoundingBox, double margin=10.0) const
Definition: Board.cpp:1012
int main()
Definition: ctopo-1.cpp:56
Z2i this namespace gathers the standard of types for 2D imagery.
Space::Point Point
Definition: StdDefs.h:95
DGtal is the top-level namespace which contains all DGtal functions and types.
STL namespace.
Custom style class redefining the pen color and the fill color. You may use Board2D::Color::None for ...
Definition: Board2D.h:279
std::string className() const
Return the style name used for drawing this object.
Modifier class in a Board2D stream. Useful to choose your own mode for a given class....
Definition: Board2D.h:247
KSpace K
Domain domain