summaryrefslogtreecommitdiffstats
path: root/src/live_effects/lpe-bendpath.h
diff options
context:
space:
mode:
authorJohan B. C. Engelen <jbc.engelen@swissonline.ch>2008-04-08 17:50:06 +0000
committerjohanengelen <johanengelen@users.sourceforge.net>2008-04-08 17:50:06 +0000
commit586cb25f967bbac8815aba77781d21f5d0763b89 (patch)
treeddf2afe639c6e9d591555d88739bec1f225c951d /src/live_effects/lpe-bendpath.h
parentsince marker size depends on stroke width, write stroke width if there's no s... (diff)
downloadinkscape-586cb25f967bbac8815aba77781d21f5d0763b89.tar.gz
inkscape-586cb25f967bbac8815aba77781d21f5d0763b89.zip
rename LPEPathAlongPath -> LPEBendPath
(bzr r5385)
Diffstat (limited to 'src/live_effects/lpe-bendpath.h')
-rw-r--r--src/live_effects/lpe-bendpath.h61
1 files changed, 61 insertions, 0 deletions
diff --git a/src/live_effects/lpe-bendpath.h b/src/live_effects/lpe-bendpath.h
new file mode 100644
index 000000000..53e580c3a
--- /dev/null
+++ b/src/live_effects/lpe-bendpath.h
@@ -0,0 +1,61 @@
+#ifndef INKSCAPE_LPE_BENDPATH_H
+#define INKSCAPE_LPE_BENDPATH_H
+
+/*
+ * Inkscape::LPEPathAlongPath
+ *
+ * Copyright (C) Johan Engelen 2007 <j.b.c.engelen@utwente.nl>
+ * Copyright (C) Steren Giannini 2008 <steren.giannini@gmail.com>
+ *
+ * Released under GNU GPL, read the file 'COPYING' for more information
+ */
+
+#include "live_effects/effect.h"
+#include "live_effects/parameter/path.h"
+#include "live_effects/parameter/enum.h"
+#include "live_effects/parameter/bool.h"
+
+#include <2geom/sbasis.h>
+#include <2geom/sbasis-geometric.h>
+#include <2geom/bezier-to-sbasis.h>
+#include <2geom/sbasis-to-bezier.h>
+#include <2geom/d2.h>
+#include <2geom/piecewise.h>
+
+#include "live_effects/lpegroupbbox.h"
+
+namespace Inkscape {
+namespace LivePathEffect {
+
+//for Bend path on group : we need information concerning the group Bounding box
+class LPEBendPath : public Effect, LivePathEffect_group_bbox {
+public:
+ LPEBendPath(LivePathEffectObject *lpeobject);
+ virtual ~LPEBendPath();
+
+ virtual void doBeforeEffect (SPLPEItem *lpeitem);
+
+ virtual Geom::Piecewise<Geom::D2<Geom::SBasis> > doEffect_pwd2 (Geom::Piecewise<Geom::D2<Geom::SBasis> > & pwd2_in);
+
+ virtual void resetDefaults(SPItem * item);
+
+ virtual void transform_multiply(Geom::Matrix const& postmul, bool set);
+
+private:
+ PathParam bend_path;
+ ScalarParam prop_scale;
+ BoolParam scale_y_rel;
+ BoolParam vertical_pattern;
+
+ bool groupSpecialBehavior;
+
+ void on_pattern_pasted();
+
+ LPEBendPath(const LPEBendPath&);
+ LPEBendPath& operator=(const LPEBendPath&);
+};
+
+}; //namespace LivePathEffect
+}; //namespace Inkscape
+
+#endif