Klamp't
0.8.1
|
An edge contact feature. More...
#include <ContactFeature.h>
Public Member Functions | |
virtual Type | GetType () const |
void | GetHold (const Vector3 &x, const Vector3 &axis, Hold &) const |
Makes the hold that matches p1 to x, and the segment (p1,p2) line up to axis. More... | |
void | GetHold (const Vector3 &x, const Vector3 &n, Real theta, Hold &) const |
Makes the hold that matches p1 to x, and orients the segment (p1,p2) to be orthogonal to n, and then rotates around n by the angle theta. More... | |
Public Attributes | |
Vector3 | p1 |
Vector3 | p2 |
Public Attributes inherited from ContactFeatureBase | |
int | link |
string | name |
Real | weight |
weight for picking this feature | |
Additional Inherited Members | |
Public Types inherited from ContactFeatureBase | |
enum | Type { Point, Edge, Face, MultipleFaces, Wheel } |
An edge contact feature.
void EdgeContactFeature::GetHold | ( | const Vector3 & | x, |
const Vector3 & | axis, | ||
Hold & | |||
) | const |
Makes the hold that matches p1 to x, and the segment (p1,p2) line up to axis.
Normals and friction are set to zero.
void EdgeContactFeature::GetHold | ( | const Vector3 & | x, |
const Vector3 & | n, | ||
Real | theta, | ||
Hold & | |||
) | const |
Makes the hold that matches p1 to x, and orients the segment (p1,p2) to be orthogonal to n, and then rotates around n by the angle theta.
Normals are set to n. Friction is set to zero.