snap to block elements does not work #339

steelman opened this Issue Jul 30, 2012 · 5 comments


None yet
4 participants

In general snapping to block elements does not work with one execption: "Snap Distance". When on it is possible to snap to ends (or at some distance from them) of lines, otherwise blocks do not snap cursor in any way.


dxli commented Aug 18, 2012

by definition, blocks appears to be a single insertion point within the drawing, and block entities are not exposed.

Therefore, there's no intersection between an entity in a block and an entity not in the same block instance. For example,

a block contains lineA and lineB;
the block is inserted twice as block0 and block1 into a drawing;
there's a lineC within this drawing;

there are two intersection points available here:
(block0.lineA, block0.lineB), (block1.lineA,block1.lineB)

intersections won't be available:
(block0.lineA, block1.lineA), (block0.lineA, block1.lineB), (block0.lineB, block1.lineB), (block0.lineB, block1.lineA)

no intersection concering lineC here.

But the cursor does not snap to blocks in any way. The intersection case you've mentioned is, I admit, quite complicated and I don't expect snapping to intersection of lines from different blocks or from the drawing and block. But isn't it possible to introduce snapping (on the main drawig) to lines, their ends, middles and centres when they are parts of blocks? For example:

There is a block, a hexagon for example. I would like to insert it few times and on the main drawing connect blocks' vertices with lines.

I find it kind of bewildering that you cannot snap to blocks. Sure, from an implementation standpoint, it makes sense that blocks 'appear to be a single insertion point' but insofar as constructing drawings, there is no obvious or legitimate reason for the no-snap restraint. If the same logic had been applied to layers, then only lines in the same layer could be snapped together....?! IMO, the snap-to should have the same perspective as the user, it shouldn't care about layers or blocks: if lines cross then you can intersect-snap to them; each straight line has a middle snap point and end snap points, etc...

If you do want to snap to a block, then you essentially have to re-draw the outline and I think that sort of defeats the purpose. If there is a more efficient way to achieve snap to block, it has eluded me so far.

snap-to block would be a great addition! Thanks developers for keeping this open


r-a-v-a-s commented Aug 9, 2015

This was implemented.

r-a-v-a-s closed this Aug 9, 2015


r-a-v-a-s commented Aug 9, 2015

I guess this was not implemented... not sure how it was working for me earlier. @_@

r-a-v-a-s reopened this Aug 9, 2015

r-a-v-a-s added the request label Aug 9, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment