Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.
First time visiting? Here are some places to start:- Looking for a certain topic? Check out the categories filter or use Search (upper right).
- Need support? Ask a question to our Community Support category.
- Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
- Be respectful, on topic and if you see a problem, Flag it.
If you would like to contact our Community Manager personally, feel free to send a private message or an email.
Why do people fear splines?
billy2
Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,068 PRO
Comments
You're one of the guys I'm looking for. Linear spline interpolation creates a ton of g-code and in the early days, machinist would complain because the code couldn't fit onto a floppy disk and they couldn't carry it to their machine's controller. Now days most machines are hooked up to a computer and the g-code can trickle to it's controller. I haven't heard this complaint for a while.
Linear interpolation created horrible looking parts. We ended up hand sanding & polishing each part to remove the chatter marks.
Linear spline interpolation:
More modern solutions use circle interpolation:
This is a better solution, but isn't perfect because it's an approximation. SpaceClaim does a good job at circle interpolation and my water jet guy's controller uses SpaceClaim. The parts I get from him are nice.
Getting on top and machining these surfaces, the left one is an extruded arc and the right one is an extruded spline, requires $10,000 grand worth of 3 axis simultaneous cutting. Both are done the same way so splines don't matter here.
Surface machining:
_dave_ is right, if you have a bunch of old machines, you may want to stay away from splines. I don't have this problem, my machinist haven't complain for years, maybe they're more modern.
I figured a machinist would pipe up about hating splines, but this doesn't account for the majority. There's another group of people that I believe are responsible for giving splines a bad reputation.
I do CNC in a home shop and my machines are run from a customized version of LinuxCNC so the usable size of a program is limited by disk capacity. The largest program I've ever run was about 4 GB.
After few years new machines had something called EGA which could produce roundings between two lines so that line points remain parametric, that was awesome. From around '95 I haven't needed separate cad for creating cnc programs just built-in editors which do the job very fast and parametric design with variables is very easy. In my opinion, not that much good things have been added to woodworking cnc after millenium when they all got pc with windows to remove the storage space problem.
My first actual course for cad was solid edge in engineering school around millennium. So basically I have jumped straight to 3D with my 'cad career'.
https://youtu.be/tICv1-XoPLY
It could have been blocked it out, but why not make it look good. I guess I'm into good looking L-brackets.
michael3424 it sounds like you may be using too many nodes. Common mistake. 4G tool path, what were you milling?
Mapping a gear's involute to a spline, you're a brave man. I wouldn't do that. How many nodes did you compute and use? I'd think you could get closer than .25mm.
Do you have any pictures/images?
Bull gear (the big one) required a crane to install.
These are just pretty teeth and we let the gear maker cut the proper tooth profile. In the end, if you attached a post'm note to a gear tooth face, the drive train would bind. We were holding .05mm max.
batista- absolutely, don't use a spline for a gear involute
You could update Brett's parametric gear model and add a spline definition (5 nodes) for the the involute.
Nice parametric model Brett.
Check this out, Bradley already did it, An involute made with an 8 node spline.
At least I think it's a spline. I wish OS would tell me the entity type selected.
batista sounds like you know gear hobbing. What noise would this profile make if you cut this? Would this gear break in or would it whine for it's whole life?
Using splines tip#1
Below I map a spline on a lamborghini by using 5 nodes. This is a horrible use of splines.
-this is totally uncontrollable
-requires a massive amount of math & cpu resources
-will destroy any downstream surfacing
Use those spline handles. This is so much better.
-this is totally controllable
-requires far less cpu resources
-is the gateway to surfacing
99% of my splines are 2 node splines. Hopefully people will grasp this concept because this is the beginning step for learning splines and surfacing.
https://youtu.be/4QRY8ZsQsBY
I'm surprised at how well that 2 node spline worked and will have to try that somewhere. Thanks for the example - it has a lot more impact in a graphic!
Thanks for this lesson. I have never thought about simple (like your 5 node example) splines requiring a lot from cpu.
Actually, I haven't ever really thought about what spline is. I suppose in that Lambo example you changed the angle of first point tangent to make it go up faster and spline calculates tangentual curves to fill the requirements of each points 'control line'? (Sorry my english doesn't support terminology that good)
Twitter: @onshapetricks & @babart1977
The gas tank is one, the seat is another spline? Not sure I'd combine the 2.
Twitter: @onshapetricks & @babart1977
Exactly!
Recently I needed to replace the corroded cast aluminium housing on my cutoff saw coolant pump. I reverse engineered the housing with Solidworks and changed the material to PVC. This discharge shute needed to be an involute shape, so I created it with a simple spline.
As a training exercise today, I recreated the same impeller housing in Onshape to test whether I could achieve the same result. Worked fine.
Here is my effort: https://cad.onshape.com/documents/aa6005371ec542819270e154/w/d65d77f45ade4873a6981d48/e/72afd249c670409694363410
For those interested a YouTube video of how I made the replacement housing can be found here: https://www.youtube.com/watch?v=BZV0OO0_7cU
B-Splines --> very easy to abuse and create crap surfaces
Bézier curves --> promote good curve and surfacing practices.
Since the introduction of the 'Style Spline' (Bézier) in SOLIDWORKS, I hardly ever use the classic B-Spline anymore. I still used it for non critical stuff like cosmetic swoopy cables etc.
Dries
www.keyshot.com
Dries
www.keyshot.com
Team Member
Onshape, Inc.
Dries
www.keyshot.com
Dries, do you notice any slow down in regens when building with higher order curves? I can't say I notice any difference, but I haven't been looking for performance, I tend to keep things simple just as a rule of thumb. 5 degrees = 6 inflections. When you're trying to map a spline do you count the inflections to determine spline order? When do you use 2 splines vs. a higher order? Not sure a have a set pattern, I don't think that's a fair question.
Bruce, when I do organic shapes, I'll use the intersection of 2 surfaces to create a curve for the actual surface that I want. This is why I prefer a parametric system when surface modeling, this allows you to manipulate foundation curves that update to the final curve driving a surface. To me keeping things clean & simple allows for robust designs that compound in complexity as the model grows. 1 bad spline definition in the beginning propagates these errors all the way through the project.
I had a customer who used scanned data and created a spline with 150 nodes. 6 months later and hundreds of features later, SW would crash constantly. I had to explain to him that 1 curve turned into a surface which turned into a solid and in the end the project was garbage. I spent an hour trying to re-route the crappy spline into a cleaner spline, but I couldn't get it to take without rebuilding his whole project. 2 days worth of work easily, I showed him how and let him do it. Watch out for scanned data and producing splines.
I wish SW would show this crap, most surface modelers base the uv surface representation based on nodes vs. a percentage. The uv curve creation in SW is useless for determine how tightly wound a surface is defined. You have to look at the curves to see how poorly the surface was constructed in SW. It'd be nice to have a button that would show how crappy surfaces were defined without having go through every sketch.
My intent with this thread wasn't to discuss surfacing, but I guess splines are a natural lead-in to surfacing. I will say this, if you don't know splines, you'll never get surfacing. A quick tally of the responses on this thread are 50/50 with one who totally detests splines. I guess I'm trying get people to accept splines as a legitimate sketch tool.
This weekend I'll create the geometry that I saw that prompted me to create this thread. I still don't believe people are comfortable with splines (except for Dries who's a master).