3DLDF currently provides a set of basic plane and solid geometrical figures. However, some important ones are still missing. There are many useful geometrical data types and functions whose implementation would require no more than elementary geometry.

- Add constructors with a normal vector argument rather than angles of rotation about the main axes.
- I have started defining
`class Triangle`

, which can be used for calculating triangle solutions. - Add a class
`Conic_Section`

and derive`Ellipse`

from it. This will be the first case of multiple inheritance^{1}in 3DLDF, since`Ellipse`

is already derived from`Path`

. See Ellipse Reference. Add the classes`Parabola`

and`Hyperbola`

. - Add more functions for finding the intersections of objects of various
types, starting with the plane figures.
In particular, I believe I've found an algebraic solution for
the intersection of an
`Ellipse`

and a`Circle`

in a plane, but I haven't had a chance to try implementing it yet.If this works, I think it will make it possible to find the intersection of two coplanar ellipses algebraically, because it will be possible to transform them both such that one of them becomes circular.

- Class
`Octahedron`

will complete the set of regular Platonic polyhedra. - Add classes for the Kepler-Poinsot polyhedra, the semi-regular
Archimedean polyhedra, the dual solids, the stellated Archimedean
polyhedra, and the regular compounds.
^{2} - Add class
`Ellipsoid`

and a derived class`Sphere`

. - Improve the specification of
`Solid`

and`Solid_Faced`

. In particular, it would help to store the vertices of`Polyhedra`

as individual`Points`

, rather than using`Reg_Polygons`

. I'd also like to find a better way of generating`Solids`

, without using rotations, if possible.