11#define _USE_MATH_DEFINES
12#define _CRT_SECURE_NO_DEPRECATE 1
20#include <OpenMEEG_Export.h>
24 inline double sqr(
const double x) {
return x*x; }
35 Vect3(
const double a=0.0) { std::fill(&m[0],&m[3],
a); }
39 operator const double*()
const {
return m; }
42 for (
unsigned i=0;
i<3;++
i)
48 std::copy(&
v.m[0],&
v.m[3],&m[0]);
52 double&
x() {
return m[0]; }
53 double x()
const {
return m[0]; }
55 double&
y() {
return m[1]; }
56 double y()
const {
return m[1]; }
58 double&
z() {
return m[2]; }
59 double z()
const {
return m[2]; }
61 double operator<(
const Vect3&
v)
const {
return ((m[0]!=
v.x()) ? (m[0]<
v.x()) : ((m[1]!=
v.y()) ? (m[1]<
v.y()) : (m[2]<
v.z()))); }
97 *
this /= (*this).
norm();
116 const double y1 =
Y1.norm();
117 const double y2 =
Y2.norm();
118 const double y3 =
Y3.norm();
124 return is >>
v.x() >>
v.y() >>
v.z();
128 return os <<
v.x() <<
' ' <<
v.y() <<
' ' <<
v.z() ;
Vect3 operator^(const Vect3 &v) const
Vect3 operator+(const Vect3 &v) const
Vect3 operator*(const double d) const
void operator+=(const Vect3 &v)
double operator<(const Vect3 &v) const
double & operator()(const int i)
void operator-=(const Vect3 &v)
Vect3 operator-(const Vect3 &v) const
double solid_angle(const Vect3 &v1, const Vect3 &v2, const Vect3 &v3) const
bool operator!=(const Vect3 &v) const
void operator/=(const double d)
double operator()(const int i) const
Vect3 operator/(const double d) const
Vect3(const double a=0.0)
void operator*=(const double d)
Vect3 & operator=(const Vect3 &v)
void multadd(const double d, const Vect3 &v)
Vect3 & operator=(const double v)
Vect3(const double x1, const double x2, const double x3)
bool operator==(const Vect3 &v) const
Vect3 operator*(const double d, const Vect3 &V)
Vect3 crossprod(const Vect3 &V1, const Vect3 &V2)
double det(const Vect3 &V1, const Vect3 &V2, const Vect3 &V3)
std::istream & operator>>(std::istream &is, Conductivity< REP > &m)
double sqr(const double x)
std::ostream & operator<<(std::ostream &os, const Conductivity< REP > &m)
std::vector< Normal > Normals
double dotprod(const Vect3 &V1, const Vect3 &V2)