Salome HOME
0020128: EDF SMESH 926 : Quadratic conversion of BLSURF mesh
[modules/smesh.git] / src / SMESH / SMESH_Octree.cxx
index 93d241c7e3232ec29be81313474a3c444e08ec34..4642fa61da1e918da114a3f2546445e2318f71a4 100644 (file)
@@ -1,6 +1,6 @@
-//  SMESH  SMESH_Octree : global Octree implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SMESH  SMESH_Octree : global Octree implementation
 //
-// File      : SMESH_Octree.cxx
-// Created   : Tue Jan 16 16:00:00 2007
-// Author    : Nicolas Geimer & AurĂ©lien Motteux(OCC)
-// Module    : SMESH
+//  File      : SMESH_Octree.cxx
+//  Created   : Tue Jan 16 16:00:00 2007
+//  Author    : Nicolas Geimer & AurĂ©lien Motteux(OCC)
+//  Module    : SMESH
 
 #include "SMESH_Octree.hxx"
 
@@ -35,6 +35,7 @@
  */
 //===========================================================================
 SMESH_Octree::SMESH_Octree (const int maxLevel, const double minBoxSize):
+    myChildren(NULL),
     myFather(NULL),
     myLevel(0),
     myMaxLevel(maxLevel),
@@ -57,7 +58,7 @@ SMESH_Octree::~SMESH_Octree ()
     {
       for(int i = 0; i<8; i++)
         delete myChildren[i];
-      delete[] myChildren ;
+      delete[] myChildren;
     }
   }
   delete myBox;
@@ -148,10 +149,10 @@ void SMESH_Octree::buildChildren()
   Standard_Real XminChild, YminChild, ZminChild;
   Bnd_B3d* box;
   gp_XYZ minChild;
-  for (int i =0; i<8; i++)
+  for (int i = 0; i < 8; i++)
   {
-    // We build the eight boxes, we need 2 points to do that.
-    // Min, and Mid
+    // We build the eight boxes, we need 2 points to do that:
+    // Min and Mid
     // In binary, we can write i from 0 to 7
     // For instance :
     // 5 is 101, it corresponds here in coordinates to ZYX
@@ -160,14 +161,14 @@ void SMESH_Octree::buildChildren()
     // Same scheme for X and Z
     // I need the minChild to build the Bnd_B3d box.
 
-    XminChild= (i%2==0)?min.X():mid.X();
-    YminChild= ((i%4)/2==0)?min.Y():mid.Y();
-    ZminChild= (i<4)?min.Z():mid.Z();
+    XminChild = (i%2==0)?min.X():mid.X();
+    YminChild = ((i%4)/2==0)?min.Y():mid.Y();
+    ZminChild = (i<4)?min.Z():mid.Z();
     minChild.SetCoord(XminChild, YminChild, ZminChild);
 
     box = new Bnd_B3d(minChild+childHsize,childHsize);
     // The child is of the same type than its father (For instance, a SMESH_OctreeNode)
-    // We allocate the memory we need fot the child
+    // We allocate the memory we need for the child
     myChildren[i] = allocateOctreeChild();
     // and we assign to him its box.
     myChildren[i]->setBox(box);
@@ -178,6 +179,6 @@ void SMESH_Octree::buildChildren()
   buildChildrenData();
 
   //After we pass to the next level of the Octree
-  for (int i =0; i<8; i++)
+  for (int i = 0; i < 8; i++)
     myChildren[i]->Compute();
 }