示例#1
0
def GetFirstWallTypeNamed(doc, name):
    bip = DB.BuiltInParameter.SYMBOL_NAME_PARAM
    provider = DB.ParameterValueProvider(ElementId(bip))
    evaluator = DB.FilterStringEquals()
    rule = DB.FilterStringRule(provider, evaluator, name, False)
    filter = DB.ElementParameterFilter(rule)

    fec = FilteredElementCollector( doc).OfClass(DB.WallType) \
          .WherePasses(filter) \
          .FirstElement()
    return fec
示例#2
0
        param_id = DB.ElementId(target_parameter)
        param_prov = DB.ParameterValueProvider(param_id)
        param_equality = DB.FilterNumericEquals()  # equality class for double
        value_rule = DB.FilterDoubleRule(param_prov, param_equality,
                                         target_parameter_value, 1e-3)
        param_filter = DB.ElementParameterFilter(value_rule)
elif selected_switch_parameter in ["Mark", "Comments"]:  # string values
    try:
        target_parameter_value = ele.Parameter[target_parameter].AsString()
    except:
        forms.alert("Parameter {0} not found in {1}".format(
            selected_switch_parameter, category_name),
                    exitscript=True)
    param_id = DB.ElementId(target_parameter)
    param_prov = DB.ParameterValueProvider(param_id)
    param_equality = DB.FilterStringEquals()  # equality class for string
    value_rule = DB.FilterStringRule(param_prov, param_equality,
                                     target_parameter_value, True)
    param_filter = DB.ElementParameterFilter(value_rule)
else:  #  value Strings
    """This param equality for this type is not available  in any language, so we go for for loop"""
    valuestring = True
    try:
        target_parameter_value = ele.Parameter[target_parameter].AsValueString(
        )  # As value strings got converted to strings
    except:
        forms.alert("Parameter {0} not found in {1}".format(
            selected_switch_parameter, category_name),
                    exitscript=True)
    decode_valuestring(target_parameter_value, target_category,
                       target_parameter)