I remember we had discussion about this selection tool already a few times. Additionally it would be good to have a filter for different types of objects selection (vertexes, edges, faces, solids) this could be done in a similar way as the snap filters (like this, it is also quite common in other programs). I would however suggest we brainstorm a bit on this, maybe we can come up with some even better ways to do it. A few ideas to start:
- pre-selection trick, instead of (or additionally to) having some extra buttons to set the filters, we could do it with a pre-selection (would maybe help for working faster), for example if one would like to select with the selection box only edges, one would pre-select one edge and then the selection box would select only edges. If one would like to select faces one would select one face and then the selection box would select only faces, if one would like faces and vertexes one would pre-select a face and a vertex and then the selection box would select only faces and vertexes,...
- paint-select, if one would hold down a key (for example control or shift) and hold down the left mouse button while moving the mouse then all the elements that would get touched would get selected (similar as if you would paint), this is not related to box select, but it would also need to have some sort of filters for what type of object would get selected.
- tangent-select, a common and useful tool is also to select all object tangent to the selected object, for example, one would select an edge and hit the tab key (or have a button for it) and all edges tangent to the selected one would get selected, same if one would select a wire (all tangent wires to it would get selected) or a face (all tangent faces to it would get selected),... I guess you cannot have tangent points
- I remember also your suggestion to have the option to select only visible objects or also invisible (for example in the case of box select to select only faces visible to the user from the current view orientation or to also select back and inner faces).
- For box select it is of course also common to have it work so that if you drag the mouse from the left only object that are fully inside the box get selected and if you drag the mouse from the right all the objects that are touched by the box get selected.
- Ideally one should be able to use the different selection tools together and be able to add to current selection and/or remove elements from it.
Generally this selection tools are quite useful in many different cases so probably they could have their own default toolbar, for example (tools on this toolbar) box select, paint select, tangent select and few filters...?