IGESCAFControl_Reader will not transfer the names of the sub-shapes


I've been messing with reading geometries and their names/colors.
I noticed that IGESCAFControl will not transfer the names of sub-shapes, which is exactly what I am trying to do.

IGESCAFControl_Reader::Transfer (around line 247 to 253) reads:

if(IsColor) {
IsFound = STool->SearchUsingMap(S,L,Standard_False,Standard_True);
else {
IsFound = STool->SearchUsingMap(S,L,Standard_False,Standard_False);

In this case, the option "findSubshape" (last Boolean of the function) is hard coded as False if there are no colors defined.
Why? Why can't I read the names if there are no colors? Does anybody knows?
Is there a reason behind this?

Thank you in advance

Dmitrii Pasukhin's picture


The most part of readers read names only of usage shapes.
It means we read names for existed labels. Label can be created via attaching some attribute (color, PMI, Metadata, Material, Kinematic).

Best regards, Dmitrii.

Thomas Hafemann's picture

I defined a standard color for the shapes that should be read and it worked.
Thanks again!
Best regards, Thomas