#include <arc.h>
Classes | |
struct | Quadrant |
Public Member Functions | |
size_t | GetPointCount () const |
Public Attributes | |
impeller::Vector2 | start |
impeller::Vector2 | end |
size_t | quadrant_count = 0u |
Quadrant | quadrants [9] |
A structure to describe the iteration through a set of angle vectors in a |Trigs| structure to render the points along an arc. The start and end vectors and each iteration's axis vector are all unit vectors that point in the direction of the point on the circle to be emitted.
Each vector should be rendered by multiplying it by the radius of the circle, or in the case of a stroked arc, by the inner and outer radii of the sides of the stroke.
The rendering routine may adjust the manner/order in which those vertices are inserted into the vertex buffer to optimally match the vertex triangle mode it plans to use, but the description above represents the basic technique to compute the points along the actual curve.
size_t impeller::Arc::Iteration::GetPointCount | ( | ) | const |
Definition at line 36 of file arc.cc.
References impeller::Arc::Iteration::Quadrant::GetPointCount(), quadrant_count, and quadrants.
Referenced by impeller::Tessellator::ArcVertexGenerator::GetVertexCount().
impeller::Vector2 impeller::Arc::Iteration::end |
Definition at line 59 of file arc.h.
Referenced by impeller::Arc::ComputeIterations(), impeller::ArcStrokeGeometry::Dispatch(), and impeller::StrokePathSegmentReceiver::RecordArc().
size_t impeller::Arc::Iteration::quadrant_count = 0u |
Definition at line 63 of file arc.h.
Referenced by impeller::Arc::ComputeIterations(), GetPointCount(), impeller::StrokePathSegmentReceiver::RecordArc(), and impeller::testing::TEST().
Quadrant impeller::Arc::Iteration::quadrants[9] |
Definition at line 86 of file arc.h.
Referenced by impeller::Arc::ComputeIterations(), GetPointCount(), and impeller::StrokePathSegmentReceiver::RecordArc().
impeller::Vector2 impeller::Arc::Iteration::start |
Definition at line 58 of file arc.h.
Referenced by impeller::Arc::ComputeIterations(), impeller::ArcStrokeGeometry::Dispatch(), and impeller::StrokePathSegmentReceiver::RecordArc().