Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | List of all members
GrInnerFanTriangulator Class Reference

#include <GrInnerFanTriangulator.h>

Inheritance diagram for GrInnerFanTriangulator:
GrTriangulator

Public Member Functions

 GrInnerFanTriangulator (const SkPath &path, SkArenaAlloc *alloc)
 
int pathToTriangles (GrEagerVertexAllocator *vertexAlloc, BreadcrumbTriangleList *breadcrumbList, bool *isLinear)
 
PolypathToPolys (BreadcrumbTriangleList *breadcrumbList, bool *isLinear)
 
int polysToTriangles (Poly *polys, GrEagerVertexAllocator *vertexAlloc, BreadcrumbTriangleList *breadcrumbList) const
 

Detailed Description

Definition at line 25 of file GrInnerFanTriangulator.h.

Constructor & Destructor Documentation

◆ GrInnerFanTriangulator()

GrInnerFanTriangulator::GrInnerFanTriangulator ( const SkPath path,
SkArenaAlloc alloc 
)
inline

Definition at line 29 of file GrInnerFanTriangulator.h.

30 : GrTriangulator(path, alloc) {
33 }
bool fPreserveCollinearVertices
bool fCollectBreadcrumbTriangles

Member Function Documentation

◆ pathToPolys()

Poly * GrInnerFanTriangulator::pathToPolys ( BreadcrumbTriangleList breadcrumbList,
bool *  isLinear 
)
inline

Definition at line 41 of file GrInnerFanTriangulator.h.

41 {
42 auto [ polys, success ] = this->GrTriangulator::pathToPolys(0, SkRect::MakeEmpty(),
43 isLinear);
44 if (!success) {
45 return nullptr;
46 }
47 breadcrumbList->concat(std::move(fBreadcrumbList));
48 return polys;
49 }
std::tuple< Poly *, bool > pathToPolys(float tolerance, const SkRect &clipBounds, bool *isLinear)
BreadcrumbTriangleList fBreadcrumbList
static constexpr SkRect MakeEmpty()
Definition SkRect.h:595

◆ pathToTriangles()

int GrInnerFanTriangulator::pathToTriangles ( GrEagerVertexAllocator vertexAlloc,
BreadcrumbTriangleList breadcrumbList,
bool *  isLinear 
)
inline

Definition at line 35 of file GrInnerFanTriangulator.h.

36 {
37 Poly* polys = this->pathToPolys(breadcrumbList, isLinear);
38 return this->polysToTriangles(polys, vertexAlloc, breadcrumbList);
39 }
Poly * pathToPolys(BreadcrumbTriangleList *breadcrumbList, bool *isLinear)
int polysToTriangles(Poly *polys, GrEagerVertexAllocator *vertexAlloc, BreadcrumbTriangleList *breadcrumbList) const

◆ polysToTriangles()

int GrInnerFanTriangulator::polysToTriangles ( Poly polys,
GrEagerVertexAllocator vertexAlloc,
BreadcrumbTriangleList breadcrumbList 
) const
inline

Definition at line 51 of file GrInnerFanTriangulator.h.

52 {
53 int vertexCount = this->GrTriangulator::polysToTriangles(polys, vertexAlloc);
54 breadcrumbList->concat(std::move(fBreadcrumbList));
55 return vertexCount;
56 }
skgpu::VertexWriter polysToTriangles(Poly *polys, SkPathFillType overrideFillType, skgpu::VertexWriter data) const

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