Home | History | Annotate | Download | only in samplecode
      1 /*
      2  * Copyright 2011 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 #include "Sample.h"
      8 #include "SkCanvas.h"
      9 #include "SkGradientShader.h"
     10 
     11 
     12 class TwoPtConicalView : public Sample {
     13 public:
     14     TwoPtConicalView() {}
     15 
     16 protected:
     17     virtual bool onQuery(Sample::Event* evt) {
     18         if (Sample::TitleQ(*evt)) {
     19             Sample::TitleR(evt, "2PtConical");
     20             return true;
     21         }
     22         return this->INHERITED::onQuery(evt);
     23     }
     24 
     25     virtual void onDrawContent(SkCanvas* canvas) {
     26         canvas->translate(SkIntToScalar(10), SkIntToScalar(20));
     27 
     28         SkColor colors[] = { SK_ColorRED, SK_ColorBLUE };
     29         SkPoint c0 = { 0, 0 };
     30         SkScalar r0 = 100;
     31         SkPoint c1 = { 100, 100 };
     32         SkScalar r1 = 100;
     33         SkPaint paint;
     34         paint.setShader(SkGradientShader::MakeTwoPointConical(c0, r0, c1, r1, colors,
     35                                                              nullptr, 2,
     36                                                              SkShader::kClamp_TileMode));
     37         canvas->drawPaint(paint);
     38     }
     39 
     40 private:
     41     typedef Sample INHERITED;
     42 };
     43 
     44 //////////////////////////////////////////////////////////////////////////////
     45 
     46 DEF_SAMPLE( return new TwoPtConicalView(); )
     47