Board  0.9.2
Public Member Functions | List of all members
LibBoard::Triangle Struct Reference

A triangle. Basically a Polyline with a convenient constructor. More...

#include <Shapes.h>

Inheritance diagram for LibBoard::Triangle:
LibBoard::Polyline LibBoard::Shape

Public Member Functions

 Triangle (const Point &p1, const Point &p2, const Point &p3, Color penColor, Color fillColor, double lineWidth, const LineStyle style=SolidStyle, const LineCap cap=ButtCap, const LineJoin join=MiterJoin, int depth=-1)
 
 Triangle (const double x1, const double y1, const double x2, const double y2, const double x3, const double y3, Color penColor, Color fillColor, double lineWidth, const LineStyle style=SolidStyle, const LineCap cap=ButtCap, const LineJoin join=MiterJoin, int depth=-1)
 
const std::string & name () const
 
Triangle rotated (double angle) const
 
Triangle translated (double dx, double dy) const
 
Triangle scaled (double sx, double sy) const
 
Triangle scaled (double s) const
 
Triangle * clone () const
 
- Public Member Functions inherited from LibBoard::Polyline
 Polyline (const std::vector< Point > &points, bool closed, Color penColor, Color fillColor, double lineWidth, const LineStyle lineStyle=SolidStyle, const LineCap cap=ButtCap, const LineJoin join=MiterJoin, int depth=-1)
 
 Polyline (const Path &path, Color penColor, Color fillColor, double lineWidth, const LineStyle lineStyle=SolidStyle, const LineCap cap=ButtCap, const LineJoin join=MiterJoin, int depth=-1)
 
 Polyline (bool closed, Color penColor, Color fillColor, double lineWidth, const LineStyle lineStyle=SolidStyle, const LineCap cap=ButtCap, const LineJoin join=MiterJoin, int depth=-1)
 
Point center () const
 
Polyline & operator<< (const Point &p)
 
Point & operator[] (const std::size_t n)
 
const Point & operator[] (const std::size_t n) const
 
Polyline & rotate (double angle, const Point &center)
 
Polyline rotated (double angle, const Point &center) const
 
Polyline & rotate (double angle)
 
Polyline rotated (double angle) const
 
Polyline & translate (double dx, double dy)
 
Polyline translated (double dx, double dy) const
 
Polyline & scale (double sx, double sy)
 
Polyline & scale (double s)
 
Polyline scaled (double sx, double sy) const
 
Polyline scaled (double s) const
 
void scaleAll (double s)
 
void flushPostscript (std::ostream &stream, const TransformEPS &transform) const
 
void flushFIG (std::ostream &stream, const TransformFIG &transform, std::map< Color, int > &colormap) const
 
void flushSVG (std::ostream &stream, const TransformSVG &transform) const
 
void flushTikZ (std::ostream &stream, const TransformTikZ &transform) const
 
Rect boundingBox () const
 
std::size_t vertexCount () const
 
- Public Member Functions inherited from LibBoard::Shape
 Shape (Color penColor, Color fillColor, double lineWidth, LineStyle style, const LineCap cap, const LineJoin join, int depth)
 
virtual ~Shape ()
 
bool filled () const
 
Shape & rotateDeg (double angle, const Point &center)
 
Shape & rotateDeg (double angle)
 
Shape & moveCenter (double x, double y)
 
Shape & moveCenter (Point p)
 
Rect bbox () const
 
Shape & operator-- ()
 
Shape & operator++ ()
 
int depth () const
 
virtual void depth (int)
 
virtual void shiftDepth (int shift)
 
const Color & penColor () const
 
const Color & fillColor () const
 

Additional Inherited Members

- Public Types inherited from LibBoard::Shape
enum  LineCap { ButtCap = 0, RoundCap, SquareCap }
 
enum  LineJoin { MiterJoin = 0, RoundJoin, BevelJoin }
 
enum  LineStyle {
  SolidStyle = 0, DashStyle, DotStyle, DashDotStyle,
  DashDotDotStyle, DashDotDotDotStyle
}
 
- Protected Member Functions inherited from LibBoard::Shape
std::string svgProperties (const TransformSVG &transform) const
 
std::string postscriptProperties () const
 
std::string tikzProperties (const TransformTikZ &transform) const
 
- Protected Attributes inherited from LibBoard::Polyline
Path _path
 
- Protected Attributes inherited from LibBoard::Shape
int _depth
 
Color _penColor
 
Color _fillColor
 
double _lineWidth
 
LineStyle _lineStyle
 
LineCap _lineCap
 
LineJoin _lineJoin
 

Detailed Description

A triangle. Basically a Polyline with a convenient constructor.

The Triangle structure.

Examples:
examples/koch.cpp.

Member Function Documentation

Triangle * LibBoard::Triangle::clone ( ) const
virtual

Return a copy of the shape.

Returns
A copy of the shape.

Reimplemented from LibBoard::Polyline.

const std::string & LibBoard::Triangle::name ( ) const
virtual

Returns the generic name of the shape (e.g., Circle, Rectangle, etc.)

Returns

Reimplemented from LibBoard::Polyline.

Triangle LibBoard::Triangle::scaled ( double  sx,
double  sy 
) const

Returns a scaled copy of the triangle.

Parameters
sxScaling factor along the x axis.
syscaling factor along the y axis.
Returns
A scaled copy of the arrow.

References LibBoard::Polyline::scale().

Triangle LibBoard::Triangle::scaled ( double  s) const

Returns a scaled copy of the triangle.

Parameters
sThe scaling factor.
Returns
A scaled copy of the triangle.

References LibBoard::Polyline::scale().

Triangle LibBoard::Triangle::translated ( double  dx,
double  dy 
) const

Returns a translated copy of the triangle.

Parameters
dxThe shift along the x axis.
dyThe shift along the y axis.
Returns
A translated copy of the triangle.

References LibBoard::Polyline::translate().


The documentation for this struct was generated from the following files: