4

I have a diagonal line and I want it to be the radius of a circle. I can snap the centre of the circle to the first cusp node fine and extend it out from there, but for some reason it won't snap the path of the circle to the other cusp node. What am I doing wrong here and how can I circumvent it?

Not snapping

2
  • disclaimer: not an Inkscape user, so suggesting my Illustrator workflow. Can't you measure the length of the line, and then have Inkscape draw a circle with that exact size as the radius?
    – Vincent
    Jun 25 '20 at 16:18
  • @Vincent This workflow isn't needed in Inkscape. The software has comprehensive snapping options to enable exactly what the OP wants.
    – Billy Kerr
    Jun 25 '20 at 18:02
4

In Inkscape 1.0, you can use a path effect for it, no snapping required:

Option 1:

  • draw the diameter instead of the radius, then
  • Path > Path effects > + > Ellipse from points : dropdown 'force circle'.

Option 2:

  • select the radius
  • Path > Path effects > + > Show experimental > Circle (by center and radius)
6

In the Snapping Controls bar, make sure you select the following options.

  • Enable Snapping
  • Snap Nodes Paths and Handles
  • Snap to Paths
  • Snap other Points
  • Snap rotation centres

With the Bézier Tool selected, When you approach the circle's path, it will snap to it displaying "Handle to Path".

Example (snapping options shown right)

enter image description here

If you need to do this in reverse, and already have a line, then you could use the Measure Path extension to measure it, then draw a circle from one of the end nodes, holding down Ctrl+Alt as you click and drag, then edit the Rx and Ry values in the Tool Controls Bar to match the line length.

Example

enter image description here

6
  • 2
    Nice answer, but the question wasn't how to snap a line given a circle: it was how to snap a circle given a line. Usually the snap affects the mouse cursor, and while we are drawing a circle this works only when the given line is horizontal or vertical. For other angles, I cannot see an immediate way to snap the circle (e.g. you can rotate the line until is vertical, draw the circle, re-rotate the line). A tricky question. Jun 25 '20 at 19:58
  • 1
    @PaoloGibellini If the OP needs to do it in reverse, then there's a Measure Path extension, which can measure a line at any angle, then it would be possible to draw a circle holding down Ctrl+Alt while you drag from one of the end nodes, and then edit the Ry and Rx values in the Tools Control Bar to be the same as the line length.
    – Billy Kerr
    Jun 25 '20 at 20:54
  • @PaoloGibellini I've added that to my answer.
    – Billy Kerr
    Jun 25 '20 at 21:06
  • This doesn't help me--the measure path tool gives a rounded off precision number to what has been specified. I'm looking for it to be as precise as possible (hence why I'm interested in a snap).
    – Nicholas
    Jun 26 '20 at 18:22
  • @Nicholas If you are looking for that level of precision, then Inkscape or similar vector graphics software is probably not the software for you. Maybe have a look at using some actual CAD software instead.
    – Billy Kerr
    Jun 26 '20 at 18:26
3

Just in case the radius is already drawn but you must insert a circle like in your example try this:

enter image description here

Have all snaps to point and guides ON, but keep snap to grid and bounding box OFF.

  1. Drag from the top a horizontal guide to the center of the wanted circle. It snaps.

  2. Duplicate (=select, press Ctrl+D) the radius. Drag duplicate's (=green) rotation center to the center of the wanted circle. It snaps. Rotate the duplicate to horizontal. It snaps, too.

  3. Draw a vertical line (blue) starting from the end oft the rotated duplicate

  4. Draw a circle from the wanted center point (=hold Shift and Ctrl) until it snaps to the vertical line.

3
  • I was already answering, but your answer is more simple. You can also use a guideline instead of the vertical blue line. Jun 25 '20 at 20:23
  • How do you rotate the duplicate to be exactly horizontal? The program only wants to rotate it a specific number of degrees relative to the object itself, without regard for what angle the line is starting in.
    – Nicholas
    Jun 26 '20 at 18:24
  • @Nicholas You have revealed an error. I had switched from the move tool to the node tool and of course it snapped. The wrong radius cannot be seen in the small screenshot. I have fixed the answer. Fortunately snap to guides works when rotating.
    – user287001
    Jun 26 '20 at 20:01

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.