Hi,
What is exactly the interpolation algorithms Solidworks use?
I think it is a very important question in understanding how swept and loft constructs, among many others, are constructed.
For example, if we sweep a circle or ellipse along a path without guide curve, the mathematics is simple no matter which of {Follow path, Keep normal constant} we chose.
The resultant shape would actually have a constant profile but differ only in the orientation of the profile betwee the options:
And in the these cases there is no need to consider "interpolation".
But when "guide curve" comes into play, one MUST consider how interpolation is made. If the profile is an ellipse and we have only one guide curve, it is still easy to understand how the intermediate profiles are interpolated: SW can simply scale the original profile at each point along the path to a value so that it would touch the single guide curve, as in:
And we don't see much twist here, or perhaps there is just no twist.
However when there are ≥ 2 guide curves, the interpolation is no longer straightforwrd, and in most cases twist is necessary in order for the profile to touch both (or even more) guide curves as well as keeping the outer surface continuous. I in fact figure that there could be more than one way to define how the interpolation algorithm would work. An example is as below:
and here we clearly see the twist of the original ellipse shape.
I actually the choice on how interpolations would be made, among the variety of possible definitions, is dictated by implementation ease, visual perception and other factors. I don't know if Solidworks regards these information as proprietary and whether they could disclose it or not. For (1) Follow path (2) Keep normal constant, they have already givent that in Orientation/Twist Control Option. For
(3) Follow path and 1st guide curve
(4) Follow 1st and 2nd guide curves
The explanation says:
Select Follow path and 1st guide curve and the twist of the intermediate sections is determined by the vector from the path to the first guide curve. The angle between the horizontal plane and the vector remains constant in the sketch planes of all of the intermediate sections.
Select Follow 1st and 2nd guide curves and the twist of the intermediate section is determined by the vector from the first to the second guide curve. The angle between the horizontal plane and the vector remains constant in the sketch planes of all of the intermediate sections.
How is "vector" defined? For path and 1st guide curve, they are not like to parallel straight lines, so how does SW define the points where the starts and ends, along the full path? The same question extends to "vector from the first to the second guide curve".
And what is the "horizontal plane"? It isn't the same as sketch plane, is it?
Qi
SolidworksParts And Features