proximity validator

This commit is contained in:
GotPPay
2017-11-10 01:04:51 +01:00
parent 0eee92660a
commit 51d49f4bcc
8 changed files with 33 additions and 0 deletions

View File

@@ -16,6 +16,32 @@ class CsvInputValidator(object):
if len(rows) == 0:
return FileValidationError(FileValidationMessage.InvalidRowCount, 0)
#check for spacing
try:
min_spacing = self.user_values.module_system_constants().panel_spacing
tolerance = self.user_values.module_system_constants().tolerance + 1
min_spacing = (min_spacing[0]*tolerance, min_spacing[1]*tolerance)
for row_index, row in enumerate(rows):
for row_index2, row2 in enumerate(rows):
if row_index2 <= row_index:
continue
x1_pos = float(row[11])
y1_pos = float(row[12])
x2_pos = float(row2[11])
y2_pos = float(row2[12])
x_diff = abs(x1_pos-x2_pos)
y_diff = abs(y1_pos-y2_pos)
if (x_diff < min_spacing[0]) and (y_diff < min_spacing[1]):
return FileValidationError(FileValidationMessage.PanelsTooClose,None)
except:
pass
for row_index, row in enumerate(rows):
chain = [
CsvInputValidator.validate_for_csv,