Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | List of all members
flutter::DlSkCanvasAdapter Class Referencefinal

Backend implementation of |DlCanvas| for |SkCanvas|. More...

#include <dl_sk_canvas.h>

Inheritance diagram for flutter::DlSkCanvasAdapter:
flutter::DlCanvas

Public Member Functions

 DlSkCanvasAdapter ()
 
 DlSkCanvasAdapter (SkCanvas *canvas)
 
 ~DlSkCanvasAdapter () override=default
 
void set_canvas (SkCanvas *canvas)
 
SkCanvascanvas ()
 
SkISize GetBaseLayerSize () const override
 
SkImageInfo GetImageInfo () const override
 
void Save () override
 
void SaveLayer (const SkRect *bounds, const DlPaint *paint=nullptr, const DlImageFilter *backdrop=nullptr) override
 
void Restore () override
 
int GetSaveCount () const override
 
void RestoreToCount (int restore_count) override
 
void Translate (SkScalar tx, SkScalar ty) override
 
void Scale (SkScalar sx, SkScalar sy) override
 
void Rotate (SkScalar degrees) override
 
void Skew (SkScalar sx, SkScalar sy) override
 
void Transform2DAffine (SkScalar mxx, SkScalar mxy, SkScalar mxt, SkScalar myx, SkScalar myy, SkScalar myt) override
 
void TransformFullPerspective (SkScalar mxx, SkScalar mxy, SkScalar mxz, SkScalar mxt, SkScalar myx, SkScalar myy, SkScalar myz, SkScalar myt, SkScalar mzx, SkScalar mzy, SkScalar mzz, SkScalar mzt, SkScalar mwx, SkScalar mwy, SkScalar mwz, SkScalar mwt) override
 
void TransformReset () override
 
void Transform (const SkMatrix *matrix) override
 
void Transform (const SkM44 *matrix44) override
 
void SetTransform (const SkMatrix *matrix) override
 
void SetTransform (const SkM44 *matrix44) override
 
SkM44 GetTransformFullPerspective () const override
 
SkMatrix GetTransform () const override
 
void ClipRect (const SkRect &rect, ClipOp clip_op, bool is_aa) override
 
void ClipRRect (const SkRRect &rrect, ClipOp clip_op, bool is_aa) override
 
void ClipPath (const SkPath &path, ClipOp clip_op, bool is_aa) override
 
SkRect GetDestinationClipBounds () const override
 
SkRect GetLocalClipBounds () const override
 
bool QuickReject (const SkRect &bounds) const override
 
void DrawPaint (const DlPaint &paint) override
 
void DrawColor (DlColor color, DlBlendMode mode) override
 
void DrawLine (const SkPoint &p0, const SkPoint &p1, const DlPaint &paint) override
 
void DrawRect (const SkRect &rect, const DlPaint &paint) override
 
void DrawOval (const SkRect &bounds, const DlPaint &paint) override
 
void DrawCircle (const SkPoint &center, SkScalar radius, const DlPaint &paint) override
 
void DrawRRect (const SkRRect &rrect, const DlPaint &paint) override
 
void DrawDRRect (const SkRRect &outer, const SkRRect &inner, const DlPaint &paint) override
 
void DrawPath (const SkPath &path, const DlPaint &paint) override
 
void DrawArc (const SkRect &bounds, SkScalar start, SkScalar sweep, bool useCenter, const DlPaint &paint) override
 
void DrawPoints (PointMode mode, uint32_t count, const SkPoint pts[], const DlPaint &paint) override
 
void DrawVertices (const DlVertices *vertices, DlBlendMode mode, const DlPaint &paint) override
 
void DrawImage (const sk_sp< DlImage > &image, const SkPoint point, DlImageSampling sampling, const DlPaint *paint=nullptr) override
 
void DrawImageRect (const sk_sp< DlImage > &image, const SkRect &src, const SkRect &dst, DlImageSampling sampling, const DlPaint *paint=nullptr, SrcRectConstraint constraint=SrcRectConstraint::kFast) override
 
