Commit 981277ad authored by Thomas Pitiot 's avatar Thomas Pitiot

modifs tests refonte particules

Signed-off-by: Thomas Pitiot 's avatarThomas PITIOT <thomas@pitiot.eu>
parent 15fd073d
......@@ -48,7 +48,7 @@ public :
VEC3 m_positionFace;
unsigned int compteur_anti_infinite;
unsigned int crossCell ;
ParticleCell3D(MAP& map) : m(map)
......@@ -90,9 +90,11 @@ public :
inline Geom::Orientation3D isAbove(const VEC3& c, Dart d, const VEC3& top);
inline int isLeftL1DFace(const VEC3& c, Dart d, const VEC3& base, const VEC3& normal);
// inline int isLeftL1DFace(const VEC3& c, Dart d, const VEC3& base, const VEC3& normal);
// inline int isRightDFace(const VEC3& c, Dart d, const VEC3& base, const VEC3& normal);
inline bool isRightDFace(const VEC3& c, Dart d, const VEC3& base, const VEC3& normal);
inline int whichSideOfPlan(const VEC3& c, Dart d, const VEC3& base, const VEC3& normal); // orientation par rapport au plan de gauche de l'arete visée
Dart nextDartOfVertexNotMarked(Dart d, CellMarkerStore<MAP, FACE>& mark);
......@@ -119,7 +121,6 @@ public :
void move(const VEC3& newCurrent)
{
crossCell = NO_CROSS ;
compteur_anti_infinite = 0;
if(!Geom::arePointsEquals(newCurrent, this->getPosition()))
{
switch(this->getState()) {
......
......@@ -41,6 +41,7 @@ public :
virtual ~ParticleCell3DMemo()
{
}
void vertexState(const VEC3& current, CellMarkerMemo<MAP, VOLUME>& memo_cross);
......
......@@ -346,7 +346,7 @@ unsigned int IHM2<PFP>::subdivideFace(Dart d, bool triQuad, bool OneLevelDiffere
Dart nf = m_map.phi2(it) ;
if(!m_map.isBoundaryMarked(2, nf))
{
int levelneighbor=faceLevel(nf);
unsigned int levelneighbor=faceLevel(nf);
if(levelneighbor== fLevel - 1) // check if neighboring faces have to be subdivided first to avoid 2 level differencies
{
subdivideFace(nf,triQuad) ;
......
......@@ -61,9 +61,10 @@ Plane3D<T>::Plane3D(const Vector<3,T>& n, T d) : m_normal(n), m_d(d)
}
template <typename T>
Plane3D<T>::Plane3D(const Vector<3,T>& n, const Vector<3,T>& p) : m_normal(n), m_d(-(p*n))
Plane3D<T>::Plane3D(const Vector<3,T>& n, const Vector<3,T>& p) : m_normal(n)
{
m_normal.normalize();
m_d=-(p*m_normal);
}
template <typename T>
......
......@@ -618,8 +618,8 @@ bool ImplicitHierarchicalMap3::faceIsSubdivided(Dart d)
bool subd = false ;
++m_curLevel ;
// if(faceLevel(d)>fLevel)// modif thomas
if(m_dartLevel[phi1(d)] == m_curLevel && m_edgeId[phi1(d)] != m_edgeId[d])
if(faceLevel(d)>fLevel)// modif thomas
// if(m_dartLevel[phi1(d)] == m_curLevel && m_edgeId[phi1(d)] != m_edgeId[d])
subd = true ;
--m_curLevel ;
......@@ -674,8 +674,8 @@ bool ImplicitHierarchicalMap3::volumeIsSubdivided(Dart d)
bool subd = false;
++m_curLevel;
if(m_dartLevel[phi2(phi1(phi1(d)))] == m_curLevel && m_faceId[phi2(phi1(phi1(d)))] != m_faceId[d])
// if(volumeLevel(d)>vLevel) //test par thomas
// if(m_dartLevel[phi2(phi1(phi1(d)))] == m_curLevel && m_faceId[phi2(phi1(phi1(d)))] != m_faceId[d])
if(volumeLevel(d)>vLevel) //test par thomas
subd = true;
--m_curLevel;
......@@ -696,8 +696,9 @@ bool ImplicitHierarchicalMap3::volumeIsSubdividedOnce(Dart d)
bool subdOnce = true ;
++m_curLevel;
if(m_dartLevel[phi2(phi1(phi1(d)))] == m_curLevel && m_faceId[phi2(phi1(phi1(d)))] != m_faceId[d])
{
// if(m_dartLevel[phi2(phi1(phi1(d)))] == m_curLevel && m_faceId[phi2(phi1(phi1(d)))] != m_faceId[d])
if(volumeLevel(d)>vLevel)
{
subd = true;
++m_curLevel;
Dart dcenter = phi_1(phi2(phi1(d)));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment