Discussion:
Revolve 3D curve?
(too old to reply)
MHill
2005-07-21 16:46:00 UTC
Permalink
I have a turbocharger compressor wheel that I am trying to reverse
engineer. Using my CMM, I have generated a 3D curve, representing the edge
of one of the blades. I need to figure out the 2D profile that was used to
turn this shape on a lathe.

I thought I'd be able to revolve the curve around my center axis and then
intersect it with a plane. I find that I can not revolve a 3D sketch.

Ultimately, I am trying to define the bore that this wheel would operate
in. I do not have access to any 2D or 3D data for that part at this time.

Has anyone tried something like this?


MHill
TOP
2005-07-21 17:51:01 UTC
Permalink
Can you sweep it around an arc as a surface?
Can you project it onto a plane and revolve it?
MHill
2005-07-21 20:24:36 UTC
Permalink
Post by TOP
Can you sweep it around an arc as a surface?
Can you project it onto a plane and revolve it?
That did the job. I didn't think to try that when the revolve failed. I
aldready had all the geometry I needed to make this work, I just had to
click in the right places.

Thanks.
b***@swiftdsl.com.au
2005-07-22 00:42:21 UTC
Permalink
Hi,

I think the methods described are not giving the accurate result.
Instead you neeed to make a swept surface this way (replacing a
rotation with a sweep):
The path curve is the axis of rotation.
The guide curve is the 3D curve itself.
The profile to be swept is an arc with a point on it constrained
"pierce" to the 3D curve, and the centre of the arc is to the axis.
Every other method is a fake, and not giving accurate results. I've
used the above mentioned method and it works.

Otherwise I can send you a file illustrating this if you provide your
email address.

Hopefully in the future SW and co. introduces sweeps using not only
sketch profiles but solids (for example it is useful for simulating
material removal of cutting tools of NC machines, etc).

Regards
Attila
TOP
2005-07-23 03:00:52 UTC
Permalink
I compared your method to just sweeping the 3D curve on an arc and the
results seem to be the same with the difference being that the simpler
sweep gives a copy of the 3D curve at the end of the surface. The
three sketch method ends up with what appears to be identical surfaces
to the sweep on an arc but does so with some funky artifacts in the
case I tried.

Do you have a case where the three step method gets a different result
to the two step?
Andrew Troup
2005-07-23 10:45:36 UTC
Permalink
My take on this:

Your "two step method" is probably going to work better if you want to
simulate a revolution through less than 360 degrees. The start and end
boundaries of the surface will be defined by the 3D curve and its transform,
and one of the other boundaries is defined by the arc of the path.

The "three step method" is better for the circular case. There's much less
computation, and a purer surface should result, because the path is a
straight line, the closed sweep profile avoids the software having to work
out how to close or twist the sweep, and the sweep profile is a
geometrically primitive circle rather than a complex algorithmic 3D spline
(which can only be numerically approximated).

Regards

Andrew Troup
Post by TOP
I compared your method to just sweeping the 3D curve on an arc and the
results seem to be the same with the difference being that the simpler
sweep gives a copy of the 3D curve at the end of the surface. The
three sketch method ends up with what appears to be identical surfaces
to the sweep on an arc but does so with some funky artifacts in the
case I tried.
Do you have a case where the three step method gets a different result
to the two step?
TOP
2005-07-23 12:02:24 UTC
Permalink
That is an interesting analysis. However, I tried it and started
changing the 3D spline. At some point the two surfaces started to
diverge as evidenced by the rendering tesselations becoming smooth on
certain portions of the surfaces. I then added a number of points to
the 3D curve. Not spline points, just points. Then I used the measure
tool to measure the distance from the points to the surfaces. I
couldn't find a point of divergence to 8 places for the two step, but
the 3 step showed divergence in some cases for the full circle as well
as not capturing the full 3D curve. If the 3D curved back on itself in
the 3 step method the sweep along a straight axis will not "back up"
and go the end of the 3D curve.

Models available on request in 2005 versions.
Andrew Troup
2005-07-24 02:38:03 UTC
Permalink
Paul, Thanks for that, thought provoking as always.

The "backing up" limitation is interesting, and understandable. In the
particular case of the impeller edge which set off this line of enquiry, I
guess it's not an issue, but it's good to know that the "two sketch" sweep
surmounts this, as it should. There's no way the three sketch method should
be able to cope, given how a sweep with guide curves works, "under the
hood".

Turning though to your quality check, my understanding is that you measured
how the (quasi) "surface of revolution" conforms LOCALLY to its source
spline.
Hardly surprising, for the "2 sketch" sweep, that it conforms exactly. That
spline, being the starting profile for the sweep, forms a boundary of the
surface. Surfaces *have* to conform exactly to boundaries.

Presumably what MHill is seeking to to do is "rotate" the spline, then
extract an "in-axis" profile as a tool path, so deviations in the accuracy
of the rotation would matter.
It matters therefore whether the local conformation you verified is carried
to all other points around the periphery: in other words, are infinitely
thin slices exactly circular and exactly concentric? If they are, to eight
decimals, I take my hat off to the geometers and codesmiths. (In all
humbleness, I probably should then eat it).

It's not surprising to me that the "3 sketch" method demonstrates the local
divergence you describe (I presume it's confined to the last few decimal
places?) because it relies on calculating the distance from an analytical
straight line to an algorithmic element, and then using that distance to
vary the diameter of an analytical circle. My understanding is that whenever
analytical elements are driven by algorithmic ones, there is an inevitable
mismatch of this order. However, I would expect that divergence would not be
compounded elsewhere around the surface, in other words, the surface would
be a perfect surface of revolution.

Re this query, it seems to me that conformity to the source data becomes
academic once it passes beneath the accuracy horizon of the CMM, or you
could even meaningfully relax it to that of the NC lathe (maybe 4
decimals?), whereas much higher levels of accuracy are relevant to whether a
surface will continue to behave with decorum under future indignities--
trim, extend, patch, intersection curve, translate to different platforms,
and such. My interest, right or wrong, was directed to the quality of the
surface as a whole, and to a lesser extent the computational overhead.

Andrew Troup
Post by TOP
That is an interesting analysis. However, I tried it and started
changing the 3D spline. At some point the two surfaces started to
diverge as evidenced by the rendering tesselations becoming smooth on
certain portions of the surfaces. I then added a number of points to
the 3D curve. Not spline points, just points. Then I used the measure
tool to measure the distance from the points to the surfaces. I
couldn't find a point of divergence to 8 places for the two step, but
the 3 step showed divergence in some cases for the full circle as well
as not capturing the full 3D curve. If the 3D curved back on itself in
the 3 step method the sweep along a straight axis will not "back up"
and go the end of the 3D curve.
Models available on request in 2005 versions.
Dale Dunn
2005-07-21 17:54:48 UTC
Permalink
I can't think of a way to do that.

If you have the curve points in an appropriate format, you could import
them into Excel, convert the cartesian coordinates to cylindrical, discard
the angle coordinate, then import back into SW using curve through free
points.
Muggs
2005-07-21 20:14:15 UTC
Permalink
Hi M,

In a sketch, just Convert edge and pick your 3D curve, making sure your
plane is coincident with the axis of rotation, and rotate that converted
edge.

HTH,
Muggs
Post by MHill
I have a turbocharger compressor wheel that I am trying to reverse
engineer. Using my CMM, I have generated a 3D curve, representing the edge
of one of the blades. I need to figure out the 2D profile that was used to
turn this shape on a lathe.
I thought I'd be able to revolve the curve around my center axis and then
intersect it with a plane. I find that I can not revolve a 3D sketch.
Ultimately, I am trying to define the bore that this wheel would operate
in. I do not have access to any 2D or 3D data for that part at this time.
Has anyone tried something like this?
MHill
Andrew Troup
2005-07-22 00:26:21 UTC
Permalink
Muggs, MHill

Projecting a 3D sketch to a 2D plane and revolving does NOT give an accurate
result

Imagine a simplified case: revolving a single point to produce a circle.

Imagine opening a new model, and creating a vertical axis through the
origin. Create two points, one lying on one of the vertical construction
planes, and one lying on a plane which has been offset (parallel) from the
first plane. Imagine the second point projects coincident onto the first.

