mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-02-11 07:33:07 +05:00
0021086: EDF 1686 GEOM: Bad triangle in a BLSURF + GHS3D mesh after
converting to quadratic (Bug1686_Convert2Quad.py) in GetMiddleUV(), get period from a base surface of Geom_RectangularTrimmedSurface
This commit is contained in:
parent
156cafd4ad
commit
2541f0a92a
@ -40,7 +40,7 @@
|
|||||||
#include <GeomAPI_ProjectPointOnCurve.hxx>
|
#include <GeomAPI_ProjectPointOnCurve.hxx>
|
||||||
#include <GeomAPI_ProjectPointOnSurf.hxx>
|
#include <GeomAPI_ProjectPointOnSurf.hxx>
|
||||||
#include <Geom_Curve.hxx>
|
#include <Geom_Curve.hxx>
|
||||||
//#include <Geom_RectangularTrimmedSurface.hxx>
|
#include <Geom_RectangularTrimmedSurface.hxx>
|
||||||
#include <Geom_Surface.hxx>
|
#include <Geom_Surface.hxx>
|
||||||
#include <ShapeAnalysis.hxx>
|
#include <ShapeAnalysis.hxx>
|
||||||
#include <TopExp.hxx>
|
#include <TopExp.hxx>
|
||||||
@ -735,7 +735,14 @@ gp_XY SMESH_MesherHelper::GetMiddleUV(const Handle(Geom_Surface)& surface,
|
|||||||
const gp_XY& p1,
|
const gp_XY& p1,
|
||||||
const gp_XY& p2)
|
const gp_XY& p2)
|
||||||
{
|
{
|
||||||
return applyIn2D( surface, p1, p2, & AverageUV );
|
// NOTE:
|
||||||
|
// the proper place of getting basic surface seems to be in applyIn2D()
|
||||||
|
// but we put it here to decrease a risk of regressions just before releasing a version
|
||||||
|
Handle(Geom_Surface) surf = surface;
|
||||||
|
while ( !surf.IsNull() && surf->IsKind(STANDARD_TYPE(Geom_RectangularTrimmedSurface )))
|
||||||
|
surf = Handle(Geom_RectangularTrimmedSurface)::DownCast( surf )->BasisSurface();
|
||||||
|
|
||||||
|
return applyIn2D( surf, p1, p2, & AverageUV );
|
||||||
}
|
}
|
||||||
|
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
|
Loading…
Reference in New Issue
Block a user