Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFE: Snap points to grid (one grid per layer), snap point to nearest point, snap angles #415

Closed
verdy-p opened this issue Jun 13, 2020 · 0 comments

Comments

@verdy-p
Copy link

verdy-p commented Jun 13, 2020

Describe the bug
We can draw freely on the canvas, but there's still no helper to define the geometry conveniently: all points are placed at arbitrarily free positions.

The only helpers available are the alignment options (which align relative to the total canva rectangle only: align to left/center/right/distribute horizontally, or align to top/middle/bottom/distribute vertically). But there's no way to define the rectangle (possibly rotated) where this would apply, so this helper has little or no use at all.

We should be able to select a shape, then on one of its node, select the option to snap them to the grid (the grid unit should be also selectable, not necessarily a multiple of 10), and possibly even select a point and instruct to center the grid at this point, then rotate the grid.

As well all rotations should be snapable to some angle multiple/submultiple or rational factor of the right angle (90°).

Each layer, would have its own separate design grid for snapping: selecting another layer would change the visible grid and hide the grids used for other layers.

Visible layers (not hidden in "defs") are stacking from bottom to top, and the bottom one defines the default grid for the view, but you can always select any layer to work with.

All nodes should be snappable, not just endpoints on curve, but also control points for quadratic/cubic arcs, and even endpoints and control node defining elliptical arcs.

As nodes can be snapped easily to the same position on grid, it should then be easy to merge two strokes in the same shape (path in SVG) when they are defined with a common node, instead of just using "groups".

This would help defining common shapes that could become definitions of shapes defined in some separate layer (not rendered directly but defined in "def" element, where we could set its definition rectangle and its positioning point: these could then be also usable as custom markers.

The idea is to get the functionalities we had in MacDraw, already many decennials ago.

This would greatly facilitate the design of diagrams, or SVG fonts (with their 1000x1000 grid or 1024x1024 grid)

@SVG-Edit SVG-Edit locked and limited conversation to collaborators Jun 26, 2022
@jfhenon jfhenon converted this issue into discussion #802 Jun 26, 2022

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Projects
None yet
Development

No branches or pull requests

2 participants