Board 0.9.6
examples/ellipse.cpp
#include <Board.h>
#include <iostream>
using namespace LibBoard;
int main(int, char *[])
{
Board board;
board.clear(Color(200, 255, 200));
Group g;
g << LibBoard::rectangle(0, 50, 100, 50, Color::Black, Color::Null, 1);
g << Line(0, 25, 100, 25, Color(0, 0, 255), 1);
g << Ellipse(50, 25, 50, 25, Color::Red, Color::Null, 1);
g.translate(30, 30).rotate(110 * Board::Degree).scale(1.5, 2);
Rect bbox = g.last<Ellipse>().boundingBox(UseLineWidth);
board << g;
board << rectangle(bbox, Color::Purple, Color::Null, 1.0);
std::cerr << board.boundingBox(UseLineWidth) << std::endl;
board.saveEPS("ellipse.eps");
board.saveFIG("ellipse.fig");
board.saveSVG("ellipse.svg");
}
Declaration of the Board class.
int main(int argc, char *argv[])
Definition arithmetic.cpp:16
Structure representing an RGB triple.
Definition Color.h:43
Definition Board.h:55
Polyline rectangle(double left, double top, double width, double height, Color penColor=Style::defaultPenColor(), Color fillColor=Style::defaultFillColor(), double lineWidth=Style::defaultLineWidth(), const LineStyle lineStyle=Style::defaultLineStyle(), const LineCap cap=Style::defaultLineCap(), const LineJoin join=Style::defaultLineJoin())
Definition Polyline.cpp:569
Class for EPS, FIG or SVG drawings.
Definition Board.h:61
void saveFIG(const char *filename, PageSize size=PageSize::BoundingBox, double margin=0.0, Unit unit=Unit::Millimeter) const
Definition Board.cpp:636
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 clear(const Color &color=Color::Null)
Definition Board.cpp:149
void saveSVG(const char *filename, PageSize size=PageSize::BoundingBox, double margin=0.0, Unit unit=Unit::Millimeter) const
Definition Board.cpp:765
An ellipse.
Definition Ellipse.h:38
A group of shapes. A group is basically a ShapeList except that when rendered in either an SVG of a F...
Definition Group.h:40
Group & scale(double sx, double sy) override
Definition Group.cpp:77
Group & rotate(double angle, const Point &center) override
Definition Group.cpp:56
Group & translate(double dx, double dy) override
Definition Group.cpp:70
A line between two points.
Definition Line.h:38
Struct representing a rectangle on the plane.
Definition Rect.h:40
Rect boundingBox(LineWidthFlag) const override
Definition ShapeList.cpp:405
T & last(const std::size_t position=0)
Definition ShapeList.h:505