Board  0.9.5
examples/example1.cpp
#include <cmath>
#include <cstdlib>
#include <fstream>
#include <iostream>
#include "Board.h"
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.saveEPS("example1.eps");
board.saveFIG("example1.fig");
board.saveSVG("example1.svg");
board.saveEPS("example1_Letter.eps", Board::Letter);
board.saveFIG("example1_Letter.fig", Board::Letter);
board.saveSVG("example1_Letter.svg", Board::Letter);
}
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::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::ShapeList::push_back
ShapeList & push_back(Shape *shape)
Definition: ShapeList.cpp:441
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::drawArrow
void drawArrow(double x1, double y1, double x2, double y2, Arrow::ExtremityType type=Arrow::Plain)
Definition: Board.cpp:313
LibBoard::Shape::center
virtual Point center(LineWidthFlag lineWidthFlag=IgnoreLineWidth) const
Definition: Shape.cpp:59
Board.h
Declaration of the Board class.
LibBoard::Board
Class for EPS, FIG or SVG drawings.
Definition: Board.h:62
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::fillGouraudTriangle
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
LibBoard::Board::setLineWidth
Board & setLineWidth(double width)
Definition: Board.cpp:274
LibBoard::ShapeList::boundingBox
Rect boundingBox(LineWidthFlag) const override
Definition: ShapeList.cpp:419
LibBoard::Color
Structure representing an RGB triple.
Definition: Color.h:43