1 #ifndef MeasAlgoShapeletBounds_H
2 #define MeasAlgoShapeletBounds_H
28 {
_z = rhs.
_z;
return *
this; }
31 {
_z=rhs;
return *
this; }
33 operator std::complex<double>() {
return _z; }
36 {
return _z - p2.
_z; }
42 {
_z *=
x;
return *
this; }
45 {
_z /=
x;
return *
this; }
48 {
_z += z2;
return *
this; }
52 {
_z -= z2;
return *
this; }
56 double getX()
const {
return(
_z.real()); }
58 double getY()
const {
return(
_z.imag()); }
60 void read(std::istream& fin);
62 void write(std::ostream& fout)
const;
66 std::complex<double>
_z;
71 const std::complex<double>& z1,
const Position& p2)
79 { pos.
write(os);
return os; }
82 { pos.
read(os);
return os; }
93 Bounds(
double x1,
double x2,
double y1,
double y2) :
150 std::vector<Bounds>
quarter()
const;
152 std::vector<Bounds>
divide(
int nx,
int ny)
const;
154 void write(std::ostream& fout)
const;
156 void read(std::istream& fin);
178 { b.
write(fout);
return fout;}
181 { b.
read(fin);
return fin;}
Position(const Position &rhs)
std::vector< Bounds > divide(int nx, int ny) const
Position & operator=(const std::complex< double > &rhs)
bool operator==(const Bounds &rhs) const
void operator+=(const Position &pos)
Bounds(double x1, double x2, double y1, double y2)
std::vector< Bounds > quarter() const
void read(std::istream &fin)
Position operator+(const std::complex< double > &z2) const
Position(double x, double y)
std::ostream & operator<<(std::ostream &os, const Position &pos)
std::complex< double > operator-(const std::complex< double > &z1, const Position &p2)
Position operator-(const std::complex< double > &z2) const
bool intersects(const Bounds &b2) const
void write(std::ostream &fout) const
Position & operator-=(const std::complex< double > &z2)
void write(std::ostream &fout) const
Position getCenter() const
Bounds(const Position &pos)
std::complex< double > operator/(const Position &p1, double x)
bool includes(const Position &pos) const
Bounds operator&(const Bounds &rhs) const
Position & operator=(const Position &rhs)
void addXBorder(double d)
Position(const std::complex< double > &rhs)
std::istream & operator>>(std::istream &os, Position &pos)
Position & operator+=(const std::complex< double > &z2)
Position & operator*=(double x)
std::complex< double > operator-(const Position &p2) const
afw::table::Key< double > b
std::complex< double > _z
void read(std::istream &fin)
Position & operator/=(double x)
void addYBorder(double d)