bca4e2447b2d0a2d5b1d6fb3fed1123a2eaf1eaf
1 #ifndef INKSCAPE_LPE_SKETCH_H
2 #define INKSCAPE_LPE_SKETCH_H
4 /** \file
5 * LPE <sketch> implementation, see lpe-sketch.cpp.
6 */
8 /*
9 * Authors:
10 * JFB, but derived from Johan Engelen!
11 *
12 * Copyright (C) Johan Engelen 2007 <j.b.c.engelen@utwente.nl>
13 *
14 * Released under GNU GPL, read the file 'COPYING' for more information
15 */
17 #include "live_effects/effect.h"
18 #include "live_effects/parameter/parameter.h"
19 #include "live_effects/parameter/random.h"
20 #include "live_effects/parameter/point.h"
22 namespace Inkscape {
23 namespace LivePathEffect {
25 class LPESketch : public Effect {
26 public:
27 LPESketch(LivePathEffectObject *lpeobject);
28 virtual ~LPESketch();
30 virtual Geom::Piecewise<Geom::D2<Geom::SBasis> > doEffect_pwd2 (Geom::Piecewise<Geom::D2<Geom::SBasis> > const & pwd2_in);
32 virtual void doBeforeEffect (SPLPEItem *lpeitem);
34 private:
35 // add the parameters for your effect here:
36 //PointParam testpointA;
37 ScalarParam nbiter_approxstrokes;
38 ScalarParam strokelength;
39 RandomParam strokelength_rdm;
40 ScalarParam strokeoverlap;
41 RandomParam strokeoverlap_rdm;
42 RandomParam ends_tolerance;
43 RandomParam parallel_offset;
44 RandomParam tremble_size;
45 ScalarParam tremble_frequency;
46 ScalarParam nbtangents;
47 ScalarParam tgtscale;
48 ScalarParam tgtlength;
49 RandomParam tgtlength_rdm;
51 LPESketch(const LPESketch&);
52 LPESketch& operator=(const LPESketch&);
54 Geom::Piecewise<Geom::D2<Geom::SBasis> > computePerturbation (double s0, double s1);
56 };
58 } //namespace LivePathEffect
59 } //namespace Inkscape
61 #endif