1*c8dee2aaSAndroid Build Coastguard Worker /* 2*c8dee2aaSAndroid Build Coastguard Worker * Copyright 2018 Google Inc. 3*c8dee2aaSAndroid Build Coastguard Worker * 4*c8dee2aaSAndroid Build Coastguard Worker * Use of this source code is governed by a BSD-style license that can be 5*c8dee2aaSAndroid Build Coastguard Worker * found in the LICENSE file. 6*c8dee2aaSAndroid Build Coastguard Worker */ 7*c8dee2aaSAndroid Build Coastguard Worker 8*c8dee2aaSAndroid Build Coastguard Worker #include "modules/sksg/include/SkSGPlane.h" 9*c8dee2aaSAndroid Build Coastguard Worker 10*c8dee2aaSAndroid Build Coastguard Worker #include "include/core/SkCanvas.h" 11*c8dee2aaSAndroid Build Coastguard Worker #include "include/core/SkPath.h" 12*c8dee2aaSAndroid Build Coastguard Worker #include "include/core/SkPathTypes.h" 13*c8dee2aaSAndroid Build Coastguard Worker #include "include/core/SkScalar.h" 14*c8dee2aaSAndroid Build Coastguard Worker #include "include/private/base/SkAssert.h" 15*c8dee2aaSAndroid Build Coastguard Worker 16*c8dee2aaSAndroid Build Coastguard Worker class SkMatrix; 17*c8dee2aaSAndroid Build Coastguard Worker struct SkPoint; 18*c8dee2aaSAndroid Build Coastguard Worker 19*c8dee2aaSAndroid Build Coastguard Worker namespace sksg { 20*c8dee2aaSAndroid Build Coastguard Worker Plane::Plane() = default; 21*c8dee2aaSAndroid Build Coastguard Worker onClip(SkCanvas *,bool) const22*c8dee2aaSAndroid Build Coastguard Workervoid Plane::onClip(SkCanvas*, bool) const {} 23*c8dee2aaSAndroid Build Coastguard Worker onDraw(SkCanvas * canvas,const SkPaint & paint) const24*c8dee2aaSAndroid Build Coastguard Workervoid Plane::onDraw(SkCanvas* canvas, const SkPaint& paint) const { 25*c8dee2aaSAndroid Build Coastguard Worker canvas->drawPaint(paint); 26*c8dee2aaSAndroid Build Coastguard Worker } 27*c8dee2aaSAndroid Build Coastguard Worker onContains(const SkPoint &) const28*c8dee2aaSAndroid Build Coastguard Workerbool Plane::onContains(const SkPoint&) const { return true; } 29*c8dee2aaSAndroid Build Coastguard Worker onRevalidate(InvalidationController *,const SkMatrix &)30*c8dee2aaSAndroid Build Coastguard WorkerSkRect Plane::onRevalidate(InvalidationController*, const SkMatrix&) { 31*c8dee2aaSAndroid Build Coastguard Worker SkASSERT(this->hasInval()); 32*c8dee2aaSAndroid Build Coastguard Worker 33*c8dee2aaSAndroid Build Coastguard Worker return SkRect::MakeLTRB(SK_ScalarMin, SK_ScalarMin, SK_ScalarMax, SK_ScalarMax); 34*c8dee2aaSAndroid Build Coastguard Worker } 35*c8dee2aaSAndroid Build Coastguard Worker onAsPath() const36*c8dee2aaSAndroid Build Coastguard WorkerSkPath Plane::onAsPath() const { 37*c8dee2aaSAndroid Build Coastguard Worker SkPath path; 38*c8dee2aaSAndroid Build Coastguard Worker path.setFillType(SkPathFillType::kInverseWinding); 39*c8dee2aaSAndroid Build Coastguard Worker 40*c8dee2aaSAndroid Build Coastguard Worker return path; 41*c8dee2aaSAndroid Build Coastguard Worker } 42*c8dee2aaSAndroid Build Coastguard Worker 43*c8dee2aaSAndroid Build Coastguard Worker } // namespace sksg 44