Ellipse arc is wrong when symmetric startend points are provided
Consider this example:
R1 = 1.0;
R2 = 2.0;
Point(1) = { 0.0, 0.0, 0.0 };
Point(2) = { R1 * Cos(0), R2 * Sin(0), 0.0 };
Point(3) = { R1 * Cos(Pi/2), R2 * Sin(Pi/2), 0.0 };
Point(4) = { R1 * Cos(Pi), R2 * Sin(Pi), 0.0 };
Point(6) = { R1 * Cos(Pi/6), R2 * Sin(Pi/6), 0.0 };
Point(7) = { R1 * Cos(5*Pi/6), R2 * Sin(5*Pi/6), 0.0 };
Ellipse(1) = { 2, 1, 3, 7 }; // Ok
Ellipse(2) = { 6, 1, 3, 7 }; // Wrong
Ellipse 2 is wrong. It is worth noticing that a Circle arc under the same conditions works fine:
R = 1.0;
Point(1) = { 0.0, 0.0, 0.0 };
Point(2) = { R * Cos(Pi/6), R * Sin(Pi/6), 0.0 };
Point(3) = { R * Cos(5*Pi/6), R * Sin(5*Pi/6), 0.0 };
Circle(1) = { 2, 1, 3 };
A workaround is to draw the ellipse in two pieces:
Ellipse(4) = { 6, 1, 3, 3 };
Ellipse(5) = { 3, 1, 3, 7 };

Owner
Yes, this is a known limitation of the internal CAD description of circles and ellipses.
Basically, only angles < Pi are supported.
Leaving open, although it will probably not be fixed until the transition to an actual CAD kernel is fully completed.

Owner
Thanks.
I'm aware of the limitation on angles < Pi, but in this case I was expecting an ellipse arc of angle 2/3*Pi (the other piece of the full ellipse).
Notice that the circle works well. And looking at the source code (Geo.cpp I think) circles and ellipses are handled in the same block, so it is strange.

removed assignee
Toggle commit list
Please
register
or
sign in
to comment