| Flutter Impeller |

Public Member Functions | Friends | List of all members
impeller::StrokePathGeometry Class Referencefinal

A geometry that is created from a stroked path object. More...

`#include <stroke_path_geometry.h>`

Inheritance diagram for impeller::StrokePathGeometry:

## Public Member Functions
| StrokePathGeometry (const Path &path, Scalar stroke_width, Scalar miter_limit, Cap stroke_cap, Join stroke_join)
| ~StrokePathGeometry () override
Scalar | GetStrokeWidth () const
Scalar | GetMiterLimit () const
Cap | GetStrokeCap () const
Join | GetStrokeJoin () const
Scalar | ComputeAlphaCoverage (const Matrix &transform) const override
Public Member Functions inherited from impeller::Geometry
virtual | ~Geometry ()
virtual bool | CoversArea (const Matrix &transform, const Rect &rect) const
| Determines if this geometry, transformed by the given `transform`, will completely cover all surface area of the given `rect`. More...
virtual bool | IsAxisAlignedRect () const
virtual bool | CanApplyMaskFilter () const

## Friends
class | ImpellerBenchmarkAccessor
class | ImpellerEntityUnitTestAccessor

## Additional Inherited Members
Static Public Member Functions inherited from impeller::Geometry
static std::unique_ptr< Geometry > | MakeFillPath (const Path &path, std::optional< Rect > inner_rect=std::nullopt)
static std::unique_ptr< Geometry > | MakeStrokePath (const Path &path, Scalar stroke_width=0.0, Scalar miter_limit=4.0, Cap stroke_cap=Cap::kButt, Join stroke_join=Join::kMiter)
static std::unique_ptr< Geometry > | MakeCover ()
static std::unique_ptr< Geometry > | MakeRect (const Rect &rect)
static std::unique_ptr< Geometry > | MakeOval (const Rect &rect)
static std::unique_ptr< Geometry > | MakeLine (const Point &p0, const Point &p1, Scalar width, Cap cap)
static std::unique_ptr< Geometry > | MakeCircle (const Point &center, Scalar radius)
static std::unique_ptr< Geometry > | MakeStrokedCircle (const Point &center, Scalar radius, Scalar stroke_width)
static std::unique_ptr< Geometry > | MakeRoundRect (const Rect &rect, const Size &radii)
static std::unique_ptr< Geometry > | MakePointField (std::vector< Point > points, Scalar radius, bool round)
static Scalar | ComputeStrokeAlphaCoverage (const Matrix &entity, Scalar stroke_width)
| Compute an alpha value to simulate lower coverage of fractional pixel strokes. More...
Static Protected Member Functions inherited from impeller::Geometry
static GeometryResult | ComputePositionGeometry (const ContentContext &renderer, const Tessellator::VertexGenerator &generator, const Entity &entity, RenderPass &pass)

## Detailed Description

A geometry that is created from a stroked path object.

Definition at line 14 of file stroke_path_geometry.h.

## Constructor & Destructor Documentation

## ◆ StrokePathGeometry()

impeller::StrokePathGeometry::StrokePathGeometry | ( | const Path & | path,
|  | Scalar | stroke_width,
|  | Scalar | miter_limit,
|  | Cap | stroke_cap,
|  | Join | stroke_join
| ) |  |

Definition at line 532 of file stroke_path_geometry.cc.

537 : path_(path),
538 stroke_width_(stroke_width),
539 miter_limit_(miter_limit),
540 stroke_cap_(stroke_cap),
541 stroke_join_(stroke_join) {}

## ◆ ~StrokePathGeometry()

impeller::StrokePathGeometry::~StrokePathGeometry | ( |  | ) |
| overridedefault

## Member Function Documentation

## ◆ ComputeAlphaCoverage()

Scalar impeller::StrokePathGeometry::ComputeAlphaCoverage | ( | const Matrix & | transform | ) | const
| overridevirtual

Reimplemented from impeller::Geometry.

Definition at line 561 of file stroke_path_geometry.cc.

561 {
562 return Geometry::ComputeStrokeAlphaCoverage(transform, stroke_width_);
563 }

References impeller::Geometry::ComputeStrokeAlphaCoverage(), and transform.

## ◆ GetMiterLimit()

Scalar impeller::StrokePathGeometry::GetMiterLimit | ( |  | ) | const

Definition at line 549 of file stroke_path_geometry.cc.

549 {
550 return miter_limit_;
551 }

## ◆ GetStrokeCap()

Cap impeller::StrokePathGeometry::GetStrokeCap | ( |  | ) | const

Definition at line 553 of file stroke_path_geometry.cc.

553 {
554 return stroke_cap_;
555 }

## ◆ GetStrokeJoin()

Join impeller::StrokePathGeometry::GetStrokeJoin | ( |  | ) | const

Definition at line 557 of file stroke_path_geometry.cc.

557 {
558 return stroke_join_;
559 }

## ◆ GetStrokeWidth()

Scalar impeller::StrokePathGeometry::GetStrokeWidth | ( |  | ) | const

Definition at line 545 of file stroke_path_geometry.cc.

545 {
546 return stroke_width_;
547 }

## Friends And Related Function Documentation

## ◆ ImpellerBenchmarkAccessor

friend class ImpellerBenchmarkAccessor
| friend

Definition at line 55 of file stroke_path_geometry.h.

## ◆ ImpellerEntityUnitTestAccessor

friend class ImpellerEntityUnitTestAccessor
| friend

Definition at line 56 of file stroke_path_geometry.h.

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

- impeller/entity/geometry/stroke_path_geometry.h
- impeller/entity/geometry/stroke_path_geometry.cc

stroke_width
const Scalar stroke_width
Definition: stroke_path_geometry.cc:297
transform
Matrix transform
Definition: gaussian_blur_filter_contents.cc:213
impeller::Geometry::ComputeStrokeAlphaCoverage
static Scalar ComputeStrokeAlphaCoverage(const Matrix &entity, Scalar stroke_width)
Compute an alpha value to simulate lower coverage of fractional pixel strokes.
Definition: geometry.cc:133