X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Flayer_shape.h;h=d083cee8c52e846e2ed427fb73dc2764a861f2d9;hb=5687b33f346236ec6584613015c3e836ead287fd;hp=0e9dae1fbfecbb91b4bb674ec997a117404a8cc4;hpb=e8a065f2385c219c511b57dac52786120bfa097d;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/layer_shape.h b/synfig-core/trunk/src/synfig/layer_shape.h index 0e9dae1..d083cee 100644 --- a/synfig-core/trunk/src/synfig/layer_shape.h +++ b/synfig-core/trunk/src/synfig/layer_shape.h @@ -2,7 +2,7 @@ /*! \file layer_shape.h ** \brief Template Header ** -** $Id: layer_shape.h,v 1.2 2005/01/24 03:08:18 darco Exp $ +** $Id$ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley @@ -41,31 +41,40 @@ /* === C L A S S E S & S T R U C T S ======================================= */ namespace synfig { - + /*! \class Layer_Shape -** \beief writeme */ +** \brief writeme */ class Layer_Shape : public Layer_Composite, public Layer_NoDeform { SYNFIG_LAYER_MODULE_EXT - + + enum WindingStyle + { + WINDING_NON_ZERO=0, //!< less than -1 --> 1; -1 --> 1; 0 --> 0; 1 --> 1; greater than 1 --> 1 + WINDING_EVEN_ODD=1, //!< add or subtract multiples of 2 to get into range -1:1, then as above + + WINDING_END=2 //!< \internal + }; + private: - + //internal cacheing struct Intersector; Intersector *edge_table; - + //exported data Color color; - + Point offset; bool invert; bool antialias; - + int blurtype; Real feather; - + WindingStyle winding_style; + std::vector< char > bytestream; - + //for use in creating the bytestream int lastbyteop; int lastoppos; @@ -95,7 +104,7 @@ public: virtual bool set_param(const String & param, const synfig::ValueBase &value); virtual ValueBase get_param(const String & param)const; - + virtual Vocab get_param_vocab()const; virtual Color get_color(Context context, const Point &pos)const;