1cb93a386Sopenharmony_ci/*
2cb93a386Sopenharmony_ci * Copyright 2011 Google Inc.
3cb93a386Sopenharmony_ci *
4cb93a386Sopenharmony_ci * Use of this source code is governed by a BSD-style license that can be
5cb93a386Sopenharmony_ci * found in the LICENSE file.
6cb93a386Sopenharmony_ci */
7cb93a386Sopenharmony_ci#include "include/core/SkCanvas.h"
8cb93a386Sopenharmony_ci#include "include/effects/SkGradientShader.h"
9cb93a386Sopenharmony_ci#include "samplecode/Sample.h"
10cb93a386Sopenharmony_ci
11cb93a386Sopenharmony_ci
12cb93a386Sopenharmony_ciclass TwoPtConicalView : public Sample {
13cb93a386Sopenharmony_cipublic:
14cb93a386Sopenharmony_ci    TwoPtConicalView() {}
15cb93a386Sopenharmony_ci
16cb93a386Sopenharmony_ciprotected:
17cb93a386Sopenharmony_ci    SkString name() override { return SkString("2PtConical"); }
18cb93a386Sopenharmony_ci
19cb93a386Sopenharmony_ci    void onDrawContent(SkCanvas* canvas) override {
20cb93a386Sopenharmony_ci        canvas->translate(SkIntToScalar(10), SkIntToScalar(20));
21cb93a386Sopenharmony_ci
22cb93a386Sopenharmony_ci        SkColor colors[] = { SK_ColorRED, SK_ColorBLUE };
23cb93a386Sopenharmony_ci        SkPoint c0 = { 0, 0 };
24cb93a386Sopenharmony_ci        SkScalar r0 = 100;
25cb93a386Sopenharmony_ci        SkPoint c1 = { 100, 100 };
26cb93a386Sopenharmony_ci        SkScalar r1 = 100;
27cb93a386Sopenharmony_ci        SkPaint paint;
28cb93a386Sopenharmony_ci        paint.setShader(SkGradientShader::MakeTwoPointConical(c0, r0, c1, r1, colors,
29cb93a386Sopenharmony_ci                                                             nullptr, 2,
30cb93a386Sopenharmony_ci                                                             SkTileMode::kClamp));
31cb93a386Sopenharmony_ci        canvas->drawPaint(paint);
32cb93a386Sopenharmony_ci    }
33cb93a386Sopenharmony_ci
34cb93a386Sopenharmony_ciprivate:
35cb93a386Sopenharmony_ci    using INHERITED = Sample;
36cb93a386Sopenharmony_ci};
37cb93a386Sopenharmony_ci
38cb93a386Sopenharmony_ci//////////////////////////////////////////////////////////////////////////////
39cb93a386Sopenharmony_ci
40cb93a386Sopenharmony_ciDEF_SAMPLE( return new TwoPtConicalView(); )
41