Сохраните возвращаемое значение beginTransaction () в Zend_Registry и проверьте его позже.
Как насчет:
intersects = !((a.max < b.min) || (b.max < a.min))
Это быстрее (без умножения и приличный компилятор оптимизирует НЕ) и такой же читаемый.
Одномерное перекрестное произведение - это просто x * y
для x
и y
обоих действительных чисел. Так что, я думаю, вы могли бы назвать это одномерным кросс-произведением, но это просто причудливое название для умножения.
Это милый трюк, но я не думаю, что он имеет какие-либо особые математические последствия. Перекрестные произведения - это векторы, а не отрезки линий.