It is certainly a very useful feature. Another good use case is for wire selection. But it is not easy to implement with the current 3D selection framework. I'll add this feature some day, but not soon. On the other hand, obtain solid from face is quite easy, assuming you have the whole shape of the object, and the face shape, the following code give you the solid. Note it return a list, because there maybe multiple ancestor shapes, e.g. an edge maybe in more than one wires.
Code: Select all
shape.ancestorOfType(face, Part.Solid)