refinementFeatures Class Reference

Encapsulates queries for features. More...

Inheritance diagram for refinementFeatures:
Collaboration diagram for refinementFeatures:

Public Member Functions

 refinementFeatures (const objectRegistry &io, const PtrList< dictionary > &featDicts)
 Construct from description. More...
 
const labelListListlevels () const
 Per featureEdgeMesh the list of level. More...
 
const List< scalarField > & distances () const
 Per featureEdgeMesh the list of ranges. More...
 
scalar maxDistance () const
 Highest distance of all features. More...
 
void findNearestEdge (const pointField &samples, const scalarField &nearestDistSqr, labelList &nearFeature, List< pointIndexHit > &nearInfo, vectorField &nearNormal) const
 Find nearest point on nearest feature edge. Sets: More...
 
void findNearestRegionEdge (const pointField &samples, const scalarField &nearestDistSqr, labelList &nearFeature, List< pointIndexHit > &nearInfo, vectorField &nearNormal) const
 Find nearest point on nearest region edge. Sets: More...
 
void findNearestPoint (const pointField &samples, const scalarField &nearestDistSqr, labelList &nearFeature, List< pointIndexHit > &nearInfo) const
 Find nearest feature point. Sets: More...
 
void findHigherLevel (const pointField &pt, const labelList &ptLevel, labelList &maxLevel) const
 Find feature level higher than ptLevel. More...
 
- Public Member Functions inherited from PtrList< extendedFeatureEdgeMesh >
 PtrList ()
 Null Constructor. More...
 
 PtrList (const label)
 Construct with size specified. More...
 
 PtrList (const PtrList< extendedFeatureEdgeMesh > &)
 Copy constructor. More...
 
 PtrList (const PtrList< extendedFeatureEdgeMesh > &, const CloneArg &)
 Copy constructor with additional argument for clone. More...
 
 PtrList (PtrList< extendedFeatureEdgeMesh > &&)
 Move constructor. More...
 
 PtrList (PtrList< extendedFeatureEdgeMesh > &, bool reuse)
 Construct as copy or re-use as specified. More...
 
 PtrList (const SLPtrList< extendedFeatureEdgeMesh > &)
 Construct as copy of SLPtrList<T> More...
 
 PtrList (Istream &, const INew &)
 Construct from Istream using given Istream constructor class. More...
 
 PtrList (Istream &)
 Construct from Istream using default Istream constructor class. More...
 
 ~PtrList ()
 Destructor. More...
 
void setSize (const label)
 Reset size of PtrList. If extending the PtrList, new entries are. More...
 
void resize (const label)
 Alias for setSize(const label) More...
 
void clear ()
 Clear the PtrList, i.e. set size to zero deleting all the. More...
 
void append (extendedFeatureEdgeMesh *)
 Append an element at the end of the list. More...
 
void append (const autoPtr< extendedFeatureEdgeMesh > &)
 
void append (const tmp< extendedFeatureEdgeMesh > &)
 
void transfer (PtrList< extendedFeatureEdgeMesh > &)
 Transfer the contents of the argument PtrList into this PtrList. More...
 
bool set (const label) const
 Is element set. More...
 
autoPtr< extendedFeatureEdgeMeshset (const label, extendedFeatureEdgeMesh *)
 Set element to given T* and return old element (can be nullptr) More...
 
autoPtr< extendedFeatureEdgeMeshset (const label, const autoPtr< extendedFeatureEdgeMesh > &)
 Set element to given autoPtr<T> and return old element. More...
 
autoPtr< extendedFeatureEdgeMeshset (const label, const tmp< extendedFeatureEdgeMesh > &)
 Set element to given tmp<T> and return old element. More...
 
void reorder (const labelUList &oldToNew)
 Reorders elements. Ordering does not have to be done in. More...
 
void shuffle (const labelUList &newToOld)
 Reorders elements. Ordering does not have to be done in. More...
 
void operator= (const PtrList< extendedFeatureEdgeMesh > &)
 Assignment operator. More...
 
