- TopAbs_ShapeEnum aType = (TopAbs_ShapeEnum)selectionType();
- string aTypeName;
- switch(aType) {
- case TopAbs_VERTEX: aTypeName = "VERT"; break;
- case TopAbs_EDGE: aTypeName = "EDGE"; break;
- case TopAbs_WIRE: aTypeName = "WIRE"; break;
- case TopAbs_FACE: aTypeName = "FACE"; break;
- case TopAbs_SHELL: aTypeName = "SHEL"; break;
- case TopAbs_SOLID: aTypeName = "SOLD"; break;
- case TopAbs_COMPOUND: aTypeName = "COMP"; break;
- case TopAbs_COMPSOLID: aTypeName = "COMS"; break;
- default:
- return; // invalid case => empty new attribute
- };
- aNewAttr->selectSubShape(aTypeName, theNamingName);