Set object material in Python

Realized I can do it in a less fancy way:

def AssignMaterialFast():
ids = rs.GetObjects(“Select object to change material”, preselect=True)
if ids is None:
return

rmats = [rm for rm in sc.doc.RenderMaterials]
materialNames = []
for mat in rmats:
    materialNames.append(mat.Name)

materialNames.sort()
result = rs.ListBox(materialNames, "Select Material", "Assign Material")
if result is None: return

rs.SelectObjects(ids)
cmdString = "-_RenderAssignMaterialToObjects " + result + " "
rs.Command(cmdString, False)
1 Like