Math 一维线段/范围相交测试:解决方案名称?

Math 一维线段/范围相交测试:解决方案名称?,math,range,Math,Range,我已经想出了一种方法来测试两条一维线段/范围 因此,将范围定义为: [min, max] 给定范围的两个实例: a = [min, max] b = [min, max] 我使用以下方法测试它们是否相交: (a.max - b.min) * (b.max - a.min) >= 0. 我认为这是一个一维叉积,所以我的问题是: 这个解决方案被归类为一维叉积还是其他什么 对于x和y这两个实数,一维叉积仅仅是x*y。所以我想你可以称之为一维叉积,但这只是乘法的一个花哨的名字 这是一个可爱

我已经想出了一种方法来测试两条一维线段/范围

因此,将范围定义为:

[min, max]
给定范围的两个实例:

a = [min, max] 
b = [min, max]
我使用以下方法测试它们是否相交:

(a.max - b.min) * (b.max - a.min) >= 0.
我认为这是一个一维叉积,所以我的问题是:


这个解决方案被归类为一维叉积还是其他什么

对于
x
y
这两个实数,一维叉积仅仅是
x*y
。所以我想你可以称之为一维叉积,但这只是乘法的一个花哨的名字

这是一个可爱的把戏,但我不认为它在数学上有任何特殊的结果。叉积都是关于向量的,而不是线段。

那么:

intersects = !((a.max < b.min) || (b.max < a.min))
intersects=!((a.max

这更快(不涉及乘法,一个像样的编译器将优化“不远离”)而且同样可读。

谢谢Peter,是的,我只是想找一个花哨的名字:)很好的解决方案Aaron,我同意它比我的解决方案更清晰,我想我将在我的代码中使用它:)叉积的推广是产生向量空间的外部代数的楔形积。