From 40f8bd20297baad5197e4135e82d84bb22d445ea Mon Sep 17 00:00:00 2001 From: codemasher Date: Sat, 11 Apr 2020 23:17:39 +0200 Subject: [PATCH] :shower: --- src/Data/MaskPatternTester.php | 50 ++++++++++++++++------------------ 1 file changed, 24 insertions(+), 26 deletions(-) diff --git a/src/Data/MaskPatternTester.php b/src/Data/MaskPatternTester.php index 9accf3cd5..f8fc3ec17 100644 --- a/src/Data/MaskPatternTester.php +++ b/src/Data/MaskPatternTester.php @@ -161,43 +161,41 @@ final class MaskPatternTester{ * Checks if there are patterns that look similar to the finder patterns (1:1:3:1:1 ratio) */ protected function testLevel3(QRMatrix $m, int $size):float{ - $penalty = 0; + $penalties = 0; foreach($m->matrix() as $y => $row){ foreach($row as $x => $val){ - if($x <= $size - 7){ - if( - $m->check($x , $y) - && !$m->check($x + 1, $y) - && $m->check($x + 2, $y) - && $m->check($x + 3, $y) - && $m->check($x + 4, $y) - && !$m->check($x + 5, $y) - && $m->check($x + 6, $y) - ){ - $penalty += 40; - } + if( + $x + 6 < $size + && $m->check($x , $y) + && !$m->check($x + 1, $y) + && $m->check($x + 2, $y) + && $m->check($x + 3, $y) + && $m->check($x + 4, $y) + && !$m->check($x + 5, $y) + && $m->check($x + 6, $y) + ){ + $penalties++; } - if($y <= $size - 7){ - if( - $m->check($x, $y) - && !$m->check($x, $y + 1) - && $m->check($x, $y + 2) - && $m->check($x, $y + 3) - && $m->check($x, $y + 4) - && !$m->check($x, $y + 5) - && $m->check($x, $y + 6) - ){ - $penalty += 40; - } + if( + $y + 6 < $size + && $m->check($x, $y ) + && !$m->check($x, $y + 1) + && $m->check($x, $y + 2) + && $m->check($x, $y + 3) + && $m->check($x, $y + 4) + && !$m->check($x, $y + 5) + && $m->check($x, $y + 6) + ){ + $penalties++; } } } - return $penalty; + return $penalties * 40; } /**