This example shows you how to modify the style of each drawable elements. You just have to create an instance of CustomColors, CustomPenColor, CustomFillColor or CustomPen and you attach this style to your drawable element type with an instance of CustomStyle outputed in the Board2D stream.
visualization of resulting export.
#include <iostream>
#include "DGtal/base/Common.h"
#include "DGtal/io/boards/Board2D.h"
#include "DGtal/helpers/StdDefs.h"
#include "DGtal/io/Color.h"
{
trace.
beginBlock (
"Example dgtalBoard2D-3-custom-classes" );
Color dgreen( 0, 192, 0 );
Color dblue( 0, 0, 192 );
<< p1
<< p2
Board2D::Shape::SolidStyle,
Board2D::Shape::RoundCap,
Board2D::Shape::RoundJoin ) )
<< p3;
board.
saveSVG(
"dgtalBoard2D-3-custom-classes.svg");
board.
saveEPS(
"dgtalBoard2D-3-custom-classes.eps");
board.
saveTikZ(
"dgtalBoard2D-3-custom-classes.tikz");
#ifdef WITH_CAIRO
board.
saveCairo(
"dgtalBoard2D-3-custom-classes-cairo.pdf", Board2D::CairoPDF);
board.
saveCairo(
"dgtalBoard2D-3-custom-classes-cairo.png", Board2D::CairoPNG);
board.
saveCairo(
"dgtalBoard2D-3-custom-classes-cairo.ps", Board2D::CairoPS);
board.
saveCairo(
"dgtalBoard2D-3-custom-classes-cairo.svg", Board2D::CairoSVG);
#endif
return 0;
}
Aim: This class specializes a 'Board' class so as to display DGtal objects more naturally (with <<)....
Structure representing an RGB triple with alpha component.
std::string className() const
void beginBlock(const std::string &keyword="")
void saveTikZ(const char *filename, PageSize size=Board::BoundingBox, double margin=10.0) const
void saveEPS(const char *filename, PageSize size=Board::BoundingBox, double margin=10.0) const
void saveSVG(const char *filename, PageSize size=Board::BoundingBox, double margin=10.0) const
void saveCairo(const char *filename, CairoType type=CairoPNG, PageSize size=Board::BoundingBox, double margin=10.0) const
Z2i this namespace gathers the standard of types for 2D imagery.
DGtal is the top-level namespace which contains all DGtal functions and types.
Custom style class redefining the pen color and the fill color. You may use Board2D::Color::None for ...
Custom style class redefining the fill color. You may use Board2D::Color::None for transparent color.
Custom style class redefining the pen attributes. You may use Board2D::Color::None for transparent co...
HyperRectDomain< Space > Domain