- bool xMax1=0, yMax1=0, xMax2=1, yMax2=1;
- switch( sharedSideEdge1 )
- {
- case Q_BOTTOM: yMax2 = 0; break;
- case Q_RIGHT: xMax1 = 1; break;
- case Q_TOP: yMax1 = 1; break;
- case Q_LEFT: xMax2 = 0; break;
- default:
- error(SMESH_Comment("Internal error at")<<__FILE__<<":"<<__LINE__);
- return 0;
- }
- const SMDS_MeshNode* n1 = side1.cornerNode( xMax1, yMax1);
- const SMDS_MeshNode* n2 = side1.cornerNode( xMax2, yMax2);
-
- set< _BlockSide* >& sidesWithN1 = _corner2sides[ n1 ];
- set< _BlockSide* >& sidesWithN2 = _corner2sides[ n2 ];
- if ( sidesWithN1.empty() || sidesWithN2.empty() )
- {
- _DUMP_("no sides by nodes "<< n1->GetID() << " " << n2->GetID() );
- return 0;
- }
+ SMESH_OrientedLink edge = side1.edge( sharedSideEdge1 );
+ const SMDS_MeshNode* n1 = edge.node1();
+ const SMDS_MeshNode* n2 = edge.node2();
+ if ( edge._reversed ) swap( n1, n2 );