X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Flayer_shape.h;h=1b20d522b8e622be6bf3e1aebaba0a70089333fe;hb=9459638ad6797b8139f1e9f0715c96076dbf0890;hp=c01e26b2fc2ee29bf9e67fcc16d166bbcee5bcb2;hpb=5ddcf36f04cfbd10fabda4e3c5633cb27cdd4c0a;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/layer_shape.h b/synfig-core/trunk/src/synfig/layer_shape.h index c01e26b..1b20d52 100644 --- a/synfig-core/trunk/src/synfig/layer_shape.h +++ b/synfig-core/trunk/src/synfig/layer_shape.h @@ -1,11 +1,12 @@ /* === S Y N F I G ========================================================= */ /*! \file layer_shape.h -** \brief Template Header +** \brief Header file for implementation of the "Shape" layer ** -** $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 +** Copyright (c) 2007-2008 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 @@ -43,26 +44,35 @@ 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 + //internal caching struct Intersector; Intersector *edge_table; //exported data Color color; - Point offset; + Point origin; bool invert; bool antialias; int blurtype; Real feather; + WindingStyle winding_style; std::vector< char > bytestream;