Source Code (Use browser search to find items of interest.)

Class Index

kfract'Julia (./kdegraphics/kfract/julia.h:31)

class Julia : public Fract 
  {
  public:
    Julia();
    void init( double center_x, double center_y, 
                       double dx, double dy,
                       int x_max, int y_max, 
                       int iter_max, double bail_out,
                       double param_x, double param_y );
    int calcPoint( int x, int y );
    double defaultCenterX();
    double defaultCenterY();
    double defaultWidth();
    double defaultBailout();
    double defaultExtraX();
    double defaultExtraY();
  protected:
  private:
    double julia_x, julia_y;
  };


kfract'Julia::Julia() (./kdegraphics/kfract/julia.C:40)

Julia::Julia()
  {
  }



kfract'Julia::init() (./kdegraphics/kfract/julia.C:45)

void Julia::init( double center_x, double center_y, 
                  double dx, double dy,
                  int x_max, int y_max,
                  int iter_max, double bail_out,
                  double param_x, double param_y )
  {
  Fract::init( center_x, center_y, dx, dy,
               x_max, y_max, iter_max, bail_out );
  julia_x = param_x;
  julia_y = param_y;
  }



kfract'Julia::calcPoint() (./kdegraphics/kfract/julia.C:58)

int Julia::calcPoint( int x, int y )
  {
  double r = x_values[x], i = y_values[y]; 
  double r_out = r, i_out = i; 
  double tmp, r2 = r * r, i2 = i * i;
  register int iter = 0;

  while ( ( r2 + i2 < bail ) && ( iter < max_iter ) )
    {
    tmp = 2.0 * r_out * i_out + julia_x;
// This is sort of sneaky because we actually compare the values of the
// last iteration to bailout. But the results are very close to those of
// the correct way and it's significantly faster.
    r_out = ( r2 = r_out * r_out ) - ( i2 = i_out * i_out ) + julia_y;
    i_out = tmp;
    iter++;
    }
  return iter;
  }



kfract'Julia::defaultCenterX() (./kdegraphics/kfract/julia.C:79)

double Julia::defaultCenterX()
  {
  return DEFAULT_X;
  }



kfract'Julia::defaultCenterY() (./kdegraphics/kfract/julia.C:85)

double Julia::defaultCenterY()
  {
  return DEFAULT_Y;
  }



kfract'Julia::defaultWidth() (./kdegraphics/kfract/julia.C:91)

double Julia::defaultWidth()
  {
  return DEFAULT_WIDTH;
  }



kfract'Julia::defaultBailout() (./kdegraphics/kfract/julia.C:97)

double Julia::defaultBailout()
  {
  return DEFAULT_BAILOUT;
  }



kfract'Julia::defaultExtraX() (./kdegraphics/kfract/julia.C:103)

double Julia::defaultExtraX()
  {
  return DEFAULT_JULIA_X;
  }



kfract'Julia::defaultExtraY() (./kdegraphics/kfract/julia.C:109)

double Julia::defaultExtraY()
  {
  return DEFAULT_JULIA_Y;
  }