Jump to content
You must now use your email address to sign in [click for more info] ×

Designer: Convert a straight line segment into a curved one


Recommended Posts

Is there a simple way to convert a straight line segment into a curved one with smooth nodes, without affecting the neighbour segments? See the screenshot for clarification. In Inkscape I would click on segment BC with the node tool and choose "Make selected segments curves" and then "Make selected nodes smooth".

linesegments.png.630ec68e38267ad3b938707a672bf9b4.png

Link to comment
Share on other sites

I would just switch to the Node Tool and drag the BC segment out to a curve.

 

Mac Pro (Late 2013) Mac OS 12.7.4 
Affinity Designer 2.4.1 | Affinity Photo 2.4.1 | Affinity Publisher 2.4.1 | Beta versions as they appear.

I have never mastered color management, period, so I cannot help with that.

Link to comment
Share on other sites

17 hours ago, max1josef said:

convert a straight line segment into a curved one with smooth nodes, without affecting the neighbour segments?

Automatic no.

Node Tool, select BC node, Context toolbar - Convert to Smooth.
Select B node, Click + Alt to left handle.
Select C node, Click + Alt to right handle.
Adjust the resulting arc shape as needed (snap the handles parallel to the appropriate line segment).

Edit: I don't know the benefit of BC nodes being Smooth, but I've noticed that when cusp is created it changes node to Sharp.
Then, after converting the BC nodes to Smooth, it is possible to move the left/right handle of the B/C node to the A/C node (use snapping), and then adjust the arc again (use Drag+Shift).

Affinity Store (MSI/EXE): Affinity Suite (ADe, APh, APu) 2.4.0.2301
Dell OptiPlex 7060, i5-8500 3.00 GHz, 16 GB, Intel UHD Graphics 630, Dell P2417H 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Dell Latitude E5570, i5-6440HQ 2.60 GHz, 8 GB, Intel HD Graphics 530, 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Intel NUC5PGYH, Pentium N3700 2.40 GHz, 8 GB, Intel HD Graphics, EIZO EV2456 1920 x 1200, Windows 10 Pro, Version 21H1, Build 19043.2130.

Link to comment
Share on other sites

I think this is actually a bug. Smooth should be smooth and Smart should be smart.
We should be able to just select the two nodes and choose one or the other. But we are getting a Smart result for both options.

At any rate, I'd:
• Delete the middle section.
• select the end nodes and make them Smooth
• join curves

(to see what I mean about a bug, after deleting the middle segment assign the two nodes instead to be Smart, and join.)

Link to comment
Share on other sites

In addition to the advice above, if you are not too bothered about the node positions, you can use the Corner Tool to get something done quickly.
See my attached video where the thick black curve shows the original and the thinner red curve is a copy being manipulated.
As you can see, the modified curve doesn’t fit to the original nodes but this might not be important if you just want something quick.

Link to comment
Share on other sites

16 hours ago, max1josef said:

Is there a simple way to convert a straight line segment into a curved one with smooth nodes, without affecting the neighbour segments?

As @thatGuy mentioned, by using construction snapping this can be done in 3 steps. That also can be used to demonstrate that many different curve segments that do not affect neighboring ones are possible. For example, in this 2 smooth curves.afdesign file, both the green "smooth 1" curve & the red "smooth 2" one include a smooth segment that does not affect neighboring ones. If you hold down the Shift key, you can drag any of their node handles to a wide range of locations to create a different curve segment that still does not affect neighboring ones.

2054780518_2smoothcurves.jpg.709e4f57a9591ee877876fdb3176f28a.jpg

IOW, there is no one unique segment shape that does this, so any automatic method for doing this would have to pick one, which may or may not be the shape you want.

All 3 1.10.8, & all 3 V2.4.1 Mac apps; 2020 iMac 27"; 3.8GHz i7, Radeon Pro 5700, 32GB RAM; macOS 10.15.7
Affinity Photo 
1.10.8; Affinity Designer 1.108; & all 3 V2 apps for iPad; 6th Generation iPad 32 GB; Apple Pencil; iPadOS 15.7

Link to comment
Share on other sites

6 hours ago, Lagarto said:

b) But this happens (the location of node C is moved):

It looks like a bug.
If the CD segment rotates (Reverse curve), Convert to Smooth works correctly on both nodes (just like on the AB segment).
However, if the segment rotates once more - and point C returns to its original position, it makes a bugagain.
P.S. but even point D behaves differently - in the original and rotated/reverse position.

Affinity Store (MSI/EXE): Affinity Suite (ADe, APh, APu) 2.4.0.2301
Dell OptiPlex 7060, i5-8500 3.00 GHz, 16 GB, Intel UHD Graphics 630, Dell P2417H 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Dell Latitude E5570, i5-6440HQ 2.60 GHz, 8 GB, Intel HD Graphics 530, 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Intel NUC5PGYH, Pentium N3700 2.40 GHz, 8 GB, Intel HD Graphics, EIZO EV2456 1920 x 1200, Windows 10 Pro, Version 21H1, Build 19043.2130.

