mirror of
https://github.com/NGSolve/netgen.git
synced 2025-01-12 22:20:35 +05:00
if PointBetweenEdge gets invalid edgenr, return midpoint
This is needed for creating boundarylayers and then curving the mesh.
This commit is contained in:
parent
6f5340eb84
commit
0c686e6b8b
@ -1442,12 +1442,13 @@ namespace netgen
|
||||
{
|
||||
double s0, s1;
|
||||
|
||||
Point<3> hnewp = p1+secpoint*(p2-p1);
|
||||
gp_Pnt pnt(hnewp(0), hnewp(1), hnewp(2));
|
||||
newp = p1+secpoint*(p2-p1);
|
||||
if(ap1.edgenr > emap.Size() || ap1.edgenr == 0)
|
||||
return;
|
||||
gp_Pnt pnt(newp(0), newp(1), newp(2));
|
||||
GeomAPI_ProjectPointOnCurve proj(pnt, BRep_Tool::Curve(TopoDS::Edge(emap(ap1.edgenr)), s0, s1));
|
||||
pnt = proj.NearestPoint();
|
||||
hnewp = Point<3> (pnt.X(), pnt.Y(), pnt.Z());
|
||||
newp = hnewp;
|
||||
newp = Point<3> (pnt.X(), pnt.Y(), pnt.Z());
|
||||
newgi = ap1;
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user