Author: Carlos Lopez <genet...@gmail.com>
Date:   Mon Apr  8 22:19:55 2013 +0200

New member get_cairocolor for Metaballs

---

 synfig-core/src/modules/mod_example/metaballs.cpp |   10 ++++++++++
 synfig-core/src/modules/mod_example/metaballs.h   |    1 +
 2 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/synfig-core/src/modules/mod_example/metaballs.cpp 
b/synfig-core/src/modules/mod_example/metaballs.cpp
index 44ef9ec..ca3913d 100644
--- a/synfig-core/src/modules/mod_example/metaballs.cpp
+++ b/synfig-core/src/modules/mod_example/metaballs.cpp
@@ -221,6 +221,16 @@ Metaballs::get_color(Context context, const Point 
&pos)const
                return 
Color::blend(gradient(totaldensity(pos)),context.get_color(pos),get_amount(),get_blend_method());
 }
 
+CairoColor
+Metaballs::get_cairocolor(Context context, const Point &pos)const
+{
+       if(get_amount()==1.0 && get_blend_method()==Color::BLEND_STRAIGHT)
+               return CairoColor(gradient(totaldensity(pos)));
+       else
+               return 
CairoColor::blend(CairoColor(gradient(totaldensity(pos))),context.get_cairocolor(pos),get_amount(),get_blend_method());
+}
+
+
 bool
 Metaballs::accelerated_render(Context context,Surface *surface,int quality, 
const RendDesc &renddesc, ProgressCallback *cb)const
 {
diff --git a/synfig-core/src/modules/mod_example/metaballs.h 
b/synfig-core/src/modules/mod_example/metaballs.h
index de6e95f..1c0a5da 100644
--- a/synfig-core/src/modules/mod_example/metaballs.h
+++ b/synfig-core/src/modules/mod_example/metaballs.h
@@ -68,6 +68,7 @@ public:
        virtual synfig::ValueBase get_param(const synfig::String & param)const;
 
        virtual synfig::Color get_color(synfig::Context context, const 
synfig::Point &pos)const;
+       virtual synfig::CairoColor get_cairocolor(synfig::Context context, 
const synfig::Point &pos)const;
 
        virtual bool accelerated_render(synfig::Context context,synfig::Surface 
*surface,int quality, const synfig::RendDesc &renddesc, 
synfig::ProgressCallback *cb)const;
 


------------------------------------------------------------------------------
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire 
the most talented Cisco Certified professionals. Visit the 
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html
_______________________________________________
Synfig-devl mailing list
Synfig-devl@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/synfig-devl

Reply via email to