Code_TYMPAN  4.2.0
Industrial site acoustic simulation
Classes | Macros | Typedefs | Functions
3d.h File Reference
#include <cmath>
#include <math.h>
#include <vector>
#include <ostream>
Include dependency graph for 3d.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  OCoord3D
 The 3D coordinate class. More...
 
class  OVector3D
 The 3D vector class. More...
 
class  OPoint3D
 The 3D point class. More...
 
class  OMatrix
 The 4x4 matrix class. More...
 
class  OGeometrie
 Class Geometry utilities. More...
 
class  OSegment3D
 Class to define a segment. More...
 
class  ORepere3D
 3D frame with a point and 3 vectors. More...
 
class  OBox
 The box class. More...
 
class  OBox2
 Class to define a box (not necessary parallel to the axis as OBox) More...
 
class  OHPlane3D
 The 3D Plane class using Hessian normal form. More...
 

Macros

#define INTERS_CONFONDU   2
 The elements match. More...
 
#define INTERS_OUI   1
 The intersection exists. More...
 
#define INTERS_NULLE   0
 No intersection. More...
 
#define EPSILON_3   0.001
 
#define EPSILON_5   0.00001
 
#define EPSILON_6   0.000001
 
#define EPSILON_7   0.0000001
 
#define EPSILON_13   0.0000000000001
 
#define EPSILON_50   1.e-50
 
#define TYSEUILCONFONDUS   EPSILON_3
 
#define M_PI   3.1415926535897932384626433832795
 Pi. More...
 
#define M_2PI   6.283185307179586476925287766559
 2Pi. More...
 

Typedefs

typedef std::vector< OPoint3DTabPoint3D
 

Functions

double ABS (double a)
 Return the absolute value. More...
 
double SIGNE (double a)
 Return the number sign. More...
 
double MAX (double a, double b)
 Return the biggest number of two ones. More...
 
double MAX3 (double a, double b, double c)
 Return the biggest number of three ones. More...
 
double MIN (double a, double b)
 Return the smallest number of two ones. More...
 
double DEGTORAD (double a)
 Converts an angle from degrees to radians. More...
 
double RADTODEG (double a)
 Converts an angle from radians to degrees. More...
 
double GRATORAD (double a)
 Converts an angle from gradians to radians. More...
 
double RADTOGRA (double a)
 Converts an angle from radians to gradians. More...
 
double GRATODEG (double a)
 Converts an angle from gradians to degrees. More...
 
double DEGTOGRA (double a)
 Converts an angle from degrees to gradians. More...
 
int ROUND (double a)
 Compute the rounded value of a number. More...
 
double BORNE (double a, double b, double c)
 Limit a number. More...
 
int BORNE (int a)
 Limit a number between 0 and 255. More...
 
::std::ostream & operator<< (::std::ostream &os, const OCoord3D &c)
 
OCoord3D operator+ (const OCoord3D &coord, const OVector3D &vect)
 Return a OCoord3D from an operator+ between a OCoord3D and a OVector3D. More...
 
::std::ostream & operator<< (::std::ostream &os, const OVector3D &v)
 
::std::ostream & operator<< (::std::ostream &os, const OPoint3D &v)
 
OVector3D operator* (const OMatrix &mat, const OVector3D &vec)
 
OPoint3D operator* (const OMatrix &mat, const OPoint3D &pt)
 

Macro Definition Documentation

◆ EPSILON_13

#define EPSILON_13   0.0000000000001

Definition at line 43 of file 3d.h.

◆ EPSILON_3

#define EPSILON_3   0.001

Definition at line 39 of file 3d.h.

◆ EPSILON_5

#define EPSILON_5   0.00001

Definition at line 40 of file 3d.h.

◆ EPSILON_50

#define EPSILON_50   1.e-50

Definition at line 44 of file 3d.h.

◆ EPSILON_6

#define EPSILON_6   0.000001

Definition at line 41 of file 3d.h.

◆ EPSILON_7

#define EPSILON_7   0.0000001

Definition at line 42 of file 3d.h.

◆ INTERS_CONFONDU

#define INTERS_CONFONDU   2

The elements match.

Definition at line 33 of file 3d.h.

◆ INTERS_NULLE

#define INTERS_NULLE   0

No intersection.

Definition at line 37 of file 3d.h.

◆ INTERS_OUI

#define INTERS_OUI   1

The intersection exists.

Definition at line 35 of file 3d.h.

◆ M_2PI

#define M_2PI   6.283185307179586476925287766559

2Pi.

Definition at line 57 of file 3d.h.

◆ M_PI

#define M_PI   3.1415926535897932384626433832795

Pi.

Definition at line 53 of file 3d.h.

◆ TYSEUILCONFONDUS

#define TYSEUILCONFONDUS   EPSILON_3

