public void parse_thickness(string value, LensSurface surface_builder) { if (value.Length == 0) { surface_builder.add_thickness(0.0); return; } if (Char.IsLetter(value[0])) { Variable var = find_variable(value); if (var != null) { for (int i = 0; i < var.num_scenarios(); i++) { string s = var.get_value(i); double d = parseDouble(s); surface_builder.add_thickness(d); } } else { //fprintf (stderr, "Variable %s was not found\n", value); surface_builder.add_thickness(0.0); } } else { surface_builder.add_thickness(parseDouble(value)); } }