Loading...
Searching...
No Matches
triPoints Class Reference

Triangle point storage. Default constructable (triangle is not). More...

#include <triangle.H>

Inheritance diagram for triPoints:
Collaboration diagram for triPoints:

Public Member Functions

 triPoints ()=default
 Default construct.
void front ()=delete
 The front() accessor (from FixedList) has no purpose.
void back ()=delete
 The back() accessor (from FixedList) has no purpose.
 triPoints (const point &p0, const point &p1, const point &p2)
 Construct from three points.
 triPoints (const triPointRef &pts)
 Construct from point references.
 triPoints (const FixedList< point, 3 > &pts)
 Construct from three points.
 triPoints (const UList< point > &points, const FixedList< label, 3 > &indices)
 Copy construct from subset of points.
 triPoints (const UList< point > &points, const label p0, const label p1, const label p2)
 Copy construct from subset of points.
const pointa () const noexcept
 The first vertex.
const pointb () const noexcept
 The second vertex.
const pointc () const noexcept
 The third vertex.
pointa () noexcept
 The first vertex.
pointb () noexcept
 The second vertex.
pointc () noexcept
 The third vertex.
void flip ()
 Flip triangle orientation by swapping second and third vertices.
triPointRef tri () const
 Return as triangle reference.
point centre () const
 Return centre (centroid).
vector areaNormal () const
 The area normal - with magnitude equal to area of triangle.
vector unitNormal () const
 Return unit normal.
scalar mag () const
 The magnitude of the triangle area.
scalar magSqr () const
 The magnitude squared of the triangle area.
Pair< pointbox () const
 The enclosing (bounding) box for the triangle.
vector vecA () const
 Edge vector opposite point a(): from b() to c().
vector vecB () const
 Edge vector opposite point b(): from c() to a().
vector vecC () const
 Edge vector opposite point c(): from a() to b().
Public Member Functions inherited from FixedList< point, 3 >
 FixedList ()=default
 Default construct.
autoPtr< FixedList< point, N > > clone () const
 Clone.
const pointcdata () const noexcept
 Return pointer to the underlying array serving as data storage.
pointdata () noexcept
 Return pointer to the underlying array serving as data storage.
const char * cdata_bytes () const noexcept
 Return pointer to the underlying array serving as data storage,.
char * data_bytes () noexcept
 Return pointer to the underlying array serving as data storage,.
pointget () noexcept
 Element access using compile-time indexing.
pointfront () noexcept
 Access first element of the list, position [0].
pointback () noexcept
 Access last element of the list, position [N-1].
label fcIndex (const label i) const noexcept
 Return the forward circular index, i.e. next index which returns to the first at the end of the list.
const pointfcValue (const label i) const
 Return forward circular value (ie, next value in the list).
label rcIndex (const label i) const noexcept
 Return the reverse circular index, i.e. previous index which returns to the last at the beginning of the list.
const pointrcValue (const label i) const
 Return reverse circular value (ie, previous value in the list).
void checkStart (const label start) const
 Check start is within valid range [0,size).
void checkSize (const label size) const
 Check size is identical to template parameter N.
void checkIndex (const label i) const
 Check index is within valid range [0,N).
bool uniform () const
 True if all entries have identical values, and list is non-empty.
bool contains (const point &val) const
 True if the value is contained in the list.
label find (const point &val) const
 Find index of the first occurrence of the value.
label rfind (const point &val, label pos=-1) const
 Find index of the last occurrence of the value.
void resize (const label n)
 Dummy function, to make FixedList consistent with List Any resizing is ignored (Fatal with bad sizing in full debug).
void resize_fill (const label n, const point &val)
 Set val for all elements. Any resizing is ignored (Fatal with bad sizing in full debug).
void resize_nocopy (const label n)
 Dummy function, to make FixedList consistent with List Any resizing is ignored (Fatal with bad sizing in full debug).
void setSize (const label n)
 Dummy function, to make FixedList consistent with List.
void fill (const point &val)
 Assign all entries to the given value.
void moveFirst (const label i)
 Move element to the first position.
void moveLast (const label i)
 Move element to the last position.
void swapFirst (const label i)
 Swap element with the first element.
void swapLast (const label i)
 Swap element with the last element.
void transfer (FixedList< point, N > &list)
 Transfer by swapping using a move assignment for the content of the individual list elements.
pointoperator[] (const label i)
 Return element of FixedList.
void operator= (const UList< point > &list)
 Assignment to UList operator. Takes linear time.
iterator begin () noexcept
 Return an iterator to begin traversing the FixedList.
iterator end () noexcept
 Return an iterator to end traversing the FixedList.
