OOFEM 3.0
Loading...
Searching...
No Matches
oofem::Line Class Reference

#include <geometry.h>

Inheritance diagram for oofem::Line:
Collaboration diagram for oofem::Line:

Public Member Functions

 Line ()
virtual ~Line ()
 Line (const FloatArray &iPointA, const FloatArray &iPointB)
BasicGeometryClone () override
double computeDistanceTo (const FloatArray &point) override
 Computes normal signed distance between this object and a point.
void computeNormalSignDist (double &oDist, const FloatArray &iPoint) const override
 Computes tangential distance to a point.
double computeTangentialDistanceToEnd (const FloatArray &point)
void computeTangentialSignDist (double &oDist, const FloatArray &iPoint, double &oMinDistArcPos) const override
void computeProjection (FloatArray &answer)
int computeNumberOfIntersectionPoints (Element *element) override
 Gives number of intersection points of Geometry entity with an element, Element reference will be later replaced by Geometry.
void computeIntersectionPoints (Element *element, std ::vector< FloatArray > &oIntersectionPoints) override
 Gives intersection points between this Geometry and Element.
double computeInclinationAngle ()
void computeTransformationMatrix (FloatMatrix &answer)
void transformIntoPolar (FloatArray *point, FloatArray &answer)
void initializeFrom (InputRecord &ir) override
 Initializes the Geometry from the InputRecord.
bool isPointInside (FloatArray *point)
bool intersects (Element *element) override
 Checks whether an element is interacted, Element reference will be later replaced by Geometry.
bool isOutside (BasicGeometry *bg) override
double giveLength () const
Public Member Functions inherited from oofem::BasicGeometry
 BasicGeometry ()
 Constructor.
 BasicGeometry (const BasicGeometry &iBasicGeometry)
 Copy constructor: should be implemented when a class deals with pointers.
virtual ~BasicGeometry ()
 Destructor.
virtual void printVTK (int iTStepIndex, int iIndex)
virtual void computeLocalCoordinates (FloatArray &oLocCoord, const FloatArray &iPoint) const
virtual void giveSubPolygon (std ::vector< FloatArray > &oPoints, const double &iXiStart, const double &iXiEnd) const
virtual void giveGlobalCoordinates (FloatArray &oGlobalCoord, const double &iArcPos) const
virtual void giveTangent (FloatArray &oTangent, const double &iArcPosition) const
 Computes tangential direction at given local coordinate (arcPos).
const FloatArraygiveVertex (int n) const
void setVertices (const std::vector< FloatArray > &iVertices)
void removeDuplicatePoints (const double &iTolSquare)
void insertVertexFront (const FloatArray &iP)
void insertVertexBack (const FloatArray &iP)
void clear ()
void translate (const FloatArray &iTrans)
virtual void giveInputRecord (DynamicInputRecord &input)
virtual const char * giveClassName () const
 Gives class name.
std::string errorInfo (const char *func) const
int giveNrVertices () const
 Returns number of Geometry vertices.
virtual bool isInside (Element *el)
virtual bool isInside (const FloatArray &point)
virtual void printYourself ()
virtual void saveContext (DataStream &stream, ContextMode mode)
virtual void restoreContext (DataStream &stream, ContextMode mode)
virtual void draw (oofegGraphicContext &gc)
virtual bool giveTips (TipInfo &oStartTipInfo, TipInfo &oEndTipInfo) const
virtual void giveBoundingSphere (FloatArray &oCenter, double &oRadius)

Additional Inherited Members

Static Public Member Functions inherited from oofem::BasicGeometry
static double computeLineDistance (const FloatArray &iP1, const FloatArray &iP2, const FloatArray &iQ1, const FloatArray &iQ2)
Protected Attributes inherited from oofem::BasicGeometry
std ::vector< FloatArraymVertices
 List of geometry vertices.

Detailed Description

Definition at line 185 of file geometry.h.

Constructor & Destructor Documentation