void DrawImageNine (const sk_sp< DlImage > &image, const SkIRect &center, const SkRect &dst, DlFilterMode filter, const DlPaint *paint=nullptr) override
 
void DrawAtlas (const sk_sp< DlImage > &atlas, const SkRSXform xform[], const SkRect tex[], const DlColor colors[], int count, DlBlendMode mode, DlImageSampling sampling, const SkRect *cullRect, const DlPaint *paint=nullptr) override
 
void DrawDisplayList (const sk_sp< DisplayList > display_list, SkScalar opacity=SK_Scalar1) override
 
void DrawTextBlob (const sk_sp< SkTextBlob > &blob, SkScalar x, SkScalar y, const DlPaint &paint) override
 
void DrawTextFrame (const std::shared_ptr< impeller::TextFrame > &text_frame, SkScalar x, SkScalar y, const DlPaint &paint) override
 
void DrawShadow (const SkPath &path, const DlColor color, const SkScalar elevation, bool transparent_occluder, SkScalar dpr) override
 
void Flush () override
 
virtual void SetTransform (const SkMatrix *matrix)=0
 
virtual void SetTransform (const SkM44 *matrix44)=0
 
virtual void SetTransform (const SkMatrix &matrix)
 
virtual void SetTransform (const SkM44 &matrix44)
 
virtual void Transform (const SkMatrix *matrix)=0
 
virtual void Transform (const SkM44 *matrix44)=0
 
void Transform (const SkMatrix &matrix)
 
void Transform (const SkM44 &matrix44)
 
- Public Member Functions inherited from flutter::DlCanvas
virtual ~DlCanvas ()=default
 
void Transform (const SkMatrix &matrix)
 
void Transform (const SkM44 &matrix44)
 
void Clear (DlColor color)
 
void DrawVertices (const std::shared_ptr< const DlVertices > &vertices, DlBlendMode mode, const DlPaint &paint)
 
virtual void DrawImageRect (const sk_sp< DlImage > &image, const SkIRect &src, const SkRect &dst, DlImageSampling sampling, const DlPaint *paint=nullptr, SrcRectConstraint constraint=SrcRectConstraint::kFast)
 
void DrawImageRect (const sk_sp< DlImage > &image, const SkRect &dst, DlImageSampling sampling, const DlPaint *paint=nullptr, SrcRectConstraint constraint=SrcRectConstraint::kFast)
 

Additional Inherited Members

- Public Types inherited from flutter::DlCanvas
enum class  ClipOp { kDifference , kIntersect }
 
enum class  PointMode { kPoints , kLines , kPolygon }
 
enum class  SrcRectConstraint { kStrict , kFast }
 
- Static Public Member Functions inherited from flutter::DlCanvas
static SkRect ComputeShadowBounds (const SkPath &path, float elevation, SkScalar dpr, const SkMatrix &ctm)
 
- Static Public Attributes inherited from flutter::DlCanvas
static constexpr SkScalar kShadowLightHeight = 600
 
static constexpr SkScalar kShadowLightRadius = 800
 

Detailed Description

Backend implementation of |DlCanvas| for |SkCanvas|.

See also
DlCanvas

Definition at line 18 of file dl_sk_canvas.h.

Constructor & Destructor Documentation

◆ DlSkCanvasAdapter() [1/2]

flutter::DlSkCanvasAdapter::DlSkCanvasAdapter ( )
inline

Definition at line 20 of file dl_sk_canvas.h.

20: delegate_(nullptr) {}

◆ DlSkCanvasAdapter() [2/2]

flutter::DlSkCanvasAdapter::DlSkCanvasAdapter ( SkCanvas canvas)
inlineexplicit

Definition at line 21 of file dl_sk_canvas.h.

21: delegate_(canvas) {}

◆ ~DlSkCanvasAdapter()

flutter::DlSkCanvasAdapter::~DlSkCanvasAdapter ( )
overridedefault

Member Function Documentation

◆ canvas()

SkCanvas * flutter::DlSkCanvasAdapter::canvas ( )
inline

Definition at line 25 of file dl_sk_canvas.h.

