I was just focussing on providing some basic shapes for the viz part. there are several geometries which I am ommitting from the Shape subclass. Also although we can consider cone as a three.js cylinder, with one diameter close to zero. But since we are extending the symbolics module(SymPy), wont it would be good on the symbolic viewpoint, to have cone and cylinder differently ?
I am not sure whether this part would be commited to the SymPy later on. But I am assuming that we would want to commit as much as it is acceptable to SymPy, to reside inside SymPy code only, alongwith the rest of mechanics package.