Skip to content

Commit d80278a

Browse files
committed
Revert code simplification
1 parent 4a57c42 commit d80278a

File tree

1 file changed

+49
-31
lines changed

1 file changed

+49
-31
lines changed

QRCoder/QRCodeGenerator.ModulePlacer.MaskPattern.cs

Lines changed: 49 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -163,11 +163,58 @@ public static int Score(QRCodeData qrCode)
163163
for (var x = 0; x < size - 10; x++)
164164
{
165165
// Horizontal pattern matching
166-
if (MatchesPattern1(qrCode.ModuleMatrix, x, y))
166+
if ((qrCode.ModuleMatrix[y][x] &&
167+
!qrCode.ModuleMatrix[y][x + 1] &&
168+
qrCode.ModuleMatrix[y][x + 2] &&
169+
qrCode.ModuleMatrix[y][x + 3] &&
170+
qrCode.ModuleMatrix[y][x + 4] &&
171+
!qrCode.ModuleMatrix[y][x + 5] &&
172+
qrCode.ModuleMatrix[y][x + 6] &&
173+
!qrCode.ModuleMatrix[y][x + 7] &&
174+
!qrCode.ModuleMatrix[y][x + 8] &&
175+
!qrCode.ModuleMatrix[y][x + 9] &&
176+
!qrCode.ModuleMatrix[y][x + 10]) ||
177+
(!qrCode.ModuleMatrix[y][x] &&
178+
!qrCode.ModuleMatrix[y][x + 1] &&
179+
!qrCode.ModuleMatrix[y][x + 2] &&
180+
!qrCode.ModuleMatrix[y][x + 3] &&
181+
qrCode.ModuleMatrix[y][x + 4] &&
182+
!qrCode.ModuleMatrix[y][x + 5] &&
183+
qrCode.ModuleMatrix[y][x + 6] &&
184+
qrCode.ModuleMatrix[y][x + 7] &&
185+
qrCode.ModuleMatrix[y][x + 8] &&
186+
!qrCode.ModuleMatrix[y][x + 9] &&
187+
qrCode.ModuleMatrix[y][x + 10]))
188+
{
167189
score3 += 40;
190+
}
191+
168192
// Vertical pattern matching
169-
if (MatchesPattern1(qrCode.ModuleMatrix, y, x))
193+
if ((qrCode.ModuleMatrix[x][y] &&
194+
!qrCode.ModuleMatrix[x + 1][y] &&
195+
qrCode.ModuleMatrix[x + 2][y] &&
196+
qrCode.ModuleMatrix[x + 3][y] &&
197+
qrCode.ModuleMatrix[x + 4][y] &&
198+
!qrCode.ModuleMatrix[x + 5][y] &&
199+
qrCode.ModuleMatrix[x + 6][y] &&
200+
!qrCode.ModuleMatrix[x + 7][y] &&
201+
!qrCode.ModuleMatrix[x + 8][y] &&
202+
!qrCode.ModuleMatrix[x + 9][y] &&
203+
!qrCode.ModuleMatrix[x + 10][y]) ||
204+
(!qrCode.ModuleMatrix[x][y] &&
205+
!qrCode.ModuleMatrix[x + 1][y] &&
206+
!qrCode.ModuleMatrix[x + 2][y] &&
207+
!qrCode.ModuleMatrix[x + 3][y] &&
208+
qrCode.ModuleMatrix[x + 4][y] &&
209+
!qrCode.ModuleMatrix[x + 5][y] &&
210+
qrCode.ModuleMatrix[x + 6][y] &&
211+
qrCode.ModuleMatrix[x + 7][y] &&
212+
qrCode.ModuleMatrix[x + 8][y] &&
213+
!qrCode.ModuleMatrix[x + 9][y] &&
214+
qrCode.ModuleMatrix[x + 10][y]))
215+
{
170216
score3 += 40;
217+
}
171218
}
172219
}
173220

@@ -186,35 +233,6 @@ public static int Score(QRCodeData qrCode)
186233
// Return the sum of all four penalties
187234
return (score1 + score2) + (score3 + score4);
188235
}
189-
190-
/// <summary>
191-
/// Matches the specified pattern in QR code evaluation rules (1:1:3:1:1 ratio).
192-
/// </summary>
193-
private static bool MatchesPattern1(List<BitArray> matrix, int x, int y)
194-
{
195-
return (matrix[y][x] &&
196-
!matrix[y][x + 1] &&
197-
matrix[y][x + 2] &&
198-
matrix[y][x + 3] &&
199-
matrix[y][x + 4] &&
200-
!matrix[y][x + 5] &&
201-
matrix[y][x + 6] &&
202-
!matrix[y][x + 7] &&
203-
!matrix[y][x + 8] &&
204-
!matrix[y][x + 9] &&
205-
!matrix[y][x + 10]) ||
206-
(!matrix[y][x] &&
207-
!matrix[y][x + 1] &&
208-
!matrix[y][x + 2] &&
209-
!matrix[y][x + 3] &&
210-
matrix[y][x + 4] &&
211-
!matrix[y][x + 5] &&
212-
matrix[y][x + 6] &&
213-
matrix[y][x + 7] &&
214-
matrix[y][x + 8] &&
215-
!matrix[y][x + 9] &&
216-
matrix[y][x + 10]);
217-
}
218236
}
219237
}
220238
}

0 commit comments

Comments
 (0)