From 29e4ddd7e5c74919df880b94a4a0e89525763156 Mon Sep 17 00:00:00 2001 From: eap Date: Tue, 27 Apr 2010 09:24:04 +0000 Subject: [PATCH] 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 --- src/SMESH/SMESH_Algo.cxx | 5 +++-- src/SMESH/SMESH_Algo.hxx | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/SMESH/SMESH_Algo.cxx b/src/SMESH/SMESH_Algo.cxx index bd3f5fffa..671e2660f 100644 --- a/src/SMESH/SMESH_Algo.cxx +++ b/src/SMESH/SMESH_Algo.cxx @@ -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 )) diff --git a/src/SMESH/SMESH_Algo.hxx b/src/SMESH/SMESH_Algo.hxx index 9a6d88e54..03c0b7bdb 100644 --- a/src/SMESH/SMESH_Algo.hxx +++ b/src/SMESH/SMESH_Algo.hxx @@ -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 -- 2.39.2