Board  0.9.5
examples/example2.cpp
#include <cmath>
#include "Board.h"
using namespace LibBoard;
int main(int, char *[])
{
Board board;
board.setPenColorRGBi(255, 0, 0);
std::vector<Point> points;
for (double x = -1.0; x < 1.0; x += 0.01) {
points.push_back(Point(100 * x, 100.0 * sin(2 * M_PI * x)));
}
board.setLineWidth(0.5);
board.setPenColorRGBi(0, 0, 255);
board.drawPolyline(points);
board.setPenColorRGBi(255, 0, 0);
for (double x = -100.0; x <= 100.0; x += 10.0) {
board.setFillColorRGBi(255, 0, 0);
board.setPenColorRGBi(0, 0, 255);
board.drawCircle(x, 0.0, 10);
}
board.fillCircle(0.0, 0.0, 10);
board.setPenColorRGBi(0, 0, 0).setFillColorRGBf(0.5f, 1.0f, 0, 0.25);
board.drawEllipse(50, -50, 40.0, 15.0);
board.setLineJoin(RoundJoin);
board.setLineWidth(0.5).setPenColor(Color::Black).setFillColorRGBi(0, 0, 255, 50);
board.drawRectangle(-100.0, -50.0, 100.0, 25.0);
board.setLineJoin(MiterJoin).setLineWidth(0.5).setPenColor(Color::Red);
board.drawTriangle(-50.0, 50.0, 0.0, 50.0, 0.0, 0.0);
board.setPenColor(Color::Black).setFont(Fonts::HelveticaBold, 12.0);
board.drawText(0.0, 100.0, "Hello world!");
Point p = board.last<Text>().boundingBox(IgnoreLineWidth).bottomLeft();
board << board.last<Text>().rotated(45 * Board::Degree, p);
board << board.last<Text>().rotated(45 * Board::Degree, p);
board << board.last<Text>().rotated(45 * Board::Degree, p);
board << board.last<Text>().rotated(45 * Board::Degree, p);
board.saveEPS("example2_A4.eps", Board::A4);
board.saveFIG("example2_A4.fig", Board::A4);
board.saveSVG("example2_A4.svg", Board::A4);
board.saveSVG("example2.svg");
}
LibBoard::Board::saveEPS
void saveEPS(std::ostream &out, PageSize size=Board::BoundingBox, double margin=0.0, Unit unit=UMillimeter, const std::string &title=std::string()) const
Definition: Board.cpp:532
LibBoard::ShapeList::last
T & last(const std::size_t position=0)
Definition: ShapeList.h:501
LibBoard::Board::drawRectangle
void drawRectangle(double left, double top, double width, double height)
Definition: Board.cpp:323
LibBoard::Board::disableLineWidthScaling
static void disableLineWidthScaling()
Definition: Board.cpp:139
LibBoard::Board::saveSVG
void saveSVG(const char *filename, PageSize size=Board::BoundingBox, double margin=0.0, Unit unit=UMillimeter) const
Definition: Board.cpp:758
LibBoard::Board::setFont
Board & setFont(const Fonts::Font font, double fontSize)
Definition: Board.cpp:280
LibBoard::ShapeList::push_back
ShapeList & push_back(Shape *shape)
Definition: ShapeList.cpp:441
LibBoard::Board::setFillColorRGBi
Board & setFillColorRGBi(unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha=255)
Definition: Board.cpp:250
LibBoard::Text
A piece of text.
Definition: Text.h:40
LibBoard::Board::fillCircle
void fillCircle(double x, double y, double radius)
Definition: Board.cpp:352
LibBoard::Point
Struct representing a 2D point.
Definition: Point.h:42
LibBoard::Board::setPenColorRGBi
Board & setPenColorRGBi(unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha=255)
Definition: Board.cpp:232
LibBoard::Board::drawText
void drawText(double x, double y, const char *text)
Definition: Board.cpp:428
LibBoard::Board::drawCircle
void drawCircle(double x, double y, double radius)
Definition: Board.cpp:347
Board.h
Declaration of the Board class.
LibBoard::Board
Class for EPS, FIG or SVG drawings.
Definition: Board.h:62
LibBoard::Board::setLineJoin
Board & setLineJoin(LineJoin join)
Definition: Board.h:1020
LibBoard::Board::drawEllipse
void drawEllipse(double x, double y, double xRadius, double yRadius)
Definition: Board.cpp:357
LibBoard::Board::drawPolyline
void drawPolyline(const std::vector< Point > &points)
Definition: Board.cpp:367
LibBoard::Board::setPenColor
Board & setPenColor(const Color &color)
Definition: Board.cpp:244
LibBoard::Board::saveFIG
void saveFIG(const char *filename, PageSize size=Board::BoundingBox, double margin=0.0, Unit unit=UMillimeter) const
Definition: Board.cpp:629
LibBoard::Board::setLineWidth
Board & setLineWidth(double width)
Definition: Board.cpp:274
LibBoard::Board::drawTriangle
void drawTriangle(double x1, double y1, double x2, double y2, double x3, double y3)
Definition: Board.cpp:382
LibBoard::Board::setFillColorRGBf
Board & setFillColorRGBf(float red, float green, float blue, float alpha=1.0f)
Definition: Board.cpp:256