1/* 2 * Copyright 2015 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// This is an example of the translation unit that needs to be 9// assembled by the fiddler program to compile into a fiddle: an 10// implementation of the GetDrawOptions() and draw() functions. 11 12#include "fiddle_main.h" 13DrawOptions GetDrawOptions() { 14 // path *should* be absolute. 15 static const char path[] = "resources/images/color_wheel.png"; 16 return DrawOptions(256, 256, true, true, true, true, true, false, false, path, 17 GrMipMapped::kYes, 64, 64, 0, GrMipMapped::kYes); 18} 19void draw(SkCanvas* canvas) { 20 canvas->clear(SK_ColorWHITE); 21 SkMatrix matrix; 22 matrix.setScale(0.75f, 0.75f); 23 matrix.preRotate(frame * 30.0f * duration); // If an animation, rotate at 30 deg/s. 24 SkPaint paint; 25 paint.setShader(image->makeShader(SkShader::kRepeat_TileMode, 26 SkShader::kRepeat_TileMode, 27 &matrix)); 28 canvas->drawPaint(paint); 29 SkDebugf("This is text output: %d", 2); 30 31 GrContext* context = canvas->getGrContext(); 32 if (context) { 33 sk_sp<SkImage> tmp = SkImage::MakeFromTexture(context, 34 backEndTexture, 35 kTopLeft_GrSurfaceOrigin, 36 kRGBA_8888_SkColorType, 37 kOpaque_SkAlphaType, 38 nullptr); 39 40 // TODO: this sampleCnt parameter here should match that set in the options! 41 sk_sp<SkSurface> tmp2 = SkSurface::MakeFromBackendTexture(context, 42 backEndTextureRenderTarget, 43 kTopLeft_GrSurfaceOrigin, 44 0, kRGBA_8888_SkColorType, 45 nullptr, nullptr); 46 47 // Note: this surface should only be renderable (i.e., not textureable) 48 sk_sp<SkSurface> tmp3 = SkSurface::MakeFromBackendRenderTarget(context, 49 backEndRenderTarget, 50 kTopLeft_GrSurfaceOrigin, 51 kRGBA_8888_SkColorType, 52 nullptr, nullptr); 53 } 54} 55