PAL21718: Composite Side Discretisation 1D Algorithm works incorrently with attached shape.

GeomAbs_Shape SMESH_Algo::Continuity(TopoDS_Edge E1,
                                     TopoDS_Edge E2)
{
+  E1.Orientation(TopAbs_FORWARD), E2.Orientation(TopAbs_FORWARD); // avoid pb with internal edges
This commit is contained in:
eap 2010-04-27 09:24:04 +00:00
parent c823ef454d
commit 29e4ddd7e5
2 changed files with 4 additions and 3 deletions

View File

@ -489,9 +489,10 @@ bool SMESH_Algo::InitCompatibleHypoFilter( SMESH_HypoFilter & theFilter,
*/
//================================================================================
GeomAbs_Shape SMESH_Algo::Continuity(const TopoDS_Edge & E1,
const TopoDS_Edge & E2)
GeomAbs_Shape SMESH_Algo::Continuity(TopoDS_Edge E1,
TopoDS_Edge E2)
{
E1.Orientation(TopAbs_FORWARD), E2.Orientation(TopAbs_FORWARD); // avoid pb with internal edges
TopoDS_Vertex V = TopExp::LastVertex (E1, true);
if ( !V.IsSame( TopExp::FirstVertex(E2, true )))
if ( !TopExp::CommonVertex( E1, E2, V ))

View File

@ -301,7 +301,7 @@ public:
* \param E2 - the 2nd edge
* \retval GeomAbs_Shape - regularity at the junction between E1 and E2
*/
static GeomAbs_Shape Continuity(const TopoDS_Edge & E1, const TopoDS_Edge & E2);
static GeomAbs_Shape Continuity(TopoDS_Edge E1, TopoDS_Edge E2);
/*!
* \brief Return true if an edge can be considered as a continuation of another