# Cinder

# cinder::Path2d Class Reference

`#include <Path2d.h>`

List of all members.

## Public Types
enum | SegmentType { MOVETO, LINETO, QUADTO, CUBICTO, CLOSE }
## Public Member Functions
| Path2d ()
| Path2d (const BSpline< Vec2f > &spline, float subdivisionStep=0.01f)
void | moveTo (const Vec2f &p)
void | moveTo (float x, float y)
void | lineTo (const Vec2f &p)
void | lineTo (float x, float y)
void | quadTo (const Vec2f &p1, const Vec2f &p2)
void | quadTo (float x1, float y1, float x2, float y2)
void | curveTo (const Vec2f &p1, const Vec2f &p2, const Vec2f &p3)
void | curveTo (float x1, float y1, float x2, float y2, float x3, float y3)
void | close ()
bool | isClosed () const
bool | empty () const
void | clear ()
size_t | getNumSegments () const
size_t | getNumPoints () const
const Vec2f & | getPoint (size_t point) const
const Vec2f & | getCurrentPoint () const
void | setPoint (size_t index, const Vec2f &p)
void | removeSegment (size_t segment)
SegmentType | getSegmentType (size_t segment) const
## Static Public Attributes
static const int | sSegmentTypePointCounts [] = { 1, 1, 2, 3, 0 }
## Friends
class | Shape2d

## Member Enumeration Documentation

enum cinder::Path2d::SegmentType

Enumerator:

  MOVETO |
  LINETO |
  QUADTO |
  CUBICTO |
  CLOSE |

## Constructor & Destructor Documentation

cinder::Path2d::Path2d | ( |  | ) |

cinder::Path2d::Path2d | ( | const BSpline< Vec2f > & | spline,
|  | float | subdivisionStep = `0.01f` |
| ) |  |  | `[explicit]`

## Member Function Documentation

void cinder::Path2d::moveTo | ( | const Vec2f & | p | ) |

void cinder::Path2d::moveTo | ( | float | x,
|  | float | y |
| ) |  |  |

void cinder::Path2d::lineTo | ( | const Vec2f & | p | ) |

void cinder::Path2d::lineTo | ( | float | x,
|  | float | y |
| ) |  |  |

void cinder::Path2d::quadTo | ( | const Vec2f & | p1,
|  | const Vec2f & | p2 |
| ) |  |  |

void cinder::Path2d::quadTo | ( | float | x1,
|  | float | y1,
|  | float | x2,
|  | float | y2 |
| ) |  |  |

void cinder::Path2d::curveTo | ( | const Vec2f & | p1,
|  | const Vec2f & | p2,
|  | const Vec2f & | p3 |
| ) |  |  |

void cinder::Path2d::curveTo | ( | float | x1,
|  | float | y1,
|  | float | x2,
|  | float | y2,
|  | float | x3,
|  | float | y3 |
| ) |  |  |

void cinder::Path2d::close | ( |  | ) |

bool cinder::Path2d::isClosed | ( |  | ) | const

bool cinder::Path2d::empty | ( |  | ) | const

void cinder::Path2d::clear | ( |  | ) |

size_t cinder::Path2d::getNumSegments | ( |  | ) | const

size_t cinder::Path2d::getNumPoints | ( |  | ) | const

const Vec2f& cinder::Path2d::getPoint | ( | size_t | point | ) | const

const Vec2f& cinder::Path2d::getCurrentPoint | ( |  | ) | const

void cinder::Path2d::setPoint | ( | size_t | index,
|  | const Vec2f & | p |
| ) |  |  |

void cinder::Path2d::removeSegment | ( | size_t | segment | ) |

SegmentType cinder::Path2d::getSegmentType | ( | size_t | segment | ) | const

## Friends And Related Function Documentation

friend class Shape2d`[friend]`

## Member Data Documentation

const int cinder::Path2d::sSegmentTypePointCounts = { 1, 1, 2, 3, 0 }`[static]`

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

- include/cinder/Path2d.h
- src/cinder/Path2d.cpp