diff options
author | reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2009-06-29 16:02:20 +0000 |
---|---|---|
committer | reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2009-06-29 16:02:20 +0000 |
commit | 0ad336f8c6f6f0325eee309c9cd501ea432cc33e (patch) | |
tree | 5ce71598d388b28a6ea3d6f03528dc8bb2df88cf /src/core/SkMatrix.cpp | |
parent | 0bfffc59a0d4967a18cc3c4f429af3f706c18511 (diff) |
add shape flatten so they work properly in pictures
add flatten/unflatten to matrix
git-svn-id: http://skia.googlecode.com/svn/trunk@242 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/core/SkMatrix.cpp')
-rw-r--r-- | src/core/SkMatrix.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/core/SkMatrix.cpp b/src/core/SkMatrix.cpp index ac5ae926e0..48fa804d9b 100644 --- a/src/core/SkMatrix.cpp +++ b/src/core/SkMatrix.cpp @@ -1582,6 +1582,20 @@ bool SkMatrix::setPolyToPoly(const SkPoint src[], const SkPoint dst[], /////////////////////////////////////////////////////////////////////////////// +uint32_t SkMatrix::flatten(void* buffer) const { + // TODO write less for simple matrices + if (buffer) { + memcpy(buffer, fMat, 9 * sizeof(SkScalar)); + } + return 9 * sizeof(SkScalar); +} + +uint32_t SkMatrix::unflatten(const void* buffer) { + memcpy(fMat, buffer, 9 * sizeof(SkScalar)); + this->setTypeMask(kUnknown_Mask); + return 9 * sizeof(SkScalar); +} + void SkMatrix::dump() const { SkString str; this->toDumpString(&str); |