void operator= (PtrList< extendedFeatureEdgeMesh > &&)
 Move assignment operator. More...
 
- Public Member Functions inherited from UPtrList< T >
 UPtrList ()
 Null Constructor. More...
 
 UPtrList (const label)
 Construct with size specified. More...
 
 UPtrList (UPtrList< T > &, bool reuse)
 Construct as copy or re-use as specified. More...
 
label size () const
 Return the number of elements in the UPtrList. More...
 
bool empty () const
 Return true if the UPtrList is empty (ie, size() is zero) More...
 
Tfirst ()
 Return reference to the first element of the list. More...
 
const Tfirst () const
 Return reference to first element of the list. More...
 
Tlast ()
 Return reference to the last element of the list. More...
 
const Tlast () const
 Return reference to the last element of the list. More...
 
void setSize (const label)
 Reset size of UPtrList. This can only be used to set the size. More...
 
void resize (const label)
 Reset size of UPtrList. This can only be used to set the size. More...
 
void clear ()
 Clear the UPtrList, i.e. set size to zero. More...
 
void transfer (UPtrList< T > &)
 Transfer the contents of the argument UPtrList into this. More...
 
bool set (const label) const
 Is element set. More...
 
Tset (const label, T *)
 Set element. Return old element (can be nullptr). More...
 
void reorder (const labelUList &oldToNew)
 Reorders elements. Ordering does not have to be done in. More...
 
void shuffle (const labelUList &newToOld)
 Reorders elements. Ordering does not have to be done in. More...
 
template<class T2 >
UPtrList< T2 > convert ()
 Convert to list of different pointer type. More...
 
template<class T2 >
UPtrList< const T2 > convert () const
 Convert to list of different pointer type. More...
 
const Toperator[] (const label) const
 Return element const reference. More...
 
Toperator[] (const label)
 Return element reference. More...
 
const Toperator() (const label) const
 Return element const pointer. More...
 
iterator begin ()
 Return an iterator to begin traversing the UPtrList. More...
 
iterator end ()
 Return an iterator to end traversing the UPtrList. More...
 
const_iterator cbegin () const
 Return an const_iterator to begin traversing the UPtrList. More...
 
const_iterator cend () const
 Return an const_iterator to end traversing the UPtrList. More...
 
const_iterator begin () const
 Return an const_iterator to begin traversing the UPtrList. More...
 
const_iterator end () const
 Return an const_iterator to end traversing the UPtrList. More...
 
template<class T2 >
Foam::UPtrList< T2 > convert ()
 
template<class T2 >
Foam::UPtrList< const T2 > convert () const
 

Protected Member Functions

const PtrList< indexedOctree< treeDataEdge > > & edgeTrees () const
 
const PtrList< indexedOctree< treeDataPoint > > & pointTrees () const
 
const PtrList< indexedOctree< treeDataEdge > > & regionEdgeTrees () const
 
- Protected Member Functions inherited from PtrList< extendedFeatureEdgeMesh >
void read (Istream &, const INew &inewt)
 Read from Istream using given Istream constructor class. More...
 

Additional Inherited Members

- Public Types inherited from UPtrList< T >
typedef T value_type
 Type of values the UPtrList contains. More...
 
typedef Treference
 Type that can be used for storing into UPtrList::value_type objects. More...
 
typedef const Tconst_reference
 Type that can be used for storing into constant UPtrList::value_type. More...
 

Detailed Description

Encapsulates queries for features.

Source files

Definition at line 51 of file refinementFeatures.H.

Constructor & Destructor Documentation

◆ refinementFeatures()

refinementFeatures ( const objectRegistry io,
const PtrList< dictionary > &  featDicts 
)

Construct from description.

Definition at line 424 of file refinementFeatures.C.

References refinementFeatures::findNearestEdge(), and forAll.

Referenced by refinementFeatures::pointTrees(), and refinementFeatures::regionEdgeTrees().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Function Documentation

◆ edgeTrees()

const PtrList<indexedOctree<treeDataEdge> >& edgeTrees ( ) const
inlineprotected

