{"id":1101,"date":"2019-06-02T11:23:09","date_gmt":"2019-06-02T10:23:09","guid":{"rendered":"https:\/\/www.katsbits.com\/codex\/?p=1101"},"modified":"2023-09-07T15:54:35","modified_gmt":"2023-09-07T14:54:35","slug":"snapping","status":"publish","type":"post","link":"https:\/\/www.katsbits.com\/codex\/snapping\/","title":{"rendered":"Snapping (during transform)"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_83 counter-hierarchy ez-toc-counter ez-toc-light-blue ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a0721b1a7534\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a0721b1a7534\"  aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.katsbits.com\/codex\/snapping\/#enabledisable-transform-snap\" >Enable\/Disable Transform Snap<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.katsbits.com\/codex\/snapping\/#quick-access-snap\" >Quick-access Snap<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.katsbits.com\/codex\/snapping\/#snap-distance\" >Snap Distance<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.katsbits.com\/codex\/snapping\/#scale-and-subdivisions\" >Scale and Subdivisions<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.katsbits.com\/codex\/snapping\/#camera-zoom-and-snap\" >Camera zoom and snap<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.katsbits.com\/codex\/snapping\/#snap-typesmodes\" >Snap Types\/Modes<\/a><\/li><\/ul><\/nav><\/div>\n<p>Accompanying newer versions of Blender, <a href=\"https:\/\/www.katsbits.com\/codex\/snap\/\">snap to object<\/a> system is <b>snap during transform<\/b>. When engaged this allows selections, e.g. meshes, keyframe markers etc., to move or <i>transform<\/i> by fixed increments based on distance or degree. As it can be toggled using a shortcut key, key\/mouse combination or activated clicking an interface button, it can be used or be useful in slightly different ways depending on the context.<\/p>\n<blockquote><p><b>Design note<\/b>: <a href=\"https:\/\/www.katsbits.com\/codex\/snap\/\">snap to object<\/a>, snap during transform and other forms of object or grid snapping are all interrelated, some being available at the same time as others depending on the editing context and\/or task being performed.<\/p><\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snapping-transform.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snapping-transform.jpg\" alt=\"Snapping when moving or rotating objects\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Snapping when moving or rotating objects\/selections in the 3D View.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"enabledisable-transform-snap\"><\/span>Enable\/Disable Transform Snap<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>To activate <b>Snap during transform<\/b> so the feature is always active whilst working, click the <b>Snap during transform<\/b> button with the magnet icon centre-top of the 3D View. Alternatively press <span class=\"shortcutkey\">Shift<\/span> + <span class=\"shortcutkey\">Tab<\/span>. This enables snap, keeping it ON until the button is clicked again to turn it OFF (or <span class=\"shortcutkey\">Shift<\/span> + <span class=\"shortcutkey\">Tab<\/span> is pressed again).<\/p>\n<blockquote><p><b>Design note<\/b>: when enabled all transform actions i.e. move (translate), rotate and scale, snap to increments and\/or degrees regardless as to this being done by &#8216;widget&#8217; or &#8216;freely&#8217; &#8211; if the Move, Rotate or Scale widgets buttons are clicked (toolbar options), using the respective 3D widget orientation indicators and axes, snap is based on the active axis\/axes (direction or rotation), whereas in &#8216;free transform&#8217; pressing the shortcut keys <span class=\"shortcutkey\">G<\/span>, <span class=\"shortcutkey\">R<\/span> and <span class=\"shortcutkey\">S<\/span>, or click-dragging the widget centre, will snap in all directions or rotations.<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/transform-widget.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/transform-widget.jpg\" alt=\"When the transform widget is clicked changes snap behaviour\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Where the 3D Widget is clicked will change how the object being moved, rotated or scaled behaves in relation to snapping, either locked to the active (click selected) axis\/axes or moving freely in all directions\/rotations.<\/i><\/p><\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/enable-transform-snap.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/enable-transform-snap.jpg\" alt=\"Click Snap during transform to activate snap\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Click the <b>Snap during transform<\/b> button centre-top of the 3D View to enable snap when moving objects\/selections.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"quick-access-snap\"><\/span>Quick-access Snap<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>As alternative to <i>snap during transform<\/i> being active all the time, it&#8217;s either ON of OFF using the above, it&#8217;s possible to control snap behaviour using a keyboard short and mouse combination, making the feature and its use more situationally flexible, active when needed, off when not. To do this, make a selection, press and hold the <span class=\"shortcutkey\">Ctrl<\/span> key down then left-click drag an orientation handle\/axis\/axes on the 3D widget &#8211; <span class=\"shortcutkey\">Ctrl<\/span> + left-click drag.<\/p>\n<blockquote><p><b>Design note<\/b>: when using the Ctrl + left-click quick access shortcut, the <b>Snap during transform<\/b> button is OFF\/shown as being inactive [2], the shortcut essentially bypasses the need for the button to be constantly clicked\/ON.<\/p><\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snap-shortcut.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snap-shortcut.jpg\" alt=\"Use Ctrl + left-click to snap selectively\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>For more situational control over snapping use the shortcut <b>Ctrl + left-click<\/b> drag by fixed increments [1] (show upper-left of the 3D View as distance or radius values) using the 3D widget [3] or freely &#8211; when used the <b>Snap during transform<\/b> button is inactive [2].<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"snap-distance\"><\/span>Snap Distance<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Once snap is enabled\/active, object or selection behaviour is defined by; 1) Guides, 2) Units and 3) camera zoom. In practice this works as follows; in <b>Scene Properties<\/b> [1] the <b>Units<\/b> system is set to <b>Metric<\/b> with a <b>Unit Scale<\/b> of <b>1.000000<\/b>, e.g. <b>Unit Scale: 1.000000<\/b> [2], making each major grid division <b>1 metre<\/b> (1m x 1m x 1m along each X\/Y\/Z axis). In the <b>3D View<\/b> these <b>Units<\/b> settings are reflected by the grid and the way its divided, each major division being <b>1 meter<\/b> in correspondence to <b>Unit Scale<\/b>.<\/p>\n<blockquote><p><b>Design note<\/b>: using the default settings the grid displays 1:1, i.e. one major grid unit per one measurement unit. Click here for more on <a href=\"https:\/\/www.katsbits.com\/codex\/units\/\">Units and measurement<\/a>, here for more on <a href=\"https:\/\/www.katsbits.com\/codex\/grid\/\">Guides<\/a> (grid settings).<\/p><\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snap-units.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snap-units.jpg\" alt=\"Units define the systems base unit of measurement\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>By default the system is set to <b>Metric<\/b> units [2] (adjusted in <b>Scene<\/b> Properties [1]) and for each unit to be 1 metre, further subdivided in 10 sub-units, properties that define snap behaviour by determine how the 3D Views grid is divided.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"scale-and-subdivisions\"><\/span>Scale and Subdivisions<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>With a base unit set the grid can then be modified in <b>Viewport Overlays<\/b> under <b>Guides<\/b> using <b>Scale<\/b> and <b>Subdivisions<\/b>, that together, control the granularity of the grid relative to the parent unit (1m), with <b>Scale<\/b> set to <b>1.000<\/b> (<i>Scale: 1.000<\/i>) for example, each major grid unit equals 1m, which is further divided by <b>10<\/b> in <b>Subdivisions<\/b> (<i>Subdivisions: 10<\/i>) for smaller or minor increments, when objects are subsequently moved they will snap to <i>1m<\/i> or <i>10cm<\/i> depending on the Scenes\/object focus\/zoom.<\/p>\n<blockquote><p><b>Design note<\/b>: for more on <a href=\"https:\/\/www.katsbits.com\/codex\/measurement\/\">Viewport Overlays click here<\/a>.<\/p><\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snap-guides.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snap-guides.jpg\" alt=\"Guides determine the grids appearance in the 3D View\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Guides, found in <b>Viewport Overlays<\/b> [3], determine the grids appearance in the 3D View, <b>Scale<\/b> and <b>Subdivisions<\/b>[4] defining snap behaviour when objects move, larger values equate to larger snap increments\/divisions.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"camera-zoom-and-snap\"><\/span>Camera zoom and snap<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Regardless of Unit Scale, grid Scale and Subdivisions, depending on the Scenes zoom level, i.e. how close to or far away the Scene camera is to grid center (<i>0,0,0<\/i>), snap behaviour will change to suit, the closer the camera is to centre the finer snap increments become, essentially being &#8216;zoomed-in&#8217; to the smaller units of subdivision, the further away the larger. In this way manipulating objects and selections in relation to snap can be context sensitive to the camera.<\/p>\n<blockquote><p><b>Design note<\/b>: camera zoom related snapping works in all views (<b>View \u00bb Viewpoint \u00bb [orientation]<\/b>) and perspectives (<b>View \u00bb Perspective\/Orthographic<\/b>) but is more noticeable in Orthographic views, Front (<span class=\"shortcutkey\">NumPad 1<\/span>), Right (<span class=\"shortcutkey\">NumPad 3<\/span>), Top (<span class=\"shortcutkey\">NumPad 7<\/span>) etc., where the grid fills the entire workspace.<\/p><\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snap-zoom.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snap-zoom.jpg\" alt=\"Scene zoom also effects snap\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Scene zoom, how far or close the camera is to a selection or grid centre, affects snap behaviour, the further away the more likely Blender is to use major grid units until they behave as the next set of subdivisions &#8211; 10 become 1.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"snap-typesmodes\"><\/span>Snap Types\/Modes<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Snap behaviour is also governed by the type or mode of snapping, i.e. what is being snapped to. By default this is <b>Increments<\/b>, however, others options are available; <b>Vertex<\/b>, <b>Edge<\/b>, <b>Face<\/b> and <b>Volume<\/b>. To select and activate, upper-centre of the 3D View, click the menu arrow (&#8216;v&#8217;) to the right of <b>Snap during transform<\/b> [1] and choose an option [2]. When objects are subsequently moved their behaviour will be determined by the <b>Snapping<\/b> option set, i.e. objects will snap to the highlighted vertex, edge, face or volume.<\/p>\n<blockquote><p><b>Design note<\/b>: using an element-based snap option, the cursor changes to a circle when active, itself snapping to the nearest item based on the setting used, shown below for example snapped to a vertex.<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snap-type-cursor.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snap-type-cursor.jpg\" alt=\"Setting a snap 'mode' changes the cursor to a circle\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>With an element type set as the mode for snapping the cursor changes to a circle that latches on to the nearest instance of the active snap type set, vertex for example.<\/i><\/p><\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snapping-type.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/snapping\/snapping-type.jpg\" alt=\"Setting a different snap 'mode'\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>To change the behaviour of snap so it latches on to different elements of an object or the Scene, set the Snapping mode [2] to <b>Vertex<\/b>, <b>Edge<\/b>, <b>Face<\/b> or <b>Volume<\/b> (click the &#8216;v&#8217; to the right of Snap during transform [1]).<\/i><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":1368,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[34,230],"tags":[418,516,511,515,320,396,514,512,513,208,509,510,402,351,482],"class_list":["post-1101","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blender","category-tutorials","tag-3d-widget","tag-ctrlleft-click","tag-free-transform","tag-grid-floor","tag-grid-snap","tag-guides","tag-manipulation","tag-move","tag-rotate","tag-scale","tag-snap","tag-snapping","tag-subdivisions","tag-transform","tag-viewport-overlays"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/1101","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/comments?post=1101"}],"version-history":[{"count":5,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/1101\/revisions"}],"predecessor-version":[{"id":5157,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/1101\/revisions\/5157"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media\/1368"}],"wp:attachment":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media?parent=1101"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/categories?post=1101"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/tags?post=1101"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}