Flutter Impeller
impeller::FanVertexWriter Class Reference

A vertex writer that generates a triangle fan and requires primitive restart. More...

#include <path_component.h>

Inheritance diagram for impeller::FanVertexWriter:
impeller::VertexWriter

Public Member Functions

 FanVertexWriter (Point *point_buffer, uint16_t *index_buffer)
 
 ~FanVertexWriter ()
 
size_t GetIndexCount () const
 
void EndContour () override
 
void Write (Point point) override
 

Detailed Description

A vertex writer that generates a triangle fan and requires primitive restart.

Definition at line 29 of file path_component.h.

Constructor & Destructor Documentation

◆ FanVertexWriter()

impeller::FanVertexWriter::FanVertexWriter ( Point point_buffer,
uint16_t *  index_buffer 
)
explicit

Definition at line 17 of file path_component.cc.

18  : point_buffer_(point_buffer), index_buffer_(index_buffer) {}

◆ ~FanVertexWriter()

impeller::FanVertexWriter::~FanVertexWriter ( )
default

Member Function Documentation

◆ EndContour()

void impeller::FanVertexWriter::EndContour ( )
overridevirtual

Implements impeller::VertexWriter.

Definition at line 26 of file path_component.cc.

26  {
27  if (count_ == 0) {
28  return;
29  }
30  index_buffer_[index_count_++] = 0xFFFF;
31 }

◆ GetIndexCount()

size_t impeller::FanVertexWriter::GetIndexCount ( ) const

Definition at line 22 of file path_component.cc.

22  {
23  return index_count_;
24 }

Referenced by impeller::Tessellator::TessellateConvex(), and impeller::testing::TEST().

◆ Write()

void impeller::FanVertexWriter::Write ( Point  point)
overridevirtual

Implements impeller::VertexWriter.

Definition at line 33 of file path_component.cc.

33  {
34  index_buffer_[index_count_++] = count_;
35  point_buffer_[count_++] = point;
36 }

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