X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Flayer_shape.h;h=e383ed41bd3b80c9000a2f0b3c6aa1b3edc2fb08;hb=cfd329e6c6384164181342f3a064935f4d69f078;hp=69a285b0c951883cd630fdac0a0e509db6eceac7;hpb=cc54c38609ee9745ad678e5e9b9d7d2912be9c95;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/layer_shape.h b/synfig-core/trunk/src/synfig/layer_shape.h index 69a285b..e383ed4 100644 --- a/synfig-core/trunk/src/synfig/layer_shape.h +++ b/synfig-core/trunk/src/synfig/layer_shape.h @@ -6,6 +6,7 @@ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley +** Copyright (c) 2007 Chris Moore ** ** This package is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as @@ -48,9 +49,17 @@ 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 + //internal caching struct Intersector; Intersector *edge_table; @@ -63,6 +72,7 @@ private: int blurtype; Real feather; + WindingStyle winding_style; std::vector< char > bytestream;