bool VertexLess<TetraDeformVertex>::operator()(int v1,int v2) const
{
  bool ret = false;


	const TetraDeformVertex& a = Get(v1);
	const TetraDeformVertex& b = Get(v2);

  RDIFF d = relativeDiff(a.mPos,b.mPos,0.00001f);
  if ( d == RD_EQUAL )
  {
    d = relativeDiff(a.mNormal,b.mNormal,0.05f);
    if ( d == RD_EQUAL )
    {
      NxVec3 v1( a.mTexel1[0], a.mTexel1[1], 0 );
      NxVec3 v2( b.mTexel1[0], b.mTexel1[1], 0 );
      d = relativeDiff( v1, v2, 0.001f );
      if ( d == RD_EQUAL )
      {
        NxVec3 v1( a.mTexel2[0], a.mTexel2[1], 0 );
        NxVec3 v2( b.mTexel2[0], b.mTexel2[1], 0 );
        d = relativeDiff( v1, v2, 0.001f );
      }
    }
  }

  if ( d == RD_LESS ) ret = true;

  return ret;
};
bool VertexLess<NxVec3>::operator()(int v1,int v2) const
{
  bool ret = false;

	const NxVec3& a = Get(v1);
	const NxVec3& b = Get(v2);

  RDIFF d = relativeDiff(a,b,0.00001f);
  if ( d == RD_LESS ) ret = true;

  return ret;
};
bool VertexLess<VertexPosition>::operator()(int v1,int v2) const
{
  bool ret = false;

	const VertexPosition& a = Get(v1);
	const VertexPosition& b = Get(v2);

  RDIFF d = relativeDiff(a.mPos,b.mPos,0.0001f);
  if ( d == RD_LESS ) ret = true;

  return ret;

};