const_iterator cbegin () const noexcept
 Return const_iterator to begin traversing the constant FixedList.
const_iterator cend () const noexcept
 Return const_iterator to end traversing the constant FixedList.
reverse_iterator rbegin ()
 Return reverse_iterator to begin reverse traversing the FixedList.
reverse_iterator rend ()
 Return reverse_iterator to end reverse traversing the FixedList.
const_reverse_iterator crbegin () const
 Return const_reverse_iterator to begin reverse traversing FixedList.
const_reverse_iterator crend () const
 Return const_reverse_iterator to end reverse traversing FixedList.
void swap (FixedList< point, N > &other)
 Swap lists by swapping the content of the individual list elements.
bool operator== (const FixedList< point, N > &list) const
 Equality operation on FixedLists of the same type.
bool operator!= (const FixedList< point, N > &list) const
 The opposite of the equality operation. Takes linear time.
bool operator< (const FixedList< point, N > &list) const
 Compare two FixedLists lexicographically. Takes linear time.
bool operator> (const FixedList< point, N > &list) const
 Compare two FixedLists lexicographically. Takes linear time.
bool operator<= (const FixedList< point, N > &list) const
 Return true if !(a > b). Takes linear time.
bool operator>= (const FixedList< point, N > &list) const
 Return true if !(a < b). Takes linear time.
IstreamreadList (Istream &is)
 Read from Istream, discarding contents of existing List.
OstreamwriteList (Ostream &os, const label shortLen=0) const
 Write List, with line-breaks in ASCII when length exceeds shortLen.
pointfirst () noexcept
 Access first element of the list, position [0] - front().
pointlast () noexcept
 Access last element of the list, position [N-1] - back().
bool found (const point &val, label pos=0) const
 Same as contains().

Additional Inherited Members

Public Types inherited from FixedList< point, 3 >
typedef point value_type
 The value type the FixedList contains.
typedef pointpointer
 The pointer type for non-const access to value_type items.
typedef const pointconst_pointer
 The pointer type for const access to value_type items.
typedef pointreference
 The type used for storing into value_type objects.
typedef const pointconst_reference
 The type used for reading from constant value_type objects.
typedef pointiterator
 Random access iterator for traversing FixedList.
typedef const pointconst_iterator
 Random access iterator for traversing FixedList.
typedef label size_type
 The type to represent the size of a FixedList.
typedef label difference_type
 The difference between iterator objects.
typedef std::reverse_iterator< iteratorreverse_iterator
 Reverse iterator (non-const access).
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 Reverse iterator (const access).
Static Public Member Functions inherited from FixedList< point, 3 >
static const FixedList< point, N > & null () noexcept
 Return a null FixedList (reference to a nullObject). Read/write access is questionable.
static std::streamsize size_bytes () noexcept
 Number of contiguous bytes for the list data,.
static std::streamsize byteSize ()
 Number of contiguous bytes for the list data, runtime FatalError if type is not contiguous.
static constexpr bool empty () noexcept
 Always false since zero-sized FixedList is compile-time disabled.
static constexpr label size () noexcept
 Return the number of elements in the FixedList.
static constexpr unsigned max_size () noexcept
 The dimensioned size (template parameter N) of the FixedList.
Protected Member Functions inherited from FixedList< point, 3 >
void writeEntry (Ostream &os) const
 Write the FixedList with its compound type.

Detailed Description

Triangle point storage. Default constructable (triangle is not).

Definition at line 74 of file triangle.H.

Constructor & Destructor Documentation

◆ triPoints() [1/6]

triPoints ( )
default

Default construct.

◆ triPoints() [2/6]

triPoints ( const point & p0,
const point & p1,
const point & p2 )
inline

Construct from three points.

Definition at line 28 of file triangleI.H.

References a(), b(), c(), and p0.

Here is the call graph for this function:

◆ triPoints() [3/6]

triPoints ( const triPointRef & pts)
inlineexplicit

Construct from point references.

Definition at line 41 of file triangleI.H.

References a(), b, c(), and pts.

Here is the call graph for this function:

◆ triPoints() [4/6]

triPoints ( const FixedList< point, 3 > & pts)
inline

Construct from three points.

Definition at line 49 of file triangleI.H.

References FixedList< point, 3 >::FixedList(), and pts.

Here is the call graph for this function:

◆ triPoints() [5/6]

triPoints ( const UList< point > & points,
const FixedList< label, 3 > & indices )
inline

Copy construct from subset of points.

Definition at line 55 of file triangleI.H.

References FixedList< point, 3 >::FixedList(), and points.

Here is the call graph for this function:

◆ triPoints() [6/6]

triPoints ( const UList< point > & points,
const label p0,
const label p1,
const label p2 )
inline

