64aee804a6a47424f7994e60558351b8cf2ea4dbcilix#ifndef INKSCAPE_LPE_ANGLE_BISECTOR_H
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix#define INKSCAPE_LPE_ANGLE_BISECTOR_H
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix/*
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix * Authors:
3cfad782faf34c654ec837780ed7b3fe95e82c2eJohan B. C. Engelen * Maximilian Albert <maximilian.albert@gmail.com>
3cfad782faf34c654ec837780ed7b3fe95e82c2eJohan B. C. Engelen * Johan Engelen <j.b.c.engelen@alumnus.utwente.nl>
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix *
3cfad782faf34c654ec837780ed7b3fe95e82c2eJohan B. C. Engelen * Copyright (C) Authors 2007-2012
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix *
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix * Released under GNU GPL, read the file 'COPYING' for more information
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix */
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix#include "live_effects/effect.h"
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix#include "live_effects/parameter/parameter.h"
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
64aee804a6a47424f7994e60558351b8cf2ea4dbcilixnamespace Inkscape {
64aee804a6a47424f7994e60558351b8cf2ea4dbcilixnamespace LivePathEffect {
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
64aee804a6a47424f7994e60558351b8cf2ea4dbcilixnamespace AB {
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix // we use a separate namespace to avoid clashes with other LPEs
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix class KnotHolderEntityLeftEnd;
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix class KnotHolderEntityRightEnd;
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix}
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
64aee804a6a47424f7994e60558351b8cf2ea4dbcilixclass LPEAngleBisector : public Effect {
64aee804a6a47424f7994e60558351b8cf2ea4dbcilixpublic:
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix LPEAngleBisector(LivePathEffectObject *lpeobject);
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix virtual ~LPEAngleBisector();
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński virtual Geom::PathVector doEffect_path (Geom::PathVector const & path_in);
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix friend class AB::KnotHolderEntityLeftEnd;
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix friend class AB::KnotHolderEntityRightEnd;
3cfad782faf34c654ec837780ed7b3fe95e82c2eJohan B. C. Engelen void addKnotHolderEntities(KnotHolder *knotholder, SPDesktop *desktop, SPItem *item);
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
0f2ec604d5ffc1a033c8ced9bc2ef22f52e145a4cilix//private:
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix ScalarParam length_left;
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix ScalarParam length_right;
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix Geom::Point ptA;
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix Geom::Point dir;
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix LPEAngleBisector(const LPEAngleBisector&);
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix LPEAngleBisector& operator=(const LPEAngleBisector&);
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix};
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix} //namespace LivePathEffect
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix} //namespace Inkscape
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix#endif
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix/*
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix Local Variables:
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix mode:c++
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix c-file-style:"stroustrup"
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix indent-tabs-mode:nil
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix fill-column:99
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix End:
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix*/
64aee804a6a47424f7994e60558351b8cf2ea4dbcilix// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :