43 template<
class T>
inline T
Abs (
const T &a){
return a <0 ? -a : a;}
44 template<
class T>
inline void Echange (T& a,T& b) {T c=a;a=b;b=c;}
46 template<
class T>
inline T
Min (
const T &a,
const T &b) {
return a < b ? a : b;}
47 template<
class T>
inline T
Max (
const T &a,
const T & b) {
return a > b ? a : b;}
49 template<
class T>
inline T
Max (
const T &a,
const T & b,
const T & c){
return Max(
Max(a,b),c);}
50 template<
class T>
inline T
Min (
const T &a,
const T & b,
const T & c){
return Min(
Min(a,b),c);}
52 template<
class T>
inline T
Max (
const T &a,
const T & b,
const T & c,
const T & d)
54 template<
class T>
inline T
Min (
const T &a,
const T & b,
const T & c,
const T & d)
59 typedef char Nom[1+24];
64 typedef unsigned long int N;
66 typedef unsigned int N;
90 { f << P.
x <<
' ' << P.
y ;
return f; }
92 { f >> P.
x >> P.
y ;
return f; }
95 { f << P->
x <<
' ' << P->
y ;
return f; }
97 { f >> P->
x >> P->
y ;
return f; }
129 { f << P.
x <<
' ' << P.
y <<
' ' << P.
z ;
return f; }
131 { f >> P.
x >> P.
y >> P.
z ;
return f; }
134 { f << P->
x <<
' ' << P->
y <<
' ' << P->
z ;
return f; }
136 { f >> P->
x >> P->
y >> P->
z ;
return f; }
145 R3 (gp_Pnt P) :
x(P.X()),
y(P.Y()),
z(P.
Z()) {}
146 R3 (gp_Vec V) :
x(V.X()),
y(V.Y()),
z(V.
Z()) {}
147 R3 (gp_Dir P) :
x(P.X()),
y(P.Y()),
z(P.
Z()) {}
167 friend gp_Pnt
gp_pnt(
R3 xyz) {
return gp_Pnt(xyz.
x,xyz.
y,xyz.
z); }
169 friend gp_Dir
gp_dir(
R3 xyz) {
return gp_Dir(xyz.
x,xyz.
y,xyz.
z); }
172 {
return xyzMin.
x<=
x &&
x<=xyzMax.
x &&
173 xyzMin.
y<=
y &&
y<=xyzMax.
y &&
174 xyzMin.
z<=
z &&
z<=xyzMax.
z; }
182 { f << P.
x <<
' ' << P.
y <<
' ' << P.
z <<
' ' << P.
omega;
return f; }
184 { f >> P.
x >> P.
y >> P.
z >> P.
omega ;
return f; }
187 { f << P->
x <<
' ' << P->
y <<
' ' << P->
z <<
' ' << P->
omega;
return f; }
189 { f >> P->
x >> P->
y >> P->
z >> P->
omega ;
return f; }
232 {
return R3(P.
x<Q.
x ? P.
x : Q.
x, P.
y<Q.
y ? P.
y : Q.
y, P.
z<Q.
z ? P.
z : Q.
z);}
234 {
return R3(P.
x>Q.
x ? P.
x : Q.
x, P.
y>Q.
y ? P.
y : Q.
y, P.
z>Q.
z ? P.
z : Q.
z);}
R Aire2d(const R2 A, const R2 B, const R2 C)
friend gp_Dir gp_dir(R3 xyz)
friend istream & operator>>(istream &f, R4 &P)
friend R3 operator*(R c, R3 P)
friend std::ostream & operator<<(std::ostream &f, const R4 &P)
friend R4 operator*(R c, R4 P)
friend std::istream & operator>>(std::istream &f, R2 &P)
friend gp_Pnt gp_pnt(R3 xyz)
T Max(const T &a, const T &b)
friend R2 operator*(R c, R2 P)
friend std::ostream & operator<<(std::ostream &f, const R2 &P)
bool DansPave(R3 &xyzMin, R3 &xyzMax)
friend std::istream & operator>>(std::istream &f, R3 &P)
R NormeInfinie(const R2 &A)
friend std::ostream & operator<<(std::ostream &f, const R3 &P)
T Min(const T &a, const T &b)