#ifndef D2CIRCLE_H
#define D2CIRCLE_H

#include <point.h>

#include <d2func.h>

typedef point2<double> pt2;
typedef point2<double> const pt2c;

class d2circle : public d2func
{
public:

  pt2 center;
  double radius;

  d2circle( pt2c & _center, double const _radius )
    : center(_center), radius(_radius) {}

  virtual double const eval( pt2c & X ) const
  { 
    pt2 Y(X);
    Y -= center;
    return radius*radius - Y.dot();
  }

};

#endif



