public function compute(Node $a, Node $b) { $f = sqrt(2) - 1; $dx = abs($a->getX() - $b->getX()); $dy = abs($a->getY() - $b->getY()); return $dx < $dy ? $f * $dx + $dy : $f * $dy + $dx; }
public function compute(Node $a, Node $b) { $dx = abs($a->getX() - $b->getX()); $dy = abs($a->getY() - $b->getY()); return max($dx, $dy); }
public function compute(Node $a, Node $b) { $dx = abs($a->getX() - $b->getX()); $dy = abs($a->getY() - $b->getY()); return sqrt($dx * $dx + $dy * $dy); }