https://bugs.documentfoundation.org/show_bug.cgi?id=173882
--- Comment #4 from [email protected] --- (In reply to jan d from comment #3) > Inkscape seems to do the following: > - Define the grid distance (every n px/mm/...) > - Define major grid every n normal grid lines. > > This dodges the problem of manually defining several grids and having > incompatible grids. Otherwise known as an infinitely scrolling grid. A little harder to implement, but equally viable. You find this type of solution in all sorts of CAD programs, like Inkscape (which you mentioned), Visio (the thing I'm trying to get away from), LibreCAD, and others. The infinite scroll becomes more important when you start looking at significantly larger projects, where you want the detail of a small sensor on something that could be hundreds of meters / yards long (like the internal layout of a building). The solution I suggested is trivial to implement: 3 grid values, 3 zoom factors, a single boolean toggle, and the grid being rendered based on that toggle plus the current zoom factor and those 3 grid values. The infinitely scrolling grid implementation is a bit different. You start with the page size, which is based on the drawing scale (which is currently embedded in the options). Then, for metric systems, the grid division is a lot easier (simply divide by 10 at every step), and for imperial it's a divide by 2^n (1/2, 1/4, 1/8, and so on). If the developers are going to go down the path of implementing the infinitely scrolling grid, the page scale needs to be bound to the document / page you are working on (which already happens when it's saved), rather than a single global setting (which would effectively become the default for new drawings, rather than a fixed value for all drawings). That means people would need to be able to modify the drawing scale on a per-page basis, and I'm not sure there's an easy access point at the moment (the obvious solution would be to add the drawing scale to the right-click options in the Page Pane). Either way works for me. -- You are receiving this mail because: You are the assignee for the bug.
