use crate::math::{Isometry, Real};
use crate::shape::HalfSpace;
use crate::shape::SupportMap;
pub fn intersection_test_halfspace_support_map<G: ?Sized + SupportMap>(
pos12: &Isometry<Real>,
halfspace: &HalfSpace,
other: &G,
) -> bool {
let deepest = other.support_point_toward(pos12, &-halfspace.normal);
halfspace.normal.dot(&deepest.coords) <= 0.0
}
pub fn intersection_test_support_map_halfspace<G: ?Sized + SupportMap>(
pos12: &Isometry<Real>,
other: &G,
halfspace: &HalfSpace,
) -> bool {
intersection_test_halfspace_support_map(&pos12.inverse(), halfspace, other)
}