I struggle to understand the concept behind all those X,XXD snapping modes, so instead i use 3D mode only and axis constraint toggle. Works for me.
Hi romullus.
The concept behind snapping modes is to make kind off limits between what you are snapping to and where you actually create/manipulate/modify objects.
Best example for that if you are drawing the line and you have box based on the zero plane which you want to use for snapping with Endpoint snap type for example.
2D snap mode - you draw the line
on zero plane (xy for top/bottom views, yz for left/right views, xz for front/back views, xy used for axonometric/perspective views). With this snap mode you can snap only to the endpoints which are laying on zero plane (depending on view). All endpoints which are above or under zero plane are not taken in to account - you can't snap to them.
2.5D snap mode - you draw the line
on zero plane only, but in this case endpoints which have some Z coordinates differ from 0 are taken in to account and vertexes which you create using snapping to those endpoints will be projected on to the zero plane. It's very useful if you need to draw some flat shape under existing 3D-object in front, top, left, right, bottom, back or grid view (2D-views). With architectural objects I need this all the time so this mode is most handy for me when I work in 2D-views.
3D snap mode - you draw your line
in 3D-space, all endpoints of the object you are snapping to are taken in to account wherever they are located (as with 2.5D mode). Vertexes you create will get Z coordinates if they snapped to the endpoints which are not laying on zero plane. This mode is useful for axonometric/perspective views, but it's not very good for use in 2D-views, because it's difficult to control which point is going to be used for snapping if you have many of them laying on top of each other in your working view. In this example with box, working in top view you have at least 2 overlaying endpoints in each corner of the box and vertexes of your line could take Z coordinates from the top points of the box. So you can get some 3D-shape instead of a flat one.
For me as for architect who is working mostly with "rectangular architecture" best choice is 2.5D snap mode for work in 2D-views, and 3D snap mode for work in axonometric/perspective views. That's why
viewport-auto-snap script (link above) is perfect for me.
Hope my explanation is not too messy :)