Definition at line 49 of file 3d.h.

Typedef Documentation

◆ TabPoint3D

typedef std::vector<OPoint3D> TabPoint3D

Definition at line 481 of file 3d.h.

Function Documentation

◆ ABS()

double ABS ( double  a)
inline

Return the absolute value.

Parameters
aA number.
Returns
The absolute value.

Definition at line 70 of file 3d.h.

◆ BORNE() [1/2]

double BORNE ( double  a,
double  b,
double  c 
)
inline

Limit a number.

Parameters
aA number.
bLower limit.
cUpper limit.
Returns
The number or one of the limits.

Definition at line 208 of file 3d.h.

Here is the caller graph for this function:

◆ BORNE() [2/2]

int BORNE ( int  a)
inline

Limit a number between 0 and 255.

Parameters
aA number.
Returns
A number or one of the limits.

Definition at line 219 of file 3d.h.

Here is the call graph for this function:

◆ DEGTOGRA()

double DEGTOGRA ( double  a)
inline

Converts an angle from degrees to gradians.

Parameters
aAngle in degrees.
Returns
Angle in gradians.

Definition at line 184 of file 3d.h.

◆ DEGTORAD()

double DEGTORAD ( double  a)
inline

Converts an angle from degrees to radians.

Parameters
aAngle in degrees.
Returns
Angle in radians.

Definition at line 129 of file 3d.h.

Here is the caller graph for this function:

◆ GRATODEG()

double GRATODEG ( double  a)
inline

Converts an angle from gradians to degrees.

Parameters
aAngle in gradians.
Returns
Angle in degrees.

Definition at line 173 of file 3d.h.

◆ GRATORAD()

double GRATORAD ( double  a)
inline

Converts an angle from gradians to radians.

Parameters
aAngle in gradians.
Returns
Angle in radians.

Definition at line 151 of file 3d.h.

◆ MAX()

double MAX ( double  a,
double  b 
)
inline

Return the biggest number of two ones.

Parameters
aThe first number.
bThe second number.
Returns
The biggest number between a and b.

Definition at line 93 of file 3d.h.

Here is the caller graph for this function:

◆ MAX3()

double MAX3 ( double  a,
double  b,
double  c 
)
inline

Return the biggest number of three ones.

Parameters
aFirst number.
bSecond number.
cThird number.
Returns
Biggest number between a, b, and c.

Definition at line 106 of file 3d.h.

Here is the call graph for this function:

◆ MIN()

double MIN ( double  a,
double  b 
)
inline

Return the smallest number of two ones.

Parameters
aFirst number.
bSecond number.
Returns
Smallest number between a and b.

Definition at line 118 of file 3d.h.

◆ operator*() [1/2]

OVector3D operator* ( const OMatrix mat,
const OVector3D vec 
)

Definition at line 604 of file 3d.cpp.

Here is the caller graph for this function:

◆ operator*() [2/2]

OPoint3D operator* ( const OMatrix mat,
const OPoint3D pt 
)

Definition at line 611 of file 3d.cpp.

◆ operator+()

OCoord3D operator+ ( const OCoord3D coord,
const OVector3D vect 
)
inline

Return a OCoord3D from an operator+ between a OCoord3D and a OVector3D.

Definition at line 469 of file 3d.h.

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

◆ operator<<() [1/3]

::std::ostream& operator<< ( ::std::ostream &  os,
const OCoord3D c 
)

Definition at line 113 of file 3d.cpp.

Here is the caller graph for this function:

◆ operator<<() [2/3]

::std::ostream& operator<< ( ::std::ostream &  os,
const OVector3D v 
)

Definition at line 340 of file 3d.cpp.

◆ operator<<() [3/3]

::std::ostream& operator<< ( ::std::ostream &  os,
const OPoint3D v 
)

Definition at line 467 of file 3d.cpp.

◆ RADTODEG()

double RADTODEG ( double  a)
inline

Converts an angle from radians to degrees.

Parameters
aAngle in radians.
Returns
Angle in degrees.

Definition at line 140 of file 3d.h.

Here is the caller graph for this function:

◆ RADTOGRA()

double RADTOGRA ( double  a)
inline

Converts an angle from radians to gradians.

Parameters
aAngle in radians.
Returns
Angle in gradians.

Definition at line 162 of file 3d.h.

◆ ROUND()

int ROUND ( double  a)
inline

Compute the rounded value of a number.

Parameters
aA number.
Returns
Rounded value.

Definition at line 195 of file 3d.h.

Here is the caller graph for this function:

◆ SIGNE()

double SIGNE ( double  a)
inline

Return the number sign.

Parameters
aA number.
Returns
The sign (1 or -1).

Definition at line 81 of file 3d.h.

Here is the caller graph for this function: