Flutter Engine
The Flutter Engine
Public Member Functions | Public Attributes | List of all members
GrTriangulator::MonotonePoly Struct Reference

#include <GrTriangulator.h>

Public Member Functions

 MonotonePoly (Edge *edge, Side side, int winding)
 
void addEdge (Edge *)
 

Public Attributes

Side fSide
 
EdgefFirstEdge
 
EdgefLastEdge
 
MonotonePolyfPrev
 
MonotonePolyfNext
 
int fWinding
 

Detailed Description

Definition at line 485 of file GrTriangulator.h.

Constructor & Destructor Documentation

◆ MonotonePoly()

GrTriangulator::MonotonePoly::MonotonePoly ( Edge edge,
Side  side,
int  winding 
)
inline

Definition at line 486 of file GrTriangulator.h.

487 : fSide(side)
488 , fFirstEdge(nullptr)
489 , fLastEdge(nullptr)
490 , fPrev(nullptr)
491 , fNext(nullptr)
492 , fWinding(winding) {
493 this->addEdge(edge);
494 }
static int side(double x)

Member Function Documentation

◆ addEdge()

void GrTriangulator::MonotonePoly::addEdge ( Edge edge)

Definition at line 318 of file GrTriangulator.cpp.

318 {
319 if (fSide == kRight_Side) {
320 SkASSERT(!edge->fUsedInRightPoly);
321 list_insert<Edge, &Edge::fRightPolyPrev, &Edge::fRightPolyNext>(
322 edge, fLastEdge, nullptr, &fFirstEdge, &fLastEdge);
323 edge->fUsedInRightPoly = true;
324 } else {
325 SkASSERT(!edge->fUsedInLeftPoly);
326 list_insert<Edge, &Edge::fLeftPolyPrev, &Edge::fLeftPolyNext>(
327 edge, fLastEdge, nullptr, &fFirstEdge, &fLastEdge);
328 edge->fUsedInLeftPoly = true;
329 }
330}
#define SkASSERT(cond)
Definition: SkAssert.h:116

Member Data Documentation

◆ fFirstEdge

Edge* GrTriangulator::MonotonePoly::fFirstEdge

Definition at line 496 of file GrTriangulator.h.

◆ fLastEdge

Edge* GrTriangulator::MonotonePoly::fLastEdge

Definition at line 497 of file GrTriangulator.h.

◆ fNext

MonotonePoly* GrTriangulator::MonotonePoly::fNext

Definition at line 499 of file GrTriangulator.h.

◆ fPrev

MonotonePoly* GrTriangulator::MonotonePoly::fPrev

Definition at line 498 of file GrTriangulator.h.

◆ fSide

Side GrTriangulator::MonotonePoly::fSide

Definition at line 495 of file GrTriangulator.h.

◆ fWinding

int GrTriangulator::MonotonePoly::fWinding

Definition at line 500 of file GrTriangulator.h.


The documentation for this struct was generated from the following files: