X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Fcolor.h;h=f21a396fd827f7aa81a6bf85d06d110fbd5475fe;hb=37600b4b217caa5e316984ec0b035c5e8f9698af;hp=a5455c1faf4112ac10aefd52847c01f5e12f729c;hpb=7f4c7141c21b2d140d1ea249a468b27d29831081;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/color.h b/synfig-core/trunk/src/synfig/color.h index a5455c1..f21a396 100644 --- a/synfig-core/trunk/src/synfig/color.h +++ b/synfig-core/trunk/src/synfig/color.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 @@ -44,6 +45,11 @@ /* === M A C R O S ========================================================= */ +#define use_colorspace_gamma() App::use_colorspace_gamma +#define colorspace_gamma() (2.2f) +#define gamma_in(x) ((x>=0) ? pow((float)x,1.0f/colorspace_gamma()) : -pow((float)-x,1.0f/colorspace_gamma())) +#define gamma_out(x) ((x>=0) ? pow((float)x, colorspace_gamma()) : -pow((float)-x, colorspace_gamma())) + #ifdef WIN32 #include #ifndef isnan @@ -204,7 +210,11 @@ public: } public: - Color() /*:r_(0), g_(0), b_(0), a_(0)*/ { } + // ETL/trunk/ETL/_gaussian.h does: + // SR1=SR2=SR3=typename T::value_type(); + // and expects that to give it initialised colors + // Otherwise the 'gaussian' blur type is random. + Color() :a_(0), r_(0), g_(0), b_(0) { } Color(const value_type &f) :a_(f),r_(f), g_(f), b_(f) { } Color(int f) :a_(f),r_(f), g_(f), b_(f) { }