◆ Line() [1/2]

oofem::Line::Line ( )
inline

Definition at line 188 of file geometry.h.

References oofem::BasicGeometry::BasicGeometry().

Referenced by Clone().

◆ ~Line()

virtual oofem::Line::~Line ( )
inlinevirtual

Definition at line 189 of file geometry.h.

◆ Line() [2/2]

oofem::Line::Line ( const FloatArray & iPointA,
const FloatArray & iPointB )

Member Function Documentation

◆ Clone()

BasicGeometry * oofem::Line::Clone ( )
inlineoverridevirtual

Implements oofem::BasicGeometry.

Definition at line 192 of file geometry.h.

References oofem::BasicGeometry::BasicGeometry(), and Line().

◆ computeDistanceTo()

double oofem::Line::computeDistanceTo ( const FloatArray & point)
overridevirtual

Computes normal signed distance between this object and a point.

Reimplemented from oofem::BasicGeometry.

Definition at line 229 of file geometry.C.

References oofem::FloatArray::at(), oofem::distance(), and oofem::BasicGeometry::mVertices.

Referenced by computeIntersectionPoints(), and isOutside().

◆ computeInclinationAngle()

double oofem::Line::computeInclinationAngle ( )

Definition at line 325 of file geometry.C.

References oofem::FloatArray::at(), and oofem::BasicGeometry::mVertices.

Referenced by computeTransformationMatrix().

◆ computeIntersectionPoints()

void oofem::Line::computeIntersectionPoints ( Element * element,
std ::vector< FloatArray > & oIntersectionPoints )
overridevirtual

◆ computeNormalSignDist()

void oofem::Line::computeNormalSignDist ( double & oDist,
const FloatArray & iPoint ) const
inlineoverridevirtual

Computes tangential distance to a point.

Implements oofem::BasicGeometry.

Definition at line 197 of file geometry.h.

References OOFEM_ERROR.

◆ computeNumberOfIntersectionPoints()

int oofem::Line::computeNumberOfIntersectionPoints ( Element * element)
overridevirtual

◆ computeProjection()

void oofem::Line::computeProjection ( FloatArray & answer)

◆ computeTangentialDistanceToEnd()

double oofem::Line::computeTangentialDistanceToEnd ( const FloatArray & point)

◆ computeTangentialSignDist()

void oofem::Line::computeTangentialSignDist ( double & oDist,
const FloatArray & iPoint,
double & oMinDistArcPos ) const
overridevirtual

◆ computeTransformationMatrix()

void oofem::Line::computeTransformationMatrix ( FloatMatrix & answer)

◆ giveLength()

double oofem::Line::giveLength ( ) const
inline

Definition at line 214 of file geometry.h.

References oofem::distance(), and oofem::BasicGeometry::mVertices.

Referenced by computeNumberOfIntersectionPoints().

◆ initializeFrom()

void oofem::Line::initializeFrom ( InputRecord & ir)
overridevirtual

Initializes the Geometry from the InputRecord.

Reimplemented from oofem::BasicGeometry.

Definition at line 357 of file geometry.C.

References _IFT_Line_end, _IFT_Line_start, IR_GIVE_FIELD, and oofem::BasicGeometry::mVertices.

◆ intersects()

bool oofem::Line::intersects ( Element * element)
overridevirtual

Checks whether an element is interacted, Element reference will be later replaced by Geometry.

Reimplemented from oofem::BasicGeometry.

Definition at line 217 of file geometry.C.

References computeNumberOfIntersectionPoints().

◆ isOutside()

bool oofem::Line::isOutside ( BasicGeometry * bg)
overridevirtual

◆ isPointInside()

bool oofem::Line::isPointInside ( FloatArray * point)

◆ transformIntoPolar()


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

This page is part of the OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak Bořek Patzák
Project e-mail: oofem@fsv.cvut.cz
Generated at for OOFEM by doxygen 1.15.0 written by Dimitri van Heesch, © 1997-2011