# LibBoard::Dot Struct Reference

A line between two points. More...

`#include <Shapes.h>`

Inheritance diagram for LibBoard::Dot:

List of all members.

## Public Member Functions

| Dot (double x, double y, Color color, double lineWidth, int depth=-1)
const std::string & | name () const
Point | center () const
Dot & | rotate (double angle, const Point &center)
Dot | rotated (double angle, const Point &center) const
Dot & | rotate (double angle)
Dot | rotated (double angle) const
Dot & | translate (double dx, double dy)
Dot | translated (double dx, double dy) const
Shape & | scale (double sx, double sy)
Shape & | scale (double s)
Dot | scaled (double sx, double sy) const
Dot | 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
Rect | boundingBox () const
Dot * | clone () const

## Protected Attributes

double | _x
double | _y

## Detailed Description

A line between two points.

The dot structure. This primitive ha been reported as "missing" by Manuel Peinado from Spain. Manuel also suggested that rendering a dot consists in drawing a line from a point to the same point with a roundcap style.

Examples:

  examples/example4.cpp.

## Member Function Documentation

Rect LibBoard::Dot::boundingBox | ( |  | ) | const`[virtual]`

Returns the bounding box of the figure.

Returns:
  The rectangle of the bounding box.

Implements LibBoard::Shape.

References _x, and _y.

Point LibBoard::Dot::center | ( |  | ) | const`[virtual]`

Returns the gravity center of the shape.

Returns:
  The center of the shape.

Implements LibBoard::Shape.

References _x, and _y.

Dot * LibBoard::Dot::clone | ( |  | ) | const`[virtual]`

Return a copy of the shape.

Returns:

Implements LibBoard::Shape.

void LibBoard::Dot::flushFIG | ( | std::ostream & | stream,
|  | const TransformFIG & | transform,
|  | std::map< Color, int > & | colormap |
| ) |  |  | const`[virtual]`

Writes the FIG code of the shape in a stream according to a transform.

Parameters:

  | stream | The output stream.
  | transform | A 2D transform to be applied.

Implements LibBoard::Shape.

References LibBoard::Shape::_depth, LibBoard::Shape::_lineCap, LibBoard::Shape::_lineJoin, LibBoard::Shape::_lineWidth, LibBoard::Shape::_penColor, _x, and _y.

void LibBoard::Dot::flushPostscript | ( | std::ostream & | stream,
|  | const TransformEPS & | transform |
| ) |  |  | const`[virtual]`

Writes the EPS code of the shape in a stream according to a transform.

Parameters:

  | stream | The output stream.
  | transform | A 2D transform to be applied.

Implements LibBoard::Shape.

References LibBoard::Shape::_penColor, _x, _y, and LibBoard::Shape::postscriptProperties().

void LibBoard::Dot::flushSVG | ( | std::ostream & | stream,
|  | const TransformSVG & | transform |
| ) |  |  | const`[virtual]`

Writes the SVG code of the shape in a stream according to a transform.

Parameters:

  | stream | The output stream.
  | transform | A 2D transform to be applied.

Implements LibBoard::Shape.

References _x, _y, and LibBoard::Shape::svgProperties().

const std::string & LibBoard::Dot::name | ( |  | ) | const`[virtual]`

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

Returns:

Reimplemented from LibBoard::Shape.

Dot & LibBoard::Dot::rotate | ( | double | angle | ) | `[virtual]`

Rotates the dot around its center (actually does nothing!).

Parameters:

  | angle | The rotation angle.

Returns:
  A reference to the Dot itself.

Implements LibBoard::Shape.

Dot & LibBoard::Dot::rotate | ( | double | angle,
|  | const Point & | center |
| ) |  |  | `[virtual]`

Rotates the dot around a given center of rotation.

Parameters:

  | angle | The rotation angle.
  | center | The center of rotation.

Returns:
  A reference to the Dot itself.

Implements LibBoard::Shape.

References _x, _y, and rotate().

Referenced by rotate(), and rotated().

Dot LibBoard::Dot::rotated | ( | double | angle | ) | const

Returns a copy of the dot rotated around its center (i.e. left unchanged!)

Parameters:

  | angle | The rotation angle.

Returns:
  A copy of the dot.

Dot LibBoard::Dot::rotated | ( | double | angle,
|  | const Point & | center |
| ) |  |  | const

Returns a rotated copy of the dot around a given rotation center.

Parameters:

  | angle | Th rotation angle.
  | center | The center of rotation.

Returns:
  A rotated copy of the Dot.

References rotate().

Shape & LibBoard::Dot::scale | ( | double | s | ) | `[virtual]`

Scale the shape along both axis.

Parameters:

  | s | The scale factor along both axis.

Returns:
  The shape itself.

Implements LibBoard::Shape.

Shape & LibBoard::Dot::scale | ( | double | sx,
|  | double | sy |
| ) |  |  | `[virtual]`

Scale the shape along the x an y axis.

Parameters:

  | sx | The scale factor along the x axis.
  | sy | The scale factor along the y axis.

Returns:
  The shape itself.

Implements LibBoard::Shape.

void LibBoard::Dot::scaleAll | ( | double | s | ) | `[virtual]`

Scales all the values (positions, dimensions, etc.) associated with the shape.

Parameters:

  | s | The scaling factor.

Implements LibBoard::Shape.

References _x, and _y.

Dot LibBoard::Dot::scaled | ( | double | sx,
|  | double | sy |
| ) |  |  | const

Returns a scaled copy of the dot, i.e. the dot itself. (Dots are not actually scaled since their diameters is given by the line width.)

Parameters:

  | sx | The scale factor around the x axis.
  | sy | The scale factor around the y axis.

Returns:
  A scaled copy of the Dot, i.e. the Dot itself.

Dot & LibBoard::Dot::translate | ( | double | dx,
|  | double | dy |
| ) |  |  | `[virtual]`

Parameters:

  | dx |
  | dy |

Returns:

Implements LibBoard::Shape.

References _x, and _y.

Referenced by translated().

Dot LibBoard::Dot::translated | ( | double | dx,
|  | double | dy |
| ) |  |  | const

Returns a translated copy of the dot.

Parameters:

  | dx | Shift of the first coordinate.
  | dy | Shift of the second coordinate.

Returns:
  A copy of the Dot, translated.

References translate().

## Member Data Documentation

double LibBoard::Dot::_x `[protected]`

First coordinate of the dot.

Referenced by boundingBox(), center(), flushFIG(), flushPostscript(), flushSVG(), rotate(), scaleAll(), and translate().

double LibBoard::Dot::_y `[protected]`

Second coordinate of the dot.

Referenced by boundingBox(), center(), flushFIG(), flushPostscript(), flushSVG(), rotate(), scaleAll(), and translate().

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

- include/board/Shapes.h
- src/Shapes.cpp