Flutter Engine
The Flutter Engine
|
#include "include/core/SkPaint.h"
#include "include/core/SkPath.h"
#include "include/core/SkPoint.h"
#include "include/core/SkRect.h"
#include "include/core/SkRegion.h"
#include "include/core/SkScalar.h"
#include "include/private/base/SkAssert.h"
#include "include/private/base/SkDebug.h"
#include "include/private/base/SkFixed.h"
#include "include/private/base/SkFloatingPoint.h"
#include "include/private/base/SkMath.h"
#include "include/private/base/SkSafe32.h"
#include "src/base/SkMathPriv.h"
#include "src/base/SkUtils.h"
#include "src/base/SkVx.h"
#include "src/core/SkBlitter.h"
#include "src/core/SkFDot6.h"
#include "src/core/SkGeometry.h"
#include "src/core/SkLineClipper.h"
#include "src/core/SkPathPriv.h"
#include "src/core/SkRasterClip.h"
#include "src/core/SkScan.h"
#include <algorithm>
#include <array>
#include <cstdint>
#include <cstring>
Go to the source code of this file.
Macros | |
#define | kMaxCubicSubdivideLevel 9 |
#define | kMaxQuadSubdivideLevel 5 |
Typedefs | |
using | float2 = skvx::float2 |
using | mask2 = skvx::Vec< 2, uint32_t > |
Functions | |
static void | horiline (int x, int stopx, SkFixed fy, SkFixed dy, SkBlitter *blitter) |
static void | vertline (int y, int stopy, SkFixed fx, SkFixed dx, SkBlitter *blitter) |
static uint32_t | compute_int_quad_dist (const SkPoint pts[3]) |
static void | hair_quad (const SkPoint pts[3], const SkRegion *clip, SkBlitter *blitter, int level, SkScan::HairRgnProc lineproc) |
static SkRect | compute_nocheck_quad_bounds (const SkPoint pts[3]) |
static bool | is_inverted (const SkRect &r) |
static bool | geometric_overlap (const SkRect &a, const SkRect &b) |
static bool | geometric_contains (const SkRect &outer, const SkRect &inner) |
static void | hairquad (const SkPoint pts[3], const SkRegion *clip, const SkRect *insetClip, const SkRect *outsetClip, SkBlitter *blitter, int level, SkScan::HairRgnProc lineproc) |
static SkScalar | max_component (const float2 &value) |
static int | compute_cubic_segs (const SkPoint pts[4]) |
static bool | lt_90 (SkPoint p0, SkPoint pivot, SkPoint p2) |
static bool | quick_cubic_niceness_check (const SkPoint pts[4]) |
static mask2 | float2_is_finite (const float2 &x) |
static void | hair_cubic (const SkPoint pts[4], const SkRegion *clip, SkBlitter *blitter, SkScan::HairRgnProc lineproc) |
static SkRect | compute_nocheck_cubic_bounds (const SkPoint pts[4]) |
static void | haircubic (const SkPoint pts[4], const SkRegion *clip, const SkRect *insetClip, const SkRect *outsetClip, SkBlitter *blitter, int level, SkScan::HairRgnProc lineproc) |
static int | compute_quad_level (const SkPoint pts[3]) |
template<SkPaint::Cap capStyle> | |
void | extend_pts (SkPath::Verb prevVerb, SkPath::Verb nextVerb, SkPoint *pts, int ptCount) |
template<SkPaint::Cap capStyle> | |
void | hair_path (const SkPath &path, const SkRasterClip &rclip, SkBlitter *blitter, SkScan::HairRgnProc lineproc) |
#define kMaxCubicSubdivideLevel 9 |
Definition at line 231 of file SkScan_Hairline.cpp.
#define kMaxQuadSubdivideLevel 5 |
Definition at line 232 of file SkScan_Hairline.cpp.
using float2 = skvx::float2 |
Definition at line 234 of file SkScan_Hairline.cpp.
Definition at line 372 of file SkScan_Hairline.cpp.
Definition at line 336 of file SkScan_Hairline.cpp.
|
static |
Definition at line 236 of file SkScan_Hairline.cpp.
Definition at line 415 of file SkScan_Hairline.cpp.
Definition at line 282 of file SkScan_Hairline.cpp.
Definition at line 453 of file SkScan_Hairline.cpp.
void extend_pts | ( | SkPath::Verb | prevVerb, |
SkPath::Verb | nextVerb, | ||
SkPoint * | pts, | ||
int | ptCount | ||
) |
Definition at line 473 of file SkScan_Hairline.cpp.
Definition at line 374 of file SkScan_Hairline.cpp.
Definition at line 309 of file SkScan_Hairline.cpp.
Definition at line 301 of file SkScan_Hairline.cpp.
|
static |
Definition at line 379 of file SkScan_Hairline.cpp.
void hair_path | ( | const SkPath & | path, |
const SkRasterClip & | rclip, | ||
SkBlitter * | blitter, | ||
SkScan::HairRgnProc | lineproc | ||
) |
Definition at line 521 of file SkScan_Hairline.cpp.
|
static |
Definition at line 257 of file SkScan_Hairline.cpp.
|
inlinestatic |
Definition at line 428 of file SkScan_Hairline.cpp.
|
inlinestatic |
Definition at line 315 of file SkScan_Hairline.cpp.
Definition at line 36 of file SkScan_Hairline.cpp.
|
static |
Definition at line 360 of file SkScan_Hairline.cpp.
Definition at line 330 of file SkScan_Hairline.cpp.
|
static |
Definition at line 365 of file SkScan_Hairline.cpp.
Definition at line 46 of file SkScan_Hairline.cpp.