Definition at line 93 of file refinementFeatures.H.

◆ pointTrees()

const PtrList<indexedOctree<treeDataPoint> >& pointTrees ( ) const
inlineprotected

Definition at line 98 of file refinementFeatures.H.

References refinementFeatures::refinementFeatures(), and refinementFeatures::regionEdgeTrees().

Here is the call graph for this function:

◆ regionEdgeTrees()

◆ levels()

const labelListList& levels ( ) const
inline

Per featureEdgeMesh the list of level.

Definition at line 123 of file refinementFeatures.H.

◆ distances()

const List<scalarField>& distances ( ) const
inline

◆ maxDistance()

Foam::scalar maxDistance ( ) const

Highest distance of all features.

Definition at line 760 of file refinementFeatures.C.

References forAll, and Foam::max().

Referenced by refinementFeatures::distances().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findNearestEdge()

void findNearestEdge ( const pointField samples,
const scalarField nearestDistSqr,
labelList nearFeature,
List< pointIndexHit > &  nearInfo,
vectorField nearNormal 
) const

Find nearest point on nearest feature edge. Sets:

  • nearFeature: index of feature mesh
  • nearInfo : location on feature edge and edge index (note: not feature edge index but index into edges() directly)
  • nearNormal : local feature edge normal

Definition at line 519 of file refinementFeatures.C.

References Foam::e, refinementFeatures::findNearestRegionEdge(), forAll, PointIndexHit< Point >::hit(), PointIndexHit< Point >::hitPoint(), PointIndexHit< Point >::index(), Foam::mag(), Foam::magSqr(), List< T >::setSize(), indexedOctree< Type >::shapes(), List< T >::size(), edge::vec(), and Foam::Zero.

Referenced by refinementFeatures::distances(), listPlusEqOp< T >::operator()(), and refinementFeatures::refinementFeatures().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findNearestRegionEdge()

void findNearestRegionEdge ( const pointField samples,
const scalarField nearestDistSqr,
labelList nearFeature,
List< pointIndexHit > &  nearInfo,
vectorField nearNormal 
) const

Find nearest point on nearest region edge. Sets:

  • nearFeature: index of feature mesh
  • nearInfo : location on feature edge and edge index (note: not feature edge index but index into edges() directly)
  • nearNormal : local feature edge normal

Definition at line 578 of file refinementFeatures.C.

References Foam::e, treeDataEdge::edges(), refinementFeatures::findNearestPoint(), forAll, PointIndexHit< Point >::hit(), PointIndexHit< Point >::hitPoint(), PointIndexHit< Point >::index(), Foam::mag(), Foam::magSqr(), treeDataEdge::points(), refinementFeatures::regionEdgeTrees(), List< T >::setSize(), indexedOctree< Type >::shapes(), List< T >::size(), and Foam::Zero.

Referenced by refinementFeatures::distances(), refinementFeatures::findNearestEdge(), and listPlusEqOp< T >::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findNearestPoint()

void findNearestPoint ( const pointField samples,
const scalarField nearestDistSqr,
labelList nearFeature,
List< pointIndexHit > &  nearInfo 
) const

Find nearest feature point. Sets:

  • nearFeature: index of feature mesh
  • nearInfo : location on feature point and point index. (note: not index into shapes().pointLabels() but index into points() directly)

Definition at line 693 of file refinementFeatures.C.

References forAll, PointIndexHit< Point >::hit(), PointIndexHit< Point >::hitPoint(), PointIndexHit< Point >::index(), Foam::magSqr(), List< T >::setSize(), indexedOctree< Type >::shapes(), and List< T >::size().

Referenced by refinementFeatures::distances(), refinementFeatures::findNearestRegionEdge(), and listPlusEqOp< T >::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findHigherLevel()

void findHigherLevel ( const pointField pt,
const labelList ptLevel,
labelList maxLevel 
) const

Find feature level higher than ptLevel.

Definition at line 744 of file refinementFeatures.C.

References forAll.


The documentation for this class was generated from the following files: