skia2/include/utils/SkPathUtils.h
jcgregorio bdb0bf5f88 Revert of remove unused (by clients) SkPathUtils (patchset #1 id:1 of https://codereview.chromium.org/1088383003/)
Reason for revert:
This change is causing the DEPS roll to fail:

http://build.chromium.org/p/tryserver.chromium.linux/builders/android_chromium_gn_compile_rel/builds/78771/steps/gn/logs/stdio

Original issue's description:
> remove unused (by clients) SkPathUtils
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/aab35d91b8b80acd1902594bbf542083fdfa4bb7

TBR=scroggo@google.com,reed@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1060703003
2015-04-16 09:47:36 -07:00

41 lines
1.3 KiB
C++

/*
* CAUTION: EXPERIMENTAL CODE
*
* This code is not to be used and will not be supported
* if it fails on you. DO NOT USE!
*
*/
#ifndef SkPathUtils_DEFINED
#define SkPathUtils_DEFINED
#include "SkPath.h"
/*
* The following methods return the boundary path given a 1-bit bitmap, specified
* by width/height and stride. The bits are interpreted as 1 being "in" the path,
* and 0 being "out". The bits are interpreted as MSB on the left, and LSB on the right.
*/
class SK_API SkPathUtils {
public:
/**
This variation iterates the binary data sequentially (as in scanline fashion)
and will add each run of 1's to the path as a rectangular path. Upon parsing
all binary data the path is simplified using the PathOps::Simplify() method.
*/
static void BitsToPath_Path(SkPath* path, const char* bitmap,
int w, int h, int rowBytes);
/**
This variation utilizes the SkRegion class to generate paths, adding
each run of 1's to the SkRegion as an SkIRect. Upon parsing the entirety
of the binary the SkRegion is converted to a Path via getBoundaryPath().
*/
static void BitsToPath_Region(SkPath* path, const char* bitmap,
int w, int h, int rowBytes);
};
#endif