Board
0.9.6
examples/logo.cpp
#include <
Board.h
>
using namespace
LibBoard
;
int
main
(
int
,
char
*[])
{
Board
board;
Board::disableLineWidthScaling();
board.
setLineWidth
(1).
setPenColorRGBi
(255, 100, 0);
board.
setLineStyle
(SolidStyle);
board.
setLineJoin
(MiterJoin);
board.
setLineCap
(RoundCap);
board.
drawLine
(-50, -27, 50, -27);
board.
addDuplicates
(board.
last
(), 10, 0, -2);
Point
p = board.
last
<
Line
>().boundingBox(IgnoreLineWidth).centerLeft();
int
n = 20;
double
angle = -
M_PI
/ (2 * n);
while
(n--) {
board << board.
last
<
Line
>().rotated(angle, p);
}
n = 30;
angle = -
M_PI
/ (n);
while
(n--) {
board << board.
last
<
Line
>().scaled(0.95).
rotated
(angle, p);
}
double
textHeight = board.
last
<
Line
>().boundingBox(UseLineWidth).height;
board <<
Text
(-45, -20,
"LibBoard"
, Fonts::Helvetica,
"'Bookman Old Style',Verdana"
, textHeight * 1.2, Color::Green);
Board::enableLineWidthScaling();
board.
saveEPS
(
"logo_A4.eps"
, PageSize::A4);
board.
saveFIG
(
"logo_A4.fig"
, PageSize::A4);
board.
scaleToWidth
(25, UseLineWidth);
board.
saveSVG
(
"logo.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
Definition
Board.h:55
LibBoard::Board
Class for EPS, FIG or SVG drawings.
Definition
Board.h:61
LibBoard::Board::drawLine
void drawLine(double x1, double y1, double x2, double y2)
Definition
Board.cpp:303
LibBoard::Board::addDuplicates
void addDuplicates(const Shape &shape, std::size_t times, double dx, double dy, double scale=1.0)
Definition
Board.cpp:491
LibBoard::Board::setLineCap
Board & setLineCap(LineCap cap)
Definition
Board.h:1072
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::setPenColorRGBi
Board & setPenColorRGBi(unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha=255)
Definition
Board.cpp:232
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::setLineStyle
Board & setLineStyle(LineStyle style)
Definition
Board.h:1066
LibBoard::Board::setLineJoin
Board & setLineJoin(LineJoin join)
Definition
Board.h:1078
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::Line
A line between two points.
Definition
Line.h:38
LibBoard::Line::rotated
Line rotated(double angle, const Point ¢er) const
Definition
Line.cpp:67
LibBoard::Point
Struct representing a 2D point.
Definition
Point.h:42
LibBoard::ShapeList::last
T & last(const std::size_t position=0)
Definition
ShapeList.h:505
LibBoard::Shape::scaleToWidth
Shape & scaleToWidth(double w, LineWidthFlag lineWidthFlag)
Definition
Shape.cpp:85
LibBoard::Text
A piece of text.
Definition
Text.h:40
Generated by
1.9.7