Copy construct from subset of points.

Definition at line 65 of file triangleI.H.

References a(), b, c(), p0, and points.

Here is the call graph for this function:

Member Function Documentation

◆ front()

void front ( )
delete

The front() accessor (from FixedList) has no purpose.

◆ back()

void back ( )
delete

The back() accessor (from FixedList) has no purpose.

References FixedList< point, 3 >::FixedList(), p0, points, and pts.

Here is the call graph for this function:

◆ a() [1/2]

const point & a ( ) const
inlinenoexcept

The first vertex.

Definition at line 141 of file triangle.H.

References FixedList< point, 3 >::get(), and Foam::noexcept.

Referenced by areaNormal(), box(), centre(), tri(), triPoints(), triPoints(), triPoints(), unitNormal(), vecB(), and vecC().

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

◆ b() [1/2]

const point & b ( ) const
inlinenoexcept

The second vertex.

Definition at line 146 of file triangle.H.

References FixedList< point, 3 >::get(), and Foam::noexcept.

Referenced by triPoints().

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

◆ c() [1/2]

const point & c ( ) const
inlinenoexcept

The third vertex.

Definition at line 151 of file triangle.H.

References FixedList< point, 3 >::get(), and Foam::noexcept.

Referenced by areaNormal(), box(), centre(), tri(), triPoints(), triPoints(), triPoints(), unitNormal(), vecA(), and vecB().

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

◆ a() [2/2]

point & a ( )
inlinenoexcept

The first vertex.

Definition at line 156 of file triangle.H.

References FixedList< point, 3 >::get(), and Foam::noexcept.

Here is the call graph for this function:

◆ b() [2/2]

point & b ( )
inlinenoexcept

The second vertex.

Definition at line 161 of file triangle.H.

References FixedList< point, 3 >::get(), and Foam::noexcept.

Here is the call graph for this function:

◆ c() [2/2]

point & c ( )
inlinenoexcept

The third vertex.

Definition at line 166 of file triangle.H.

References FixedList< point, 3 >::get(), and Foam::noexcept.

Here is the call graph for this function:

◆ flip()

void flip ( )
inline

Flip triangle orientation by swapping second and third vertices.

Definition at line 293 of file triangleI.H.

References b.

◆ tri()

Foam::triPointRef tri ( ) const
inline

Return as triangle reference.

Definition at line 287 of file triangleI.H.

References a(), b, and c().

Here is the call graph for this function:

◆ centre()

Foam::point centre ( ) const
inline

Return centre (centroid).

Definition at line 161 of file triangleI.H.

References a(), b, c(), and triangle< point, const point & >::centre().

Here is the call graph for this function:

◆ areaNormal()

Foam::vector areaNormal ( ) const
inline

The area normal - with magnitude equal to area of triangle.

Definition at line 186 of file triangleI.H.

References a(), triangle< point, const point & >::areaNormal(), b, and c().

Referenced by mag(), and magSqr().

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

◆ unitNormal()

Foam::vector unitNormal ( ) const
inline

Return unit normal.

Definition at line 213 of file triangleI.H.

References a(), b, c(), and triangle< point, const point & >::unitNormal().

Here is the call graph for this function:

◆ mag()

Foam::scalar mag ( ) const
inline

The magnitude of the triangle area.

Definition at line 302 of file triangleI.H.

References areaNormal().

Here is the call graph for this function:

◆ magSqr()

Foam::scalar magSqr ( ) const
inline

The magnitude squared of the triangle area.

Definition at line 315 of file triangleI.H.

References areaNormal().

Here is the call graph for this function:

◆ box()

Foam::Pair< Foam::point > box ( ) const
inline

The enclosing (bounding) box for the triangle.

Definition at line 242 of file triangleI.H.

References a(), b, triangle< point, const point & >::box(), and c().

Here is the call graph for this function:

◆ vecA()

Foam::vector vecA ( ) const
inline

Edge vector opposite point a(): from b() to c().

Definition at line 267 of file triangleI.H.

References b, and c().

Here is the call graph for this function:

◆ vecB()

Foam::vector vecB ( ) const
inline

Edge vector opposite point b(): from c() to a().

Definition at line 273 of file triangleI.H.

References a(), and c().

Here is the call graph for this function:

◆ vecC()

Foam::vector vecC ( ) const
inline

Edge vector opposite point c(): from a() to b().

Definition at line 279 of file triangleI.H.

References a(), and b.

Here is the call graph for this function:

The documentation for this class was generated from the following files:
  • src/OpenFOAM/meshes/primitiveShapes/triangle/triangle.H
  • src/OpenFOAM/meshes/primitiveShapes/triangle/triangleI.H