29 #ifndef vtkHyperTreeGridScales_h 30 #define vtkHyperTreeGridScales_h 42 : BranchFactor(branchfactor)
61 return this->CellScales.data() + 3 *
level;
70 return this->CellScales[3 *
level + 0];
79 return this->CellScales[3 *
level + 1];
88 return this->CellScales[3 *
level + 2];
97 memcpy(
scale, this->CellScales.data() + 3 *
level, 3 *
sizeof(double));
111 void Update(
unsigned int level)
const 113 if (level < this->CurrentFailLevel)
117 this->CurrentFailLevel =
level + 1;
118 this->CellScales.resize(3 * this->CurrentFailLevel);
119 auto current = this->CellScales.begin() + 3 * (this->CurrentFailLevel - 1);
121 auto end = this->CellScales.end();
122 for (; current != end; ++current, ++
previous)
124 *current = *
previous / this->BranchFactor;
131 const double BranchFactor;
136 mutable unsigned int CurrentFailLevel;
137 mutable std::vector<double> CellScales;
unsigned int GetCurrentFailLevel() const
JB.
double GetScaleX(unsigned int level) const
JB.
~vtkHyperTreeGridScales()=default
vtkHyperTreeGridScales(double branchfactor, const double scale[3])
JB Construit cette classe a partir du scale de la maille d'origine d'un HyperTree et du subdivision f...
double GetBranchFactor() const
JB Retourne le scale des mailles du niveau demande.
void GetScale(unsigned int level, double scale[3]) const
JB Retourne le scale des mailles du niveau demande.
double GetScaleZ(unsigned int level) const
JB.
A specifalized type of vtkHyperTreeGrid for the case when root cells have uniform sizes in each direc...
double * GetScale(unsigned int level) const
JB Retourne le scale des mailles du niveau demande.
double GetScaleY(unsigned int level) const
JB.