ESyS-Particle
4.0.1
|
Class representing the corner of a polygon. More...
#include <Corner.h>
Public Member Functions | |
Corner (const Vec3 &, int, int) | |
void | addEdge (Edge *) |
void | addTriangle (Triangle *) |
double | sep (const Vec3 &) const |
bool | isValidContact (const Vec3 &) const |
Vec3 | getDirectionFromPoint (const Vec3 &) const |
void | move (const Vec3 &) |
Vec3 | getPos () const |
void | setPos (const Vec3 &p) |
void | applyForce (const Vec3 &f) |
int | getID () const |
int | getTag () const |
double | getDistMoved () |
void | resetOldPos () |
Class representing the corner of a polygon.
Corner::Corner | ( | const Vec3 & | pos, |
int | id, | ||
int | tag | ||
) |
constructor
pos | the position of the corner |
id | the node id |
tag | the node tag |
void Corner::addEdge | ( | Edge * | edge | ) |
add Edge to corner
edge | a pointer to the edge |
void Corner::addTriangle | ( | Triangle * | triangle | ) |
Vec3 Corner::getDirectionFromPoint | ( | const Vec3 & | p | ) | const |
get the unit direction vector between a point and the corner
p | the point |
Referenced by ECornerInteraction::calcForces().
bool Corner::isValidContact | ( | const Vec3 & | p | ) | const |
check if the contact between a particle at a point and the corner is valid or if there is a contact between the particle and any of the adjacent edges or triangles
p | the center of the particle |
Referenced by ECornerInteraction::calcForces().
void Corner::move | ( | const Vec3 & | d | ) |
move the corner
d | the displacement |
double Corner::sep | ( | const Vec3 & | p | ) | const |
get distance between corner and point
p | the point |
Referenced by ECornerInteraction::calcForces().