print sc.doc.Objects.Find(objID).Attributes.ObjectColor
print rs.ObjectColor(objID)
Result:
Color [Black]
Color [White]
White is correct.
print sc.doc.Objects.Find(objID).Attributes.ObjectColor
print rs.ObjectColor(objID)
Result:
Color [Black]
Color [White]
White is correct.
The final displayed color depends on the ColorSource which can be from the object itself, the object’s layer, or the object’s parent in the case of a block
The rhinoscriptsyntax function figures out the actual display color while the attributes color is the color that would be used if the color source were ByObject. Use the DrawColor function in RhinoCommon to get the same result
I don’t understand why this thing is there…
Everything else is clear enough though.
The RhinoDoc is needed to figure out the color if the source is from the object’s layer or a parent object.