Jump to content

Recommended Posts

I'm brand new to Affinity Designer but trialing it I found it has a great ui and pretty much every feature I need except one major omission: bsplines.

By bsplines I mean b-splines or basis splines (or possibly NURBS curves? I'm not entirely sure on the math definition), basically a different way of drawing curves than beziers that can be far more intuitive. Specifically, I'm looking for the kind of bsplines Inkscape has where you can adjust the "pointiness" of each node in a bspline curve by shift-dragging node handles, kind of similar to how the Corner Tool works in Affinity. Open the attached svg in Inkscape for an example.

I use bsplines literally all the time in Inkscape because I find continuous curves without ugly flat spots far easier to make, yet they are surprisingly lacking from software. Adobe Illustrator doesn't have bsplines. CorelDraw has them but not with adjustable nodes as far as I can tell. Inkscape has them but Inkscape has lots of other drawbacks and issues. Now-legacy DrawPlus apparently had them though they weren't in the starter edition I was able to find. Affinity Designer, on the other hand, has been primed to get bsplines for a number of years according to various forum posts here like this, this or this from January 2015:

Quote

The back-end already has b-splines and can render them to the screen. Our curve classes already load and save b-spline data. We don't have a tool to create them yet, but I haven't overlooked them - they've been in the code for at least a few years now and a tool will exist at some future point - but there has been strangely little interest in them to this point, hence why I haven't made it a priority yet...

So here I am, expressing interest xD but the last mention I can find was in December 2016 and now it's 2019, so my big question is: is there any chance of bsplines finally coming to Affinity Designer in 2019?

The addition of bsplines with adjustable nodes to Affinity would make my rating of the product go from 8/10 to 10/10, or 12/10 if they could be drawn with the Vector Brush Tool (I would have easily paid double!).

Thanks for reading all this and making an otherwise exceptional product. I really want to make Affinity one of my core graphics programs, just the lack of bsplines is holding me back.

(Note that I am aware bezier nodes in Affinity have a "smart" mode where their handles are adjusted automatically, somewhat similar to bsplines, but I really don't find that the same, and the moment you adjust them they become un-smart. Also I did check the beta, no mention of bsplines there :()

bspline_example.svg

Share this post


Link to post
Share on other sites
15 hours ago, discretegames said:

So here I am, expressing interest xD but the last mention I can find was in December 2016 and now it's 2019, so my big question is: is there any chance of bsplines finally coming to Affinity Designer in 2019?

Hi discretegames,

Sadly i can't give you any more information other than what you've already found out.  If there are plans for one this year, then i'm sure one of the Dev team will reply here.

Share this post


Link to post
Share on other sites

Well that's too bad, but I can hope. It just really sounded like Affinity was about to get bsplines a year or two ago and now it might be unlikely to ever happen -_-

Share this post


Link to post
Share on other sites
On 2/27/2019 at 9:12 AM, discretegames said:

... CorelDraw has them but not with adjustable nodes as far as I can tell. ...

Like this in CD?

capture-002538.png.fb0c2a48649151c0c48e966e37ebf01f.png


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites
13 minutes ago, discretegames said:

Yeah, that's right MikeW. The "B-Spline" tool just under "Pen" in the little dropdown of drawing tool types.

My point was that the nodes are adjustable.


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites

Oh, my bad. I know you can move the nodes around individually but can you adjust their "pointiness" in CD? (Like you can in Inkscape by shift+click-dragging the node handles of bsplines with the Node tool.) Apologies, I am brand new to CorelDraw and only on a trial version.

Share this post


Link to post
Share on other sites
13 minutes ago, discretegames said:

Oh, my bad. I know you can move the nodes around individually but can you adjust their "pointiness" in CD? (Like you can in Inkscape by shift+click-dragging the node handles of bsplines with the Node tool.) Apologies, I am brand new to CorelDraw and only on a trial version.

One can assign a keystroke to convert a selected node to what Corel calls a Clamp control point on an existing b-spline path. While drawing, one can set a control point and click on it again and it becomes a clamp control point. So while drawing, it isn't as convenient as Inkscape, with a bit of practice it is almost as quick.


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites

And an oops. When b-splines were introduced, pressing the v key would create a clamp point. Then about X8 there was an issue, but in version 2018 it does work again. I just got used to not trying I guess I forgot all about it.

Memory. It's a funny thing.


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites
Posted (edited)

Ah, I see. In CorelDraw I can make a clamp control point (fully pointy) or a float control point (fully curved) with each bspline node. But what about something in between clamp and float that is continuously adjustable? That's what I'm talking about in Inkscape, and what I'd love to see in Affinity.

Edited by discretegames

Share this post


Link to post
Share on other sites
42 minutes ago, discretegames said:

Ah, I see. In CorelDraw I can make a clamp control point (fully pointy) or a float control point (fully curved) with each bspline node. But what about something in between clamp and float that is continuously adjustable? That's what I'm talking about in Inkscape, and what I'd love to see in Affinity.

I would have to (re)install Inkscape and play with the b-splines for a comparison. In CD, you can click anywhere along the spline's path which will show a black dot. But that dot is not adjustable. Double-clicking on it will add a node. Multi-selecting nodes is possible as well. Looking at a video for Inkscape's b-splines shows me that CD's implementation likely is not as effective. I only really use b-splines for tracing lettering from old prints for making fonts, so CD's implementation has been adequate for me. 

Inkscape's implementation looks nice and may need to download it again and give it a try. Thanks.

Mike


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites

Attached is a quick clip in Inkscape 0.92.3 just to demonstrate.

You can move the nodes normally by left-click-dragging them with the node tool, and adjust their "pointiness" continuously by shift-left-click-dragging the octagonal node handles. Really handy.

Note that to draw bsplines in the first place the pen tool needs to be on "Create Bspline path" mode at the top, not Bezier or Spiro or something else.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×