计算两条平行线的重叠

Sle*_*rim 2 php

我在2D空间中有2条平行线.这些行用$ min1,$ max1,$ min2,$ max2定义

我已经弄清楚如何检查它们是否重叠:

function overlap($min1,$max1,$min2,$max2){
  if(($min1<$min2 && $max1>$min2) 
    || ($min1<$max2 && $max1>$max2) 
    || ($min1==$min2 && $max1==$max2) 
    || ($min2>=$min1 && $max2<=$max1)
    || ($min1>=$min2 && $max1<=$max2)){
    return true;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)

现在我必须检查重叠长度,但我不知道如何实现这一点.

我需要这个来在分离轴定理实现中获得最小的平移向量

任何提示都会很棒.

Nan*_*nne 10

只是一个快速思考,但我认为它的工作原理.

从行中start'
取最高起始值作为行中的最低结束值end'

如果start' < end'你有(end' - start')的重叠