Board
0.9.6
examples/example4.cpp
#include <
Board.h
>
using namespace
LibBoard
;
int
main
(
int
,
char
*[])
{
Board
board;
board.
clear
(
Color
(200, 255, 200));
board.
setLineWidth
(0.01);
// For Board drawing methods.
Style::setDefaultLineWidth(0.02);
// For all Shapes constructors.
for
(
double
x = -20.0; x <= 20; x += 1.0)
for
(
double
y = -20.0; y <= 20; y += 1.0) {
board <<
Dot
(x, y, Color::Black);
board.
setPenColorRGBf
(1.0, 0.0, 0.0);
board.
drawDot
(x + 0.2, y + 0.2);
}
Group
g;
g <<
Line
(-5, 2, 5, 2, Color::Red) <<
LibBoard::rectangle
(-5, 2, 1, 4, Color::Null, Color::Blue) <<
LibBoard::rectangle
(4, 2, 1, 4, Color::Null, Color::Blue)
<<
Ellipse
(0, 0, 5, 2, Color::Red, Color::Null);
Group
g2(g);
Group
g3(g);
g2.
translate
(0, 6);
g3.
translate
(0, -6);
Group
f;
f << g << g2 << g3;
f.
rotateDeg
(45.0);
board << f;
ShapeList
l;
Ellipse
c =
LibBoard::circle
(2, 5, 1.8, Color::Red, Color::Green);
for
(
int
i = 0; i < 5; ++i) {
l << c.
scale
(1, 0.5);
}
for
(
double
x = -20, a = 0; x < 20; x += 4, a += 0.3) {
board << l.
rotated
(a).
translate
(x, 10);
}
g.
clear
();
Polyline
r1 =
LibBoard::rectangle
(2, 2, 3, 1, Color::Black, Color::Null);
Polyline
r2 = r1.
translated
(-8, -8);
for
(
double
alpha = 0; alpha < 2 *
M_PI
; alpha += 0.2) {
g << r1.
rotated
(alpha);
board << r2.
rotated
(alpha, r2[0]);
}
board.
saveEPS
(
"example4.eps"
, PageSize::A4);
board.
saveFIG
(
"example4.fig"
, PageSize::A4);
board.
scaleToWidth
(10, UseLineWidth);
board.
saveSVG
(
"example4.svg"
, PageSize::BoundingBox, 0.0, Unit::Centimeter);
}
Board.h
Declaration of the Board class.
M_PI
#define M_PI
Definition
Shape.h:46
main
int main(int argc, char *argv[])
Definition
arithmetic.cpp:16
LibBoard::Color
Structure representing an RGB triple.
Definition
Color.h:43
LibBoard
Definition
Board.h:55
LibBoard::circle
Ellipse circle(double x, double y, double radius, Color penColor=Style::defaultPenColor(), Color fillColor=Style::defaultFillColor(), double lineWidth=Style::defaultLineWidth(), const LineStyle lineStyle=Style::defaultLineStyle())
Definition
Ellipse.cpp:371
LibBoard::rectangle
Polyline rectangle(double left, double top, double width, double height, Color penColor=Style::defaultPenColor(), Color fillColor=Style::defaultFillColor(), double lineWidth=Style::defaultLineWidth(), const LineStyle lineStyle=Style::defaultLineStyle(), const LineCap cap=Style::defaultLineCap(), const LineJoin join=Style::defaultLineJoin())
Definition
Polyline.cpp:569
LibBoard::Board
Class for EPS, FIG or SVG drawings.
Definition
Board.h:61
LibBoard::Board::saveFIG
void saveFIG(const char *filename, PageSize size=PageSize::BoundingBox, double margin=0.0, Unit unit=Unit::Millimeter) const
Definition
Board.cpp:636
LibBoard::Board::drawDot
void drawDot(double x, double y)
Definition
Board.cpp:298
LibBoard::Board::setPenColorRGBf
Board & setPenColorRGBf(float red, float green, float blue, float alpha=1.0f)
Definition
Board.cpp:238
LibBoard::Board::saveEPS
void saveEPS(std::ostream &out, PageSize size=PageSize::BoundingBox, double margin=0.0, Unit unit=Unit::Millimeter, const std::string &title=std::string()) const
Definition
Board.cpp:539
LibBoard::Board::setLineWidth
Board & setLineWidth(double width)
Definition
Board.cpp:274
LibBoard::Board::clear
void clear(const Color &color=Color::Null)
Definition
Board.cpp:149
LibBoard::Board::saveSVG
void saveSVG(const char *filename, PageSize size=PageSize::BoundingBox, double margin=0.0, Unit unit=Unit::Millimeter) const
Definition
Board.cpp:765
LibBoard::Dot
A line between two points.
Definition
Dot.h:42
LibBoard::Ellipse
An ellipse.
Definition
Ellipse.h:38
LibBoard::Ellipse::scale
Ellipse & scale(double sx, double sy) override
Definition
Ellipse.cpp:98
LibBoard::Group
A group of shapes. A group is basically a ShapeList except that when rendered in either an SVG of a F...
Definition
Group.h:40
LibBoard::Group::translate
Group & translate(double dx, double dy) override
Definition
Group.cpp:70
LibBoard::Line
A line between two points.
Definition
Line.h:38
LibBoard::Polyline
A polygonal line described by a series of 2D points.
Definition
Polyline.h:38
LibBoard::Polyline::rotated
Polyline rotated(double angle, const Point ¢er) const
Definition
Polyline.cpp:72
LibBoard::Polyline::translated
Polyline translated(double dx, double dy) const
Definition
Polyline.cpp:99
LibBoard::ShapeList
A group of shapes.
Definition
ShapeList.h:47
LibBoard::ShapeList::rotated
ShapeList rotated(double angle, const Point ¢er)
Definition
ShapeList.cpp:298
LibBoard::ShapeList::translate
ShapeList & translate(double dx, double dy) override
Definition
ShapeList.cpp:314
LibBoard::ShapeList::clear
ShapeList & clear()
Definition
ShapeList.cpp:90
LibBoard::Shape::rotateDeg
Shape & rotateDeg(double angle, const Point ¢er)
Definition
Shape.h:337
LibBoard::Shape::scaleToWidth
Shape & scaleToWidth(double w, LineWidthFlag lineWidthFlag)
Definition
Shape.cpp:85
Generated by
1.9.7