Discussions for "Better snapping and precision modeling"

As the development fund is growing and possibly soon the Blender Institute will direct its attention to better Snap and precision modeling tools, I could not contain myself and I decided to make a list of the resources that could be implemented.

The original list was reviewed by Paul Kotelevets (1D_Inc) - concept designer of 1D_Scripts toolset.

It is organized into three categories of importance. PRIORITIZED ITEMS; ITEMS FOR SECOND EVALUATION; and QUESTIONABLE ITEMS.


1.1 - New Snap Options: “Middle” and “Perpendicular”:

1.1.1 - Middle: Snap to the middle of the edges and faces;
1.1.2 - Perpendicular: known the initial coordinate of the movement, this option makes the snap to the nearest point in an edge making a perpendicular angle (90º);

1.2 - Implements “Edges” option to the “AutoMerge Editing” option:

Currently this option only works to merge vertices, but it would be a good addition to also split and merge an edge, since it currently takes many steps to achieve the same result.

1.3 - Improve the snap when movement is affected by a constraint:

When a point is moved to a specific direction and the snap point is performed on an edge or face, the final snap should be made at the intersection of the direction vector with the face or the edge. Currently the final snap is performed on the point closest to the current position pointed by the mouse cursor on the edge or face.

1.4 - Transform tools performed over a base point.

This feature would only be available if the snap is enabled. Since in Blender 2.80 we have the support of Gizmos in the tool system, it would be good to indicate and allow the user to choose more intuitively where the "Target" (motion pivot) starts. Currently, the user has to click on a random point of the screen to perform the transform. And the "Target" is set along with the snap options in an unmanageable way.

1.5 - Knife and Bisect tool snap matching the snap options enabled:

This will also take advantage of the new Middle and Perpendicular options. However, for the knife, the snap options for edges and vertices will always be enabled in this tool to avoid discontentment due to muscle memory of long-term users.

1.5 - Snap for edge and vertex slide.



2.1 - Snap to Grid in Perspective View performed only at ground level:

Generally you are not sure which grid point the object is in the perspective view because you need to consider the current depth of the object on the screen.

Basically, axis/plane restriction is property of entire snapping system depending on view mode.

3.1.1 Offset edges tool.


3.1 - Allow navigation while transforming:

The current issue that prevents adding this feature is conflict with the keymaps.

3.2 - Change the current form of incremental snap:

The incremental Snap is made on a kind of grid with offset and not over the distance from the origin point.

3.3 - Keymap ability to Switch GX and GXX order because local transforms are used more often in a wide range of applications, such as historic restoration.


i think nurbs modeling is best way for precision modeling rhino is leader of nurbs modeling but
i found smaller software that name is moi3d it has very convenient snapping system and have Practical tool set for modeling it is good refrence for precision modeling in blender
blender must have more edit curve tools like fillet or offset

this is website: http://moi3d.com/
it is good refrence :https://drive.google.com/open?id=1qBznpO8Dc86IJSW0xw_7HM-ZXErSvJ4-

Snap in vertex slide is really needed example

Also let me revive this old thread I made asking for better snapping as NP_Station does


I think the snap to edge behavior for rotations needs to be completely redone, basically. You snap to whatever point on the edge is closest to your cursor at any given moment, which isn’t actually useful for anything. What you want is to snap to the point on the edge where the rotation brings your selection closest.


You would want to snap to the point where the vertex is actually aligned with the edge.


I just about dropping this one here and hoping it will be implemented https://www.youtube.com/watch?v=XrEPpHGoKlk


I would love to see Nurbs tools in Blender, but I’m worried that this is out of the developers to-do list… :frowning:
Maybe a dedicated crowd funding for that could make it possible… :thinking: (Sorry for the offtopic)

Those snap proposals looks great though!


one thing at a time…
Meanwhile, precision modeling and better snap certainly go in that direction …
and then to be honest the nurbs seem to me a bit obsolete,
meshes with ngons technology can give more effective results if Booleans were developed better …

in fact, more than the nurbs, a visual feedback system would be needed to manage the “surfaces” and “segments” … a manipulation technique similar to that of moi 3D and obviously as a result tools similar to moi itself … in a sort of " fake nurbs edit mode ".
There is already a couple of addon that uses splines to make surfaces with curves similar to modeling via nurbs.

this application (shapr3d) mentioned in this tread makes the idea, I think that is the direction to be taken for CAD modeling …


