Fusion API and Scripts
Got a new add-in to share? Need something specialized to be scripted? Ask questions or share what you’ve discovered with the community.
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Ellipse offset (continuation)

Message 1 of 5
366 Views, 4 Replies

Ellipse offset (continuation)

Hi All, the following post is a continuation of a previous post.

When I create an offset of an ellipse on the same sketch the result is not an ellipe but a SketchFilletSpline.

There is a way, with some api, to convert it in an ellipse or a method to accomplish it ?

doubt1 v1.png

Many thanks

Message 2 of 5
in reply to: dinocoglitore

I know it's not obvious, but it's not mathematically possible to create an offset of an ellipse that results in an ellipse.  Let's say you have an ellipse where the major radius is 3 and the minor radius is 2.  If you create a new ellipse (not an offset) that has the same center and a major radius of 4 and a minor radius of 3, the offset between the two ellipses will be 1 at the major and minor axis points, but at other points it won't be 1, so it won't be a constant offset.  The offset command creates a new curve that is a constant offset from the ellipse but to get that the result is a spline.


If you search online you can see that a lot of other people have had the same question.  I like the last posting here because one of the people responding has gone to the trouble of creating a drawing to illustrate what you actually get with two ellipses.


Brian Ekins
Inventor and Fusion 360 API Expert
Mod the Machine blog
Message 3 of 5
in reply to: ekinsb

Hi Brian, thank you for your reply. I have read your answer and I tried to verify what it is written in your link (not because I do not believe in what you say but to better understand if the solution I found can be realizable).


In the first example I create an ellipse with axes of 100 - 50 and then I enlarge it of 5 with offset. The second ellipse is a SketchFilletSpline. Then I create tangents and orthogonals in different points and measured the distance. As you said the measure is different for every points. Only the points along the axis respect the original measure (5).

test_offset_ellissi v5.png



In the second example I create two ellipses concentric: one of 100-50 and the other of 110-60. I repeat the construction and I find just the same measures.


test_ellissi_concentriche v6.png


So what I ask you is: I can take two points on the SketchFilletSpline [for example one Vertex (improperly because it is not an ellipse) and another generic point) and I can recreate an ellipse with that measures with the SketchEllipses.add Method. In this way I can substitute a generic SketchFilletSpline type curve with a SketchEllipse type curve.


That is true ?


Thank you very much for your kindness


Message 4 of 5
in reply to: dinocoglitore


Hi Dino,


Here's an easier test that makes it very clear.  Create an ellipse with known values for the major and minor axes, (say 100 and 50).  Now create another ellipse that has the same center with a value added to the major and minor axes.  For example, the new ellipse will have 20 added to each side so it will be 140 and 90.  This creates an ellipse that is 20 units larger all the way around than the original ellipse.  However, that's not exactly true.  It is 20 units larger along the major and minor axes, but not in between.  In the picture below, I did exactly as described above but I also create an offset curve of 20 units of the original smaller ellipse.  You can see that it's not the same as the larger ellipse but this curve is 20 units larger than the original curve all the way around but it's also a spline because that's what's required to created this shape.







I also did a similar test as your first test and didn't see the same results as you.  When I measure the offset between the original ellipse and the offset curve it is equal all the way around within some tolerance.  Because there isn't a explicit result for the offset of an ellipse it is an approximation.


Brian Ekins
Inventor and Fusion 360 API Expert
Mod the Machine blog
Message 5 of 5
in reply to: ekinsb



Hi Brian, I thank you for the time you spend to reply to my email.

I’m sorry for the past post in which I inadvertently made a mistake.


In the first picture I posted, I effectively make an offset of the inner ellipse but this offset did not create a SketchFilletSpline but another ellipse (?????).


I don’t know why in certain circumstances (that I don’t understand) the offset  operation does not create a SketchFilletSpline but another SketchEllipse.


I tried to verify this statement with another design. I report a screenshot to let you see the output of a simple script I wrote to verify the objectType of the curves selected in the sketch.



The inner curve is created as ellipse. All the others are created with an offset operation. While the intermediate curves are SketchFilletSpline the most external is another SketchEllipse.


Is it maybe connected to the ‘Chain Selection’ control of the offset Command Input ?




When I proposed the post I did not realized that in the first picture the second curve was a  SketchEllipse created by an offset operation.


However you answered to my question: I can approximate a SketchFilletSpline with a SketchEllipse with some tolerance.


I noticed that I cannot constrain a SketchFilletSpline (created by the offset of an ellipse) to be tangent or concentric to the original ellipse. Is it always true ?

This is the main reason why I am trying to substitute the  SketchFilletSpline with a SketchEllipse !


I thank you very much.




Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk DevCon in Munich May 28-29th

Autodesk Design & Make Report