X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Fcurveset.h;h=a34976a4ebf3ae8ec6b5dec90856b090421ac8af;hb=9459638ad6797b8139f1e9f0715c96076dbf0890;hp=4b6c158d0df520e55860c42066f679cbf25888b4;hpb=e8a065f2385c219c511b57dac52786120bfa097d;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/curveset.h b/synfig-core/trunk/src/synfig/curveset.h index 4b6c158..a34976a 100644 --- a/synfig-core/trunk/src/synfig/curveset.h +++ b/synfig-core/trunk/src/synfig/curveset.h @@ -2,7 +2,7 @@ /*! \file curveset.h ** \brief Curve Set Header ** -** $Id: curveset.h,v 1.1.1.1 2005/01/04 01:23:14 darco Exp $ +** $Id$ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley @@ -38,28 +38,28 @@ namespace synfig { class BLinePoint; - + struct CurvePoint { Point p; Point l,r; - + CurvePoint () {} CurvePoint(const Point &pin, const Vector &left, const Vector &right); - + CurvePoint(const BLinePoint &bpoint); }; - -class CurveSet + +class CurveSet { bool invert; //winding order... - + void CleanUp(int curve = 0); public: - + typedef std::vector region; typedef std::vector set_type; - + set_type set; //specifies a region object (assumes looping) void SetClamp(int &i, int &si); @@ -68,7 +68,7 @@ public: CurveSet() { } - + //anything supporting iterator type operations template < typename Iterator > CurveSet(Iterator begin, Iterator end, bool invert = false) @@ -76,12 +76,12 @@ public: set.push_back(std::vector(begin,end)); CleanUp(invert); } - - CurveSet operator &(const CurveSet &rhs) const; //intersect - CurveSet operator |(const CurveSet &rhs) const; //union - CurveSet operator -(const CurveSet &rhs) const; //subtract - - + + CurveSet operator&(const CurveSet &rhs) const; //intersect + CurveSet operator|(const CurveSet &rhs) const; //union + CurveSet operator-(const CurveSet &rhs) const; //subtract + + //Point containment int intersect(const Point &p) const; };