X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=inline;f=synfig-core%2Ftrunk%2Fsrc%2Fmodules%2Fexample%2Fmetaballs.cpp;h=b365ea5834f241a0bce29865f0b123dc686b315c;hb=6e91754512f0ae9303be32b3bca06904e3866e4f;hp=a1bf71efea40c0aeddb98c9e798ef86e80a8760a;hpb=922e067f6e961d24c9fcad4fbc9527d7642472fa;p=synfig.git diff --git a/synfig-core/trunk/src/modules/example/metaballs.cpp b/synfig-core/trunk/src/modules/example/metaballs.cpp index a1bf71e..b365ea5 100644 --- a/synfig-core/trunk/src/modules/example/metaballs.cpp +++ b/synfig-core/trunk/src/modules/example/metaballs.cpp @@ -54,7 +54,7 @@ using namespace synfig; SYNFIG_LAYER_INIT(Metaballs); SYNFIG_LAYER_SET_NAME(Metaballs,"metaballs"); SYNFIG_LAYER_SET_LOCAL_NAME(Metaballs,N_("Metaballs")); -SYNFIG_LAYER_SET_CATEGORY(Metaballs,N_("Default")); +SYNFIG_LAYER_SET_CATEGORY(Metaballs,N_("Example")); SYNFIG_LAYER_SET_VERSION(Metaballs,"0.1"); SYNFIG_LAYER_SET_CVS_ID(Metaballs,"$Id$"); @@ -68,6 +68,9 @@ Metaballs::Metaballs(): Layer_Composite(1.0,Color::BLEND_STRAIGHT), color(Color::black()) { + centers.push_back(Point( 0, -1.5)); radii.push_back(2.5); weights.push_back(1); + centers.push_back(Point(-2, 1)); radii.push_back(2.5); weights.push_back(1); + centers.push_back(Point( 2, 1)); radii.push_back(2.5); weights.push_back(1); } bool @@ -175,7 +178,12 @@ Color Metaballs::get_color(Context context, const Point &pos)const { if (totaldensity(pos) >= threshold) - return Color::blend(color,context.get_color(pos),get_amount(),get_blend_method()); + { + if(get_amount()==1.0 && get_blend_method()==Color::BLEND_STRAIGHT) + return color; + else + return Color::blend(color,context.get_color(pos),get_amount(),get_blend_method()); + } else return context.get_color(pos); }