25{ return delegate_; }

◆ ClipPath()

void flutter::DlSkCanvasAdapter::ClipPath ( const SkPath path,
ClipOp  clip_op,
bool  is_aa 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 159 of file dl_sk_canvas.cc.

161 {
162 delegate_->clipPath(path, ToSk(clip_op), is_aa);
163}
void clipPath(const SkPath &path, SkClipOp op, bool doAntiAlias)
SkPaint ToSk(const DlPaint &paint)
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
Definition switches.h:57

◆ ClipRect()

void flutter::DlSkCanvasAdapter::ClipRect ( const SkRect rect,
ClipOp  clip_op,
bool  is_aa 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 147 of file dl_sk_canvas.cc.

149 {
150 delegate_->clipRect(rect, ToSk(clip_op), is_aa);
151}
void clipRect(const SkRect &rect, SkClipOp op, bool doAntiAlias)

◆ ClipRRect()

void flutter::DlSkCanvasAdapter::ClipRRect ( const SkRRect rrect,
ClipOp  clip_op,
bool  is_aa 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 153 of file dl_sk_canvas.cc.

155 {
156 delegate_->clipRRect(rrect, ToSk(clip_op), is_aa);
157}
void clipRRect(const SkRRect &rrect, SkClipOp op, bool doAntiAlias)

◆ DrawArc()

void flutter::DlSkCanvasAdapter::DrawArc ( const SkRect bounds,
SkScalar  start,
SkScalar  sweep,
bool  useCenter,
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 228 of file dl_sk_canvas.cc.

232 {
233 delegate_->drawArc(bounds, start, sweep, useCenter, ToSk(paint));
234}
void drawArc(const SkRect &oval, SkScalar startAngle, SkScalar sweepAngle, bool useCenter, const SkPaint &paint)
const Paint & paint

◆ DrawAtlas()

void flutter::DlSkCanvasAdapter::DrawAtlas ( const sk_sp< DlImage > &  atlas,
const SkRSXform  xform[],
const SkRect  tex[],
const DlColor  colors[],
int  count,
DlBlendMode  mode,
DlImageSampling  sampling,
const SkRect cullRect,
const DlPaint paint = nullptr 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 282 of file dl_sk_canvas.cc.

290 {
291 SkOptionalPaint sk_paint(paint);
292 sk_sp<SkImage> sk_image = atlas->skia_image();
293 const SkColor* sk_colors = reinterpret_cast<const SkColor*>(colors);
294 delegate_->drawAtlas(sk_image.get(), xform, tex, sk_colors, count, ToSk(mode),
295 ToSk(sampling), cullRect, sk_paint());
296}
int count
uint32_t SkColor
Definition SkColor.h:37
void drawAtlas(const SkImage *atlas, const SkRSXform xform[], const SkRect tex[], const SkColor colors[], int count, SkBlendMode mode, const SkSamplingOptions &sampling, const SkRect *cullRect, const SkPaint *paint)
T * get() const
Definition SkRefCnt.h:303
sk_sp< const SkImage > atlas
Definition SkRecords.h:331
PODArray< SkColor > colors
Definition SkRecords.h:276
it will be possible to load the file into Perfetto s trace viewer disable asset Prevents usage of any non test fonts unless they were explicitly Loaded via prefetched default font Indicates whether the embedding started a prefetch of the default font manager before creating the engine run In non interactive mode
Definition switches.h:228

◆ DrawCircle()

void flutter::DlSkCanvasAdapter::DrawCircle ( const SkPoint center,
SkScalar  radius,
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 208 of file dl_sk_canvas.cc.

210 {
211 delegate_->drawCircle(center, radius, ToSk(paint));
212}
static SkScalar center(float pos0, float pos1)
void drawCircle(SkScalar cx, SkScalar cy, SkScalar radius, const SkPaint &paint)

◆ DrawColor()

void flutter::DlSkCanvasAdapter::DrawColor ( DlColor  color,
DlBlendMode  mode 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 190 of file dl_sk_canvas.cc.

190 {
191 delegate_->drawColor(ToSk(color), ToSk(mode));
192}
SkColor4f color
void drawColor(SkColor color, SkBlendMode mode=SkBlendMode::kSrcOver)
Definition SkCanvas.h:1182

◆ DrawDisplayList()

void flutter::DlSkCanvasAdapter::DrawDisplayList ( const sk_sp< DisplayList display_list,
SkScalar  opacity = SK_Scalar1 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 298 of file dl_sk_canvas.cc.

299 {
300 const int restore_count = delegate_->getSaveCount();
301
302 // Figure out whether we can apply the opacity during dispatch or
303 // if we need a saveLayer.
304 if (opacity < SK_Scalar1 && !display_list->can_apply_group_opacity()) {
305 TRACE_EVENT0("flutter", "Canvas::saveLayer");
306 delegate_->saveLayerAlphaf(&display_list->bounds(), opacity);
307 opacity = SK_Scalar1;
308 } else {
309 delegate_->save();
310 }
311
312 DlSkCanvasDispatcher dispatcher(delegate_, opacity);
313 if (display_list->has_rtree()) {
314 display_list->Dispatch(dispatcher, delegate_->getLocalClipBounds());
315 } else {
316 display_list->Dispatch(dispatcher);
317 }
318
319 delegate_->restoreToCount(restore_count);
320}
#define SK_Scalar1
Definition SkScalar.h:18
SkRect getLocalClipBounds() const
int getSaveCount() const
Definition SkCanvas.cpp:435
void restoreToCount(int saveCount)
Definition SkCanvas.cpp:482
int save()
Definition SkCanvas.cpp:451
int saveLayerAlphaf(const SkRect *bounds, float alpha)
#define TRACE_EVENT0(category_group, name)

◆ DrawDRRect()

void flutter::DlSkCanvasAdapter::DrawDRRect ( const SkRRect outer,
const SkRRect inner,
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 218 of file dl_sk_canvas.cc.

220 {
221 delegate_->drawDRRect(outer, inner, ToSk(paint));
222}
void drawDRRect(const SkRRect &outer, const SkRRect &inner, const SkPaint &paint)

◆ DrawImage()

void flutter::DlSkCanvasAdapter::DrawImage ( const sk_sp< DlImage > &  image,
const SkPoint  point,
DlImageSampling  sampling,
const DlPaint paint = nullptr 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 249 of file dl_sk_canvas.cc.

252 {
253 SkOptionalPaint sk_paint(paint);
254 sk_sp<SkImage> sk_image = image->skia_image();
255 delegate_->drawImage(sk_image.get(), point.fX, point.fY, ToSk(sampling),
256 sk_paint());
257}
void drawImage(const SkImage *image, SkScalar left, SkScalar top)
Definition SkCanvas.h:1528
sk_sp< SkImage > image
Definition examples.cpp:29
float fX
x-axis value
float fY
y-axis value

◆ DrawImageNine()

void flutter::DlSkCanvasAdapter::DrawImageNine ( const sk_sp< DlImage > &  image,
const SkIRect center,
const SkRect dst,
DlFilterMode  filter,
const DlPaint paint = nullptr 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 271 of file dl_sk_canvas.cc.

275 {
276 SkOptionalPaint sk_paint(paint);
277 sk_sp<SkImage> sk_image = image->skia_image();
278 delegate_->drawImageNine(sk_image.get(), center, dst, ToSk(filter),
279 sk_paint());
280}
void drawImageNine(const SkImage *image, const SkIRect &center, const SkRect &dst, SkFilterMode filter, const SkPaint *paint=nullptr)

◆ DrawImageRect()

void flutter::DlSkCanvasAdapter::DrawImageRect ( const sk_sp< DlImage > &  image,
const SkRect src,
const SkRect dst,
DlImageSampling  sampling,
const DlPaint paint = nullptr,
SrcRectConstraint  constraint = SrcRectConstraint::kFast 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 259 of file dl_sk_canvas.cc.

264 {
265 SkOptionalPaint sk_paint(paint);
266 sk_sp<SkImage> sk_image = image->skia_image();
267 delegate_->drawImageRect(sk_image.get(), src, dst, ToSk(sampling), sk_paint(),
268 ToSk(constraint));
269}
void drawImageRect(const SkImage *, const SkRect &src, const SkRect &dst, const SkSamplingOptions &, const SkPaint *, SrcRectConstraint)

◆ DrawLine()

void flutter::DlSkCanvasAdapter::DrawLine ( const SkPoint p0,
const SkPoint p1,
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 194 of file dl_sk_canvas.cc.

196 {
197 delegate_->drawLine(p0, p1, ToStrokedSk(paint));
198}
void drawLine(SkScalar x0, SkScalar y0, SkScalar x1, SkScalar y1, const SkPaint &paint)
SkPaint ToStrokedSk(const DlPaint &paint)

◆ DrawOval()

void flutter::DlSkCanvasAdapter::DrawOval ( const SkRect bounds,
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 204 of file dl_sk_canvas.cc.

204 {
205 delegate_->drawOval(bounds, ToSk(paint));
206}
void drawOval(const SkRect &oval, const SkPaint &paint)

◆ DrawPaint()

void flutter::DlSkCanvasAdapter::DrawPaint ( const DlPaint paint)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 186 of file dl_sk_canvas.cc.

186 {
187 delegate_->drawPaint(ToSk(paint));
188}
void drawPaint(const SkPaint &paint)

◆ DrawPath()

void flutter::DlSkCanvasAdapter::DrawPath ( const SkPath path,
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 224 of file dl_sk_canvas.cc.

224 {
225 delegate_->drawPath(path, ToSk(paint));
226}
void drawPath(const SkPath &path, const SkPaint &paint)

◆ DrawPoints()

void flutter::DlSkCanvasAdapter::DrawPoints ( PointMode  mode,
uint32_t  count,
const SkPoint  pts[],
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 236 of file dl_sk_canvas.cc.

239 {
240 delegate_->drawPoints(ToSk(mode), count, pts, ToStrokedSk(paint));
241}
void drawPoints(PointMode mode, size_t count, const SkPoint pts[], const SkPaint &paint)

◆ DrawRect()

void flutter::DlSkCanvasAdapter::DrawRect ( const SkRect rect,
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 200 of file dl_sk_canvas.cc.

200 {
201 delegate_->drawRect(rect, ToSk(paint));
202}
void drawRect(const SkRect &rect, const SkPaint &paint)

◆ DrawRRect()

void flutter::DlSkCanvasAdapter::DrawRRect ( const SkRRect rrect,
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 214 of file dl_sk_canvas.cc.

214 {
215 delegate_->drawRRect(rrect, ToSk(paint));
216}
void drawRRect(const SkRRect &rrect, const SkPaint &paint)

◆ DrawShadow()

void flutter::DlSkCanvasAdapter::DrawShadow ( const SkPath path,
const DlColor  color,
const SkScalar  elevation,
bool  transparent_occluder,
SkScalar  dpr 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 337 of file dl_sk_canvas.cc.

341 {
342 DlSkCanvasDispatcher::DrawShadow(delegate_, path, color, elevation,
343 transparent_occluder, dpr);
344}
static void DrawShadow(SkCanvas *canvas, const SkPath &path, DlColor color, float elevation, bool transparentOccluder, SkScalar dpr)

◆ DrawTextBlob()

void flutter::DlSkCanvasAdapter::DrawTextBlob ( const sk_sp< SkTextBlob > &  blob,
SkScalar  x,
SkScalar  y,
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 322 of file dl_sk_canvas.cc.

325 {
326 delegate_->drawTextBlob(blob, x, y, ToSk(paint));
327}
void drawTextBlob(const SkTextBlob *blob, SkScalar x, SkScalar y, const SkPaint &paint)
double y
double x

◆ DrawTextFrame()

void flutter::DlSkCanvasAdapter::DrawTextFrame ( const std::shared_ptr< impeller::TextFrame > &  text_frame,
SkScalar  x,
SkScalar  y,
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 329 of file dl_sk_canvas.cc.

333 {
334 FML_CHECK(false);
335}
#define FML_CHECK(condition)
Definition logging.h:85

◆ DrawVertices()

void flutter::DlSkCanvasAdapter::DrawVertices ( const DlVertices vertices,
DlBlendMode  mode,
const DlPaint paint 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 243 of file dl_sk_canvas.cc.

245 {
246 delegate_->drawVertices(ToSk(vertices), ToSk(mode), ToSk(paint));
247}
void drawVertices(const SkVertices *vertices, SkBlendMode mode, const SkPaint &paint)

◆ Flush()

void flutter::DlSkCanvasAdapter::Flush ( )
overridevirtual

Implements flutter::DlCanvas.

Definition at line 346 of file dl_sk_canvas.cc.

346 {
347 auto dContext = GrAsDirectContext(delegate_->recordingContext());
348
349 if (dContext) {
350 dContext->flushAndSubmit();
351 }
352}
static GrDirectContext * GrAsDirectContext(GrContext_Base *base)
virtual GrRecordingContext * recordingContext() const

◆ GetBaseLayerSize()

SkISize flutter::DlSkCanvasAdapter::GetBaseLayerSize ( ) const
overridevirtual

Implements flutter::DlCanvas.

Definition at line 40 of file dl_sk_canvas.cc.

40 {
41 return delegate_->getBaseLayerSize();
42}
virtual SkISize getBaseLayerSize() const
Definition SkCanvas.cpp:373

◆ GetDestinationClipBounds()

SkRect flutter::DlSkCanvasAdapter::GetDestinationClipBounds ( ) const
overridevirtual

Conservative estimate of the bounds of all outstanding clip operations measured in the coordinate space within which this DisplayList will be rendered.

Implements flutter::DlCanvas.

Definition at line 168 of file dl_sk_canvas.cc.

168 {
169 return SkRect::Make(delegate_->getDeviceClipBounds());
170}
SkIRect getDeviceClipBounds() const
static SkRect Make(const SkISize &size)
Definition SkRect.h:669

◆ GetImageInfo()

SkImageInfo flutter::DlSkCanvasAdapter::GetImageInfo ( ) const
overridevirtual

Implements flutter::DlCanvas.

Definition at line 44 of file dl_sk_canvas.cc.

44 {
45 return delegate_->imageInfo();
46}
SkImageInfo imageInfo() const

◆ GetLocalClipBounds()

SkRect flutter::DlSkCanvasAdapter::GetLocalClipBounds ( ) const
overridevirtual

Conservative estimate of the bounds of all outstanding clip operations transformed into the local coordinate space in which currently recorded rendering operations are interpreted.

Implements flutter::DlCanvas.

Definition at line 175 of file dl_sk_canvas.cc.

175 {
176 return delegate_->getLocalClipBounds();
177}

◆ GetSaveCount()

int flutter::DlSkCanvasAdapter::GetSaveCount ( ) const
overridevirtual

Implements flutter::DlCanvas.

Definition at line 66 of file dl_sk_canvas.cc.

66 {
67 return delegate_->getSaveCount();
68}

◆ GetTransform()

SkMatrix flutter::DlSkCanvasAdapter::GetTransform ( ) const
overridevirtual

Returns the 3x3 partial perspective transform representing all transform operations executed so far in this DisplayList within the enclosing save stack.

Implements flutter::DlCanvas.

Definition at line 143 of file dl_sk_canvas.cc.

143 {
144 return delegate_->getTotalMatrix();
145}
SkMatrix getTotalMatrix() const

◆ GetTransformFullPerspective()

SkM44 flutter::DlSkCanvasAdapter::GetTransformFullPerspective ( ) const
overridevirtual

Returns the 4x4 full perspective transform representing all transform operations executed so far in this DisplayList within the enclosing save stack.

Implements flutter::DlCanvas.

Definition at line 136 of file dl_sk_canvas.cc.

136 {
137 return delegate_->getLocalToDevice();
138}
SkM44 getLocalToDevice() const

◆ QuickReject()

bool flutter::DlSkCanvasAdapter::QuickReject ( const SkRect bounds) const
overridevirtual

Return true iff the supplied bounds are easily shown to be outside of the current clip bounds. This method may conservatively return false if it cannot make the determination.

Implements flutter::DlCanvas.

Definition at line 182 of file dl_sk_canvas.cc.

182 {
183 return delegate_->quickReject(bounds);
184}
bool quickReject(const SkRect &rect) const

◆ Restore()

void flutter::DlSkCanvasAdapter::Restore ( )
overridevirtual

Implements flutter::DlCanvas.

Definition at line 62 of file dl_sk_canvas.cc.

62 {
63 delegate_->restore();
64}
void restore()
Definition SkCanvas.cpp:465

◆ RestoreToCount()

void flutter::DlSkCanvasAdapter::RestoreToCount ( int  restore_count)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 70 of file dl_sk_canvas.cc.

70 {
71 delegate_->restoreToCount(restore_count);
72}

◆ Rotate()

void flutter::DlSkCanvasAdapter::Rotate ( SkScalar  degrees)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 82 of file dl_sk_canvas.cc.

82 {
83 delegate_->rotate(degrees);
84}
void rotate(SkScalar degrees)

◆ Save()

void flutter::DlSkCanvasAdapter::Save ( )
overridevirtual

Implements flutter::DlCanvas.

Definition at line 48 of file dl_sk_canvas.cc.

48 {
49 delegate_->save();
50}

◆ SaveLayer()

void flutter::DlSkCanvasAdapter::SaveLayer ( const SkRect bounds,
const DlPaint paint = nullptr,
const DlImageFilter backdrop = nullptr 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 52 of file dl_sk_canvas.cc.

54 {
55 sk_sp<SkImageFilter> sk_backdrop = ToSk(backdrop);
56 SkOptionalPaint sk_paint(paint);
57 TRACE_EVENT0("flutter", "Canvas::saveLayer");
58 delegate_->saveLayer(
59 SkCanvas::SaveLayerRec{bounds, sk_paint(), sk_backdrop.get(), 0});
60}
int saveLayer(const SkRect *bounds, const SkPaint *paint)
Definition SkCanvas.cpp:500
Optional< SkRect > bounds
Definition SkRecords.h:189

◆ Scale()

void flutter::DlSkCanvasAdapter::Scale ( SkScalar  sx,
SkScalar  sy 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 78 of file dl_sk_canvas.cc.

78 {
79 delegate_->scale(sx, sy);
80}
void scale(SkScalar sx, SkScalar sy)

◆ set_canvas()

void flutter::DlSkCanvasAdapter::set_canvas ( SkCanvas canvas)

Definition at line 36 of file dl_sk_canvas.cc.

36 {
37 delegate_ = canvas;
38}

◆ SetTransform() [1/6]

virtual void flutter::DlCanvas::SetTransform ( const SkM44 matrix44)
inlinevirtual

Reimplemented from flutter::DlCanvas.

Definition at line 93 of file dl_canvas.h.

93{ SetTransform(&matrix44); }
void SetTransform(const SkMatrix *matrix) override

◆ SetTransform() [2/6]

void flutter::DlSkCanvasAdapter::SetTransform ( const SkM44 matrix44)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 129 of file dl_sk_canvas.cc.

129 {
130 delegate_->setMatrix(*matrix44);
131}
void setMatrix(const SkM44 &matrix)

◆ SetTransform() [3/6]

virtual void flutter::DlCanvas::SetTransform ( const SkM44 matrix44)
virtual

Implements flutter::DlCanvas.

◆ SetTransform() [4/6]

virtual void flutter::DlCanvas::SetTransform ( const SkMatrix matrix)
inlinevirtual

Reimplemented from flutter::DlCanvas.

Definition at line 92 of file dl_canvas.h.

92{ SetTransform(&matrix); }

◆ SetTransform() [5/6]

void flutter::DlSkCanvasAdapter::SetTransform ( const SkMatrix matrix)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 125 of file dl_sk_canvas.cc.

125 {
126 delegate_->setMatrix(*matrix);
127}

◆ SetTransform() [6/6]

virtual void flutter::DlCanvas::SetTransform ( const SkMatrix matrix)
virtual

Implements flutter::DlCanvas.

◆ Skew()

void flutter::DlSkCanvasAdapter::Skew ( SkScalar  sx,
SkScalar  sy 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 86 of file dl_sk_canvas.cc.

86 {
87 delegate_->skew(sx, sy);
88}
void skew(SkScalar sx, SkScalar sy)

◆ Transform() [1/6]

void flutter::DlCanvas::Transform ( const SkM44 matrix44)
inline

Definition at line 89 of file dl_canvas.h.

89{ Transform(&matrix44); }
void Transform(const SkMatrix *matrix) override

◆ Transform() [2/6]

void flutter::DlSkCanvasAdapter::Transform ( const SkM44 matrix44)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 121 of file dl_sk_canvas.cc.

121 {
122 delegate_->concat(*matrix44);
123}
void concat(const SkMatrix &matrix)

◆ Transform() [3/6]

virtual void flutter::DlCanvas::Transform ( const SkM44 matrix44)
virtual

Implements flutter::DlCanvas.

◆ Transform() [4/6]

void flutter::DlCanvas::Transform ( const SkMatrix matrix)
inline

Definition at line 88 of file dl_canvas.h.

88{ Transform(&matrix); }

◆ Transform() [5/6]

void flutter::DlSkCanvasAdapter::Transform ( const SkMatrix matrix)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 117 of file dl_sk_canvas.cc.

117 {
118 delegate_->concat(*matrix);
119}

◆ Transform() [6/6]

virtual void flutter::DlCanvas::Transform ( const SkMatrix matrix)
virtual

Implements flutter::DlCanvas.

◆ Transform2DAffine()

void flutter::DlSkCanvasAdapter::Transform2DAffine ( SkScalar  mxx,
SkScalar  mxy,
SkScalar  mxt,
SkScalar  myx,
SkScalar  myy,
SkScalar  myt 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 93 of file dl_sk_canvas.cc.

95 {
96 delegate_->concat(SkMatrix::MakeAll(mxx, mxy, mxt, myx, myy, myt, 0, 0, 1));
97}
static SkMatrix MakeAll(SkScalar scaleX, SkScalar skewX, SkScalar transX, SkScalar skewY, SkScalar scaleY, SkScalar transY, SkScalar pers0, SkScalar pers1, SkScalar pers2)
Definition SkMatrix.h:179

◆ TransformFullPerspective()

void flutter::DlSkCanvasAdapter::TransformFullPerspective ( SkScalar  mxx,
SkScalar  mxy,
SkScalar  mxz,
SkScalar  mxt,
SkScalar  myx,
SkScalar  myy,
SkScalar  myz,
SkScalar  myt,
SkScalar  mzx,
SkScalar  mzy,
SkScalar  mzz,
SkScalar  mzt,
SkScalar  mwx,
SkScalar  mwy,
SkScalar  mwz,
SkScalar  mwt 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 100 of file dl_sk_canvas.cc.

104 {
105 delegate_->concat(SkM44(mxx, mxy, mxz, mxt,
106 myx, myy, myz, myt,
107 mzx, mzy, mzz, mzt,
108 mwx, mwy, mwz, mwt));
109}
Definition SkM44.h:150

◆ TransformReset()

void flutter::DlSkCanvasAdapter::TransformReset ( )
overridevirtual

Implements flutter::DlCanvas.

Definition at line 113 of file dl_sk_canvas.cc.

113 {
114 delegate_->resetMatrix();
115}
void resetMatrix()

◆ Translate()

void flutter::DlSkCanvasAdapter::Translate ( SkScalar  tx,
SkScalar  ty 
)
overridevirtual

Implements flutter::DlCanvas.

Definition at line 74 of file dl_sk_canvas.cc.

74 {
75 delegate_->translate(tx, ty);
76}
void translate(SkScalar dx, SkScalar dy)

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