SolidWorks: Spline on Surface

Does anyone have any success using this Spline on Surface tool/feature in SolidWorks?

Its one of the reliable features I miss from my earlier days using the ISDX extension in Pro/E. Instead of imagining what a projected curve will look like on a compound surface, you get to directly shape the curve on the applied surface.

Unfortunately it seems to be one of those features that made it into SolidWorks as part of feature creep, because its highly irregular in behavior and doesn’t form a good basis for modeling.

Shown below is a screen grab of one such SoS, with curvature combs on. Extremely unpredictable. COME ON DASSAULT surprise me for once. :unamused:

i project construction curves onto the surface and then use then as guides to snap my spline to.

Yeah I almost never use splines on a surface in SolidWorks, or the 3D sketches at all really. I just recently got a chance to try it out in Creo and it is much better. If I do need to have a curve on a surface I’ll usually project a 2D curve onto the surface. It the example you showed I’d probably make a plane that gave me the best view of the sketch, usually a plane roughly tangent to the surface in the middle of the shape you’re creating (or offset from that) or possible just the most common/important view. That way I have a decent sense of the final 3D shape in a 2D view. If I am using a spline on a surface I’ll use constraints on almost all the handles, whether it’s to existing geometry of a projected curve like cwatkinson mentioned. If I don’t have a good constraint for a handle I like to leave the points without handles since it’s really hard to manually adjust them, especially since you can adjust them in any direction.

Yes, I agree with this approach in general, and it works for most things. Where this approach tends to break down is if the shape you are trying to create gets radically foreshortened, for instance going around a curved surface up to a zero-degree draft edge, and you want to control the distance to the edge more tightly than via one view. The extra work involved in setting up a plane to draw a close approximation of the desired spline is a PITA as well.

I finally got acceptable results with this SoS, again using as few points as possible and not trying to do too much with one feature.

I honestly think this tool coold go back to the drawing board from the product line manager’s perspective. I am not on their technical committee or anything nor do I have a direct line to the solid works programmers but I put this tool into the unusable category. So now that I throw them under the bus allow me to offer a solution to their programmers.

we will find many work arounds to problems in the software… move a point on shte spline and the entire curve jumps! Not accept table.

So I think an easy solution for the SW team or programmers would be to take out some of the control in the Curve On Surface tool in an attempt to make it more usable. So what make sthe spline tool in unique is the control one gets to use with the internal edit point of the spline. Like Illustrator you have full control over the length of the curvature at those edit points ( alias speak) If you remove this capability I believe the tool would be more usable. I know take out control seams the opposite but it is my opinion and Id’ like to see it tried at least.

In Creo we dont have that extra control like in Illustrator BTW and that’s probably why it’s much better in Creo. I and one other are the instructors that teach both SW and CREO surfacing classes at designengine BTW

Bart - that makes a lot of sense because in a way, a level of control is ‘reliniquished’ by constraining the spline to the surface to begin with, as the acceleration of the spline will be driven more by the points on the surface and the surface geometry itself. Whenever SW sketches ‘jump’ as they do in this feature - usually accompanied by a bunch of red warnings - its frustrating and makes me question what the programmers are trying to communicate or accomplish.

So I have never done surfacing in any other program than SolidWorks but I don’t understand how this is not accurate.

If you place a spline on a double curvature surface, of course it will have the curvature combs going in every direction. If you want it fixed in one view/angle/plane, then draw the spline on a plane in that view/angle and project the curve onto the surface, now you will have complete flat curvature combs relative to your plane.

If you still insist on drawing the spline on the surface, then from the same plane/view, the 3D curvature comb will be as the 2D curvature comb projected on the plane/view.
(Need to verify this, I don’t have SW available right now).

If you want to modify a point without moving the others, you will need to add a point in between, how else is the math going to be correct? This would be similar to a higher degree curvature in other programs? Try an other spline type, Bezier-spline vs (NUR)B-spline if it suits your control better.

There isn’t a way to see a 3D curvature comb on a projected curve. There simply isn’t an option to turn it on. Maybe I just can’t find it.

Adding points in the spline-on-surface command seems to overwhelm the spline and make it nearly impossible to control.

The only spline style allowed in the spline-on-surface command is the regular edit-points spline, not the “style spline” with external handles. You can however turn on the control polygon.

I agree for 90% of the situations where you need to apply a line to a surface, that a projected curve will work. However the two drawbacks that I can see are 1) indirect and therefore less efficient application of the spline, meaning you can’t immediately see what the effect of the surface will be on the spline…and 2) the projected curve method does get unpredictable/uncontrollable when working on surfaces that roll away from the sketching plane.

@JEriksson: So not going to say that the way your understanding it is incorrect, maybe I’ll just add that you might consider a different point of view…

If the spline was not attached to anything just in it’s own 3D space then yes what you’ve described is a little more applicable. When it comes to the spline being specifically ON the surface then that goes completely out the window for this simple fact, the math of the curvature combs are showing, most importantly, the normals… So what should be happening is that the curvature comb goes normal to that surface. Now this adds an interesting meta to this whole discussion which is…does a 3D spline “twist”? We understand that the X and Y translates to mainly smoothness, transition, inflections, and convex/concave. So is a 3D spline “twisting” start to make a difference in the surface it produces? (i.e. think of a rope in much the same way and how it not only twist on itself but can then also twist in space.

If you’ve ever used the “Ruled Surface” command in SW, there’s an option here that makes it behave like a sweep and a direction vector needs to be chosen. Seems like there may be some room for this to happen with the SOS…

My guess would be ‘no’, in that twisting is a characteristic of a three-dimensional object, like a rope, and a spline at any given point along its length is just a ‘point’. But gosh, what a mind bender.

It kinda seems like the splines DO twist. I may be interpreting this wrong, but I made a quick model with a spline on a curved surface and the curvature combs did not lay on the surface but instead seemed to twist in 3D space. Below are three screenshots, one was without adjusting any handles at all, then the second are two views of the same thing after I adjusted the handles. It may be hard to see but one set of handles is actually close to normal to the surface while the other is sort of halfway between normal and tangent. At the inflection points in the curve instead of seeing the curvature pass through zero as it switches sides it does get small but then flips over the line in a twisting motion without ever going to zero. I then tried sweeping a line along this curve though, and the direction of the curvature combs didn’t seem to affect the orientation of the sweep.

I’m not sure what to make of this, except that I think Design-Engine is right in that the user is perhaps allowed too much control. Why not constrain the handles to tangent to the surface?

Here is some reading: Curvature - Wikipedia
But basically the twisted curvature we see is the normal of the smallest fitted sphere rolled around a point on the 3D-spline. The normal is intersecting the point of the spline and the center of the sphere. The size of the comb is the inverse of the radius with a scale/ratio and is translated on the opposite side of the spline.
So: Yes, the curvature is twisting.

This is also quite interesting: Curvature - Wikipedia
Even if the start and end point of a spline is the same, they might have different curvature. Don’t know if it is applicable to our surfaces and splines.

It is my hunch that there is too much control with this curve on surface tool. Since I am not a programmer it may be difficult to explain but it is my belief that this tool is likely un-usable because it gives users control over length at internal edit points at each edit point as well as control on it’s end points. Basically the tool is too complicated and any small edit pushes the spline un controllable.

I don’t have a contact at SW but if I did I would suggest to their product line manager to to their programmers to consider removing some of the control over that specific curve tool… take this bezier curve control with the internal edit points then I believe the tool to be much more usable.