5#ifndef FLUTTER_DISPLAY_LIST_GEOMETRY_DL_PATH_H_
6#define FLUTTER_DISPLAY_LIST_GEOMETRY_DL_PATH_H_
12#include "flutter/third_party/skia/include/core/SkPath.h"
45 bool counter_clock_wise =
false);
84 bool IsRect(
DlRect* rect =
nullptr,
bool* is_closed =
nullptr)
const;
108 uint32_t render_count = 0u;
111 std::shared_ptr<Data> data_;
bool Contains(const DlPoint point) const
bool IsRect(DlRect *rect=nullptr, bool *is_closed=nullptr) const
static constexpr uint32_t kMaxVolatileUses
bool operator==(const DlPath &other) const
static DlPath MakeRectLTRB(DlScalar left, DlScalar top, DlScalar right, DlScalar bottom)
static DlPath MakeLine(const DlPoint a, const DlPoint b)
DlPath WithOffset(const DlPoint offset) const
~DlPath() override=default
DlPath operator+(const DlPath &other) const
static DlPath MakeRoundRect(const DlRoundRect &rrect)
static DlPath MakeCircle(const DlPoint center, DlScalar radius)
static DlPath MakeArc(const DlRect &bounds, DlDegrees start, DlDegrees sweep, bool use_center)
static DlPath MakeRectXYWH(DlScalar x, DlScalar y, DlScalar width, DlScalar height)
static DlPath MakeRect(const DlRect &rect)
static DlPath MakeRoundSuperellipse(const DlRoundSuperellipse &rse)
static DlPath MakeRoundRectXY(const DlRect &rect, DlScalar x_radius, DlScalar y_radius, bool counter_clock_wise=false)
bool IsRoundRect(DlRoundRect *rrect=nullptr) const
static DlPath MakeOvalLTRB(DlScalar left, DlScalar top, DlScalar right, DlScalar bottom)
DlRect GetBounds() const override
const SkPath & GetSkPath() const
DlPathFillType GetFillType() const override
DlPath WithFillType(DlPathFillType type) const
bool IsLine(DlPoint *start=nullptr, DlPoint *end=nullptr) const
void WillRenderSkPath() const
static DlPath MakeOval(const DlRect &bounds)
void Dispatch(DlPathReceiver &receiver) const override
DlPath(const DlPath &path)=default
bool IsConvex() const override
DlPath & operator=(const DlPath &)=default
DlPath(const SkPath &path)
bool IsOval(DlRect *bounds=nullptr) const
static DlPath MakePoly(const DlPoint pts[], int count, bool close, DlPathFillType fill_type=DlPathFillType::kNonZero)
DlPath(DlPath &&path)=default
Collection of functions to receive path segments from the underlying path representation via the DlPa...
#define FML_DCHECK(condition)
impeller::Scalar DlScalar
impeller::PathReceiver DlPathReceiver
DEF_SWITCHES_START aot vmservice shared library Name of the *so containing AOT compiled Dart assets for launching the service isolate vm snapshot The VM snapshot data that will be memory mapped as read only SnapshotAssetPath must be present isolate snapshot The isolate snapshot data that will be memory mapped as read only SnapshotAssetPath must be present cache dir path
struct PathData * Data(SkPath *path)