Public Member Functions | List of all members
arcEdge Class Reference

A blockEdge defined as an arc of a circle. More...

Inheritance diagram for arcEdge:
Inheritance graph
[legend]
Collaboration diagram for arcEdge:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("arc")
 
 arcEdge (const pointField &points, const point &origin, const edge &fromTo)
 
 arcEdge (const pointField &points, const edge &fromTo, const point &midPoint)
 
 arcEdge (const pointField &points, const point &origin, const label from, const label to)
 
 arcEdge (const pointField &points, const label from, const label to, const point &midPoint)
 
 arcEdge (const dictionary &dict, const label index, const searchableSurfaces &, const pointField &points, Istream &is)
 
virtual ~arcEdge ()=default
 
point position (const scalar lambda) const
 
scalar length () const noexcept
 
- Public Member Functions inherited from blockEdge
 TypeName ("blockEdge")
 
 declareRunTimeSelectionTable (autoPtr, blockEdge, Istream,(const dictionary &dict, const label index, const searchableSurfaces &geometry, const pointField &points, Istream &is),(dict, index, geometry, points, is))
 
 blockEdge (const pointField &points, const edge &fromTo)
 
 blockEdge (const dictionary &dict, const label index, const pointField &points, Istream &is)
 
virtual autoPtr< blockEdgeclone () const
 
virtual ~blockEdge ()=default
 
bool valid () const noexcept
 
label start () const noexcept
 
label end () const noexcept
 
const pointfirstPoint () const
 
const pointlastPoint () const
 
int compare (const blockEdge &e) const
 
int compare (const edge &e) const
 
int compare (const label start, const label end) const
 
point linearPosition (const scalar lambda) const
 
virtual tmp< pointFieldposition (const scalarList &lambdas) const
 
void write (Ostream &os, const dictionary &dict) const
 

Additional Inherited Members

- Static Public Member Functions inherited from blockEdge
static autoPtr< blockEdgeNew (const dictionary &dict, const label index, const searchableSurfaces &geometry, const pointField &points, Istream &is)
 
- Protected Member Functions inherited from blockEdge
 blockEdge (const pointField &points, const label from, const label to)
 
- Static Protected Member Functions inherited from blockEdge
static pointField appendEndPoints (const pointField &p, const label from, const label to, const pointField &intermediate)
 
- Protected Attributes inherited from blockEdge
const pointFieldpoints_
 
const label start_
 
const label end_
 

Detailed Description

A blockEdge defined as an arc of a circle.

The arc is normally defined by its endpoints and a point on its circumference, typically a midpoint. For example,

points ((1 0 0) (0 1 0));

arc 0 1 (0.707107 0.707107 0);

The arc can enclose an angle greater than 0 and less than 360 degrees.

The arc will frequently enclose an angle less than 180 degrees. For the case, it is possible to define the arc by its endpoints and its centre (origin) point. For example,

arc 0 1 origin (0 0 0);

When defined in the way, any discrepancy in the arc radius for the endpoints is resolved by adjusting the origin to ensure that the average radius is satisfied.

It is also possible to define a flatness factor as a multiplier of the calculated radius. For example,

arc 0 1 origin 1.1 (0 0 0);
Source files

Definition at line 75 of file arcEdge.H.

Constructor & Destructor Documentation

◆ arcEdge() [1/5]

arcEdge ( const pointField points,
const point origin,
const edge fromTo 
)
Parameters
pointsReferenced point field
originThe origin of the circle
fromToStart/end in point field

Definition at line 186 of file arcEdge.C.

◆ arcEdge() [2/5]

arcEdge ( const pointField points,
const edge fromTo,
const point midPoint 
)
Parameters
pointsReferenced point field
fromToStart/end in point field
midPointA point on the circumference

Definition at line 202 of file arcEdge.C.

◆ arcEdge() [3/5]

arcEdge ( const pointField points,
const point origin,
const label  from,
const label  to 
)
Parameters
pointsReferenced point field
originThe origin of the circle
fromStart point in point field
toEnd point in point field

Definition at line 218 of file arcEdge.C.

◆ arcEdge() [4/5]

arcEdge ( const pointField points,
const label  from,
const label  to,
const point midPoint 
)
Parameters
pointsReferenced point field
fromStart point in point field
toEnd point in point field
midPointA point on the circumference

Definition at line 230 of file arcEdge.C.

◆ arcEdge() [5/5]

arcEdge ( const dictionary dict,
const label  index,
const searchableSurfaces ,
const pointField points,
Istream is 
)
Parameters
pointsReferenced point field

Definition at line 242 of file arcEdge.C.

References Foam::expressions::patchExpr::debug, Foam::Info, token::isWord(), Foam::nl, token::number(), p, and Istream::putBack().

Here is the call graph for this function:

◆ ~arcEdge()

virtual ~arcEdge ( )
virtualdefault

Member Function Documentation

◆ TypeName()

TypeName ( "arc"  )

◆ position()

Foam::point position ( const scalar  lambda) const
virtual

Implements blockEdge.

Definition at line 301 of file arcEdge.C.

References InfoInFunction, lambda(), and Foam::nl.

Here is the call graph for this function:

◆ length()

Foam::scalar length ( ) const
virtualnoexcept

Implements blockEdge.

Definition at line 324 of file arcEdge.C.


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