Add warning messges and leg_id to error message in get_percentage_from_letter
This commit is contained in:
parent
e8d04ada05
commit
4a769a41a8
1 changed files with 22 additions and 18 deletions
|
@ -369,7 +369,9 @@ class FeatureRenderer:
|
|||
if symbol_code == "#":
|
||||
continue
|
||||
|
||||
code_components = get_code_components(symbol_code)
|
||||
code_components = get_code_components(
|
||||
symbol_code, leg_id
|
||||
)
|
||||
symbol_key = code_components["symbol_key"]
|
||||
|
||||
if symbol_key:
|
||||
|
@ -385,13 +387,11 @@ class FeatureRenderer:
|
|||
|
||||
# Print message if symbol could not be found
|
||||
if not symbol_found:
|
||||
messages.AddMessage(
|
||||
arcpy.AddWarning(
|
||||
f"Could not find symbol in gallery {symbol_key}"
|
||||
)
|
||||
else:
|
||||
messages.AddMessage(
|
||||
f"{leg_id} is not in legend table yet"
|
||||
)
|
||||
arcpy.AddWarning(f"{leg_id} is not in legend table")
|
||||
|
||||
# Add user defined labels
|
||||
if add_labels:
|
||||
|
@ -529,7 +529,9 @@ class FeatureRenderer:
|
|||
if symbol_code == "#":
|
||||
continue
|
||||
|
||||
code_components = get_code_components(symbol_code)
|
||||
code_components = get_code_components(
|
||||
symbol_code, leg_id
|
||||
)
|
||||
color_value = code_components["color"]
|
||||
symbol_color_value = code_components["symbol_color"]
|
||||
|
||||
|
@ -671,11 +673,11 @@ def get_symbol_code_for_shape(shape_type, symbol_codes):
|
|||
)
|
||||
|
||||
|
||||
def get_code_components(code):
|
||||
def get_code_components(code, leg_id):
|
||||
code_len = len(code)
|
||||
if code_len == 4:
|
||||
return {
|
||||
"color": decode_color(code),
|
||||
"color": decode_color(code, leg_id),
|
||||
"symbol_key": "",
|
||||
"symbol_color": {},
|
||||
}
|
||||
|
@ -695,13 +697,13 @@ def get_code_components(code):
|
|||
}
|
||||
elif code_len == 11:
|
||||
return {
|
||||
"color": decode_color(code[:4]),
|
||||
"color": decode_color(code[:4], leg_id),
|
||||
"symbol_key": code[4:12],
|
||||
"symbol_color": {},
|
||||
}
|
||||
elif code_len == 14:
|
||||
return {
|
||||
"color": decode_color(code[:4]),
|
||||
"color": decode_color(code[:4], leg_id),
|
||||
"symbol_key": code[4:11],
|
||||
"symbol_color": get_symbol_color(code[11:]),
|
||||
}
|
||||
|
@ -709,19 +711,19 @@ def get_code_components(code):
|
|||
raise ValueError(f"Execution aborted: unknown symbol code {code}")
|
||||
|
||||
|
||||
def decode_color(color_string):
|
||||
def decode_color(color_string, leg_id):
|
||||
return {
|
||||
"CMYK": [
|
||||
get_percentage_from_letter(color_string[0]),
|
||||
get_percentage_from_letter(color_string[1]),
|
||||
get_percentage_from_letter(color_string[2]),
|
||||
get_percentage_from_letter(color_string[3]),
|
||||
get_percentage_from_letter(color_string[0], leg_id),
|
||||
get_percentage_from_letter(color_string[1], leg_id),
|
||||
get_percentage_from_letter(color_string[2], leg_id),
|
||||
get_percentage_from_letter(color_string[3], leg_id),
|
||||
100,
|
||||
],
|
||||
}
|
||||
|
||||
|
||||
def get_percentage_from_letter(letter):
|
||||
def get_percentage_from_letter(letter, leg_id):
|
||||
if letter == "F":
|
||||
return 15
|
||||
elif letter == "V":
|
||||
|
@ -733,8 +735,10 @@ def get_percentage_from_letter(letter):
|
|||
else:
|
||||
try:
|
||||
return int(letter) * 10
|
||||
except ValueError as _:
|
||||
raise ValueError(f"Execution aborted: unknown color code {letter}")
|
||||
except Exception as _:
|
||||
raise ValueError(
|
||||
f"Execution aborted: unknown color code {letter} for {leg_id}"
|
||||
)
|
||||
|
||||
|
||||
def get_symbol_color(color_string):
|
||||
|
|
Loading…
Add table
editor.link_modal.header
Reference in a new issue