Board 0.9.6
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", PageSize::A4);
board.saveFIG("example2_A4.fig", PageSize::A4);
board.saveSVG("example2_A4.svg", PageSize::A4);
board.saveSVG("example2.svg");
}
Declaration of the Board class.
#define M_PI
Definition Shape.h:46
int main(int argc, char *argv[])
Definition arithmetic.cpp:16
Definition Board.h:55
Class for EPS, FIG or SVG drawings.
Definition Board.h:61
Board & setFont(const Fonts::Font font, double fontSize)
Definition Board.cpp:280
void fillCircle(double x, double y, double radius)
Definition Board.cpp:352
void drawRectangle(double left, double top, double width, double height)
Definition Board.cpp:323
Board & setPenColor(const Color &color)
Definition Board.cpp:244
void saveFIG(const char *filename, PageSize size=PageSize::BoundingBox, double margin=0.0, Unit unit=Unit::Millimeter) const
Definition Board.cpp:636
Board & setPenColorRGBi(unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha=255)
Definition Board.cpp:232
void drawText(double x, double y, const char *text)
Definition Board.cpp:428
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
void drawPolyline(const std::vector< Point > &points)
Definition Board.cpp:367
void drawTriangle(double x1, double y1, double x2, double y2, double x3, double y3)
Definition Board.cpp:382
Board & setFillColorRGBi(unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha=255)
Definition Board.cpp:250
void drawEllipse(double x, double y, double xRadius, double yRadius)
Definition Board.cpp:357
Board & setLineWidth(double width)
Definition Board.cpp:274
void drawCircle(double x, double y, double radius)
Definition Board.cpp:347
Board & setFillColorRGBf(float red, float green, float blue, float alpha=1.0f)
Definition Board.cpp:256
Board & setLineJoin(LineJoin join)
Definition Board.h:1078
static void disableLineWidthScaling()
Definition Board.cpp:139
void saveSVG(const char *filename, PageSize size=PageSize::BoundingBox, double margin=0.0, Unit unit=Unit::Millimeter) const
Definition Board.cpp:765
Struct representing a 2D point.
Definition Point.h:42
ShapeList & push_back(Shape *shape)
Definition ShapeList.cpp:427
T & last(const std::size_t position=0)
Definition ShapeList.h:505
A piece of text.
Definition Text.h:40