/// <inheritdoc/> public override float GetTimeOfImpact(CollisionObject objectA, Pose targetPoseA, CollisionObject objectB, Pose targetPoseB, float allowedPenetration) { // We can use conservative advancement because a plane is convex enough so it will work. switch (CollisionDetection.ContinuousCollisionDetectionMode) { case ContinuousCollisionDetectionMode.Full: return(CcdHelper.GetTimeOfImpactCA(objectA, targetPoseA, objectB, targetPoseB, allowedPenetration, CollisionDetection)); default: return(CcdHelper.GetTimeOfImpactLinearCA(objectA, targetPoseA, objectB, targetPoseB, allowedPenetration, CollisionDetection)); } }
/// <inheritdoc/> public override float GetTimeOfImpact(CollisionObject objectA, Pose targetPoseA, CollisionObject objectB, Pose targetPoseB, float allowedPenetration) { // We can use conservative advancement because a plane is convex enough so it will work. // We use a linear test because usually planes do not rotate. return(CcdHelper.GetTimeOfImpactLinearCA(objectA, targetPoseA, objectB, targetPoseB, allowedPenetration, CollisionDetection)); }