X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fmodules%2Flyr_std%2Fjulia.cpp;h=ad2478e8fd8caa6a974a73102c9f8bb47334a115;hb=334e15ce6c4d9b1f30a168a55e7ef4d31320d568;hp=640cbde0884e2b71112979a58c0fd4f4bdaf8f8c;hpb=21bfc670b83d4c45da9ed1b95063b7e6a007168c;p=synfig.git diff --git a/synfig-core/trunk/src/modules/lyr_std/julia.cpp b/synfig-core/trunk/src/modules/lyr_std/julia.cpp index 640cbde..ad2478e 100644 --- a/synfig-core/trunk/src/modules/lyr_std/julia.cpp +++ b/synfig-core/trunk/src/modules/lyr_std/julia.cpp @@ -1,9 +1,12 @@ -/*! ======================================================================== -** Synfig -** Template File -** $Id: julia.cpp,v 1.1.1.1 2005/01/04 01:23:10 darco Exp $ +/* === S Y N F I G ========================================================= */ +/*! \file julia.cpp +** \brief Implementation of the "Julia Set" layer ** +** $Id$ +** +** \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 @@ -14,6 +17,7 @@ ** 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 ** ** === N O T E S =========================================================== ** @@ -49,10 +53,10 @@ SYNFIG_LAYER_INIT(Julia); SYNFIG_LAYER_SET_NAME(Julia,"julia"); -SYNFIG_LAYER_SET_LOCAL_NAME(Julia,_("Julia Set")); -SYNFIG_LAYER_SET_CATEGORY(Julia,_("Fractals")); +SYNFIG_LAYER_SET_LOCAL_NAME(Julia,N_("Julia Set")); +SYNFIG_LAYER_SET_CATEGORY(Julia,N_("Fractals")); SYNFIG_LAYER_SET_VERSION(Julia,"0.1"); -SYNFIG_LAYER_SET_CVS_ID(Julia,"$Id: julia.cpp,v 1.1.1.1 2005/01/04 01:23:10 darco Exp $"); +SYNFIG_LAYER_SET_CVS_ID(Julia,"$Id$"); /* === P R O C E D U R E S ================================================= */ @@ -115,7 +119,7 @@ Julia::Julia():color_shift(angle::degrees(0)) bailout=4; lp=log(log(bailout)); } - + bool Julia::set_param(const String & param, const ValueBase &value) { @@ -140,7 +144,7 @@ Julia::set_param(const String & param, const ValueBase &value) IMPORT(smooth_outside); IMPORT(broken); - if(param=="iterations" && value.same_as(iterations)) + if(param=="iterations" && value.same_type_as(iterations)) { iterations=value.get(iterations); if(iterations<0) @@ -149,7 +153,7 @@ Julia::set_param(const String & param, const ValueBase &value) iterations=500000; return true; } - if(param=="bailout" && value.same_as(bailout)) + if(param=="bailout" && value.same_type_as(bailout)) { bailout=value.get(bailout); bailout*=bailout; @@ -188,8 +192,8 @@ Julia::get_param(const String & param)const EXPORT_NAME(); EXPORT_VERSION(); - - return ValueBase(); + + return ValueBase(); } Color @@ -199,18 +203,18 @@ Julia::get_color(Context context, const Point &pos)const cr, ci, zr, zi, zr_hold; - + ColorReal - depth, mag; - + depth, mag(0); + Color ret; - + cr=seed[0]; ci=seed[1]; zr=pos[0]; zi=pos[1]; - + for(int i=0;i4) - { + { if(smooth_outside) { // Darco's original mandelbrot smoothing algo @@ -257,7 +261,7 @@ Julia::get_color(Context context, const Point &pos)const if(color_cycle) ret=ret.rotate_uv(color_shift.operator*(depth)).clamped_negative(); - + if(shade_outside) { ColorReal alpha=depth/static_cast(iterations); @@ -286,12 +290,12 @@ Julia::get_color(Context context, const Point &pos)const return ret; } - + Layer::Vocab Julia::get_param_vocab()const { Layer::Vocab ret; - + ret.push_back(ParamDesc("icolor") .set_local_name(_("Inside Color")) .set_description(_("Color of the Set")) @@ -312,7 +316,7 @@ Julia::get_param_vocab()const ret.push_back(ParamDesc("bailout") .set_local_name(_("Bailout ValueBase")) ); - + ret.push_back(ParamDesc("distort_inside") .set_local_name(_("Distort Inside")) ); @@ -343,7 +347,7 @@ Julia::get_param_vocab()const ret.push_back(ParamDesc("color_outside") .set_local_name(_("Color Outside")) ); - + ret.push_back(ParamDesc("color_cycle") .set_local_name(_("Color Cycle")) ); @@ -355,7 +359,7 @@ Julia::get_param_vocab()const .set_local_name(_("Break Set")) .set_description(_("Modify equation to achieve interesting results")) ); - - + + return ret; }