CellModules
|
this file contains various miscellanious utility functions & helpers * More...
Classes | |
struct | Basis |
struct | Config |
class | ConnectableCell |
Basis for every cell a user might want to use. More... | |
struct | ContactSurface |
class | ContactSurfaceBody |
struct | DBG |
class | ElasticBody |
struct | ElasticConnection |
An Elastic Connection is a connection between two cells. More... | |
struct | ERR |
struct | Euler |
struct | GenericConnectionBodyPlugin |
struct | GhostCenter |
class | Grid |
Infinite grid of fixed cell size for space partitioning. More... | |
struct | INF |
struct | Joint |
struct | make_void |
struct | Matrix4x4 |
class | Movable |
struct | Obj3D |
3D object representation: contains the vertices, UV coordinates, normals and faces More... | |
struct | ordered_hash_map |
struct | ordered_pair |
class | Orientable |
struct | OrientedParticle |
struct | Quaternion |
struct | Rotation |
struct | Scene3D |
Class allowing to load a 3D scene from an obj file. It contains one or several Obj3D as well as various helper method. More... | |
struct | Spring |
class | SpringBody |
struct | SpringConnection |
A Spring Connection is a connection between two cells that aims to models both attractive (for adhesion) and repulsive (for collision) forces. It can be seen as composed of 4 dynamically updated mass-spring-damper systems (which can also be seen as a simplified Euler-Bernouilli beam system): More... | |
struct | SUC |
class | Vector3D |
general purpose 3D vector/point class. More... | |
struct | Verlet |
class | VolumeMembrane |
struct | WARN |
class | World |
Where "everything" happens. More... | |
Typedefs | |
template<typename... Ts> | |
using | void_t = typename make_void< Ts... >::type |
using | Vec = Vector3D |
alias for Vector3D More... | |
Functions | |
template<typename T > | |
std::ostream & | operator<< (std::ostream &out, const Basis< T > &b) |
std::pair< bool, Vec > | rayInTriangle (const Vec &v0, const Vec &v1, const Vec &v2, const Vec &o, const Vec &r, const double tolerance=0) |
test if a ray hits a triangle More... | |
std::pair< bool, Vec > | projectionIntriangle (const Vec &v0, const Vec &v1, const Vec &v2, const Vec &p, const double tolerance=0) |
tests if the projection of a point along the normal of a triangle is inside said triangle More... | |
double | closestDistToTriangleEdge (const Vec &v0, const Vec &v1, const Vec &v2, const Vec &p) |
computes the smallest distance to a triangle edge from a given point More... | |
ostream & | operator<< (ostream &out, const Matrix4x4 &M) |
bool | operator== (const Vector3D &v1, const Vector3D &v2) |
bool | operator!= (const Vector3D &v1, const Vector3D &v2) |
Vector3D | operator+ (const Vector3D &v1, const Vector3D &v2) |
Vector3D | operator+ (const double f, const Vector3D &v) |
Vector3D | operator+ (const Vector3D &v, const double f) |
Vector3D | operator- (const Vector3D &v1, const Vector3D &v2) |
Vector3D | operator* (const Vector3D &v1, const Vector3D &v2) |
Vector3D | operator* (const double f, const Vector3D &v) |
Vector3D | operator* (const Vector3D &v, const double f) |
Vector3D | operator- (const double f, const Vector3D &v) |
Vector3D | operator- (const Vector3D &v, const double f) |
Vector3D | operator- (const Vector3D &v) |
Vector3D | operator/ (const Vector3D &v, const double f) |
ostream & | operator<< (ostream &out, const Vector3D &v) |
template<typename T > | |
std::string | sublogger (T &&t) |
template<typename T , typename... Args> | |
std::string | sublogger (T &&t, Args &&... args) |
template<typename Type , typename... Args> | |
void | logger (Args &&... args) |
template<typename T > | |
ordered_pair< T * > | make_ordered_cell_pair (T *a, T *b) |
template<typename T > | |
ordered_pair< T > | make_ordered_pair (const T &a, const T &b) |
template<typename T > | |
T * | ptr (T &obj) |
returns a pointer (transforms reference into pointer) More... | |
template<typename T > | |
T * | ptr (T *obj) |
returns a pointer (transforms reference into pointer) More... | |
template<typename T > | |
constexpr T | lerp (const T &a, const T &b, const double &c) |
linear interpolation More... | |
template<typename T > | |
bool | fuzzyEqual (const T &a, const T &b, double eps=1e-6) |
template<typename T > | |
bool | isInVector (const T &elem, const std::vector< T > &vec) |
template<typename T > | |
void | eraseFromVector (const T &elem, std::deque< T > &vec) |
template<typename T > | |
void | eraseFromVector (const T &elem, std::vector< T > &vec) |
std::vector< std::string > | splitStr (const std::string &s, char delim) |
String spliting. More... | |
std::array< double, 3 > | hsvToRgb (double h, double s, double v) |
transform hsv color space to rgb More... | |
template<typename T > | |
constexpr T | constpow (const T base, unsigned const exponent) |
template<typename T > | |
constexpr size_t | eToUI (const T &t) |
double | dampingFromRatio (const double r, const double m, const double k) |
Variables | |
static double | GRIDSIZE = 120 |
Embedded plugin that will handle the collision detection routines. Parallel code. More... | |
const static constexpr char | RESET [] = "" |
const static constexpr char | BLACK [] = "" |
const static constexpr char | RED [] = "" |
const static constexpr char | GREEN [] = "" |
const static constexpr char | YELLOW [] = "" |
const static constexpr char | BLUE [] = "" |
const static constexpr char | MAGENTA [] = "" |
const static constexpr char | CYAN [] = "" |
const static constexpr char | WHITE [] = "" |
const static constexpr char | BOLDBLACK [] = "" |
const static constexpr char | BOLDRED [] = "" |
const static constexpr char | BOLDGREEN [] = "" |
const static constexpr char | BOLDYELLOW [] = "" |
const static constexpr char | BOLDBLUE [] = "" |
const static constexpr char | BOLDMAGENTA [] = "" |
const static constexpr char | BOLDCYAN [] = "" |
const static constexpr char | BOLDWHITE [] = "" |
this file contains various miscellanious utility functions & helpers *
using MecaCell::Vec = typedef Vector3D |
using MecaCell::void_t = typedef typename make_void<Ts...>::type |
Definition at line 12 of file introspect.hpp.
|
inline |
computes the smallest distance to a triangle edge from a given point
v0 | triangle vertex 0 |
v1 | triangle vertex 1 |
v2 | triangle vertex 2 |
p | considered point |
Definition at line 79 of file geometry.hpp.
|
inlineconstexpr |
|
inline |
|
inline |
|
inline |
|
constexpr |
|
inline |
|
inline |
|
inline |
|
constexpr |
void MecaCell::logger | ( | Args &&... | args | ) |
Definition at line 129 of file logger.hpp.
|
inline |
Definition at line 18 of file ordered_pair.hpp.
|
inline |
Definition at line 22 of file ordered_pair.hpp.
Definition at line 541 of file vector3D.h.
Definition at line 566 of file vector3D.h.
Definition at line 569 of file vector3D.h.
Definition at line 561 of file vector3D.h.
Definition at line 550 of file vector3D.h.
Definition at line 553 of file vector3D.h.
Definition at line 546 of file vector3D.h.
Definition at line 573 of file vector3D.h.
Definition at line 580 of file vector3D.h.
Definition at line 576 of file vector3D.h.
Definition at line 557 of file vector3D.h.
Definition at line 584 of file vector3D.h.
|
inline |
Definition at line 116 of file matrix4x4.h.
|
inline |
Definition at line 587 of file vector3D.h.
|
inline |
Definition at line 537 of file vector3D.h.
|
inline |
tests if the projection of a point along the normal of a triangle is inside said triangle
v0 | triangle vertex 0 |
v1 | triangle vertex 1 |
v2 | triangle vertex 2 |
p | point to be projected |
tolerance |
Definition at line 53 of file geometry.hpp.
|
inline |
|
inline |
|
inline |
test if a ray hits a triangle
v0 | triangle vertex 0 |
v1 | triangle vertex 1 |
v2 | triangle vertex 2 |
o | origin of ray |
r | direction of ray |
tolerance |
Definition at line 19 of file geometry.hpp.
|
inline |
std::string MecaCell::sublogger | ( | T && | t | ) |
Definition at line 71 of file logger.hpp.
std::string MecaCell::sublogger | ( | T && | t, |
Args &&... | args | ||
) |
Definition at line 77 of file logger.hpp.
|
staticconstexpr |
Definition at line 41 of file logger.hpp.
|
staticconstexpr |
Definition at line 45 of file logger.hpp.
|
staticconstexpr |
Definition at line 49 of file logger.hpp.
|
staticconstexpr |
Definition at line 53 of file logger.hpp.
|
staticconstexpr |
Definition at line 55 of file logger.hpp.
|
staticconstexpr |
Definition at line 51 of file logger.hpp.
|
staticconstexpr |
Definition at line 54 of file logger.hpp.
|
staticconstexpr |
Definition at line 50 of file logger.hpp.
|
staticconstexpr |
Definition at line 56 of file logger.hpp.
|
staticconstexpr |
Definition at line 52 of file logger.hpp.
|
staticconstexpr |
Definition at line 47 of file logger.hpp.
|
staticconstexpr |
Definition at line 43 of file logger.hpp.
|
static |
Embedded plugin that will handle the collision detection routines. Parallel code.
Definition at line 17 of file genericconnectionplugin.hpp.
|
staticconstexpr |
Definition at line 46 of file logger.hpp.
|
staticconstexpr |
Definition at line 42 of file logger.hpp.
|
staticconstexpr |
Definition at line 40 of file logger.hpp.
|
staticconstexpr |
Definition at line 48 of file logger.hpp.
|
staticconstexpr |
Definition at line 44 of file logger.hpp.