i actually had a better idea in mind if this is going to be implemented by blender or as an add-in which i am considering creating it myself … here is what i am thinking :slight_smile:

  • the system will be based on drawing completely … with only 2 panels …
  • one panel for viewing the 3d result only.
  • the other for drawing …
  • after drawing we use another drawing to give the third dimension to part of the mesh.
  • colors will be used for sculpting in the drawing area … and the result will be live in the other panel …
  • we can easily join mesh parts … with or without constrains.
  • we can join mesh with another.
  • automatic way for giving the third dimension …
    but i think blender drawing tools should be improved first …
  • the implementation might be in the 2d template from file → new – menu item.
1 Like

just like Moi 3d, I think it’s inspiring to give an insight into how these applications handle snapping and precise modeling … I’ll post this tutorial that explores the functionality of Shapr3D, I think it helps a lot to clarify the ideas

1 Like

You can already see some of the changes commented on in the original post in the Snap Utitlties addon:

Remembering that these changes would be an early step (to solve the immediate problem).
Nurbs will benefit from these changes.
I agree that the snap on the rotate operator needs attention. But I think the idea of choosing a base point would be a good start before we propose new solutions.


and then the magic appears …
it seems like a great start!

that’s what made your video come to mind:

for an effective single edit mode that also has “fake nurbs”
I think you could have a single edit mode but with the addition of two other selection modes
1 “surfaces” which are the selection of entire surfaces (a collection of polygons that have the shape of the nurbs surface)
2 “loop Segments” that would be the selection of segments (a collection of edges polygons that can also form curves) similar to that of moi 3d

with obviously the right visual feedback for these two modes

so they would have:
vertex select, edge select, face select, surface select, segment select

I hope you understand the meaning of what I mean

Noki, you’re confusing nurbs with BREPs. Trimmed nurbs surfaces are used as an intermediate step to create a mesh for BREPs, but whenever you describe nurbs, you seem to be referring to solid modelling or BREP. Nurbs are just surfaces which can be trimmed, extruded, shaped in a freeform manner, etc. In other words there is not much more to these geometry types than what Blender is already capable of. BREPs are nondestructive representations of volumes defined by operations like projections, extrusions, sweeps, booleans, holes, and bevels which can be used to create or modify a solid volume, without a lot of the limitations you see on polygonal operations. For instance mesh booleans are non-associative, and have often fail when calculating co-planer faces or when multiple vertices sit in the same location. Mesh booleans usually require modifying the resulting mesh by hand to prepare the surface for later operations like bevels. BREPs don’t care about these limitations. They mathematically calculate the volume and represent it using nurbs surfaces which are then used to generate mesh surfaces for display, plotting, and renderin

This is off the topic of what I’m saying Blender is badly in need of. Believe me I would love for BREPs to be natively supported. A STEP importer would be nice,too. Because that would mean I could fully ditch Autodesk products, but that’s not what I’m really looking for here. I want a way to quickly place, rotate, and scale an object with enough precision that it is quick easy to make renderings of mechanical components and architecture, for instance, without a lot of headache. It is an achingly absent feature of Blender. One that isn’t missing from any other rendering software I’ve used in the last 20 years.

1 Like

I know what the nurbs are, and no I’m not confused …
If I talked about “fake nurbs” there’s a reason, and I think it’s an excellent solution around the corner and it’s to create a visual representation of “fake nurbs” that are created and processed by tools and manipulators that build mesh surfaces that are very similar to the shapes of the nurbs surfaces but would always be modeling mesh.
I mean a collection of tools that create surfaces similar to what this addon does

if I want to create a solid model this would be composed of so many “fake nurbs” surfaces (that are always mesh ) … the sense of all this would be to have the advantages of modeling nurbs made of Booleans,and trims operations (for this reason I wrote that they need better boolean) and modeling precision on mesh modeling.

is not necessary to have nurbs and not even breps, it’s something new that you could get “with little effort”

And I do not think it’s off-topic, otherwise what would you mean by “precision modeling”?

1 Like

All these fancy (and no doubt useful) features are being discussed while you can’t even change the snap increments in blender!

This is necessary.


just as a point of study and inspiration …
for those who have not already done so, take a look at how the creator of QBlocker has developed a discreet and interesting quick snapping method


mechanical blender author has created a series of many small snapping functions that since they fully follow the blender workflow philosophy, they should be taken into account, or at least take a look at his videos and his build as he operates, to draw from them positive ideas

I attach the link of his demonstration videos, just as a starting point for study


rhino snapping tools is very power full and good refrence for blender developer


1 Like

blender need smart track system can speed up modeling and precise
rhino have good smart track system


that mechanical Blender seems like a next gen thing. Is the development stalled from a couple of years ? will be only for 2.7 ?

I don’t know, it’s a project outside blender and managed by some guys who would like CAD in blender …
At the time there was no response from the main devs so they created this alternative version …
I hope that one day this series of patches will be considered (obviously updated to blender 2.8) because I believe they are really very valid.