mirror of
https://github.com/NGSolve/netgen.git
synced 2024-12-24 04:50:34 +05:00
GetTangentialSurfaceIndices was missing for extrusion
This commit is contained in:
parent
fdd718739f
commit
8926d93e07
@ -415,6 +415,14 @@ namespace netgen
|
||||
}
|
||||
|
||||
|
||||
bool ExtrusionFace :: PointInFace (const Point<3> & p, const double eps) const
|
||||
{
|
||||
Point<3> hp = p;
|
||||
Project(hp);
|
||||
return Dist2(p,hp) < sqr(eps);
|
||||
}
|
||||
|
||||
|
||||
void ExtrusionFace :: LineIntersections ( const Point<3> & p,
|
||||
const Vec<3> & v,
|
||||
const double eps,
|
||||
@ -737,6 +745,16 @@ namespace netgen
|
||||
return PointInSolid(p,eps,NULL);
|
||||
}
|
||||
|
||||
void Extrusion :: GetTangentialSurfaceIndices (const Point<3> & p,
|
||||
NgArray<int> & surfind, double eps) const
|
||||
{
|
||||
for (int j = 0; j < faces.Size(); j++)
|
||||
if (faces[j] -> PointInFace(p, eps))
|
||||
if (!surfind.Contains (GetSurfaceId(j)))
|
||||
surfind.Append (GetSurfaceId(j));
|
||||
}
|
||||
|
||||
|
||||
INSOLID_TYPE Extrusion :: VecInSolid (const Point<3> & p,
|
||||
const Vec<3> & v,
|
||||
double eps) const
|
||||
|
@ -94,6 +94,9 @@ namespace netgen
|
||||
int & after,
|
||||
bool & intersecting ) const;
|
||||
|
||||
|
||||
bool PointInFace (const Point<3> & p, const double eps) const;
|
||||
|
||||
INSOLID_TYPE VecInFace ( const Point<3> & p,
|
||||
const Vec<3> & v,
|
||||
const double eps ) const;
|
||||
@ -146,6 +149,10 @@ namespace netgen
|
||||
INSOLID_TYPE PointInSolid (const Point<3> & p,
|
||||
double eps,
|
||||
NgArray<int> * const facenums) const;
|
||||
|
||||
virtual void GetTangentialSurfaceIndices (const Point<3> & p,
|
||||
NgArray<int> & surfind, double eps) const;
|
||||
|
||||
virtual INSOLID_TYPE VecInSolid (const Point<3> & p,
|
||||
const Vec<3> & v,
|
||||
double eps) const;
|
||||
|
Loading…
Reference in New Issue
Block a user