2

I'm using inkscape 0.92.3 and want to break a circular ring into 3 equal sections. I've created a ring from two circles and used Path > Difference, then Extensions > Modify Path > Add Nodes... with a selection of By number of segments, 3. The screenshot shows the result.

circular ring path with added nodes

Now I need to create 3 divisions of the ring. Using a coordinate system where 0/360 degrees is to the centre right of the ring, I want to connect the nodes from the outer ring to the inner ring with straight segments as follows,

outer  inner
 90     30
210    150
330    270

The dashed lines in the next screenshot show the segments.

circular ring with 3 line segments

I need the segments to break apart and be fitted back again with precision and no gaps. It is absolutely necessary that the radius remains the same when all three segments are rotated as a group.

For anyone who's interested, this is a trivial flower snark with the inner nodes rotated 60 degrees clockwise. In this case the nodes are infinitely small and the 3 sections will be coloured.

  • just noticed that the most obvious method (you have 2 answers which use it) produces erratic results - it makes the radius wrong. Did you know it before posting your question? – user287001 Sep 19 '18 at 20:26
  • N.B.: There are no perfect circles in Adobe Illustrator (I know for certain); nor, I believe, in Inkscape. What you have is a close approximation of a circle, constructed of cubic Bézier curves. – Wildcard Apr 18 at 7:27
1

To my understanding, what you need is /Path -> Division/. Check the manual here.

If you call your dashed segments are 1, 2 and 3, using the Bezier tool create a closed shape that includes segments 1 and 2, and then overlaps the ring:

ring with overlapping shape

Then use /Path -> Division/ to cut the ring using the shape.

enter image description here

Repeat for segments 1 and 3.

To aid in making the precise shape for cutting, enable node snapping.

  • I offered nearly the same. It produces wrong radius, the parts will not fit. see my answer. – user287001 Sep 19 '18 at 20:29
0

I am far from a wizard when it comes to Inkscape, but I enjoy a challenge of this nature.

One must presume that you can create an ordinary circle. Once created, you'll see there is two square nodes and one circular node:

base circle

Grab the circular node and watch the start or end degree boxes change values:

circle segment

Note also that the icon on the tool bar has the non-pie-slice option selected, keeping the endpoints open.

circle segment continued

A smaller circle has been added and the numbers for start and finish have been changed to match your requirements. The numbers don't match your references and require a bit of math to find the correct "reverse" direction figures.

inside circle adjustment

The inside circle has been adjusted as well, to match your figure. Once you've selected the circle, you can type the numbers in, or drag to get the same figures.

object to path image

Select both figures and convert to path.

add lines

There may be a smarter method than this one, but I simply select the line tool, with snap on (default) and join the inner circle and outer circle.

I'd bet that there's some sequence to automatically join the line being created to the node used as the anchor, but I had to do that manually after creating the lines.

That is, I selected the node tool and then selected the two nodes, one for the outside circle and one for the line that attached to it, then used the combine node toolbar icon to make them a single node. If this isn't done, the fill won't work properly. The object has to be a closed figure for a proper fill. I did a quick Google search and did not find an easy answer about adding a line to a previously placed path and have the nodes automatically joined. That doesn't mean it doesn't exist, but when I know how to do it manually, a long search is longer than the manual method implementation.

last line

You can now take this shape and copy/paste/rotate/clone-rotate to get the three segments required in the original objective.

  • That worked, but I didn't figure out at first that the combine node toolbar icon you referred to is called join selected nodes on my version. Also, to rotate the 2 sections I found I needed to have a circle grouped with the segment (and later erased) to get better alignment. Overall a very useful approach to the problem. – ray Sep 18 '18 at 19:06
  • I'd accept your answer, but can't with my reputation level. – ray Sep 18 '18 at 19:07
  • @ray you should be able to, check here graphicdesign.stackexchange.com/help/someone-answers – Luciano Sep 20 '18 at 13:09
0

ADD: This method isn't valid. See the explanation in the end

==============

Dividing the ring with a closed polygon is already presented in an older answer. I recommend it, too:

enter image description here

The black line is the division line. The 30 and 150 degrees rotated lines only mark the corners of the divider for easy, but still exact drawing.

This is new: Have a copy of the original (=undivided) ring below all. You can well delete the bigger part after making the division or directly by making an itersection instead of dividing. The wanted slice (=One part in the objects panel) has a red fill.

enter image description here

Make a copy of the "One part" by duplicating. Color it differently, here it's green:

enter image description here

Select the "One part" and the original ring, rotate them 120 degrees:

enter image description here

Now it's the right time to stop. You do not need the third copy. It's better to have the full ring below all, because in Inkscape perfectly fitting seams leak. That's because SVG shapes are rendered to visible bitmap images with anti-alias. That makes 1px wide transparent gap between exactly fitting parts.

Here the background ring is removed and the splices have dark color. The bright background can be seen through the gap. It will get worse, when exported to PNG.

enter image description here

The invalidity:

Path operations Division and Intersect produce inaccurate result. The parts will not fit. A proof:

enter image description here

Orange line, blue circle and its copy green circle all meet at the corner node of the black polygon. After making intersection between the black polygon and blue circle, the intersection has been shifted away:

enter image description here

The circle radius has been reduced. The questioner seemingly had knocked his head to something resembling, because he demanded that the radius must stay same.

I do not know is it a bug or a specified property. I would say "a bug" if I must guess.

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.