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: TwoPtConicalView()14 TwoPtConicalView() {} 15 16 protected: onQuery(Sample::Event * evt)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 onDrawContent(SkCanvas * canvas)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