New member

Hello, all. I'm new here.

I made a tool script "LaplacianSmooth.js" which produces smoothing of selected polygons. A typical usage is that:
  1. Select vertices, edges, faces or a polygon object,
  2. Run this script,
  3. Press OK button.
Have a fun!

Best regards.

I'm sorry that I may not give enough support for the script because of my poor English skill.

View attachment

frank beckmann

Well-known member
Hi and Welcome!
This is absolutely amazing - what a great addition. I´ll definitely have to find a hotkey (and a part in my brain) for this. :icon_thumbup: :icon_thumbup:
What a great first posting.
Thanks for sharing.



Well-known member
Oh this is nice hiro-ichi!
There are a lot of times I would like only part of an object to be smoothed.
Thank you so much!

My Best

BTW Your English is better than 80% of Americans and I include myself in that 80%
Wish I could learn another language than English. I have tried German, French and Spanish.
It is very difficult for me. What makes it even more difficult is being isolated from other people speaking those languages.
There is no way to practice and continue to use it to keep it in ones mind.
Last edited:


New member
Thanks for comments!

Thanks for comments. I wish that it will help your works in Cheetah 3D!

Additional information about option parameters:

The script has two algorithms; "uniform weight" and "1/(edge length) weight". They can produce slightly different smoothing results.


As shown blue lines, smoothing result with the "1/(edge length) weight" remains original edge length more than the "uniform weight". On the other hand, a shape of the "uniform weight" gets much more natural smoothing. (see green lines.)

"lambda" and "kPB" are a calculation step size and a volume preservation parameter, respectively. They should not be changed while the script works correctly. But if something strange result appears, please try to decrease them.


frank beckmann

Well-known member
Thanks again.
The ability to reconstruct crumbled meshes is stunning:



  • LaplacianSmooth.jpeg
    32.7 KB · Views: 581


Well-known member
@hiro-ichi: This script is so very useful! What a great script! :icon_thumbup: :icon_thumbup: :icon_thumbup: :icon_thumbup: :icon_thumbup:


Active member
@hiro-ichi, would it be possible to implement an option to isolate smooth on a selected plane ... XZ, XY, ZY ?

Thanks for a great script.
The range of things I can model expanded considerably once I started using this script! For me, it was the "missing link" in being able to modify a mesh without needing to further subdivide in order to smooth out all the edges my tweaking left behind! (The "Smooth" modifier always smooths my meshes out to nothing, even w/ only 1 iteration, and the Smooth Brush isn't precise or uniform enough). THANK YOU so much for the script!!