Corrected gcc compiling issues
This commit is contained in:
parent
2ffdf8f562
commit
220baf92c7
|
|
@ -24,6 +24,9 @@
|
||||||
History
|
History
|
||||||
|
|
||||||
$Log: not supported by cvs2svn $
|
$Log: not supported by cvs2svn $
|
||||||
|
Revision 1.4 2006/09/27 08:49:32 spinelli
|
||||||
|
bug fix, add return type to Init
|
||||||
|
|
||||||
Revision 1.3 2006/08/23 15:20:14 marfr960
|
Revision 1.3 2006/08/23 15:20:14 marfr960
|
||||||
corrected minor bugs
|
corrected minor bugs
|
||||||
|
|
||||||
|
|
@ -55,7 +58,7 @@ Kept in the most trivial way. Every cell is allocated
|
||||||
and contains one istance of the template class.
|
and contains one istance of the template class.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
template < typename class ObjType, class FLT=float >
|
template < class ObjType, class FLT=float >
|
||||||
class GridStaticObj : public BasicGrid<ObjType, FLT>
|
class GridStaticObj : public BasicGrid<ObjType, FLT>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -63,7 +66,7 @@ class GridStaticObj : public BasicGrid<ObjType, FLT>
|
||||||
/// La matriciona della griglia
|
/// La matriciona della griglia
|
||||||
ObjType *grid;
|
ObjType *grid;
|
||||||
|
|
||||||
int size() const { return siz[0]*siz[1]*siz[2];}
|
int size() const { return this->siz[0]*this->siz[1]*this->siz[2];}
|
||||||
|
|
||||||
inline GridStaticObj() { grid = 0; }
|
inline GridStaticObj() { grid = 0; }
|
||||||
inline ~GridStaticObj() { if(grid) delete[] grid; }
|
inline ~GridStaticObj() { if(grid) delete[] grid; }
|
||||||
|
|
@ -82,12 +85,12 @@ class GridStaticObj : public BasicGrid<ObjType, FLT>
|
||||||
inline int GridInd( const Point3i & pi ) const
|
inline int GridInd( const Point3i & pi ) const
|
||||||
{
|
{
|
||||||
#ifndef NDEBUG
|
#ifndef NDEBUG
|
||||||
if ( pi[0]<0 || pi[0]>=siz[0] || pi[1]<0 || pi[1]>=siz[1] || pi[2]<0 || pi[2]>=siz[2] )
|
if ( pi[0]<0 || pi[0]>=this->siz[0] || pi[1]<0 || pi[1]>=this->siz[1] || pi[2]<0 || pi[2]>=this->siz[2] )
|
||||||
{ assert(0);
|
{ assert(0);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
return pi[0]+siz[0]*(pi[1]+siz[1]*pi[2]);
|
return pi[0]+this->siz[0]*(pi[1]+this->siz[1]*pi[2]);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Dato un punto ritorna l'indice della cella
|
// Dato un punto ritorna l'indice della cella
|
||||||
|
|
@ -95,13 +98,13 @@ class GridStaticObj : public BasicGrid<ObjType, FLT>
|
||||||
|
|
||||||
void Create( Point3i &_siz, const ObjType & init )
|
void Create( Point3i &_siz, const ObjType & init )
|
||||||
{
|
{
|
||||||
siz=_siz;
|
this->siz=_siz;
|
||||||
voxel[0] = dim[0]/siz[0];
|
this->voxel[0] = this->dim[0]/this->siz[0];
|
||||||
voxel[1] = dim[1]/siz[1];
|
this->voxel[1] = this->dim[1]/this->siz[1];
|
||||||
voxel[2] = dim[2]/siz[2];
|
this->voxel[2] = this->dim[2]/this->siz[2];
|
||||||
|
|
||||||
if(grid) delete[] grid;
|
if(grid) delete[] grid;
|
||||||
int n = siz[0]*siz[1]*siz[2];
|
int n = this->siz[0]*this->siz[1]*this->siz[2];
|
||||||
grid = new ObjType[n];
|
grid = new ObjType[n];
|
||||||
fill(grid,grid+n,init);
|
fill(grid,grid+n,init);
|
||||||
}
|
}
|
||||||
|
|
@ -112,13 +115,13 @@ class GridStaticObj : public BasicGrid<ObjType, FLT>
|
||||||
template<class FLT2>
|
template<class FLT2>
|
||||||
void Create(const Box3<FLT2> & b, int ncell, const ObjType & init, bool Inflate = true )
|
void Create(const Box3<FLT2> & b, int ncell, const ObjType & init, bool Inflate = true )
|
||||||
{
|
{
|
||||||
bbox.Import(b);
|
this->bbox.Import(b);
|
||||||
if(Inflate) bbox.Offset(0.01*bbox.Diag());
|
if(Inflate) this->bbox.Offset(0.01*this->bbox.Diag());
|
||||||
dim = bbox.max - bbox.min;
|
this->dim = this->bbox.max - this->bbox.min;
|
||||||
|
|
||||||
// Calcola la dimensione della griglia
|
// Calcola la dimensione della griglia
|
||||||
Point3i _siz;
|
Point3i _siz;
|
||||||
BestDim( ncell, dim, _siz );
|
BestDim( ncell, this->dim, _siz );
|
||||||
Create(_siz, init );
|
Create(_siz, init );
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue