Model identity at fiducial location

What you do is a very robust and efficient method of determining which models contain the selected point position. If you need to pick many thousands points then I would recommend keep using this method.

If you just want to pick models at the current point position (or hundreds of positions but not hundreds of thousands of positions) then it is simpler to get the model displayable manager from the view and use its Pick3D and GetPickedNodeID methods.