static VectorFieldFunction getVectorFieldFunction(const string &)
Definition: Triangle.cpp:276
Class representing a Triangle.
Definition: Triangle.h:48
Vec3 m_normal
Definition: Triangle.h:57
exception class for Triangle
Definition: Triangle.h:32
Vec3 m_force
Definition: Triangle.h:58
int m_id0
Definition: Triangle.h:59
pair< int, Vec3 > getP0() const
Definition: Triangle.h:83
double getPressure() const
Definition: Triangle.cpp:260
int m_tri_id
Definition: Triangle.h:60
Matrix3 m_trans
Definition: Triangle.h:55
void move(const Vec3 &)
Definition: Triangle.cpp:228
void zeroForce()
Definition: Triangle.h:80
Vec3 m_p0
Definition: Triangle.h:56
Vec3 m_p2
Definition: Triangle.h:56
VEC3_INLINE Vec3 unit() const
Definition: vec3.hpp:225
pair< bool, double > dist(const Vec3 &) const
Definition: Triangle.cpp:138
friend ostream & operator<<(ostream &, const Triangle &)
output for debugging purposes
Definition: Triangle.cpp:313
Vec3 m_p1
Definition: Triangle.h:56
Vec3 getBoundingBoxMin() const
Definition: Triangle.cpp:159
int m_tag
Definition: Triangle.h:60
Matrix3 m_invtrans
Definition: Triangle.h:54
double(Triangle::* ScalarFieldFunction)() const
Definition: Triangle.h:51
TriangleError()
Definition: Triangle.h:34
Vec3 getBoundingBoxMax() const
Definition: Triangle.cpp:170
Triangle(int, int, int, const Vec3 &, const Vec3 &, const Vec3 &, int, int)
Definition: Triangle.cpp:35
VEC3_INLINE Vec3 cross(const Vec3 &lhs, const Vec3 &rhs)
Definition: vec3.hpp:187
VEC3_INLINE double norm() const
Definition: vec3.hpp:211
VEC3_INLINE Vec3 cmax(const Vec3 &v1, const Vec3 &v2)
Definition: vec3.hpp:231
int getID() const
Definition: Triangle.h:77
static ScalarFieldFunction getScalarFieldFunction(const string &)
Definition: Triangle.cpp:296
VEC3_INLINE double & X()
Definition: vec3.h:119
bool containsEdge(const Vec3 &, const Vec3 &) const
Definition: Triangle.cpp:184
#define NULL
Definition: t_list.h:17
Vec3 toGlobal(const Vec3 &)
Definition: Triangle.cpp:241
Vec3 getNormal() const
Definition: Triangle.h:71
VEC3_INLINE double & Y()
Definition: vec3.h:120
MATRIX3_INLINE Matrix3 inv()
return inverse;
Definition: Matrix3.hpp:84
double sep(const Vec3 &) const
Definition: Triangle.cpp:83
Vec3 toLocal(const Vec3 &)
Definition: Triangle.cpp:252
Vec3 getForce() const
Definition: Triangle.h:91
VEC3_INLINE Vec3 cmin(const Vec3 &v1, const Vec3 &v2)
Definition: vec3.hpp:240
void moveNode(int, const Vec3 &)
Definition: Triangle.cpp:198
3x3 Matrix
Definition: Matrix3.h:48
ostream & operator<<(ostream &ost, const Triangle &T)
Definition: Triangle.cpp:313
double EdgeSep(const Vec3 &, const Vec3 &, const Vec3 &) const
Definition: Triangle.cpp:63
void applyForce(const Vec3 &f)
Definition: Triangle.h:79
Vec3(Triangle::* VectorFieldFunction)() const
Definition: Triangle.h:50
VEC3_INLINE Vec3 unit_s() const
Definition: vec3.hpp:250
pair< int, Vec3 > getP1() const
Definition: Triangle.h:84
int getTag() const
Definition: Triangle.h:78
pair< int, Vec3 > getP2() const
Definition: Triangle.h:85
int m_id1
Definition: Triangle.h:59
int m_id2
Definition: Triangle.h:59