comparateur de set pour trier des vertex3D
Bonjour,
Voila mon problème, j'ai un set de Vertex3D mais je n'arrive pas à faire un comparateur correct. Le compilo n'accepte pas un comparateur de cette forme
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| struct comp {
bool operator() (Vertex * v1, Vertex * v2) const
{
if(v1->getX() < v2->getX())
return true;
else if(v1->getY() < v2->getY())
return true;
else if(v1->getZ() < v2->getZ())
return true;
else
retun false;
}
}; |
J'utilise pour l'instant ce comparateur qui n'est pas tout à fait correct puisque les vertex (0.5,0,0) et (0,5,0) sont egaux dans ce cas .
Code:
1 2 3 4 5 6 7 8 9 10
| struct comp {
bool operator() (Vertex * v1, Vertex * v2) const
{
if((v1->getX()*100 + v1->getY()*10 + v1->getZ() <
v2->getX()*100 + v2->getY()*10 + v2->getZ()))
return true;
else
return false;
}
}; |
Donc si vous avez une idée......merci