Code

now that selection description includes style (filtered, clipped), we need to update...
[inkscape.git] / src / live_effects / lpe-sketch.h
1 /** \file
2  * @brief LPE sketch effect implementation, see lpe-sketch.cpp.
3  */
4 /* Authors:
5  *   Jean-Francois Barraud <jf.barraud@gmail.com>
6  *   Johan Engelen <j.b.c.engelen@utwente.nl>
7  *
8  * Copyright (C) 2007 Authors
9  *
10  * Released under GNU GPL, read the file 'COPYING' for more information
11  */
13 #ifndef INKSCAPE_LPE_SKETCH_H
14 #define INKSCAPE_LPE_SKETCH_H
16 #include "live_effects/effect.h"
17 #include "live_effects/parameter/parameter.h"
18 #include "live_effects/parameter/random.h"
19 #include "live_effects/parameter/point.h"
21 namespace Inkscape {
22 namespace LivePathEffect {
24 class LPESketch : public Effect {
25 public:
26     LPESketch(LivePathEffectObject *lpeobject);
27     virtual ~LPESketch();
29     virtual Geom::Piecewise<Geom::D2<Geom::SBasis> > doEffect_pwd2 (Geom::Piecewise<Geom::D2<Geom::SBasis> > const & pwd2_in);
31     virtual void doBeforeEffect (SPLPEItem *lpeitem);
33 private:
34     // add the parameters for your effect here:
35     //PointParam testpointA;
36     ScalarParam nbiter_approxstrokes;
37     ScalarParam strokelength;
38     RandomParam strokelength_rdm;
39     ScalarParam strokeoverlap;
40     RandomParam strokeoverlap_rdm;
41     RandomParam ends_tolerance;
42     RandomParam parallel_offset;
43     RandomParam tremble_size;
44     ScalarParam tremble_frequency;
45     ScalarParam nbtangents;
46     ScalarParam tgtscale;
47     ScalarParam tgtlength;
48     RandomParam tgtlength_rdm;
50     LPESketch(const LPESketch&);
51     LPESketch& operator=(const LPESketch&);
53     Geom::Piecewise<Geom::D2<Geom::SBasis> > computePerturbation (double s0, double s1);
55 };
57 } //namespace LivePathEffect
58 } //namespace Inkscape
60 #endif
62 /*
63   Local Variables:
64   mode:c++
65   c-file-style:"stroustrup"
66   c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
67   indent-tabs-mode:nil
68   fill-column:99
69   End:
70 */
71 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :