Feature Request: Simple Grid Extents Control for each axis

It would be very simple and useful to be able to define the Rhino grid extents with a non-centered origin, and different extents for each axis.

For example: I’d often like to define the grid to match the cutting area of my CNC router table:

X grid extents = 0 to 60
Y grid extents = 0 to 24
Z grid extents = 0 to 12

This would result in the origin being in the corner of the grid, and the grid extents intuitively matching my available cutting area.

Another frequently desired example for anyone using Rhino in conjunction with CNC cutting or 3D printing machines: similar to above but with a centerline defined on one axis:

X grid extents = 0 to 45 (the extents of the model on this axis)
Y grid extents = -12 to +12 (model & cutting stock is positioned relative to a centerline on this axis.)
Z grid extents = -6 to 0 (cutting depth relative to the top of cutting stock, rather than the bottom.)

This could be implemented very simply in the Document Properties with a pair text boxes for the grid extents of each axis.

Another grid feature request: please allow the grid extents to be defined in terms of the document units, with subdivision lines being chosen independently.

I’d like to define each grid axis in terms of model units, then just choose the number of subdivisions. For example: define grid extents for each axis as explained above, then just choose subdivisions per unit: eg. 4. With the current scheme if I change my subdivisions then the grid extents also change.

I feel strongly that these simple improvements would make the grid far more useful to far more people.

With the current grid scheme I am forced to use the following workflow:

  1. Choose my longest axis since all axes must be the same: eg. 60"
  2. Double that value since the origin must be centered: 120"
  3. Multiply that value by the number of minor grid lines (subdivisions) I want to see: eg. 120 x 4 = 480
  4. Enter that value in the Grid line count.
  5. Enter the subdivision size: eg. 0.25"
  6. Do the inversion of that fraction to set the Major Grid Lines number: eg. 4

And all this just to show a grid which only has a meaningful extent on one of my axes, and which I then must ignore the three quarters of the grid area which show negative axis areas which have no meaning on my CNC machine.

I hope this post illustrates a clear need for these small improvements to the Rhino grid. I feel that the current grid control scheme based on the overall Grid Line Count is downright user hostile.