Index: src/core/SkCanvas.cpp |
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp |
index ce90275047a6466cf9217e32bc0e9505ed8eff36..2be14f225e1c28cd21dd838d78388959ddd22846 100644 |
--- a/src/core/SkCanvas.cpp |
+++ b/src/core/SkCanvas.cpp |
@@ -294,6 +294,8 @@ public: |
SkMatrix fMatrix; |
int fDeferredSaveCount; |
+ SkScalar fCurDrawDepth; |
+ |
MCRec(bool conservativeRasterClip) : fRasterClip(conservativeRasterClip) { |
fFilter = nullptr; |
fLayer = nullptr; |
@@ -1521,6 +1523,17 @@ void SkCanvas::resetMatrix() { |
this->setMatrix(SkMatrix::I()); |
} |
+void SkCanvas::setZ(SkScalar z) { |
+ this->checkForDeferredSave(); |
+ this->fMCRec->fCurDrawDepth = z; |
+ this->didSetZ(z); |
+} |
+ |
+SkScalar SkCanvas::getZ() const { |
+ return this->fMCRec->fCurDrawDepth; |
+} |
+ |
+ |
////////////////////////////////////////////////////////////////////////////// |
void SkCanvas::clipRect(const SkRect& rect, SkRegion::Op op, bool doAA) { |