6
$\begingroup$

Is it possible to extend the Drawing Tools palette and add a grid snap feature? Drawing points with discrete intervals would make it a lot easier to draw nice free body diagrams, and other simple problem sets without needing to page out of Mathematica.

enter image description here

Image 1: Typical situation where I page out of Mathematica to Illustrator. Grid snap makes it much easier and quicker than snapping to elements. Grid that I snap to is shown in the background.

New students are intimidated by learning yet another tool. And frankly I can and do write these in code as well, but students take time to learn to do so.

$\endgroup$
  • $\begingroup$ Does the Drawing Tools need to be involved? Would be easier with just points and lines. $\endgroup$ – Öskå Sep 6 '14 at 10:59
  • $\begingroup$ @Öskå Maybe, drawing tools would be pretty competent for this particular case if it had snap to grid, when not its a bit painful and useless tool. Idea that these are sketches before any calculation. Preference is NO code it scares the lower 2/3 of students away. $\endgroup$ – joojaa Sep 6 '14 at 11:50
  • $\begingroup$ I'm afraid that the drawing tools can't be incorporated in a piece of code see here. Thus the easiest would be to create your own drawing tools with basic primitives like line/circle/point. The code would scare them, the GUI might not.. :) $\endgroup$ – Öskå Sep 6 '14 at 11:52
7
$\begingroup$

NOTE:

  1. This works on my Mathematica 10, but not tested on other versions.
  2. This method involving modification of a system file, thus is likely prohibited by the EULA.

First locate the notebook corresponding to the Drawing Tools, which should be on a path similar to the following:

(Mathematica root)\SystemFiles\FrontEnd\SystemResources\DrawingTools.nb

Looking for this string:

"NewGraphicButtonText"

There should be 2 matches, around whom it looks like this:

location of "NewGraphicButtonText"

Note the selected "" in the above snapshot, we are going to replace it with the following code:

( DON'T FORGET TO BACKUP THE ORIGINAL .NB FILE! )

   (* added by silvia v *)

   TagBox[TooltipBox[ ButtonBox[GraphicsBox[TagBox[RasterBox[CompressedData[" 1:eJzVlU0KwjAQhYu68BC68Ch6BF27aEG3QiuIFwl4Ig/gqstSjFUQQRBF/Hsq Dg+sLuIo+EGGdMj7aEva1IJes1vwPC8qozT9QT0M/WGrhIvGsN8JiphUMSoY 1/lYmyzLUBd6iHOpB2zWWtS1HrClaYq60wO2JElQj3qI80xED9rE+ybHXzlH N7g5evDcfOU8EQ5OjovzQOChznkYY3L7WM9xce4JByfHxbklHJwcF+eGcHBy XJwrAmtMHnftM1jPcXHOCIf75Lg4p4SDk+N/7XT4jn7mtITDf4njuXvpQ77q zPQQ51wPceqe73enLnDiJeBEjuN4ogE8sMGJfYVJogE8sF0AMHUuOQ== "], {{0, 29}, {28, 0}}, {0, 255}, ColorFunction -> RGBColor], BoxForm`ImageTag["Byte", ColorSpace -> "RGB", Interleaving -> True], Selectable -> False], BaseStyle -> "ImageGraphics", ImageSizeRaw -> {28, 29}, PlotRange -> {{0, 28}, {0, 29}}], Appearance -> None, ButtonFunction :> FrontEndExecute[{FrontEnd`NotebookWrite[FrontEnd`InputNotebook[], GraphicsBox[{GraphicsGroupBox[{GrayLevel[0.9], LineBox[{{-2.`, -2.`}, {-2.`, 2.`}}], LineBox[{{-1.98`, -2.`}, {-1.98`, 2.`}}], LineBox[{{-1.96`, -2.`}, {-1.96`, 2.`}}], LineBox[{{-1.94`, -2.`}, {-1.94`, 2.`}}], LineBox[{{-1.92`, -2.`}, {-1.92`, 2.`}}], LineBox[{{-1.9`, -2.`}, {-1.9`, 2.`}}], LineBox[{{-1.88`, -2.`}, {-1.88`, 2.`}}], LineBox[{{-1.86`, -2.`}, {-1.86`, 2.`}}], LineBox[{{-1.84`, -2.`}, {-1.84`, 2.`}}], LineBox[{{-1.82`, -2.`}, {-1.82`, 2.`}}], LineBox[{{-1.8`, -2.`}, {-1.8`, 2.`}}], LineBox[{{-1.78`, -2.`}, {-1.78`, 2.`}}], LineBox[{{-1.76`, -2.`}, {-1.76`, 2.`}}], LineBox[{{-1.74`, -2.`}, {-1.74`, 2.`}}], LineBox[{{-1.72`, -2.`}, {-1.72`, 2.`}}], LineBox[{{-1.7`, -2.`}, {-1.7`, 2.`}}], LineBox[{{-1.68`, -2.`}, {-1.68`, 2.`}}], LineBox[{{-1.66`, -2.`}, {-1.66`, 2.`}}], LineBox[{{-1.64`, -2.`}, {-1.64`, 2.`}}], LineBox[{{-1.62`, -2.`}, {-1.62`, 2.`}}], LineBox[{{-1.6`, -2.`}, {-1.6`, 2.`}}], LineBox[{{-1.58`, -2.`}, {-1.58`, 2.`}}], LineBox[{{-1.56`, -2.`}, {-1.56`, 2.`}}], LineBox[{{-1.54`, -2.`}, {-1.54`, 2.`}}], LineBox[{{-1.52`, -2.`}, {-1.52`, 2.`}}], LineBox[{{-1.5`, -2.`}, {-1.5`, 2.`}}], LineBox[{{-1.48`, -2.`}, {-1.48`, 2.`}}], LineBox[{{-1.46`, -2.`}, {-1.46`, 2.`}}], LineBox[{{-1.44`, -2.`}, {-1.44`, 2.`}}], LineBox[{{-1.42`, -2.`}, {-1.42`, 2.`}}], LineBox[{{-1.4`, -2.`}, {-1.4`, 2.`}}], LineBox[{{-1.38`, -2.`}, {-1.38`, 2.`}}], LineBox[{{-1.36`, -2.`}, {-1.36`, 2.`}}], LineBox[{{-1.34`, -2.`}, {-1.34`, 2.`}}], LineBox[{{-1.32`, -2.`}, {-1.32`, 2.`}}], LineBox[{{-1.3`, -2.`}, {-1.3`, 2.`}}], LineBox[{{-1.28`, -2.`}, {-1.28`, 2.`}}], LineBox[{{-1.26`, -2.`}, {-1.26`, 2.`}}], LineBox[{{-1.24`, -2.`}, {-1.24`, 2.`}}], LineBox[{{-1.22`, -2.`}, {-1.22`, 2.`}}], LineBox[{{-1.2`, -2.`}, {-1.2`, 2.`}}], LineBox[{{-1.18`, -2.`}, {-1.18`, 2.`}}], LineBox[{{-1.16`, -2.`}, {-1.16`, 2.`}}], LineBox[{{-1.14`, -2.`}, {-1.14`, 2.`}}], LineBox[{{-1.12`, -2.`}, {-1.12`, 2.`}}], LineBox[{{-1.1`, -2.`}, {-1.1`, 2.`}}], LineBox[{{-1.08`, -2.`}, {-1.08`, 2.`}}], LineBox[{{-1.06`, -2.`}, {-1.06`, 2.`}}], LineBox[{{-1.04`, -2.`}, {-1.04`, 2.`}}], LineBox[{{-1.02`, -2.`}, {-1.02`, 2.`}}], LineBox[{{-1.`, -2.`}, {-1.`, 2.`}}], LineBox[{{-0.98`, -2.`}, {-0.98`, 2.`}}], LineBox[{{-0.96`, -2.`}, {-0.96`, 2.`}}], LineBox[{{-0.94`, -2.`}, {-0.94`, 2.`}}], LineBox[{{-0.92`, -2.`}, {-0.92`, 2.`}}], LineBox[{{-0.9`, -2.`}, {-0.9`, 2.`}}], LineBox[{{-0.88`, -2.`}, {-0.88`, 2.`}}], LineBox[{{-0.86`, -2.`}, {-0.86`, 2.`}}], LineBox[{{-0.84`, -2.`}, {-0.84`, 2.`}}], LineBox[{{-0.82`, -2.`}, {-0.82`, 2.`}}], LineBox[{{-0.8`, -2.`}, {-0.8`, 2.`}}], LineBox[{{-0.78`, -2.`}, {-0.78`, 2.`}}], LineBox[{{-0.76`, -2.`}, {-0.76`, 2.`}}], LineBox[{{-0.74`, -2.`}, {-0.74`, 2.`}}], LineBox[{{-0.72`, -2.`}, {-0.72`, 2.`}}], LineBox[{{-0.7`, -2.`}, {-0.7`, 2.`}}], LineBox[{{-0.68`, -2.`}, {-0.68`, 2.`}}], LineBox[{{-0.66`, -2.`}, {-0.66`, 2.`}}], LineBox[{{-0.64`, -2.`}, {-0.64`, 2.`}}], LineBox[{{-0.62`, -2.`}, {-0.62`, 2.`}}], LineBox[{{-0.6`, -2.`}, {-0.6`, 2.`}}], LineBox[{{-0.58`, -2.`}, {-0.58`, 2.`}}], LineBox[{{-0.56`, -2.`}, {-0.56`, 2.`}}], LineBox[{{-0.54`, -2.`}, {-0.54`, 2.`}}], LineBox[{{-0.52`, -2.`}, {-0.52`, 2.`}}], LineBox[{{-0.5`, -2.`}, {-0.5`, 2.`}}], LineBox[{{-0.48`, -2.`}, {-0.48`, 2.`}}], LineBox[{{-0.46`, -2.`}, {-0.46`, 2.`}}], LineBox[{{-0.44`, -2.`}, {-0.44`, 2.`}}], LineBox[{{-0.42`, -2.`}, {-0.42`, 2.`}}], LineBox[{{-0.4`, -2.`}, {-0.4`, 2.`}}], LineBox[{{-0.38`, -2.`}, {-0.38`, 2.`}}], LineBox[{{-0.36`, -2.`}, {-0.36`, 2.`}}], LineBox[{{-0.34`, -2.`}, {-0.34`, 2.`}}], LineBox[{{-0.32`, -2.`}, {-0.32`, 2.`}}], LineBox[{{-0.3`, -2.`}, {-0.3`, 2.`}}], LineBox[{{-0.28`, -2.`}, {-0.28`, 2.`}}], LineBox[{{-0.26`, -2.`}, {-0.26`, 2.`}}], LineBox[{{-0.24`, -2.`}, {-0.24`, 2.`}}], LineBox[{{-0.22`, -2.`}, {-0.22`, 2.`}}], LineBox[{{-0.2`, -2.`}, {-0.2`, 2.`}}], LineBox[{{-0.18`, -2.`}, {-0.18`, 2.`}}], LineBox[{{-0.16`, -2.`}, {-0.16`, 2.`}}], LineBox[{{-0.14`, -2.`}, {-0.14`, 2.`}}], LineBox[{{-0.12`, -2.`}, {-0.12`, 2.`}}], LineBox[{{-0.1`, -2.`}, {-0.1`, 2.`}}], LineBox[{{-0.08`, -2.`}, {-0.08`, 2.`}}], LineBox[{{-0.06`, -2.`}, {-0.06`, 2.`}}], LineBox[{{-0.04`, -2.`}, {-0.04`, 2.`}}], LineBox[{{-0.02`, -2.`}, {-0.02`, 2.`}}], LineBox[{{0.`, -2.`}, {0.`, 2.`}}], LineBox[{{0.02`, -2.`}, {0.02`, 2.`}}], LineBox[{{0.04`, -2.`}, {0.04`, 2.`}}], LineBox[{{0.06`, -2.`}, {0.06`, 2.`}}], LineBox[{{0.08`, -2.`}, {0.08`, 2.`}}], LineBox[{{0.1`, -2.`}, {0.1`, 2.`}}], LineBox[{{0.12`, -2.`}, {0.12`, 2.`}}], LineBox[{{0.14`, -2.`}, {0.14`, 2.`}}], LineBox[{{0.16`, -2.`}, {0.16`, 2.`}}], LineBox[{{0.18`, -2.`}, {0.18`, 2.`}}], LineBox[{{0.2`, -2.`}, {0.2`, 2.`}}], LineBox[{{0.22`, -2.`}, {0.22`, 2.`}}], LineBox[{{0.24`, -2.`}, {0.24`, 2.`}}], LineBox[{{0.26`, -2.`}, {0.26`, 2.`}}], LineBox[{{0.28`, -2.`}, {0.28`, 2.`}}], LineBox[{{0.3`, -2.`}, {0.3`, 2.`}}], LineBox[{{0.32`, -2.`}, {0.32`, 2.`}}], LineBox[{{0.34`, -2.`}, {0.34`, 2.`}}], LineBox[{{0.36`, -2.`}, {0.36`, 2.`}}], LineBox[{{0.38`, -2.`}, {0.38`, 2.`}}], LineBox[{{0.4`, -2.`}, {0.4`, 2.`}}], LineBox[{{0.42`, -2.`}, {0.42`, 2.`}}], LineBox[{{0.44`, -2.`}, {0.44`, 2.`}}], LineBox[{{0.46`, -2.`}, {0.46`, 2.`}}], LineBox[{{0.48`, -2.`}, {0.48`, 2.`}}], LineBox[{{0.5`, -2.`}, {0.5`, 2.`}}], LineBox[{{0.52`, -2.`}, {0.52`, 2.`}}], LineBox[{{0.54`, -2.`}, {0.54`, 2.`}}], LineBox[{{0.56`, -2.`}, {0.56`, 2.`}}], LineBox[{{0.58`, -2.`}, {0.58`, 2.`}}], LineBox[{{0.6`, -2.`}, {0.6`, 2.`}}], LineBox[{{0.62`, -2.`}, {0.62`, 2.`}}], LineBox[{{0.64`, -2.`}, {0.64`, 2.`}}], LineBox[{{0.66`, -2.`}, {0.66`, 2.`}}], LineBox[{{0.68`, -2.`}, {0.68`, 2.`}}], LineBox[{{0.7`, -2.`}, {0.7`, 2.`}}], LineBox[{{0.72`, -2.`}, {0.72`, 2.`}}], LineBox[{{0.74`, -2.`}, {0.74`, 2.`}}], LineBox[{{0.76`, -2.`}, {0.76`, 2.`}}], LineBox[{{0.78`, -2.`}, {0.78`, 2.`}}], LineBox[{{0.8`, -2.`}, {0.8`, 2.`}}], LineBox[{{0.82`, -2.`}, {0.82`, 2.`}}], LineBox[{{0.84`, -2.`}, {0.84`, 2.`}}], LineBox[{{0.86`, -2.`}, {0.86`, 2.`}}], LineBox[{{0.88`, -2.`}, {0.88`, 2.`}}], LineBox[{{0.9`, -2.`}, {0.9`, 2.`}}], LineBox[{{0.92`, -2.`}, {0.92`, 2.`}}], LineBox[{{0.94`, -2.`}, {0.94`, 2.`}}], LineBox[{{0.96`, -2.`}, {0.96`, 2.`}}], LineBox[{{0.98`, -2.`}, {0.98`, 2.`}}], LineBox[{{1.`, -2.`}, {1.`, 2.`}}], LineBox[{{1.02`, -2.`}, {1.02`, 2.`}}], LineBox[{{1.04`, -2.`}, {1.04`, 2.`}}], LineBox[{{1.06`, -2.`}, {1.06`, 2.`}}], LineBox[{{1.08`, -2.`}, {1.08`, 2.`}}], LineBox[{{1.1`, -2.`}, {1.1`, 2.`}}], LineBox[{{1.12`, -2.`}, {1.12`, 2.`}}], LineBox[{{1.14`, -2.`}, {1.14`, 2.`}}], LineBox[{{1.16`, -2.`}, {1.16`, 2.`}}], LineBox[{{1.18`, -2.`}, {1.18`, 2.`}}], LineBox[{{1.2`, -2.`}, {1.2`, 2.`}}], LineBox[{{1.22`, -2.`}, {1.22`, 2.`}}], LineBox[{{1.24`, -2.`}, {1.24`, 2.`}}], LineBox[{{1.26`, -2.`}, {1.26`, 2.`}}], LineBox[{{1.28`, -2.`}, {1.28`, 2.`}}], LineBox[{{1.3`, -2.`}, {1.3`, 2.`}}], LineBox[{{1.32`, -2.`}, {1.32`, 2.`}}], LineBox[{{1.34`, -2.`}, {1.34`, 2.`}}], LineBox[{{1.36`, -2.`}, {1.36`, 2.`}}], LineBox[{{1.38`, -2.`}, {1.38`, 2.`}}], LineBox[{{1.4`, -2.`}, {1.4`, 2.`}}], LineBox[{{1.42`, -2.`}, {1.42`, 2.`}}], LineBox[{{1.44`, -2.`}, {1.44`, 2.`}}], LineBox[{{1.46`, -2.`}, {1.46`, 2.`}}], LineBox[{{1.48`, -2.`}, {1.48`, 2.`}}], LineBox[{{1.5`, -2.`}, {1.5`, 2.`}}], LineBox[{{1.52`, -2.`}, {1.52`, 2.`}}], LineBox[{{1.54`, -2.`}, {1.54`, 2.`}}], LineBox[{{1.56`, -2.`}, {1.56`, 2.`}}], LineBox[{{1.58`, -2.`}, {1.58`, 2.`}}], LineBox[{{1.6`, -2.`}, {1.6`, 2.`}}], LineBox[{{1.62`, -2.`}, {1.62`, 2.`}}], LineBox[{{1.64`, -2.`}, {1.64`, 2.`}}], LineBox[{{1.66`, -2.`}, {1.66`, 2.`}}], LineBox[{{1.68`, -2.`}, {1.68`, 2.`}}], LineBox[{{1.7`, -2.`}, {1.7`, 2.`}}], LineBox[{{1.72`, -2.`}, {1.72`, 2.`}}], LineBox[{{1.74`, -2.`}, {1.74`, 2.`}}], LineBox[{{1.76`, -2.`}, {1.76`, 2.`}}], LineBox[{{1.78`, -2.`}, {1.78`, 2.`}}], LineBox[{{1.8`, -2.`}, {1.8`, 2.`}}], LineBox[{{1.82`, -2.`}, {1.82`, 2.`}}], LineBox[{{1.84`, -2.`}, {1.84`, 2.`}}], LineBox[{{1.86`, -2.`}, {1.86`, 2.`}}], LineBox[{{1.88`, -2.`}, {1.88`, 2.`}}], LineBox[{{1.9`, -2.`}, {1.9`, 2.`}}], LineBox[{{1.92`, -2.`}, {1.92`, 2.`}}], LineBox[{{1.94`, -2.`}, {1.94`, 2.`}}], LineBox[{{1.96`, -2.`}, {1.96`, 2.`}}], LineBox[{{1.98`, -2.`}, {1.98`, 2.`}}], LineBox[{{2.`, -2.`}, {2.`, 2.`}}], LineBox[{{-2.`, -2.`}, {2.`, -2.`}}], LineBox[{{-2.`, -1.98`}, {2.`, -1.98`}}], LineBox[{{-2.`, -1.96`}, {2.`, -1.96`}}], LineBox[{{-2.`, -1.94`}, {2.`, -1.94`}}], LineBox[{{-2.`, -1.92`}, {2.`, -1.92`}}], LineBox[{{-2.`, -1.9`}, {2.`, -1.9`}}], LineBox[{{-2.`, -1.88`}, {2.`, -1.88`}}], LineBox[{{-2.`, -1.86`}, {2.`, -1.86`}}], LineBox[{{-2.`, -1.84`}, {2.`, -1.84`}}], LineBox[{{-2.`, -1.82`}, {2.`, -1.82`}}], LineBox[{{-2.`, -1.8`}, {2.`, -1.8`}}], LineBox[{{-2.`, -1.78`}, {2.`, -1.78`}}], LineBox[{{-2.`, -1.76`}, {2.`, -1.76`}}], LineBox[{{-2.`, -1.74`}, {2.`, -1.74`}}], LineBox[{{-2.`, -1.72`}, {2.`, -1.72`}}], LineBox[{{-2.`, -1.7`}, {2.`, -1.7`}}], LineBox[{{-2.`, -1.68`}, {2.`, -1.68`}}], LineBox[{{-2.`, -1.66`}, {2.`, -1.66`}}], LineBox[{{-2.`, -1.64`}, {2.`, -1.64`}}], LineBox[{{-2.`, -1.62`}, {2.`, -1.62`}}], LineBox[{{-2.`, -1.6`}, {2.`, -1.6`}}], LineBox[{{-2.`, -1.58`}, {2.`, -1.58`}}], LineBox[{{-2.`, -1.56`}, {2.`, -1.56`}}], LineBox[{{-2.`, -1.54`}, {2.`, -1.54`}}], LineBox[{{-2.`, -1.52`}, {2.`, -1.52`}}], LineBox[{{-2.`, -1.5`}, {2.`, -1.5`}}], LineBox[{{-2.`, -1.48`}, {2.`, -1.48`}}], LineBox[{{-2.`, -1.46`}, {2.`, -1.46`}}], LineBox[{{-2.`, -1.44`}, {2.`, -1.44`}}], LineBox[{{-2.`, -1.42`}, {2.`, -1.42`}}], LineBox[{{-2.`, -1.4`}, {2.`, -1.4`}}], LineBox[{{-2.`, -1.38`}, {2.`, -1.38`}}], LineBox[{{-2.`, -1.36`}, {2.`, -1.36`}}], LineBox[{{-2.`, -1.34`}, {2.`, -1.34`}}], LineBox[{{-2.`, -1.32`}, {2.`, -1.32`}}], LineBox[{{-2.`, -1.3`}, {2.`, -1.3`}}], LineBox[{{-2.`, -1.28`}, {2.`, -1.28`}}], LineBox[{{-2.`, -1.26`}, {2.`, -1.26`}}], LineBox[{{-2.`, -1.24`}, {2.`, -1.24`}}], LineBox[{{-2.`, -1.22`}, {2.`, -1.22`}}], LineBox[{{-2.`, -1.2`}, {2.`, -1.2`}}], LineBox[{{-2.`, -1.18`}, {2.`, -1.18`}}], LineBox[{{-2.`, -1.16`}, {2.`, -1.16`}}], LineBox[{{-2.`, -1.14`}, {2.`, -1.14`}}], LineBox[{{-2.`, -1.12`}, {2.`, -1.12`}}], LineBox[{{-2.`, -1.1`}, {2.`, -1.1`}}], LineBox[{{-2.`, -1.08`}, {2.`, -1.08`}}], LineBox[{{-2.`, -1.06`}, {2.`, -1.06`}}], LineBox[{{-2.`, -1.04`}, {2.`, -1.04`}}], LineBox[{{-2.`, -1.02`}, {2.`, -1.02`}}], LineBox[{{-2.`, -1.`}, {2.`, -1.`}}], LineBox[{{-2.`, -0.98`}, {2.`, -0.98`}}], LineBox[{{-2.`, -0.96`}, {2.`, -0.96`}}], LineBox[{{-2.`, -0.94`}, {2.`, -0.94`}}], LineBox[{{-2.`, -0.92`}, {2.`, -0.92`}}], LineBox[{{-2.`, -0.9`}, {2.`, -0.9`}}], LineBox[{{-2.`, -0.88`}, {2.`, -0.88`}}], LineBox[{{-2.`, -0.86`}, {2.`, -0.86`}}], LineBox[{{-2.`, -0.84`}, {2.`, -0.84`}}], LineBox[{{-2.`, -0.82`}, {2.`, -0.82`}}], LineBox[{{-2.`, -0.8`}, {2.`, -0.8`}}], LineBox[{{-2.`, -0.78`}, {2.`, -0.78`}}], LineBox[{{-2.`, -0.76`}, {2.`, -0.76`}}], LineBox[{{-2.`, -0.74`}, {2.`, -0.74`}}], LineBox[{{-2.`, -0.72`}, {2.`, -0.72`}}], LineBox[{{-2.`, -0.7`}, {2.`, -0.7`}}], LineBox[{{-2.`, -0.68`}, {2.`, -0.68`}}], LineBox[{{-2.`, -0.66`}, {2.`, -0.66`}}], LineBox[{{-2.`, -0.64`}, {2.`, -0.64`}}], LineBox[{{-2.`, -0.62`}, {2.`, -0.62`}}], LineBox[{{-2.`, -0.6`}, {2.`, -0.6`}}], LineBox[{{-2.`, -0.58`}, {2.`, -0.58`}}], LineBox[{{-2.`, -0.56`}, {2.`, -0.56`}}], LineBox[{{-2.`, -0.54`}, {2.`, -0.54`}}], LineBox[{{-2.`, -0.52`}, {2.`, -0.52`}}], LineBox[{{-2.`, -0.5`}, {2.`, -0.5`}}], LineBox[{{-2.`, -0.48`}, {2.`, -0.48`}}], LineBox[{{-2.`, -0.46`}, {2.`, -0.46`}}], LineBox[{{-2.`, -0.44`}, {2.`, -0.44`}}], LineBox[{{-2.`, -0.42`}, {2.`, -0.42`}}], LineBox[{{-2.`, -0.4`}, {2.`, -0.4`}}], LineBox[{{-2.`, -0.38`}, {2.`, -0.38`}}], LineBox[{{-2.`, -0.36`}, {2.`, -0.36`}}], LineBox[{{-2.`, -0.34`}, {2.`, -0.34`}}], LineBox[{{-2.`, -0.32`}, {2.`, -0.32`}}], LineBox[{{-2.`, -0.3`}, {2.`, -0.3`}}], LineBox[{{-2.`, -0.28`}, {2.`, -0.28`}}], LineBox[{{-2.`, -0.26`}, {2.`, -0.26`}}], LineBox[{{-2.`, -0.24`}, {2.`, -0.24`}}], LineBox[{{-2.`, -0.22`}, {2.`, -0.22`}}], LineBox[{{-2.`, -0.2`}, {2.`, -0.2`}}], LineBox[{{-2.`, -0.18`}, {2.`, -0.18`}}], LineBox[{{-2.`, -0.16`}, {2.`, -0.16`}}], LineBox[{{-2.`, -0.14`}, {2.`, -0.14`}}], LineBox[{{-2.`, -0.12`}, {2.`, -0.12`}}], LineBox[{{-2.`, -0.1`}, {2.`, -0.1`}}], LineBox[{{-2.`, -0.08`}, {2.`, -0.08`}}], LineBox[{{-2.`, -0.06`}, {2.`, -0.06`}}], LineBox[{{-2.`, -0.04`}, {2.`, -0.04`}}], LineBox[{{-2.`, -0.02`}, {2.`, -0.02`}}], LineBox[{{-2.`, 0.`}, {2.`, 0.`}}], LineBox[{{-2.`, 0.02`}, {2.`, 0.02`}}], LineBox[{{-2.`, 0.04`}, {2.`, 0.04`}}], LineBox[{{-2.`, 0.06`}, {2.`, 0.06`}}], LineBox[{{-2.`, 0.08`}, {2.`, 0.08`}}], LineBox[{{-2.`, 0.1`}, {2.`, 0.1`}}], LineBox[{{-2.`, 0.12`}, {2.`, 0.12`}}], LineBox[{{-2.`, 0.14`}, {2.`, 0.14`}}], LineBox[{{-2.`, 0.16`}, {2.`, 0.16`}}], LineBox[{{-2.`, 0.18`}, {2.`, 0.18`}}], LineBox[{{-2.`, 0.2`}, {2.`, 0.2`}}], LineBox[{{-2.`, 0.22`}, {2.`, 0.22`}}], LineBox[{{-2.`, 0.24`}, {2.`, 0.24`}}], LineBox[{{-2.`, 0.26`}, {2.`, 0.26`}}], LineBox[{{-2.`, 0.28`}, {2.`, 0.28`}}], LineBox[{{-2.`, 0.3`}, {2.`, 0.3`}}], LineBox[{{-2.`, 0.32`}, {2.`, 0.32`}}], LineBox[{{-2.`, 0.34`}, {2.`, 0.34`}}], LineBox[{{-2.`, 0.36`}, {2.`, 0.36`}}], LineBox[{{-2.`, 0.38`}, {2.`, 0.38`}}], LineBox[{{-2.`, 0.4`}, {2.`, 0.4`}}], LineBox[{{-2.`, 0.42`}, {2.`, 0.42`}}], LineBox[{{-2.`, 0.44`}, {2.`, 0.44`}}], LineBox[{{-2.`, 0.46`}, {2.`, 0.46`}}], LineBox[{{-2.`, 0.48`}, {2.`, 0.48`}}], LineBox[{{-2.`, 0.5`}, {2.`, 0.5`}}], LineBox[{{-2.`, 0.52`}, {2.`, 0.52`}}], LineBox[{{-2.`, 0.54`}, {2.`, 0.54`}}], LineBox[{{-2.`, 0.56`}, {2.`, 0.56`}}], LineBox[{{-2.`, 0.58`}, {2.`, 0.58`}}], LineBox[{{-2.`, 0.6`}, {2.`, 0.6`}}], LineBox[{{-2.`, 0.62`}, {2.`, 0.62`}}], LineBox[{{-2.`, 0.64`}, {2.`, 0.64`}}], LineBox[{{-2.`, 0.66`}, {2.`, 0.66`}}], LineBox[{{-2.`, 0.68`}, {2.`, 0.68`}}], LineBox[{{-2.`, 0.7`}, {2.`, 0.7`}}], LineBox[{{-2.`, 0.72`}, {2.`, 0.72`}}], LineBox[{{-2.`, 0.74`}, {2.`, 0.74`}}], LineBox[{{-2.`, 0.76`}, {2.`, 0.76`}}], LineBox[{{-2.`, 0.78`}, {2.`, 0.78`}}], LineBox[{{-2.`, 0.8`}, {2.`, 0.8`}}], LineBox[{{-2.`, 0.82`}, {2.`, 0.82`}}], LineBox[{{-2.`, 0.84`}, {2.`, 0.84`}}], LineBox[{{-2.`, 0.86`}, {2.`, 0.86`}}], LineBox[{{-2.`, 0.88`}, {2.`, 0.88`}}], LineBox[{{-2.`, 0.9`}, {2.`, 0.9`}}], LineBox[{{-2.`, 0.92`}, {2.`, 0.92`}}], LineBox[{{-2.`, 0.94`}, {2.`, 0.94`}}], LineBox[{{-2.`, 0.96`}, {2.`, 0.96`}}], LineBox[{{-2.`, 0.98`}, {2.`, 0.98`}}], LineBox[{{-2.`, 1.`}, {2.`, 1.`}}], LineBox[{{-2.`, 1.02`}, {2.`, 1.02`}}], LineBox[{{-2.`, 1.04`}, {2.`, 1.04`}}], LineBox[{{-2.`, 1.06`}, {2.`, 1.06`}}], LineBox[{{-2.`, 1.08`}, {2.`, 1.08`}}], LineBox[{{-2.`, 1.1`}, {2.`, 1.1`}}], LineBox[{{-2.`, 1.12`}, {2.`, 1.12`}}], LineBox[{{-2.`, 1.14`}, {2.`, 1.14`}}], LineBox[{{-2.`, 1.16`}, {2.`, 1.16`}}], LineBox[{{-2.`, 1.18`}, {2.`, 1.18`}}], LineBox[{{-2.`, 1.2`}, {2.`, 1.2`}}], LineBox[{{-2.`, 1.22`}, {2.`, 1.22`}}], LineBox[{{-2.`, 1.24`}, {2.`, 1.24`}}], LineBox[{{-2.`, 1.26`}, {2.`, 1.26`}}], LineBox[{{-2.`, 1.28`}, {2.`, 1.28`}}], LineBox[{{-2.`, 1.3`}, {2.`, 1.3`}}], LineBox[{{-2.`, 1.32`}, {2.`, 1.32`}}], LineBox[{{-2.`, 1.34`}, {2.`, 1.34`}}], LineBox[{{-2.`, 1.36`}, {2.`, 1.36`}}], LineBox[{{-2.`, 1.38`}, {2.`, 1.38`}}], LineBox[{{-2.`, 1.4`}, {2.`, 1.4`}}], LineBox[{{-2.`, 1.42`}, {2.`, 1.42`}}], LineBox[{{-2.`, 1.44`}, {2.`, 1.44`}}], LineBox[{{-2.`, 1.46`}, {2.`, 1.46`}}], LineBox[{{-2.`, 1.48`}, {2.`, 1.48`}}], LineBox[{{-2.`, 1.5`}, {2.`, 1.5`}}], LineBox[{{-2.`, 1.52`}, {2.`, 1.52`}}], LineBox[{{-2.`, 1.54`}, {2.`, 1.54`}}], LineBox[{{-2.`, 1.56`}, {2.`, 1.56`}}], LineBox[{{-2.`, 1.58`}, {2.`, 1.58`}}], LineBox[{{-2.`, 1.6`}, {2.`, 1.6`}}], LineBox[{{-2.`, 1.62`}, {2.`, 1.62`}}], LineBox[{{-2.`, 1.64`}, {2.`, 1.64`}}], LineBox[{{-2.`, 1.66`}, {2.`, 1.66`}}], LineBox[{{-2.`, 1.68`}, {2.`, 1.68`}}], LineBox[{{-2.`, 1.7`}, {2.`, 1.7`}}], LineBox[{{-2.`, 1.72`}, {2.`, 1.72`}}], LineBox[{{-2.`, 1.74`}, {2.`, 1.74`}}], LineBox[{{-2.`, 1.76`}, {2.`, 1.76`}}], LineBox[{{-2.`, 1.78`}, {2.`, 1.78`}}], LineBox[{{-2.`, 1.8`}, {2.`, 1.8`}}], LineBox[{{-2.`, 1.82`}, {2.`, 1.82`}}], LineBox[{{-2.`, 1.84`}, {2.`, 1.84`}}], LineBox[{{-2.`, 1.86`}, {2.`, 1.86`}}], LineBox[{{-2.`, 1.88`}, {2.`, 1.88`}}], LineBox[{{-2.`, 1.9`}, {2.`, 1.9`}}], LineBox[{{-2.`, 1.92`}, {2.`, 1.92`}}], LineBox[{{-2.`, 1.94`}, {2.`, 1.94`}}], LineBox[{{-2.`, 1.96`}, {2.`, 1.96`}}], LineBox[{{-2.`, 1.98`}, {2.`, 1.98`}}], LineBox[{{-2.`, 2.`}, {2.`, 2.`}}]}, ContentSelectable -> False]}, PlotRange -> {{0, 1}, {0, 1}}, ImageSize -> {480, 480}, ContentSelectable -> True], After], FrontEnd`SelectionMove[FrontEnd`InputNotebook[], Previous, "Graphics"]}], Evaluator -> None, Method -> "Preemptive"], "New Graphics (with guide\[Hyphen]grid)"], Annotation[#, "New Graphics (with guide\[Hyphen]grid)", "Tooltip"] &]

   (* added by silvia ^ *)

Save the file and reopen the Drawing Tools palette in Mathematica (press Ctrl + D), you should see a new button at the right side of the old "New Graphics" button:

new Drawing Tools palette

Press it (and don't forget to switch on the "Toggle Alignment Guides"), you should see a canvas with guide-grids:

canvas with guide grids

$\endgroup$
  • $\begingroup$ I would still like foced quantize move instead of a shown grid that i can snap to its mentally faster $\endgroup$ – joojaa Oct 21 '15 at 17:01
  • $\begingroup$ @joojaa Forcing a quantized move would be much harder if insist sticking with the built-in Drawing Tools, as a large part of its operating principle is unknown to the end users, which makes any further hacking very hard, if not impossible. $\endgroup$ – Silvia Oct 21 '15 at 17:06
  • $\begingroup$ I dont dispute that. Im still saying this is not perfect even if its VERY useful. TY $\endgroup$ – joojaa Oct 21 '15 at 17:13
  • $\begingroup$ @joojaa You're welcome! And maybe someone else will come up with a better solution. Don't feel hesitated to change the acceptance! $\endgroup$ – Silvia Oct 21 '15 at 17:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.