KiCad PCB EDA Suite
|
#include <outline_decomposer.h>
Public Member Functions | |
OUTLINE_DECOMPOSER (FT_Outline &aOutline) | |
void | OutlineToSegments (CONTOURS *aContours) |
Private Member Functions | |
void | contourToSegmentsAndArcs (CONTOUR &aResult, unsigned int aContourIndex) const |
void | newContour () |
void | addContourPoint (const VECTOR2D &p) |
int | approximateContour (const GLYPH_POINTS &aPoints, const std::vector< bool > &aPointOnCurve, GLYPH_POINTS &aResult) const |
bool | approximateBezierCurve (GLYPH_POINTS &result, const GLYPH_POINTS &bezier) const |
bool | approximateQuadraticBezierCurve (GLYPH_POINTS &result, const GLYPH_POINTS &bezier) const |
bool | approximateCubicBezierCurve (GLYPH_POINTS &result, const GLYPH_POINTS &bezier) const |
int | winding (const GLYPH_POINTS &aContour) const |
Static Private Member Functions | |
static unsigned int | onCurve (char aTags) |
static unsigned int | thirdOrderBezierPoint (char aTags) |
static unsigned int | secondOrderBezierPoint (char aTags) |
static unsigned int | hasDropout (char aTags) |
static unsigned int | dropoutMode (char aTags) |
static int | moveTo (const FT_Vector *aEndPoint, void *aCallbackData) |
static int | lineTo (const FT_Vector *aEndPoint, void *aCallbackData) |
static int | quadraticTo (const FT_Vector *aControlPoint, const FT_Vector *aEndPoint, void *aCallbackData) |
static int | cubicTo (const FT_Vector *aFirstControlPoint, const FT_Vector *aSecondControlPoint, const FT_Vector *aEndPoint, void *aCallbackData) |
Private Attributes | |
FT_Outline & | m_outline |
CONTOURS * | m_contours |
VECTOR2D | m_lastEndPoint |
Definition at line 59 of file outline_decomposer.h.
OUTLINE_DECOMPOSER::OUTLINE_DECOMPOSER | ( | FT_Outline & | aOutline | ) |
Definition at line 32 of file outline_decomposer.cpp.
|
private |
Definition at line 54 of file outline_decomposer.cpp.
References m_contours.
|
private |
Definition at line 190 of file outline_decomposer.cpp.
References approximateCubicBezierCurve(), and approximateQuadraticBezierCurve().
Referenced by cubicTo().
|
private |
|
private |
Definition at line 174 of file outline_decomposer.cpp.
References BEZIER_POLY::GetPoly().
Referenced by approximateBezierCurve(), and approximateQuadraticBezierCurve().
|
private |
Definition at line 149 of file outline_decomposer.cpp.
References approximateCubicBezierCurve().
Referenced by approximateBezierCurve().
|
private |
|
staticprivate |
Definition at line 94 of file outline_decomposer.cpp.
References addContourPoint(), approximateBezierCurve(), m_lastEndPoint, and toVector2D().
Referenced by OutlineToSegments(), and quadraticTo().
|
inlinestaticprivate |
Definition at line 107 of file outline_decomposer.h.
References hasDropout().
|
inlinestaticprivate |
Definition at line 102 of file outline_decomposer.h.
Referenced by dropoutMode().
|
staticprivate |
Definition at line 75 of file outline_decomposer.cpp.
References addContourPoint(), m_lastEndPoint, and toVector2D().
Referenced by OutlineToSegments().
|
staticprivate |
Definition at line 62 of file outline_decomposer.cpp.
References addContourPoint(), m_lastEndPoint, newContour(), and toVector2D().
Referenced by OutlineToSegments().
|
private |
Definition at line 46 of file outline_decomposer.cpp.
References m_contours, KIFONT::CONTOUR::m_Orientation, and m_outline.
Referenced by moveTo().
|
inlinestaticprivate |
Definition at line 87 of file outline_decomposer.h.
Referenced by secondOrderBezierPoint(), and thirdOrderBezierPoint().
void OUTLINE_DECOMPOSER::OutlineToSegments | ( | CONTOURS * | aContours | ) |
Definition at line 123 of file outline_decomposer.cpp.
References cubicTo(), lineTo(), m_contours, m_outline, moveTo(), quadraticTo(), and winding().
Referenced by KIFONT::OUTLINE_FONT::getTextAsGlyphsUnlocked().
|
staticprivate |
Definition at line 87 of file outline_decomposer.cpp.
References cubicTo().
Referenced by OutlineToSegments().
|
inlinestaticprivate |
Definition at line 97 of file outline_decomposer.h.
References onCurve(), and thirdOrderBezierPoint().
|
inlinestaticprivate |
Definition at line 92 of file outline_decomposer.h.
References onCurve().
Referenced by secondOrderBezierPoint().
|
private |
Definition at line 208 of file outline_decomposer.cpp.
References VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by OutlineToSegments().
|
private |
Definition at line 125 of file outline_decomposer.h.
Referenced by addContourPoint(), newContour(), and OutlineToSegments().
|
private |
Definition at line 127 of file outline_decomposer.h.
|
private |
Definition at line 124 of file outline_decomposer.h.
Referenced by newContour(), and OutlineToSegments().