Link to comment
Share on other sites

Thank you all for your suggestions. I will go for the construction snapping method.

5 hours ago, R C-R said:

IOW, there is no one unique segment shape that does this, so any automatic method for doing this would have to pick one, which may or may not be the shape you want.

This is where smooth nodes (as they work in Inkscape) come in handy: when you drag the curve after conversion (the curve itself, no need to drag the control points) after conversion, the nodes remain smooth (they are restrained to be staying smooth).

BTW: What screen recording software are you using? I'd like to post videos like you did, too.

 

 

Link to comment
Share on other sites

1 minute ago, max1josef said:

This is where smooth nodes (as they work in Inkscape) come in handy: when you drag the curve after conversion (the curve itself, no need to drag the control points) after conversion, the nodes remain smooth (they are restrained to be staying smooth).

Yes, they are smooth but they are converted to just one of many possible curvatures. What if you want a different one that is more or less rounded or is less symmetric?

All 3 1.10.8, & all 3 V2.4.1 Mac apps; 2020 iMac 27"; 3.8GHz i7, Radeon Pro 5700, 32GB RAM; macOS 10.15.7
Affinity Photo 
1.10.8; Affinity Designer 1.108; & all 3 V2 apps for iPad; 6th Generation iPad 32 GB; Apple Pencil; iPadOS 15.7

Link to comment
Share on other sites

7 minutes ago, max1josef said:

with the nodes staying smooth

I don't know how Inkscape displays different types of nodes, but yours don't look like Smooth - they don't have a two-way handle.

 

Affinity Store (MSI/EXE): Affinity Suite (ADe, APh, APu) 2.4.0.2301
Dell OptiPlex 7060, i5-8500 3.00 GHz, 16 GB, Intel UHD Graphics 630, Dell P2417H 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Dell Latitude E5570, i5-6440HQ 2.60 GHz, 8 GB, Intel HD Graphics 530, 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Intel NUC5PGYH, Pentium N3700 2.40 GHz, 8 GB, Intel HD Graphics, EIZO EV2456 1920 x 1200, Windows 10 Pro, Version 21H1, Build 19043.2130.

Link to comment
Share on other sites

46 minutes ago, max1josef said:

As I wrote above: after automatic conversion I can drag the curve (with Inkscapes node tool) wherever I want to, with the nodes staying smooth.

After you use construction snapping (I think just one more step than with Inkscape is it not?) you can do the same thing in Affinity by using the Shift key to constrain a dragged handle to any point that does not affect the neighboring segments.

You could also do the same thing by deleting the two handles that extend into the segments you want to remain unaffected & then dragging the segment around instead of its nodes.

It is maybe a bit less convenient but not overly so.

All 3 1.10.8, & all 3 V2.4.1 Mac apps; 2020 iMac 27"; 3.8GHz i7, Radeon Pro 5700, 32GB RAM; macOS 10.15.7
Affinity Photo 
1.10.8; Affinity Designer 1.108; & all 3 V2 apps for iPad; 6th Generation iPad 32 GB; Apple Pencil; iPadOS 15.7

Link to comment
Share on other sites

44 minutes ago, R C-R said:

After you use construction snapping (I think just one more step than with Inkscape is it not?) you can do the same thing in Affinity by using the Shift key to constrain a dragged handle to any point that does not affect the neighboring segments.

Thank you for adding the essential tip (holding the Shift-Key). Now I have a really practical workflow for my task.

47 minutes ago, R C-R said:

You could also do the same thing by deleting the two handles that extend into the segments you want to remain unaffected & then dragging the segment around instead of its nodes.

I also tried this, but the nodes don't remain smooth when I do this.

48 minutes ago, R C-R said:

It is maybe a bit less convenient but not overly so.

Agreed! I'm happy with your solution!

Link to comment
Share on other sites

3 hours ago, max1josef said:

I also tried this, but the nodes don't remain smooth when I do this.

True, but it is just another way of making it possible to change the curvature of the curved segment without affecting the neighboring ones.

In a round about way the point (no puns intended) I am trying make with all of this is in Affinity there are actually 3 kinds of "sharp" nodes: those with zero, one, or two control handles. The context toolbar "Convert" button only offers conversion to the first kind. Perhaps it would be better if it had all 3?

All 3 1.10.8, & all 3 V2.4.1 Mac apps; 2020 iMac 27"; 3.8GHz i7, Radeon Pro 5700, 32GB RAM; macOS 10.15.7
Affinity Photo 
1.10.8; Affinity Designer 1.108; & all 3 V2 apps for iPad; 6th Generation iPad 32 GB; Apple Pencil; iPadOS 15.7

