Flutter Engine
The Flutter Engine
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 }
GrTriangulator(const SkPath &path, SkArenaAlloc *alloc)
bool fPreserveCollinearVertices
bool fCollectBreadcrumbTriangles
DEF_SWITCHES_START aot vmservice shared library Name of the *so containing AOT compiled Dart assets for launching the service isolate vm snapshot The VM snapshot data that will be memory mapped as read only SnapshotAssetPath must be present isolate snapshot The isolate snapshot data that will be memory mapped as read only SnapshotAssetPath must be present cache dir path
Definition: switches.h:57

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: