# IpeClosedSpline Class Reference
[Ipe Objects]

A closed B-spline curve. More...

Inherits IpeSubPath.

List of all members.

## Public Member Functions

- IpeClosedSpline (const std::vector< IpeVector > &v)
- virtual TType Type () const
- virtual const IpeClosedSpline * AsClosedSpline () const
- virtual IpeClosedSpline * AsClosedSpline ()
- virtual IpeSubPath * Clone () const
- virtual IpeSubPath * Transform (const IpeMatrix &m) const
- void Beziers (std::vector< IpeBezier > &bez) const
- virtual void SaveAsXml (IpeStream &stream) const
- virtual void Draw (IpePainter &painter) const
- virtual void AddToBBox (IpeRect &box, const IpeMatrix &m) const
- virtual double Distance (const IpeVector &v, const IpeMatrix &m, double bound) const
- virtual void SnapVtx (const IpeVector &mouse, const IpeMatrix &m, IpeVector &pos, double &bound) const
- virtual void SnapBnd (const IpeVector &mouse, const IpeMatrix &m, IpeVector &pos, double &bound) const

## Public Attributes

- std::vector< IpeVector > iCP

## Detailed Description

A closed B-spline curve.

## Member Function Documentation

IpeSubPath::TType IpeClosedSpline::Type | ( |  | ) | const`[virtual]`

Return type of this subpath.

Implements IpeSubPath.

const IpeClosedSpline * IpeClosedSpline::AsClosedSpline | ( |  | ) | const`[virtual]`

Return this object as an IpeClosedSpline, or 0 if it's not a closed spline.

Reimplemented from IpeSubPath.

IpeClosedSpline * IpeClosedSpline::AsClosedSpline | ( |  | ) | `[virtual]`

Return this object as an IpeClosedSpline, or 0 if it's not a closed spline.

Reimplemented from IpeSubPath.

IpeSubPath * IpeClosedSpline::Clone | ( |  | ) | const`[virtual]`

Return a copy of this subpath.

Implements IpeSubPath.

IpeSubPath * IpeClosedSpline::Transform | ( | const IpeMatrix & | m | ) | const`[virtual]`

Return a transformed copy of this subpath.

Implements IpeSubPath.

void IpeClosedSpline::SaveAsXml | ( | IpeStream & | stream | ) | const`[virtual]`

Save subpath to XML stream.

Implements IpeSubPath.

void IpeClosedSpline::Draw | ( | IpePainter & | painter | ) | const`[virtual]`

Draw subpath (does not call DrawPath()).

Implements IpeSubPath.

void IpeClosedSpline::AddToBBox | ( | IpeRect & | box,
|  | const IpeMatrix & | m |
| ) |  |  | const`[virtual]`

Add subpath to box.

Implements IpeSubPath.

double IpeClosedSpline::Distance | ( | const IpeVector & | v,
|  | const IpeMatrix & | m,
|  | double | bound |
| ) |  |  | const`[virtual]`

Return distance from v to subpath transformed by m.

Implements IpeSubPath.

void IpeClosedSpline::SnapVtx | ( | const IpeVector & | mouse,
|  | const IpeMatrix & | m,
|  | IpeVector & | pos,
|  | double & | bound |
| ) |  |  | const`[virtual]`

Snap to vertex.

Implements IpeSubPath.

void IpeClosedSpline::SnapBnd | ( | const IpeVector & | mouse,
|  | const IpeMatrix & | m,
|  | IpeVector & | pos,
|  | double & | bound |
| ) |  |  | const`[virtual]`

Snap to boundary of subpath.

Implements IpeSubPath.

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

- ipepath.h
- ipepath.cpp