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 30 of file path_component.h.

Constructor & Destructor Documentation

◆ FanVertexWriter()

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

Definition at line 18 of file path_component.cc.

19  : 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 27 of file path_component.cc.

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

◆ GetIndexCount()

size_t impeller::FanVertexWriter::GetIndexCount ( ) const

Definition at line 23 of file path_component.cc.

23  {
24  return index_count_;
25 }

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

◆ Write()

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

Implements impeller::VertexWriter.

Definition at line 34 of file path_component.cc.

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

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