Board 0.9.6
examples/example1.cpp
#include <Board.h>
#include <iostream>
#include <vector>
using namespace LibBoard;
int main(int, char *[])
{
Board board;
board.setLineWidth(0.1);
board.setPenColorRGBi(0, 0, 255);
std::vector<Point> points;
for (double x = -1.0; x <= 1.0; x += 0.01) {
points.push_back(100 * Point(x, sin(2 * x * M_PI)));
}
board.setPenColorRGBi(0, 0, 255);
board.setLineWidth(0.1);
board.drawPolyline(points);
board.setPenColor(Color::Black);
board.drawArrow(board.center(), board.boundingBox(UseLineWidth).topRight());
board.fillGouraudTriangle(-50, 0, Color(255, 0, 0), //
0, 0, Color(0, 255, 0), //
-30, 30, Color(0, 0, 255));
board.setPenColorRGBi(255, 0, 0);
board.fillGouraudTriangle(100, 0, 0.1f, 50, 0, 0.8f, 75, -30, 0.1f);
board.setPenColorRGBi(255, 255, 255);
board.fillGouraudTriangle(100, 0, 0.1f, 50, 0, 0.8f, 75, 50, 0.1f);
Board::disableLineWidthScaling();
board.saveEPS("example1.eps");
board.saveFIG("example1.fig");
board.saveSVG("example1.svg");
board.saveEPS("example1_Letter.eps", PageSize::Letter);
board.saveFIG("example1_Letter.fig", PageSize::Letter);
board.saveSVG("example1_Letter.svg", PageSize::Letter);
}
Declaration of the Board class.
#define M_PI
Definition Shape.h:46
int main(int argc, char *argv[])
Definition arithmetic.cpp:16
Structure representing an RGB triple.
Definition Color.h:43
Definition Board.h:55
Class for EPS, FIG or SVG drawings.
Definition Board.h:61
void fillGouraudTriangle(const Point &p1, const Color &color1, const Point &p2, const Color &color2, const Point &p3, const Color &color3, unsigned char divisions=3)
Definition Board.cpp:406
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
void drawArrow(double x1, double y1, double x2, double y2, Arrow::ExtremityType type=Arrow::ExtremityType::Plain)
Definition Board.cpp:313
Board & setPenColorRGBi(unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha=255)
Definition Board.cpp:232
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
Board & setLineWidth(double width)
Definition Board.cpp:274
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
Point topRight() const
topRight Top-right point of the rectangle
Definition Rect.h:83
ShapeList & push_back(Shape *shape)
Definition ShapeList.cpp:427
Rect boundingBox(LineWidthFlag) const override
Definition ShapeList.cpp:405
virtual Point center(LineWidthFlag lineWidthFlag=IgnoreLineWidth) const
Definition Shape.cpp:59