Link to comment
Share on other sites

3 hours ago, max1josef said:

Thank you for adding the essential tip (holding the Shift-Key). Now I have a really practical workflow for my task.

22 hours ago, Pšenda said:

and then adjust the arc again (use Drag+Shift).

See Status bar.

 

5 hours ago, max1josef said:

They show only one handle, because the first and last segments are straight lines - so there is no need for handles.

But then node B and C are not Smooth (as you require), but are Sharp.
Affinity works exactly the same (see my earlier description).
image.png.3565231b916a8b4c3c19fa13c05eca37.png

Affinity Store (MSI/EXE): Affinity Suite (ADe, APh, APu) 2.4.0.2301
Dell OptiPlex 7060, i5-8500 3.00 GHz, 16 GB, Intel UHD Graphics 630, Dell P2417H 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Dell Latitude E5570, i5-6440HQ 2.60 GHz, 8 GB, Intel HD Graphics 530, 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Intel NUC5PGYH, Pentium N3700 2.40 GHz, 8 GB, Intel HD Graphics, EIZO EV2456 1920 x 1200, Windows 10 Pro, Version 21H1, Build 19043.2130.

Link to comment
Share on other sites

14 hours ago, thatGuy said:

you can use construction snapping to restore the linear segments after node type conversion without splitting/re-joining the curve

Nice! It does however yield a different result 😉.

 

6 hours ago, max1josef said:

As I wrote above: after automatic conversion I can drag the curve (with Inkscapes node tool) wherever I want to, with the nodes staying smooth. This is something I really miss in Affinity designer.

b2.png.a28ccfe2a9de53eaec849ab3056801d4.png

Yes, we should have this option.
We already can grab and manipulate the individual segments we just need a modifier implemented to constrain the handles to be straight (I'm not talking about adjusting them one at a time). We can constrain bez handles in other situations so I don't think this is a hard ask .... or to do!

Link to comment
Share on other sites

5 minutes ago, JimmyJack said:

to constrain the handles to be straight

Node Tool, Context Toolbar - set Perform construction snapping (last Snap option). Handle and Node has purple colour.

Affinity Store (MSI/EXE): Affinity Suite (ADe, APh, APu) 2.4.0.2301
Dell OptiPlex 7060, i5-8500 3.00 GHz, 16 GB, Intel UHD Graphics 630, Dell P2417H 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Dell Latitude E5570, i5-6440HQ 2.60 GHz, 8 GB, Intel HD Graphics 530, 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Intel NUC5PGYH, Pentium N3700 2.40 GHz, 8 GB, Intel HD Graphics, EIZO EV2456 1920 x 1200, Windows 10 Pro, Version 21H1, Build 19043.2130.

Link to comment
Share on other sites

8 minutes ago, Pšenda said:

Node Tool, Context Toolbar - set Perform construction snapping (last Snap option). Handle and Node has purple colour.

LOL, yes, as you can see that is what I used in my GIF. (edit: oh the GIF never uploaded.... I'm getting a -200 error? Video below instead... May bad)
It's not what my comment is about which is constraining both adjacent handles at the same time when manipulation the curve segment itself. As in @max1josef's example. 👍

Link to comment
Share on other sites

5 minutes ago, JimmyJack said:

yes, as you can see that is what I used in my GIF

Yes, but you use it in another situation - to attach one handle of the Smooth node.
Because I responded to "to constrain the handles to be straight", I meant the straight movement of the handle at the Sharp node, as seen in the picture from the OP.

Affinity Store (MSI/EXE): Affinity Suite (ADe, APh, APu) 2.4.0.2301
Dell OptiPlex 7060, i5-8500 3.00 GHz, 16 GB, Intel UHD Graphics 630, Dell P2417H 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Dell Latitude E5570, i5-6440HQ 2.60 GHz, 8 GB, Intel HD Graphics 530, 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Intel NUC5PGYH, Pentium N3700 2.40 GHz, 8 GB, Intel HD Graphics, EIZO EV2456 1920 x 1200, Windows 10 Pro, Version 21H1, Build 19043.2130.

Link to comment
Share on other sites

7 minutes ago, Pšenda said:

Yes, but you use it in another situation - to attach one handle of the Smooth node.
Because I responded to "to constrain the handles to be straight", I meant the straight movement of the handle at the Sharp node, as seen in the picture from the OP.

The OP was never moving individual nodes (that's what he ended up doing in the end as a workaround). You can see his Inkscape cursor is on the curve itself, not on the node. 
And yes we can constrain handles in different ways one at a time (that's why I said "We can constrain bez handles in other situations").
Which is why this ability doesn't seem like such a hard behavior to add.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.