I am trying to recreate a certain shape in Solidworks that was originally modeled in software called Delftship, in order to parametrize and modify it. In Delftship, this shape was created using B-splines with a single control point, which can be seen in this screenshot (the red lines are lines connecting base/control points, and the curves are thin black lines):
Now, I imported this body into Solidworks, so I can use it as a visual reference to determine what kind of spline I have to use here to have the same curvature with a single control point (this is very important). Herein lies the problem. As I understand it, Solidworks supports B-splines (regular splines) and Bezier (style splines). Unfortunately, I can't seem to produce a curve that would have the same curvature as in the picture above, having a control point in the exact same spot. Here's my attempt to recreate one of the curves on the imported model. With a regular spline (which is B-spline, as I understand), which has a control point inside the spline, I get this:
As you can see, not even close. Doesn't matter where I put that control point, the curvature is just not the same. It is possible to approximate the original curvature with tangency controls on that spline, but that is a lot of manual tinkering, and what I need is a spline that naturally falls into this shape... Like in my first screenshot.
Style spline does have a control point like that one I need, but since it's a Bezier curve, I get this result:
Which, again, is not what I need, but that's to be expected from a Bezier. It seems that there is a way to make a B-spline with control points outside the curve with a style spline, but unfortunately, it requires a minimum of 2 control points:
As you can see, the curvature is now approximately the same as in the original shape, but the placement of these control points doesn't make a sense compared to the single control point in the Delftship (which, as I said, also uses B-splines).
Can someone shed any light on this issue, please? Am I misunderstanding something essential about these curves? How can I reproduce that B-spline using a single control point in Solidworks?
P.S. I know I can Convert Entities to get these curves from the imported model... But as I said that's not the point, because I want to learn to recreate these curves in order to have a parametric shape.
Thank you in advance
EDIT: I am attaching the imported model in case you want to try this for yourself.
Hi J.R.,
SOLIDWORKS 2019 has a new "generic spline" which looks to have the ability to do either Non-rational splines or rational splines. And when using rational splines, you can control the vertex weighting which changes the shape. So on your style spline with the one control point, right click on it and choose Convert to Spline. Then once it is a spline, use Convert to Generic Spline. Then in the PropertyManager, choose Rational Spline and the vertex weighting option will show up. I find that using a vertex weighting of around 2 gets pretty close to the spline shape you need. I'm guessing the other software uses rational splines with a particular weighting so you may have to check with that software to get the exact weighting amount to match.
See this help topic for info about the generic spline:
2019 SOLIDWORKS Help - Generic Spline PropertyManager
I'm not sure of the full details of this new generic spline as I've just discovered it by playing around. It is a bit strange that you can't convert directly from a Style Spline to a Generic Spline nor can I find a way to create a Generic Spline from scratch; it looks like it can only be created through the convert method.
I hope this helps,
Jim