Flutter Engine
The Flutter Engine
third_party
skia
modules
svg
include
SkSVGCircle.h
Go to the documentation of this file.
1
/*
2
* Copyright 2016 Google Inc.
3
*
4
* Use of this source code is governed by a BSD-style license that can be
5
* found in the LICENSE file.
6
*/
7
8
#ifndef SkSVGCircle_DEFINED
9
#define SkSVGCircle_DEFINED
10
11
#include "
modules/svg/include/SkSVGShape.h
"
12
#include "
modules/svg/include/SkSVGTypes.h
"
13
14
struct
SkPoint
;
15
16
class
SK_API
SkSVGCircle
final :
public
SkSVGShape
{
17
public
:
18
static
sk_sp<SkSVGCircle>
Make
() {
return
sk_sp<SkSVGCircle>
(
new
SkSVGCircle
()); }
19
20
SVG_ATTR
(Cx,
SkSVGLength
,
SkSVGLength
(0))
21
SVG_ATTR
(Cy,
SkSVGLength
,
SkSVGLength
(0))
22
SVG_ATTR
(
R
,
SkSVGLength
,
SkSVGLength
(0))
23
24
protected:
25
bool
parseAndSetAttribute(const
char
*, const
char
*) override;
26
27
void
onDraw(
SkCanvas
*, const
SkSVGLengthContext
&, const
SkPaint
&,
28
SkPathFillType
) const override;
29
30
SkPath
onAsPath(const
SkSVGRenderContext
&) const override;
31
32
SkRect
onObjectBoundingBox(const
SkSVGRenderContext
&) const override;
33
34
private:
35
SkSVGCircle
();
36
37
// resolve and return the center and radius values
38
std
::tuple<
SkPoint
,
SkScalar
> resolve(const
SkSVGLengthContext
&) const;
39
40
using
INHERITED
=
SkSVGShape
;
41
};
42
43
#endif
// SkSVGCircle_DEFINED
SK_API
#define SK_API
Definition:
SkAPI.h:35
SkPathFillType
SkPathFillType
Definition:
SkPathTypes.h:11
INHERITED
#define INHERITED(method,...)
Definition:
SkRecorder.cpp:128
SVG_ATTR
#define SVG_ATTR(attr_name, attr_type, attr_default)
Definition:
SkSVGNode.h:210
SkSVGShape.h
SkSVGTypes.h
SkCanvas
Definition:
SkCanvas.h:106
SkPaint
Definition:
SkPaint.h:44
SkPath
Definition:
SkPath.h:59
SkSVGCircle
Definition:
SkSVGCircle.h:16
SkSVGCircle::Make
static sk_sp< SkSVGCircle > Make()
Definition:
SkSVGCircle.h:18
SkSVGLengthContext
Definition:
SkSVGRenderContext.h:29
SkSVGLength
Definition:
SkSVGTypes.h:116
SkSVGRenderContext
Definition:
SkSVGRenderContext.h:63
SkSVGShape
Definition:
SkSVGShape.h:17
sk_sp
Definition:
SkRefCnt.h:220
SkScalar
float SkScalar
Definition:
extension.cpp:12
R
#define R(r)
std
Definition:
ref_ptr.h:256
SkPoint
Definition:
SkPoint_impl.h:163
SkRect
Definition:
extension.cpp:13
Generated on Sun Jun 23 2024 21:56:07 for Flutter Engine by
1.9.4