- This topic has 1 reply, 2 voices, and was last updated 7 years, 7 months ago by .
Viewing 2 posts - 1 through 2 (of 2 total)
Viewing 2 posts - 1 through 2 (of 2 total)
- You must be logged in to reply to this topic.
Home › Forum › SOFA › Programming with SOFA › [SOLVED] tetra self collisions?
Tagged: 64_bits, Linux_ubuntu, SOFA_1608
i was browsing the new code for sofa.
has tetra to tetra self collisions been implemented?
There is a tetra collision model implemented in Sofa but it seems it can only collide with ray and point models:
modules/SofaMiscCollision/TetrahedronDiscreteIntersection.cpp
TetrahedronDiscreteIntersection::TetrahedronDiscreteIntersection(DiscreteIntersection* object)
: intersection(object)
{
intersection->intersectors.add<TetrahedronModel, PointModel, TetrahedronDiscreteIntersection> (this);
intersection->intersectors.add<RayModel, TetrahedronModel, TetrahedronDiscreteIntersection> (this);
}
You can look at the following files for more information:
modules/SofaMiscCollision/TetrahedronDiscreteIntersection.cpp
modules/SofaMiscCollision/TetrahedronModel.cpp
There also is BarycentricDistanceLMConstraintContact, BarycentricPenalityContact and FrictionContact added for the tetra to tetra collision response, but I don’t know if you can get them to work without a proper intersector between two tetrahedra. Maybe someone with more knowledge about collisions in Sofa could clear this up for us.
WARNING
The forum has been moved to GitHub Discussions.
Old topics and replies are kept here as an archive.