When you revolve the two points about the axis, you will get two different
circles. For very small offsets, the difference may not be noticeable, and
the same will be true for a 3D sketch which almost lies on a single plane
through the axis.

------

Assuming the 3D curve extends up and down, a safe way to simultate
"revolving" it would be to create a horizontal circle at the top endpoint of
the curve, representing the revolution of that point around the (say
vertical) axis. Now sweep that circle vertically downwards, with the
centerpoint travelling along the vertical axis as a path, and using the 3D
sketch as a guide curve to vary the diameter.

The radius of the circle will need to be defined, within the circle sketch,
by piercing a sketch point to the 3D curve, and making the under-defined
circular periphery coincident with that point. Might have to use selection
filter when picking the sketch point to ensure the curve endpoint is not
accidentally picked instead.

Haven't time to test-drive this just now for a 3D curve (works fine with an
off-axis 2D sketch), good luck to anyone who does.
Post by Muggs
Hi M,
In a sketch, just Convert edge and pick your 3D curve, making sure your
plane is coincident with the axis of rotation, and rotate that converted
edge.
HTH,
Muggs
Post by MHill
I have a turbocharger compressor wheel that I am trying to reverse
engineer. Using my CMM, I have generated a 3D curve, representing the edge
of one of the blades. I need to figure out the 2D profile that was used to
turn this shape on a lathe.
I thought I'd be able to revolve the curve around my center axis and then
intersect it with a plane. I find that I can not revolve a 3D sketch.
Ultimately, I am trying to define the bore that this wheel would operate
in. I do not have access to any 2D or 3D data for that part at this time.
Has anyone tried something like this?
MHill
Muggs
2005-07-22 13:07:59 UTC
Permalink
Thanks Andrew,

You are correct of course. I didn't think it all the way through!
I'm surprised to find that you (or I) can't revolve a 3D sketch or a
projected curve.

Muggs
Post by Andrew Troup
Muggs, MHill
Projecting a 3D sketch to a 2D plane and revolving does NOT give an accurate
result
Imagine a simplified case: revolving a single point to produce a circle.
Imagine opening a new model, and creating a vertical axis through the
origin. Create two points, one lying on one of the vertical construction
planes, and one lying on a plane which has been offset (parallel) from the
first plane. Imagine the second point projects coincident onto the first.
When you revolve the two points about the axis, you will get two different
circles. For very small offsets, the difference may not be noticeable, and
the same will be true for a 3D sketch which almost lies on a single plane
through the axis.
------
Assuming the 3D curve extends up and down, a safe way to simultate
"revolving" it would be to create a horizontal circle at the top endpoint of
the curve, representing the revolution of that point around the (say
vertical) axis. Now sweep that circle vertically downwards, with the
centerpoint travelling along the vertical axis as a path, and using the 3D
sketch as a guide curve to vary the diameter.
The radius of the circle will need to be defined, within the circle sketch,
by piercing a sketch point to the 3D curve, and making the under-defined
circular periphery coincident with that point. Might have to use selection
filter when picking the sketch point to ensure the curve endpoint is not
accidentally picked instead.
Haven't time to test-drive this just now for a 3D curve (works fine with an
off-axis 2D sketch), good luck to anyone who does.
Post by Muggs
Hi M,
In a sketch, just Convert edge and pick your 3D curve, making sure your
plane is coincident with the axis of rotation, and rotate that converted
edge.
HTH,
Muggs
Post by MHill
I have a turbocharger compressor wheel that I am trying to reverse
engineer. Using my CMM, I have generated a 3D curve, representing the edge
of one of the blades. I need to figure out the 2D profile that was
used
to
turn this shape on a lathe.
I thought I'd be able to revolve the curve around my center axis and
then
Post by Muggs
Post by MHill
intersect it with a plane. I find that I can not revolve a 3D sketch.
Ultimately, I am trying to define the bore that this wheel would operate
in. I do not have access to any 2D or 3D data for that part at this
time.
Post by Muggs
Post by MHill
Has anyone tried something like this?
MHill
Loading...