/////////////////////////////////////////// // fll02.h /////////////////////////////////////////// // // By: Stephen C. Ferguson // http://www.eclectasy.com/Iterations-et-Flarium24/ // email: fergusonsc@juno.com // ///////////////////////////////////////////////////// /////////////////////////////////////////////////////////////// #define STRICT #define WIN32_LEAN_AND_MEAN #include #include #define zerotol 1e-25 // 1e-20 #define overflow 50 // 50 #define dMAX 1e25 __complex__ double c, c1, c2, c3; __complex__ double z, z1, z2, z3; __complex__ double z4, z5, z6, z7, z8, z12; __complex__ double z16, z24, z36, z48; __complex__ double t, t1, t2, t3; __complex__ double ca, cb, ca2, caa3; __complex__ double zd; __complex__ double X, Y, Z, Z1, C; __complex__ double zsin, zcos, zcos_temp; __complex__ double t, t1, t2, t3, a, a2, aaa2, aa, b, aa3; double exp_zi, exp_zr; double exp_zip, exp_zim; double coszr, sinzr; double ztan; double dt,dt2,dr2; double temp, xtemp, ytemp; double mx, my, zz; typedef struct { //double cx, cy; //double zx, zy; __complex__ c; __complex__ z; double CRMIN, CRMAX, CRMID, CIMIN, CIMAX, CIMID; double CRMIN_NEW, CRMAX_NEW, CRMID_NEW, CIMIN_NEW, CIMAX_NEW, CIMID_NEW; double CRMID_OLD, CIMID_OLD; double CRMID_JUL, CIMID_JUL; double dMag_new, dMagnification; double Radius_x, Radius_y; double rx_ratio, ry_ratio; double xtot, ytot; double xsav, ysav; double dFactor3, dFactor4, dFactor5; double dStrands; double r, g, b; double nRedStep, nBluStep, nGrnStep; double nRedStart, nBluStart, nGrnStart; double nRedSaturate, nBluSaturate, nGrnSaturate; double nRedOffset, nBluOffset, nGrnOffset; char *StrTitle; char *StrDescription; char *szFormulaFile; char *szRenderFile; // Data array pointers double *pXTemp; double *pYTemp; HANDLE tHandle; HINSTANCE hFormulaLib; HINSTANCE hRenderLib; int Width, Height; int Bailout, Maxit, Iteration; int rb_width, rb_height, rb_left, rb_top; int formula; int render; int formula_total; int render_total; int FractalType; int nBlendingMethod; int nColorOrder; int jul, jul_save, inverse; int nRotation; int RedInverse, GrnInverse, BluInverse; int lmapping; int derivative; int nTransform; int power; } CDATA; char cstr[100]; // Complex trig functions __complex__ double clog_z(); __complex__ double clog_t(); __complex__ double ccos_z(); __complex__ double ccos_c(); __complex__ double csin_c(); __complex__ double csin_z(); __complex__ double csin_t(); __complex__ double cexp_z(); __complex__ double cexp1_z(); __complex__ double cexp_c(); __complex__ double cexp1_c(); __complex__ double ctan_z(); __complex__ double ctan_c(); __complex__ double csin(__complex__ double z); __complex__ double ccos(__complex__ double z); __complex__ double ctan(__complex__ double z); void sine_cosine(); void sine_cosine_fabs(); double sum_sqrs_z(); double sum_sqrs_c(); double magnitude_z(); double sum_sqrs_z1(); double sum_sqrs_z3(); double sum_sqrs_zd(); double real_csin_z4(); double imag_csin_z4();