synfig-core  1.0.3
mandelbrot.h
Go to the documentation of this file.
1 /* === S Y N F I G ========================================================= */
25 /* === S T A R T =========================================================== */
26 
27 #ifndef __SYNFIG_MANDELBROT_H
28 #define __SYNFIG_MANDELBROT_H
29 
30 /* === H E A D E R S ======================================================= */
31 
32 #include <synfig/layer.h>
33 #include <synfig/color.h>
34 #include <synfig/angle.h>
35 #include <synfig/gradient.h>
36 
37 /* === M A C R O S ========================================================= */
38 
39 /* === T Y P E D E F S ===================================================== */
40 
41 /* === C L A S S E S & S T R U C T S ======================================= */
42 
43 using namespace synfig;
44 using namespace std;
45 using namespace etl;
46 
47 class Mandelbrot : public Layer
48 {
50 
51 private:
53  ValueBase param_iterations;
55  ValueBase param_bailout;
56  Real lp;
58  ValueBase param_broken;
59 
61  ValueBase param_distort_inside;
63  ValueBase param_shade_inside;
65  ValueBase param_solid_inside;
67  ValueBase param_invert_inside;
69  ValueBase param_gradient_inside;
71  ValueBase param_gradient_offset_inside;
73  ValueBase param_gradient_loop_inside;
75  ValueBase param_distort_outside;
77  ValueBase param_shade_outside;
79  ValueBase param_solid_outside;
81  ValueBase param_invert_outside;
83  ValueBase param_gradient_outside;
85  ValueBase param_smooth_outside;
87  ValueBase param_gradient_offset_outside;
89  ValueBase param_gradient_scale_outside;
90 
91 public:
92  Mandelbrot();
93 
94  virtual bool set_param(const String &param, const ValueBase &value);
95  virtual ValueBase get_param(const String &param)const;
96  virtual Color get_color(Context context, const Point &pos)const;
97  virtual Vocab get_param_vocab()const;
98 };
99 
100 /* === E N D =============================================================== */
101 
102 #endif