37 for (
int i = 0; i <
count; ++i) {
39 matrix.setRSXform(xform[i]);
43 canvas->
drawImageRect(atlas, tex[i], tex[i].makeOffset(-tex[i].
x(), -tex[i].
y()),
60 SkDebugf(
"\nCould not decode file ship.png. Falling back to penguin mode.\n");
63 SkDebugf(
"\nCould not decode file baby_tux.png. Did you forget"
64 " to set the resourcePath?\n");
81 xPos, yPos, anchorX, anchorY);
97 const float kCosDiff = 0.99984769515f;
98 const float kSinDiff = 0.01745240643f;
116 fXform[i].
fSCos = kCosDiff*c - kSinDiff*
s;
117 fXform[i].
fSSin = kSinDiff*c + kCosDiff*
s;
119 dx -= fXform[i].
fSCos*anchorX - fXform[i].
fSSin*anchorY;
120 dy -= fXform[i].
fSSin*anchorX + fXform[i].
fSCos*anchorY;
125 fProc(canvas, fAtlas.
get(), fXform, fTex,
nullptr,
kGrid*
kGrid+1,
nullptr,
void(* DrawAtlasProc)(SkCanvas *, SkImage *, const SkRSXform[], const SkRect[], const SkColor[], int, const SkRect *, const SkSamplingOptions &, const SkPaint *)
static void draw_atlas(SkCanvas *canvas, SkImage *atlas, const SkRSXform xform[], const SkRect tex[], const SkColor colors[], int count, const SkRect *cull, const SkSamplingOptions &sampling, const SkPaint *paint)
static void draw_atlas_sim(SkCanvas *canvas, SkImage *atlas, const SkRSXform xform[], const SkRect tex[], const SkColor colors[], int count, const SkRect *cull, const SkSamplingOptions &sampling, const SkPaint *paint)
constexpr SkColor SK_ColorWHITE
void SK_SPI SkDebugf(const char format[],...) SK_PRINTF_LIKE(1
Type::kYUV Type::kRGBA() int(0.7 *637)
DrawShipSlide(const char name[], DrawAtlasProc proc)
void draw(SkCanvas *canvas) override
bool animate(double nanos) override
void load(SkScalar, SkScalar) override
@ kFast_SrcRectConstraint
sample outside bounds; faster
void drawImageRect(const SkImage *, const SkRect &src, const SkRect &dst, const SkSamplingOptions &, const SkPaint *, SrcRectConstraint)
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)
void concat(const SkMatrix &matrix)
static constexpr SkRect MakeLTRB(float l, float t, float r, float b)