Classes | Public Types | Public Member Functions | Public Attributes | List of all members
RelativePointPath Class Reference

A path object that consists of RelativePoint coordinates rather than the normal fixed ones. More...

Classes

class  CloseSubPath
 Class for the close sub path element. More...
 
class  CubicTo
 Class for the cubic to element. More...
 
class  ElementBase
 Base class for the elements that make up a RelativePointPath. More...
 
class  LineTo
 Class for the line to element. More...
 
class  QuadraticTo
 Class for the quadratic to element. More...
 
class  StartSubPath
 Class for the start sub path element. More...
 

Public Types

enum  ElementType {
  nullElement, startSubPathElement, closeSubPathElement, lineToElement,
  quadraticToElement, cubicToElement
}
 The types of element that may be contained in this path. More...
 

Public Member Functions

 RelativePointPath ()
 
 RelativePointPath (const RelativePointPath &)
 
 RelativePointPath (const Path &path)
 
 ~RelativePointPath ()
 
bool operator== (const RelativePointPath &) const noexcept
 
bool operator!= (const RelativePointPath &) const noexcept
 
void createPath (Path &path, Expression::Scope *scope) const
 Resolves this points in this path and adds them to a normal Path object. More...
 
bool containsAnyDynamicPoints () const
 Returns true if the path contains any non-fixed points. More...
 
void swapWith (RelativePointPath &) noexcept
 Quickly swaps the contents of this path with another. More...
 
void addElement (ElementBase *newElement)
 

Public Attributes

OwnedArray< ElementBaseelements
 
bool usesNonZeroWinding
 

Detailed Description

A path object that consists of RelativePoint coordinates rather than the normal fixed ones.

One of these paths can be converted into a Path object for drawing and manipulation, but unlike a Path, its points can be dynamic instead of just fixed.

See also
RelativePoint, RelativeCoordinate

Member Enumeration Documentation

◆ ElementType

The types of element that may be contained in this path.

See also
RelativePointPath::ElementBase
Enumerator
nullElement 
startSubPathElement 
closeSubPathElement 
lineToElement 
quadraticToElement 
cubicToElement 

Constructor & Destructor Documentation

◆ RelativePointPath() [1/3]

RelativePointPath::RelativePointPath ( )

◆ RelativePointPath() [2/3]

RelativePointPath::RelativePointPath ( const RelativePointPath )

◆ RelativePointPath() [3/3]

RelativePointPath::RelativePointPath ( const Path path)
explicit

◆ ~RelativePointPath()

RelativePointPath::~RelativePointPath ( )

Member Function Documentation

◆ operator==()

bool RelativePointPath::operator== ( const RelativePointPath ) const
noexcept

◆ operator!=()

bool RelativePointPath::operator!= ( const RelativePointPath ) const
noexcept

◆ createPath()

void RelativePointPath::createPath ( Path path,
Expression::Scope scope 
) const

Resolves this points in this path and adds them to a normal Path object.

◆ containsAnyDynamicPoints()

bool RelativePointPath::containsAnyDynamicPoints ( ) const

Returns true if the path contains any non-fixed points.

◆ swapWith()

void RelativePointPath::swapWith ( RelativePointPath )
noexcept

Quickly swaps the contents of this path with another.

◆ addElement()

void RelativePointPath::addElement ( ElementBase newElement)

Member Data Documentation

◆ elements

OwnedArray<ElementBase> RelativePointPath::elements

◆ usesNonZeroWinding

bool RelativePointPath::usesNonZeroWinding

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