** $Id: gradient.h,v 1.1.1.1 2005/01/04 01:23:14 darco Exp $
**
** \legal
-** Copyright (c) 2002 Robert B. Quattlebaum Jr.
+** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
**
-** This software and associated documentation
-** are CONFIDENTIAL and PROPRIETARY property of
-** the above-mentioned copyright holder.
+** This package is free software; you can redistribute it and/or
+** modify it under the terms of the GNU General Public License as
+** published by the Free Software Foundation; either version 2 of
+** the License, or (at your option) any later version.
**
-** You may not copy, print, publish, or in any
-** other way distribute this software without
-** a prior written agreement with
-** the copyright holder.
+** This package is distributed in the hope that it will be useful,
+** but WITHOUT ANY WARRANTY; without even the implied warranty of
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+** General Public License for more details.
** \endlegal
*/
/* ========================================================================= */
{
Real pos;
Color color;
-
+
bool operator<(const GradientCPoint &rhs)const { return pos<rhs.pos; }
bool operator<(const Real &rhs)const { return pos<rhs; }
-
+
GradientCPoint() { }
GradientCPoint(const Real &pos, const Color &color):pos(pos),color(color) { }
}; // END of class GradientCPoint
-
+
/*! \class Gradient
** \brief Color Gradient Class
*/
public:
typedef GradientCPoint CPoint;
private:
-
+
public:
Gradient() { }
-
+
//! Two-Tone Color Gradient Convience Constructor
Gradient(const Color &c1, const Color &c2);
//! You should call this function after changing stuff.
void sort();
-
+
Color operator()(const Real &x, float supersample=0)const;
//! Returns the iterator of the CPoint closest to \a x
//! Returns the iterator of the CPoint with UniqueID \a id
iterator find(const UniqueID &id);
-
+
//! Returns the const_iterator of the CPoint with UniqueID \a id
const_iterator find(const UniqueID &id)const;
}; // END of class Gradient
-
+
}; // END of namespace synfig
/* === E N D =============================================================== */