Как рассчитать пересечение в PHP GD - PullRequest
0 голосов
/ 11 февраля 2019

Я пытаюсь создать формулу, чтобы найти пересечение двух сегментов, нарисованных в библиотеке PHP GD.

function intersection ( $ax1, $ay1, $ax2, $ay2, $bx1, $by1, $bx2, $by2 ) {
    $a1 = $ay2 - $ay1;
    $b1 = $ax1 - $ax2;
    $c1 = ( $a1 * $ax1 ) + ( $b1 * $ay1 );

    $a2 = $by2 - $by1;
    $b2 = $bx1 - $bx2;
    $c2 = ( $a2 * $bx1 ) + ( $b2 * $by1 );

    $x = ( $b2 * $c1 ) - ( $b1 * $c2 );
    $y = ( $a1 * $c2 ) - ( $a2 * $c1 );

    return array ( 'x' => $x, 'y' => $y );
}

Это была бы функция, которую я выполнил.Но во время ввода данных он не возвращает правильную позицию пересечения.

$cb = intersection( 0, 163, 123, 256, 0, 133, 93, 256 );

Возвращаемое значение: X: 343170;Y: 1315710;Координаты не верны.Где провал?Приветствие и заранее спасибо.PD: я не хороший математик.

...