In the Open Cascade, the Boolean operation Class need to input Topods_Shape. However the TopoDS_Shape doesn't contain color information. If the two topoDS_shape have differnt color, Can OCC keep the color after boolean operation? For example, I want to do boolean union of a red box and a green box. In the end, the union box will be red on one side, green on the other side. Can Open Cascade do that? Which class do I need to use?