No Matches
Path::Iterator Class Reference

Iterates the lines and curves that a path contains. More...

#include <juce_Path.h>

Public Types

enum  PathElementType {
  startNewSubPath , lineTo , quadraticTo , cubicTo ,

Public Member Functions

 Iterator (const Path &path) noexcept
bool next () noexcept
 Moves onto the next element in the path.

Public Attributes

PathElementType elementType
float x1 = 0
float y1 = 0
float x2 = 0
float y2 = 0
float x3 = 0
float y3 = 0

Detailed Description

Iterates the lines and curves that a path contains.

See also
Path, PathFlatteningIterator

Member Enumeration Documentation

◆ PathElementType


For this type, x1 and y1 will be set to indicate the first point in the subpath.


For this type, x1 and y1 indicate the end point of the line.


For this type, x1, y1, x2, y2 indicate the control point and endpoint of a quadratic curve.


For this type, x1, y1, x2, y2, x3, y3 indicate the two control points and the endpoint of a cubic curve.


Indicates that the sub-path is being closed.

None of the x or y values are valid in this case.

Constructor & Destructor Documentation

◆ Iterator()

Path::Iterator::Iterator ( const Path & path)

Member Function Documentation

◆ next()

bool Path::Iterator::next ( )

Moves onto the next element in the path.

If this returns false, there are no more elements. If it returns true, the elementType variable will be set to the type of the current element, and some of the x and y variables will be filled in with values.

Member Data Documentation

◆ elementType

PathElementType Path::Iterator::elementType

◆ x1

float Path::Iterator::x1 = 0

◆ y1

float Path::Iterator::y1 = 0

◆ x2

float Path::Iterator::x2 = 0

◆ y2

float Path::Iterator::y2 = 0

◆ x3

float Path::Iterator::x3 = 0

◆ y3

float Path::Iterator::y3 = 0

The documentation for this class was generated from the following file:
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram