USER FORUM
(you are viewing a thread; or go back to list of threads)
Ellipse? (by Andrew McIntyre)
Apologies if this has been asked before. Is it possible to draw a 2D ellipse in SolveSpace?
(no subject) (by Jonathan Westhues)
There's no ellipse entity. You can approximate one closely with a spline, of course. (Maybe there should be a generalized conic section entity, like for the optics people or something?)
(no subject) (by whitequark)
@Jonathan, maybe! Just today I was considering a need to do some pipe miter joints, which that ought to help with...
(no subject) (by Jonathan Westhues)
What kind of miter joints? You can't sketch an ellipse, but you do end up with one (exactly) when a Boolean cuts a cylinder with an angled plane.
(no subject) (by whitequark)
A T-junction. Currently you need two cuts, to make a hole in the longer section and a cutout in the shorter, and a fair amount of construction. It is especially painful because of how slow and fragile around lathe groups the geometric kernel is.
(no subject) (by EvilSpirit)
Ellipse isn't a problem if very want to have it. But there is no point in general conics. Istead, we have to make entity with arbitrary formulas: pos = ExprVector(x(t), y(t), z(t)). We need to approx it with Beziers. Then we get ability to build all kinds of parametric features: parabolic anthenna, aspherical lens and so on.
Seconded (by Samuel)
I wanted to use solvespace for a scientific project, but the lack of ellipses is a show stopper. I would be delighted if exact ellipses (and possibly other conics) were in the cards for future versions.
(no subject) (by Paul)
I once made a chess set out of CSG conics. They are very useful. I had a primitive where you specify 3 points, fit a conic through them and revolve it. It was in a ray tracer that supported arbitrary CSG with conics and other things. I still have the code, but perhaps not the chess game. My point is conics can be really useful - all of them, not just ellipses. Splines are probably better though for everything except when an actual conic is required.
(no subject) (by whitequark)
@Samuel, what sort of project is that?
(no subject) (by EvilSpirit)
Actually if we add w to free parameters for splines, we get all kinds of rational curves including conics. But actually I don't know local way of constraining w for getting circular, elliptic and other nurbs layout
(no subject) (by EvilSpirit)
*logical way
(no subject) (by Paul)
I believe if you take a 1/4 circle represented as a NURBS you can simply stretch it to a 1/4 ellipse by stretching the control points farther apart on one axis. The weights do not need to change. Affine transformations can be applied to NURBS by direct application to the control point locations.
(no subject) (by EvilSpirit)
Actually there is no problem to make two new entities: ellipse and elliptic arc with correspondent constraints
(no subject) (by Nithin)
Having seperate ellipse entities is advantageous. Derivatives such as its center point or focii may be of use later in modelling. If we do it using arbitrary formulas: pos = ExprVector(x(t), y(t), z(t)). We might need further functions such as medial axis transform to obtain these derivatives.
Ellipse? (by P Dii)
I used a spline, though I am not sure it is accurate.
However, I do think an ellipse is actually more important than a circle as with 2 diameters I can create a circle.
Would it be easier to be able to make trace lines "real" lines (the same way as construction lines) then we could contsruct curves using the trace engine.
However, I do think an ellipse is actually more important than a circle as with 2 diameters I can create a circle.
Would it be easier to be able to make trace lines "real" lines (the same way as construction lines) then we could contsruct curves using the trace engine.
(no subject) (by whitequark)
> Would it be easier to be able to make trace lines "real" lines (the same way as construction lines) then we could contsruct curves using the trace engine.
No. Trace lines are piecewise linear, entities are exact.
No. Trace lines are piecewise linear, entities are exact.
Post a reply to this comment: