I want to make the below picture into an egg with smooth surface. For the implementation in Mathematica, please, see this thread here. This thread considers mathematical methods to achieve the goal while the last one only in a single program. How can you make the 3D object smooth mathematically?

Mathematica graphics


I don't know how to do it but following methods may help.

  • convolution
  • approximation with lower-degree polynomials such as interpolation and splines
  • Fourier-Transform: remove the high frequencies and then inverse-fourier-transform
  • Convex-hull
  • 2
    $\begingroup$ By convolution do you mean something like the following. You take a 3D ´bump' function $\psi(x,y,z)$ normalized to unit mass, and then for all points $P=(x_0,y_0,z_0)$ check, whether the convolution integral $$T(x_0,y_0,z_0)=\int_{\mathbb{R}^3}\psi(x-x_0,y-y_0,z-z_0)\chi_O(x,y,z) \,dx\,dy\,dz$$ exceeds some threshold to decide, whether the point $P$ is included to the smoothened object. Here $\chi_O$ is the characteristic function of the discretized object. That might make sense in theory, but calculating the convolution integral would be a pain. $\endgroup$ – Jyrki Lahtonen Mar 22 '13 at 14:08
  • $\begingroup$ @JyrkiLahtonen Good question, I haven't thought about this. I know how it is used in 2D case but I haven't yet considered the 3D case -- I just feel it may be possible approach. Feel free to answer if you are an expert on the area -- it takes longer for me to answer, investigating. $\endgroup$ – hhh Mar 22 '13 at 14:23
  • $\begingroup$ How is the "egg" data generated? If it's generated by some formula, then there are various ways to construct an approximation of the function given by this formula. Looking at the character of the formula might help in choosing a suitable approximation technique. $\endgroup$ – bubba Mar 23 '13 at 9:23
  • 1
    $\begingroup$ @JyrkiLahtonen: A better approach might be convolving a two-variable parametrization of the surface with a 2D bump function. The main difficulty with your suggestion is not calculating the integral (which can easily be done numerically), but finding the points where it exceeds your given threshold. For the 3D object in the OP however, it might be a pain to get a parametrization of the surface. $\endgroup$ – Samuel Aug 12 '14 at 16:22

There exists no published method by which you can smooth without losing accuracy. The thing is to be able to avoid the sources of those inaccuracies.

You should be able to recognise those inaccuracies first and then cut sharply like a surgeon.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.