Patch intersection based on triangular faces. Intersects and combines two triangulated patches incrementally. The intersected surface is valid at every stage of the process. Failure to intersect does not produce a catastrophic error. Rather, it results in regions of the surface remaining associated with only one of the source or the target patch. More...
Public Member Functions | |
virtual word | type () const |
TriPatchIntersection (const SrcPatchType &srcPatch, const TgtPatchType &tgtPatch, const scalar snapTol) | |
Construct from a source and a target patch. More... | |
TriPatchIntersection (const SrcPatchType &srcPatch, const vectorField &srcPointNormals, const TgtPatchType &tgtPatch, const scalar snapTol) | |
Construct from a source and a target patch, and specified source. More... | |
const DynamicList< labelList > & | faceEdges () const |
... More... | |
const DynamicList< labelPair > & | intersectEdgeFaces () const |
... More... | |
const DynamicList< labelPair > & | nonIntersectEdgeFaces () const |
... More... | |
virtual | ~TriPatchIntersection () |
Destructor. More... | |
template<class Type > | |
Foam::FixedList< Type, 3 > | triPointValues (const label trii, const UList< Type > values) const |
template<class Type > | |
Foam::FixedList< Type, 3 > | patchFacePointValues (const label patchFacei, const bool isSrc, const UList< Type > &values) const |
Public Member Functions inherited from PatchIntersection< SrcPatchType, TgtPatchType > | |
PatchIntersection (const SrcPatchType &srcPatch, const TgtPatchType &tgtPatch) | |
Construct from a source and a target patch. More... | |
virtual | ~PatchIntersection () |
Destructor. More... | |
const SrcPatchType & | srcPatch () const |
The source patch. More... | |
const TgtPatchType & | tgtPatch () const |
The target patch. More... | |
Public Member Functions inherited from patchIntersection | |
ClassName ("patchIntersection") | |
patchIntersection (const label srcNPoints, const label tgtNPoints, const label srcNEdges, const label tgtNEdges, const label srcNFaces, const label tgtNFaces) | |
Construct given sizes. More... | |
virtual | ~patchIntersection () |
Destructor. More... | |
const pointField & | points () const |
The intersection points. More... | |
const labelList & | srcPointPoints () const |
The source points' corresponding intersection points. More... | |
const labelList & | tgtPointPoints () const |
The target points' corresponding intersection points. More... | |
const DynamicList< label > & | pointSrcPoints () const |
The intersection points' corresponding source points, or -1. More... | |
const DynamicList< label > & | pointTgtPoints () const |
The intersection points' corresponding target points, or -1. More... | |
const List< DynamicList< label > > & | srcEdgePoints () const |
The source edges' intersection points. Ordered along the edge. More... | |
const List< DynamicList< label > > & | tgtEdgePoints () const |
The target edges' intersection points. Ordered along the edge. More... | |
const DynamicList< label > & | pointSrcEdges () const |
The intersection points' source edges, or -1 if the point. More... | |
const DynamicList< label > & | pointTgtEdges () const |
The intersection points' target edges, or -1 if the point. More... | |
const DynamicList< label > & | pointSrcFaces () const |
The intersection points' source faces, or -1 if the point. More... | |
const DynamicList< label > & | pointTgtFaces () const |
The intersection points' target faces, or -1 if the point. More... | |
const faceList & | faces () const |
The intersection faces. More... | |
const List< DynamicList< label > > & | srcFaceFaces () const |
The source faces' intersection faces. More... | |
const List< DynamicList< label > > & | tgtFaceFaces () const |
The target faces' intersection faces. More... | |
const DynamicList< label > & | faceSrcFaces () const |
The intersection faces' corresponding source faces, or -1. More... | |
const DynamicList< label > & | faceTgtFaces () const |
The intersection faces' corresponding target faces, or -1. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from patchIntersection | |
void | report (const word &writeSuffix=word::null) |
Report properties of the intersection process. More... | |
Protected Attributes inherited from PatchIntersection< SrcPatchType, TgtPatchType > | |
const SrcPatchType & | srcPatch_ |
Reference to the source patch. More... | |
const TgtPatchType & | tgtPatch_ |
Reference to the target patch. More... | |
Protected Attributes inherited from patchIntersection | |
DynamicField< point > | points_ |
The intersection points. More... | |
labelList | srcPointPoints_ |
The source points' corresponding intersection points. More... | |
labelList | tgtPointPoints_ |
The target points' corresponding intersection points. More... | |
DynamicList< label > | pointSrcPoints_ |
The intersection points' corresponding source points, or -1. More... | |
DynamicList< label > | pointTgtPoints_ |
The intersection points' corresponding target points, or -1. More... | |
List< DynamicList< label > > | srcEdgePoints_ |
The source edges' intersection points. Ordered along the edge. More... | |
List< DynamicList< label > > | tgtEdgePoints_ |
The target edges' intersection points. Ordered along the edge. More... | |
DynamicList< label > | pointSrcEdges_ |
The intersection points' source edges, or -1 if the point. More... | |
DynamicList< label > | pointTgtEdges_ |
The intersection points' target edges, or -1 if the point. More... | |
DynamicList< label > | pointSrcFaces_ |
The intersection points' source faces, or -1 if the point. More... | |
DynamicList< label > | pointTgtFaces_ |
The intersection points' target faces, or -1 if the point. More... | |
DynamicList< face > | faces_ |
The intersection faces. More... | |
List< DynamicList< label > > | srcFaceFaces_ |
The source faces' intersection faces. More... | |
List< DynamicList< label > > | tgtFaceFaces_ |
The target faces' intersection faces. More... | |
DynamicList< label > | faceSrcFaces_ |
The intersection faces' corresponding source faces, or -1. More... | |
DynamicList< label > | faceTgtFaces_ |
The intersection faces' corresponding target faces, or -1. More... | |
Static Protected Attributes inherited from patchIntersection | |
static const bool | orientToSource_ = true |
Flag to set whether the faces of the intersection are oriented the. More... | |
Patch intersection based on triangular faces. Intersects and combines two triangulated patches incrementally. The intersected surface is valid at every stage of the process. Failure to intersect does not produce a catastrophic error. Rather, it results in regions of the surface remaining associated with only one of the source or the target patch.
Definition at line 55 of file TriPatchIntersection.H.
TriPatchIntersection | ( | const SrcPatchType & | srcPatch, |
const TgtPatchType & | tgtPatch, | ||
const scalar | snapTol | ||
) |
Construct from a source and a target patch.
Definition at line 3702 of file TriPatchIntersection.C.
TriPatchIntersection | ( | const SrcPatchType & | srcPatch, |
const vectorField & | srcPointNormals, | ||
const TgtPatchType & | tgtPatch, | ||
const scalar | snapTol | ||
) |
Construct from a source and a target patch, and specified source.
point normals
Construct from components
Calculate intersection of triangle with ray. Sets result
accordingly
Definition at line 3714 of file TriPatchIntersection.C.
References cpuTime::cpuTimeIncrement(), Foam::decrIndent(), HashTable< T, Key, Hash >::empty(), Foam::endl(), treeBoundBox::extend(), patchIntersection::faces_, UList< T >::first(), forAll, forAllConstIter, HashTable< T, Key, Hash >::found(), PointIndexHit< Point >::hit(), Foam::incrIndent(), Foam::indent(), PointIndexHit< Point >::index(), Foam::Info, HashSet< Key, Hash >::insert(), Foam::magSqr(), patchIntersection::points_, patchIntersection::pointSrcPoints_, patchIntersection::pointTgtEdges_, patchIntersection::pointTgtFaces_, patchIntersection::pointTgtPoints_, DynamicList< T, SizeInc, SizeMult, SizeDiv >::remove(), patchIntersection::report(), List< T >::size(), Foam::sqr(), PatchIntersection< SrcPatchType, TgtPatchType >::srcPatch_, Foam::Swap(), PatchIntersection< SrcPatchType, TgtPatchType >::tgtPatch_, Foam::trivialBoundSphere(), TriPatchIntersection< SrcPatchType, TgtPatchType >::type(), and Foam::vtkWritePolyData::write().
|
virtual |
Destructor.
Definition at line 4094 of file TriPatchIntersection.C.
|
inlinevirtual |
Implements patchIntersection.
Definition at line 418 of file TriPatchIntersection.H.
References word::capitalise().
Referenced by TriPatchIntersection< SrcPatchType, TgtPatchType >::TriPatchIntersection().
|
inline |
...
Definition at line 450 of file TriPatchIntersection.H.
Referenced by FacePatchIntersection< SrcPatchType, TgtPatchType >::FacePatchIntersection().
|
inline |
...
Definition at line 456 of file TriPatchIntersection.H.
Referenced by FacePatchIntersection< SrcPatchType, TgtPatchType >::FacePatchIntersection().
|
inline |
...
Definition at line 462 of file TriPatchIntersection.H.
Referenced by FacePatchIntersection< SrcPatchType, TgtPatchType >::FacePatchIntersection().
Foam::FixedList<Type, 3> triPointValues | ( | const label | trii, |
const UList< Type > | values | ||
) | const |
Definition at line 381 of file TriPatchIntersection.C.
References forAll.
Foam::FixedList<Type, 3> patchFacePointValues | ( | const label | patchFacei, |
const bool | isSrc, | ||
const UList< Type > & | values | ||
) | const |
Definition at line 541 of file TriPatchIntersection.C.
References forAll.