adacc7067a
https://codereview.chromium.org/27192003/ git-svn-id: http://skia.googlecode.com/svn/trunk@11764 2bbb7eff-a529-9590-31e7-b0007b416f81
51 lines
1.2 KiB
C++
51 lines
1.2 KiB
C++
|
|
/*
|
|
* Copyright 2011 Google Inc.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
* found in the LICENSE file.
|
|
*/
|
|
#ifndef SkMeshUtils_DEFINED
|
|
#define SkMeshUtils_DEFINED
|
|
|
|
#include "SkPoint.h"
|
|
#include "SkColor.h"
|
|
|
|
class SkBitmap;
|
|
class SkCanvas;
|
|
class SkPaint;
|
|
|
|
class SkMeshIndices {
|
|
public:
|
|
SkMeshIndices();
|
|
~SkMeshIndices();
|
|
|
|
bool init(int texW, int texH, int rows, int cols) {
|
|
return this->init(NULL, NULL, texW, texH, rows, cols);
|
|
}
|
|
|
|
bool init(SkPoint tex[], uint16_t indices[],
|
|
int texW, int texH, int rows, int cols);
|
|
|
|
int indexCount() const { return fIndexCount; }
|
|
const uint16_t* indices() const { return fIndices; }
|
|
|
|
size_t texCount() const { return fTexCount; }
|
|
const SkPoint* tex() const { return fTex; }
|
|
|
|
private:
|
|
int fIndexCount, fTexCount;
|
|
SkPoint* fTex;
|
|
uint16_t* fIndices;
|
|
void* fStorage; // may be null
|
|
};
|
|
|
|
class SkMeshUtils {
|
|
public:
|
|
static void Draw(SkCanvas*, const SkBitmap&, int rows, int cols,
|
|
const SkPoint verts[], const SkColor colors[],
|
|
const SkPaint& paint);
|
|
};
|
|
|
|
#endif
|