Bullet library so far focusses on rigid bodies. Your application seems to be deformable triangles. I've been thinking about supporting deformable triangles, but that is not implemented yet. There is no rigid transform that brings a triangle to its deformed state.
The idea to do time of impact using deformed triangles, is similar to the Conservative Advancement CCD used in
http://www.continuousphysics.com/Bullet ... ection.pdf and in
http://www.continuousphysics.com/ftp/pu ... e=fast.pdf ), and goes as follows:
First, we need a measure of transformation. We can take the center of the triangle (average of 3 points), and use that as linear transform. Then, we need a conservative estimate for the maximum travel that the deformed vertices can do. This can be done by taking the maximum distance the triangles move, relative to this center. The orientation can stay identity, or appoximated (for example using the triangle normal etc.)
Then, each iteration in the conservative advancement process, a safe upper bound is given and a fraction is calculated how much the triange can 'travel/deform'. We assume constant/linear deformation. After each step, we perform the actual deformation (for this fraction), and repeat the calculations.
This would give time of impact estimation for cloth triangles for example. But it can also apply to deforming tetrahedra, which is useful for deformation/finite element method (FEM) approaches, etc. In the case of tetrahedra, there is some work done, how to estimate a local coordinate frame, given the 4 vertices. That could be useful.
It wouldn't be too hard to implement, it's more a matter of time. My todo list is very long, both at work and for spare time fun-projects...
Thanks,
Erwin
Apart from that, adding selectable tolerance is possible.