Fix the problem of element-submesh relation restoring at study loading
in case if some faces have ids lower than segments.

Now TIDCompare does not compare types, a new comparator created for this:
+struct TIDTypeCompare {
This commit is contained in:
eap 2013-08-23 13:11:32 +00:00
parent 3c53917e76
commit c4b93d024f

View File

@ -208,9 +208,16 @@ protected:
*/ */
// ============================================================ // ============================================================
struct TIDCompare { struct TIDTypeCompare {
bool operator () (const SMDS_MeshElement* e1, const SMDS_MeshElement* e2) const bool operator () (const SMDS_MeshElement* e1, const SMDS_MeshElement* e2) const
{ return e1->GetType() == e2->GetType() ? e1->GetID() < e2->GetID() : e1->GetType() < e2->GetType(); } { return e1->GetType() == e2->GetType() ? e1->GetID() < e2->GetID() : e1->GetType() < e2->GetType(); }
}; };
// WARNING: this comparator makes impossible to store both nodes and elements in the same set
// because there are nodes and elements with the same ID. Use TIDTypeCompare for such containers.
struct TIDCompare {
bool operator () (const SMDS_MeshElement* e1, const SMDS_MeshElement* e2) const
{ return e1->GetID() < e2->GetID(); }
};
#endif #endif