Ignore:
Timestamp:
Jun 21, 2006, 10:38:26 AM (19 years ago)
Author:
ansari
Message:

1/ Mise en place de la prise en charge du schema de pixelisation NESTED dans
SphereHEALPix<T>
2/ petites corrections sur PixelMap<T> et cartes speheriques

Reza 21/06/2006

File:
1 edited

Legend:

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

    r2973 r2978  
    5252         { return  HEALPix::ResolToSizeIndex(res); }
    5353
    54 SphereHEALPix();
    55 SphereHEALPix(int_4 m);
     54SphereHEALPix(bool fgring=true);
     55SphereHEALPix(int_4 m, bool fgring=true);
    5656SphereHEALPix(const SphereHEALPix<T>& s, bool share);
    5757SphereHEALPix(const SphereHEALPix<T>& s);
     
    9393virtual T SetPixels(T v);
    9494
    95 /*! Pixel Solid angle  (steradians)
     95/*! \brief Pixel Solid angle  (steradians)
    9696
    9797    All the pixels have the same solid angle. The dummy argument is
     
    108108
    109109virtual void Resize(int_4 m);
    110 
    111 /*!
    112 
    113 \return type of storage of the map : RING or NESTED
    114 
    115 at the moment, always RING
    116 */
    117 inline virtual string TypeOfMap() const {return string("RING");};
    118 
    119 
     110virtual string TypeOfMap() const;
     111
     112inline bool IfRING() const { return fgring_; }
     113inline bool IfNESTED() const { return ( (fgring_) ? false : true ); }
     114
     115/*
    120116virtual T& PixValNest(int_4 k);
    121117virtual T const& PixValNest(int_4 k) const;
    122 
    123118virtual int_4 PixIndexSphNest(double theta,double phi) const;
    124 
    125119virtual void PixThetaPhiNest(int_4 k,double& theta,double& phi) const;
     120*/
    126121
    127122void Pixelize(int_4);
     
    138133inline void Print(ostream& os) const { print(os); }
    139134
    140 
    141 
    142  
    143 
    144 
    145 
    146 // Operations diverses  = , +=, ...
    147 
     135//--------------------- Operations diverses  = , +=, ...
    148136
    149137SphereHEALPix<T>& Set(const SphereHEALPix<T>& a);
     
    153141// A += -= *= /= x (ajoute, soustrait, ... x a tous les elements)
    154142
    155   //! Fill SphereHEALPix with all elements equal to \b x
     143//! Fill SphereHEALPix with all elements equal to \b x
    156144virtual SphereHEALPix<T>& SetT(T a);
    157145inline  SphereHEALPix<T>& operator = (T a) {return SetT(a);}
     
    202190void SetThetaSlices();
    203191
    204 inline void setParameters(int_4 nside, int_4 nbpixels, double solangle)
    205   {
    206     nSide_= nside;
    207     nPix_= nbpixels;
    208     omeg_= solangle;
    209   }
     192inline void setParameters(int_4 nside, int_4 nbpixels, double solangle,
     193                          bool fgring)
     194{
     195  nSide_= nside;
     196  nPix_= nbpixels;
     197  omeg_= solangle;
     198  fgring_ = fgring;
     199}
    210200
    211201// ------------- variables internes -----------------------
     
    214204int_4 nPix_;
    215205double omeg_;
     206bool fgring_;  // true -> RING pixelisation , false -> NESTED
    216207
    217208NDataBlock<T> pixels_;
    218 NDataBlock<int_4> sliceBeginIndex_;         // Rationalisation Mac. D.Y.
     209NDataBlock<int_4> sliceBeginIndex_;    // Indices in RING scheme
    219210NDataBlock<int_4> sliceLenght_;
    220211
Note: See TracChangeset for help on using the changeset viewer.