787 {
789 float slope_pos_left_close = Math.AbsFloat(projection_pos[1] - contact_pos_left_close[1]);
790 float slope_pos_right_close = Math.AbsFloat(projection_pos[1] - contact_pos_right_close[1]);
791 float slope_pos_left_far = Math.AbsFloat(projection_pos[1] - contact_pos_left_far[1]);
792 float slope_pos_right_far = Math.AbsFloat(projection_pos[1] - contact_pos_right_far[1]);
793
795 #ifdef DIAG_DEVELOPER
796 DebugText(
"IsBaseFlat(must be true): ",
true, isTrue,
" (slope < slopeTolerance) | slopeTolerance: " +
m_SlopeTolerance +
" | lc: " + slope_pos_left_close +
" | rc: " + slope_pos_right_close +
" | lf: " + slope_pos_left_far +
" | rf: " + slope_pos_right_far);
797 DrawArrow(projection_pos, contact_pos_left_close, slope_pos_left_close <
m_SlopeTolerance);
798 DrawArrow(projection_pos, contact_pos_right_close, slope_pos_right_close <
m_SlopeTolerance);
799 DrawArrow(projection_pos, contact_pos_left_far, slope_pos_left_far <
m_SlopeTolerance);
800 DrawArrow(projection_pos, contact_pos_right_far, slope_pos_right_far <
m_SlopeTolerance);
801 #endif
802
803 return isTrue;
804 }
vector GetProjectionPosition()