Code_TYMPAN  4.4.0
Industrial site acoustic simulation
Public Member Functions | Public Attributes | List of all members
OSegment3D Class Reference

Class to define a segment. More...

#include <3d.h>

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

Public Member Functions

 OSegment3D ()
 Default constructor. More...
 
 OSegment3D (const OSegment3D &other)
 Copy constructor. More...
 
 OSegment3D (const OPoint3D &ptA, const OPoint3D &ptB)
 
virtual ~OSegment3D ()
 Destructor. More...
 
virtual OSegment3Doperator= (const OSegment3D &other)
 operator= More...
 
virtual bool operator== (const OSegment3D &other) const
 operator== More...
 
virtual bool operator!= (const OSegment3D &other) const
 operator!= More...
 
virtual OSegment3D operator* (const OMatrix &matrix) const
 Multiplication with a matrix. More...
 
virtual double longueur () const
 Return the segment length. More...
 
virtual int symetrieOf (const OPoint3D &pt, OPoint3D &ptSym) const
 Return the symmetrical of a point. More...
 
virtual int projection (const OPoint3D &pt, OPoint3D &ptProj, double seuilConfondus) const
 Return the projection of a point. More...
 
virtual int intersects (const OSegment3D &seg, OPoint3D &pt, double seuilConfondus) const
 Return the intersection point with another segment. More...
 
virtual OPoint3D centreOf () const
 Return the position of the segment middle. More...
 
virtual OPoint3D centerOfCurvedPath (const double &R) const
 Return the position of the arc circle center of radius R passing by the segment extremities. More...
 
virtual double lengthOfCurvedPath (const double &R)
 Calculate the path length of radius R passing by the segment extremities. More...
 
virtual OVector3D toVector3D () const
 Build a OVector3D from a segment used for the direction of the sources. More...
 
virtual OSegment3D swap () const
 Return the segment. More...
 

Public Attributes

OPoint3D _ptA
 Point A of the segment. More...
 
OPoint3D _ptB
 Point B of the segment. More...
 

Detailed Description

Class to define a segment.

Definition at line 1088 of file 3d.h.

Constructor & Destructor Documentation

◆ OSegment3D() [1/3]

OSegment3D::OSegment3D ( )

Default constructor.

Definition at line 1179 of file 3d.cpp.

Here is the caller graph for this function:

◆ OSegment3D() [2/3]

OSegment3D::OSegment3D ( const OSegment3D other)

Copy constructor.

Definition at line 1189 of file 3d.cpp.

◆ OSegment3D() [3/3]

OSegment3D::OSegment3D ( const OPoint3D ptA,
const OPoint3D ptB 
)

Definition at line 1194 of file 3d.cpp.

◆ ~OSegment3D()

OSegment3D::~OSegment3D ( )
virtual

Destructor.

Definition at line 1200 of file 3d.cpp.

Member Function Documentation

◆ centerOfCurvedPath()

OPoint3D OSegment3D::centerOfCurvedPath ( const double &  R) const
virtual

Return the position of the arc circle center of radius R passing by the segment extremities.

Returns
OPoint3D Position of the arc circle center.

Definition at line 1303 of file 3d.cpp.

Here is the call graph for this function:

◆ centreOf()

OPoint3D OSegment3D::centreOf ( ) const
virtual

Return the position of the segment middle.

Returns
OPoint3D

Definition at line 1294 of file 3d.cpp.

Here is the caller graph for this function:

◆ intersects()

int OSegment3D::intersects ( const OSegment3D seg,
OPoint3D pt,
double  seuilConfondus 
) const
virtual

Return the intersection point with another segment.

Parameters
segAnother segment.
ptThe intersection point.
seuilConfondusMinimal distance between a point and a segment for which they are considered as overlaid
Returns
INTERS_OUI (1) if the intersection exists, INTERS_CONFONDU (2) if the elements are overlaid, INTERS_NULLE (0) if there is no intersection.

Definition at line 1267 of file 3d.cpp.

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

◆ lengthOfCurvedPath()

double OSegment3D::lengthOfCurvedPath ( const double &  R)
virtual

Calculate the path length of radius R passing by the segment extremities.

Parameters
Rradius R of the circle
Returns
length of curved path

Definition at line 1327 of file 3d.cpp.

Here is the call graph for this function:

◆ longueur()

double OSegment3D::longueur ( ) const
virtual

Return the segment length.

Definition at line 1238 of file 3d.cpp.

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

◆ operator!=()

bool OSegment3D::operator!= ( const OSegment3D other) const
virtual

operator!=

Definition at line 1228 of file 3d.cpp.

Here is the call graph for this function:

◆ operator*()

OSegment3D OSegment3D::operator* ( const OMatrix matrix) const
virtual

Multiplication with a matrix.

Parameters
matrixThe matrix to apply to the segment points.
Returns
A copy of this transformed segment.

Definition at line 1233 of file 3d.cpp.

Here is the call graph for this function:

◆ operator=()

OSegment3D & OSegment3D::operator= ( const OSegment3D other)
virtual

operator=

Definition at line 1202 of file 3d.cpp.

◆ operator==()

bool OSegment3D::operator== ( const OSegment3D other) const
virtual

operator==

Definition at line 1212 of file 3d.cpp.

Here is the caller graph for this function:

◆ projection()

int OSegment3D::projection ( const OPoint3D pt,
OPoint3D ptProj,
double  seuilConfondus 
) const
virtual

Return the projection of a point.

Parameters
ptThe point we want the projection.
ptProjThe projected point.
seuilConfondusMinimal distance between the point and the segment for which they are considered as overlaid
Returns
1 if the calculation succeeds, 0 if not.

Definition at line 1258 of file 3d.cpp.

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

◆ swap()

OSegment3D OSegment3D::swap ( ) const
virtual

Return the segment.

Definition at line 1336 of file 3d.cpp.

◆ symetrieOf()

int OSegment3D::symetrieOf ( const OPoint3D pt,
OPoint3D ptSym 
) const
virtual

Return the symmetrical of a point.

Parameters
ptThe point we want the symmetrical.
ptSymThe symmetrical point.
Returns
1 if the calculation succeeds, 0 if not.

Definition at line 1243 of file 3d.cpp.

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

◆ toVector3D()

OVector3D OSegment3D::toVector3D ( ) const
inlinevirtual

Build a OVector3D from a segment used for the direction of the sources.

Returns
A reference to a OVector3D

Definition at line 1188 of file 3d.h.

Here is the caller graph for this function:

Member Data Documentation

◆ _ptA

OPoint3D OSegment3D::_ptA

Point A of the segment.

Definition at line 1201 of file 3d.h.

◆ _ptB

OPoint3D OSegment3D::_ptB

Point B of the segment.

Definition at line 1203 of file 3d.h.


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