Skia
2DGraphicsLibrary
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SkPerlinNoiseShader.h
1 /*
2  * Copyright 2013 Google Inc.
3  *
4  * Use of this source code is governed by a BSD-style license that can be
5  * found in the LICENSE file.
6  */
7 
8 #ifndef SkPerlinNoiseShader_DEFINED
9 #define SkPerlinNoiseShader_DEFINED
10 
11 #include "SkShader.h"
12 
25 class SK_API SkPerlinNoiseShader {
26 public:
41  static sk_sp<SkShader> MakeFractalNoise(SkScalar baseFrequencyX, SkScalar baseFrequencyY,
42  int numOctaves, SkScalar seed,
43  const SkISize* tileSize = nullptr);
44  static sk_sp<SkShader> MakeTurbulence(SkScalar baseFrequencyX, SkScalar baseFrequencyY,
45  int numOctaves, SkScalar seed,
46  const SkISize* tileSize = nullptr);
51  static sk_sp<SkShader> MakeImprovedNoise(SkScalar baseFrequencyX, SkScalar baseFrequencyY,
52  int numOctaves, SkScalar z);
53 
54  SK_DECLARE_FLATTENABLE_REGISTRAR_GROUP()
55 
56 private:
57  SkPerlinNoiseShader() = delete;
58 };
59 
60 #endif
SkPerlinNoiseShader creates an image using the Perlin turbulence function.
Definition: SkPerlinNoiseShader.h:25
Definition: SkSize.h:13