Next: , Up: Snap -- introducing geometric dependencies

3.6.1 What is snap? What is it good for?

In the View toolbar, there are yet some unexplored icons. Their purpose is to modify the snap settings. When creating new objects, you usually determine some point positions by clicking; and snap may cause the point to be aligned to a significant object nearby. We say that the aligned point is snapped. There are several snap modes. If no snap mode is switched on, the chosen point always becomes exactly the position where you clicked. The modes are:

The snap modes are independent on each other and can be switched on and off or combined arbitrarily. If you switch at least two modes on, then the closest object of all is chosen regardless of its type (hanger, grid point, intersection or curve).

Create dependencies sshots/snap_dependencies.png – the last snap icon does not represent any snap mode. It controls the dependency effects of snap. If switched off, the snap just modifies the click position a little without creating any geometric dependency. Otherwise, if there is a significant object near, the point gets stuck to it and anytime the object is moved or transformed, the position of the point is updated as well. The only exception is snap to grid, which generates no dependencies even when “snap to dependencies” is on.

There is a limit of the maximum distance between the original point and the snapped one. By default, the limit is ten pixels and can be changed in the Settings window (see Global Settings). Naturally, the physical distance limit depends on the current zoom as well.

Note: It is not a very good idea to combine snap to hangers with snap to lines. If the target hanger is positioned on a curve (which it usually is), the point might get snapped on the curve very near the hanger but not on the hanger itself.

Note: When trying to transform objects created with some of the snap modes on, you might have encountered an error message like “This selection cannot be transformed.” The reason for such an error are the geometric dependencies. For example, if you snap the start point of a segment to the end point of another segment, you cannot move the dependent one. But you can move the other one or both of them. If you need to release the object from dependencies, use the Anchor rehang tool (described Anchor rehang).

In the next two pictures, you can see an image containing geometric dependencies before and after transformation. The body of the pig is moved and all snapped objects are recomputed accordingly. Notice that, when moving the ellipse, the dependent objects change their shape, not simply move. That is because they are determined by other points which are not being transformed.

A pig before the transformation.
The pig after the transformation.