Blender
V3.3
|
#include <btTriangleShapeEx.h>
Public Member Functions | |
btPrimitiveTriangle () | |
SIMD_FORCE_INLINE void | buildTriPlane () |
bool | overlap_test_conservative (const btPrimitiveTriangle &other) |
Test if triangles could collide. More... | |
SIMD_FORCE_INLINE void | get_edge_plane (int edge_index, btVector4 &plane) const |
Calcs the plane which is paralele to the edge and perpendicular to the triangle plane. More... | |
void | applyTransform (const btTransform &t) |
int | clip_triangle (btPrimitiveTriangle &other, btVector3 *clipped_points) |
Clips the triangle against this. More... | |
bool | find_triangle_collision_clip_method (btPrimitiveTriangle &other, GIM_TRIANGLE_CONTACT &contacts) |
Find collision using the clipping method. More... | |
Public Attributes | |
btVector3 | m_vertices [3] |
btVector4 | m_plane |
btScalar | m_margin |
btScalar | m_dummy |
Definition at line 69 of file btTriangleShapeEx.h.
|
inline |
Definition at line 76 of file btTriangleShapeEx.h.
|
inline |
Definition at line 101 of file btTriangleShapeEx.h.
References m_vertices, and t.
Referenced by btGImpactCollisionAlgorithm::collide_sat_triangles().
|
inline |
Definition at line 80 of file btTriangleShapeEx.h.
References btVector3, blender::math::cross(), blender::math::dot(), m_plane, m_vertices, normal, and btVector4::setValue().
Referenced by btGImpactCollisionAlgorithm::collide_sat_triangles().
int btPrimitiveTriangle::clip_triangle | ( | btPrimitiveTriangle & | other, |
btVector3 * | clipped_points | ||
) |
Clips the triangle against this.
Definition at line 87 of file btTriangleShapeEx.cpp.
References bt_plane_clip_polygon(), bt_plane_clip_triangle(), btVector3, get_edge_plane(), m_vertices, and MAX_TRI_CLIPPING.
Referenced by find_triangle_collision_clip_method().
bool btPrimitiveTriangle::find_triangle_collision_clip_method | ( | btPrimitiveTriangle & | other, |
GIM_TRIANGLE_CONTACT & | contacts | ||
) |
Find collision using the clipping method.
Definition at line 120 of file btTriangleShapeEx.cpp.
References btVector3, clip_triangle(), GIM_TRIANGLE_CONTACT::copy_from(), m_margin, GIM_TRIANGLE_CONTACT::m_penetration_depth, m_plane, GIM_TRIANGLE_CONTACT::m_point_count, GIM_TRIANGLE_CONTACT::m_separating_normal, MAX_TRI_CLIPPING, and GIM_TRIANGLE_CONTACT::merge_points().
Referenced by btGImpactCollisionAlgorithm::collide_sat_triangles().
|
inline |
Calcs the plane which is paralele to the edge and perpendicular to the triangle plane.
Definition at line 94 of file btTriangleShapeEx.h.
References bt_edge_plane(), btVector3, m_plane, and m_vertices.
Referenced by clip_triangle().
bool btPrimitiveTriangle::overlap_test_conservative | ( | const btPrimitiveTriangle & | other | ) |
Test if triangles could collide.
class btPrimitiveTriangle
Definition at line 63 of file btTriangleShapeEx.cpp.
References bt_distance_point_plane(), m_margin, m_plane, and m_vertices.
Referenced by btGImpactCollisionAlgorithm::collide_sat_triangles().
btScalar btPrimitiveTriangle::m_dummy |
Definition at line 75 of file btTriangleShapeEx.h.
btScalar btPrimitiveTriangle::m_margin |
btVector4 btPrimitiveTriangle::m_plane |
Definition at line 73 of file btTriangleShapeEx.h.
Referenced by buildTriPlane(), find_triangle_collision_clip_method(), get_edge_plane(), and overlap_test_conservative().
btVector3 btPrimitiveTriangle::m_vertices[3] |
Definition at line 72 of file btTriangleShapeEx.h.
Referenced by applyTransform(), buildTriPlane(), clip_triangle(), get_edge_plane(), btGImpactMeshShapePart::TrimeshPrimitiveManager::get_primitive_box(), btGImpactMeshShapePart::TrimeshPrimitiveManager::get_primitive_triangle(), overlap_test_conservative(), btGImpactMeshShapePart::processAllTriangles(), and btGImpactMeshShapePart::processAllTrianglesRay().