Ignore:
Timestamp:
Jun 27, 2001, 10:14:39 AM (24 years ago)
Author:
ansari
Message:

Operateurs arithmetiques corriges,completes sur les PixelMap (LocalMap et SphericalMaps) - Reza 27/6/2001

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaLib/SkyMap/spherehealpix.h

    r1429 r1551  
    171171  virtual SphereHEALPix<T>&  MulElt(const SphereHEALPix<T>& a);
    172172  inline  SphereHEALPix<T>&  operator *= (const SphereHEALPix<T>& a)  { return MulElt(a); }
     173  virtual SphereHEALPix<T>&  DivElt(const SphereHEALPix<T>& a);
     174  inline  SphereHEALPix<T>&  operator /= (const SphereHEALPix<T>& a)  { return DivElt(a); }
    173175
    174176
     
    278280    return result; }
    279281
     282////////////////////////////////////////////////////////////////
     283// Surcharge d'operateurs C = A (*,/) B
     284
     285/*! \ingroup SkyMap \fn operator*(const SphereHEALPix<T>&,const SphereHEALPix<T>&)
     286  \brief Operator SphereHEALPix = SphereHEALPix * SphereHEALPix (pixel by pixel multiply) */
     287template <class T>
     288inline SphereHEALPix<T> operator * (const SphereHEALPix<T>& a,const SphereHEALPix<T>& b)
     289    { SphereHEALPix<T> result; result.SetTemp(true);
     290    if (b.IsTemp())  { result.Share(b); result.MulElt(a); }
     291    else { result.CloneOrShare(a); result.MulElt(b); }
     292    return result; }
     293
     294/*! \ingroup SkyMap \fn operator/(const SphereHEALPix<T>&,const SphereHEALPix<T>&)
     295  \brief Operator SphereHEALPix = SphereHEALPix / SphereHEALPix (pixel by pixel divide) */
     296template <class T>
     297inline SphereHEALPix<T> operator / (const SphereHEALPix<T>& a,const SphereHEALPix<T>& b)
     298    { SphereHEALPix<T> result; result.SetTemp(true);
     299    if (b.IsTemp())  { result.Share(b); result.DivElt(a); }
     300    else { result.CloneOrShare(a); result.DivElt(b); }
     301    return result; }
     302
    280303} // Fin du namespace
    281304
Note: See TracChangeset for help on using the changeset viewer.