Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/linkedcell.cpp

    r952f38 r97b825  
    2121/** Constructor for class LinkedCell.
    2222 */
    23 LinkedCell::LinkedCell()
    24 {
    25   LC = NULL;
     23LinkedCell::LinkedCell() :
     24  LC(NULL),
     25  index(-1),
     26  RADIUS(0.)
     27{
    2628  for(int i=0;i<NDIM;i++)
    2729    N[i] = 0;
    28   index = -1;
    29   RADIUS = 0.;
    3030  max.Zero();
    3131  min.Zero();
     
    3636 * \param RADIUS edge length of cells
    3737 */
    38 LinkedCell::LinkedCell(const PointCloud * const set, const double radius)
     38LinkedCell::LinkedCell(const PointCloud * const set, const double radius) :
     39  RADIUS(radius),
     40  LC(NULL),
     41  index(-1)
    3942{
    4043  TesselPoint *Walker = NULL;
    4144
    42   RADIUS = radius;
    43   LC = NULL;
    4445  for(int i=0;i<NDIM;i++)
    4546    N[i] = 0;
    46   index = -1;
    4747  max.Zero();
    4848  min.Zero();
     
    5656  Walker = set->GetPoint();
    5757  for (int i=0;i<NDIM;i++) {
    58     max[i] = Walker->node->at(i);
    59     min[i] = Walker->node->at(i);
     58    max[i] = Walker->at(i);
     59    min[i] = Walker->at(i);
    6060  }
    6161  set->GoToFirst();
     
    6363    Walker = set->GetPoint();
    6464    for (int i=0;i<NDIM;i++) {
    65       if (max[i] < Walker->node->at(i))
    66         max[i] = Walker->node->at(i);
    67       if (min[i] > Walker->node->at(i))
    68         min[i] = Walker->node->at(i);
     65      if (max[i] < Walker->at(i))
     66        max[i] = Walker->at(i);
     67      if (min[i] > Walker->at(i))
     68        min[i] = Walker->at(i);
    6969    }
    7070    set->GoToNext();
     
    9696    Walker = set->GetPoint();
    9797    for (int i=0;i<NDIM;i++) {
    98       n[i] = static_cast<int>(floor((Walker->node->at(i) - min[i])/RADIUS));
     98      n[i] = static_cast<int>(floor((Walker->at(i) - min[i])/RADIUS));
    9999    }
    100100    index = n[0] * N[1] * N[2] + n[1] * N[2] + n[2];
     
    112112 * \param RADIUS edge length of cells
    113113 */
    114 LinkedCell::LinkedCell(LinkedNodes *set, const double radius)
     114LinkedCell::LinkedCell(LinkedNodes *set, const double radius) :
     115  RADIUS(radius),
     116  LC(NULL),
     117  index(-1)
    115118{
    116119  class TesselPoint *Walker = NULL;
    117   RADIUS = radius;
    118   LC = NULL;
    119120  for(int i=0;i<NDIM;i++)
    120121    N[i] = 0;
    121   index = -1;
    122122  max.Zero();
    123123  min.Zero();
     
    130130  LinkedNodes::iterator Runner = set->begin();
    131131  for (int i=0;i<NDIM;i++) {
    132     max[i] = (*Runner)->node->at(i);
    133     min[i] = (*Runner)->node->at(i);
     132    max[i] = (*Runner)->at(i);
     133    min[i] = (*Runner)->at(i);
    134134  }
    135135  for (LinkedNodes::iterator Runner = set->begin(); Runner != set->end(); Runner++) {
    136136    Walker = *Runner;
    137137    for (int i=0;i<NDIM;i++) {
    138       if (max[i] < Walker->node->at(i))
    139         max[i] = Walker->node->at(i);
    140       if (min[i] > Walker->node->at(i))
    141         min[i] = Walker->node->at(i);
     138      if (max[i] < Walker->at(i))
     139        max[i] = Walker->at(i);
     140      if (min[i] > Walker->at(i))
     141        min[i] = Walker->at(i);
    142142    }
    143143  }
     
    167167    Walker = *Runner;
    168168    for (int i=0;i<NDIM;i++) {
    169       n[i] = static_cast<int>(floor((Walker->node->at(i) - min[i])/RADIUS));
     169      n[i] = static_cast<int>(floor((Walker->at(i) - min[i])/RADIUS));
    170170    }
    171171    index = n[0] * N[1] * N[2] + n[1] * N[2] + n[2];
     
    248248 * \return Vector is inside bounding box - true, else - false
    249249 */
    250 bool LinkedCell::SetIndexToVector(const Vector * const x) const
     250bool LinkedCell::SetIndexToVector(const Vector & x) const
    251251{
    252252  for (int i=0;i<NDIM;i++)
    253     n[i] = (int)floor((x->at(i) - min[i])/RADIUS);
     253    n[i] = (int)floor((x.at(i) - min[i])/RADIUS);
    254254
    255255  return CheckBounds();
     
    264264  bool status = false;
    265265  for (int i=0;i<NDIM;i++) {
    266     n[i] = static_cast<int>(floor((Walker->node->at(i) - min[i])/RADIUS));
     266    n[i] = static_cast<int>(floor((Walker->at(i) - min[i])/RADIUS));
    267267  }
    268268  index = n[0] * N[1] * N[2] + n[1] * N[2] + n[2];
     
    404404      Walker = *Runner;
    405405      //Log() << Verbose(1) << "Current neighbour is at " << *Walker->node << "." << endl;
    406       if ((center->DistanceSquared(*Walker->node) - radiusSquared) < MYEPSILON) {
     406      if ((Walker->DistanceSquared(*center) - radiusSquared) < MYEPSILON) {
    407407        TesselList->push_back(Walker);
    408408      }
Note: See TracChangeset for help on using the changeset viewer.