Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | List of all members
skgpu::tess::PathMiddleOutFanIter Class Reference

#include <MiddleOutPolygonTriangulator.h>

Public Member Functions

 PathMiddleOutFanIter (const SkPath &path)
 
bool done () const
 
MiddleOutPolygonTriangulator::PoppedTriangleStack nextStack ()
 

Detailed Description

Definition at line 207 of file MiddleOutPolygonTriangulator.h.

Constructor & Destructor Documentation

◆ PathMiddleOutFanIter()

skgpu::tess::PathMiddleOutFanIter::PathMiddleOutFanIter ( const SkPath path)
inline

Definition at line 209 of file MiddleOutPolygonTriangulator.h.

209 : fMiddleOut(path.countVerbs()) {
210 SkPathPriv::Iterate it(path);
211 fPathIter = it.begin();
212 fPathEnd = it.end();
213 }
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

◆ done()

bool skgpu::tess::PathMiddleOutFanIter::done ( ) const
inline

Definition at line 215 of file MiddleOutPolygonTriangulator.h.

215{ return fDone; }

◆ nextStack()

MiddleOutPolygonTriangulator::PoppedTriangleStack skgpu::tess::PathMiddleOutFanIter::nextStack ( )
inline

Definition at line 217 of file MiddleOutPolygonTriangulator.h.

217 {
218 SkASSERT(!fDone);
219 if (fPathIter == fPathEnd) {
220 fDone = true;
221 return fMiddleOut.close();
222 }
223 switch (auto [verb, pts, w] = *fPathIter++; verb) {
224 SkPoint pt;
226 return fMiddleOut.closeAndMove(pts[0]);
231 pt = pts[SkPathPriv::PtsInIter((unsigned)verb) - 1];
232 return fMiddleOut.pushVertex(pt);
234 return fMiddleOut.close();
235 }
237 }
#define SkUNREACHABLE
Definition SkAssert.h:135
#define SkASSERT(cond)
Definition SkAssert.h:116
@ kClose
SkPath::RawIter returns 0 points.
@ kCubic
SkPath::RawIter returns 4 points.
@ kConic
SkPath::RawIter returns 3 points + 1 weight.
@ kQuad
SkPath::RawIter returns 3 points.
@ kMove
SkPath::RawIter returns 1 point.
@ kLine
SkPath::RawIter returns 2 points.
static int PtsInIter(unsigned verb)
Definition SkPathPriv.h:305
PoppedTriangleStack closeAndMove(SkPoint newStartPoint)
SkScalar w

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