Triangle Mesh Fill Script for Bezier Curves

Hi Blenderers,

I’ve been struggeling around (still learning) for a while with this great program ‘Blender’ and decided to say ‘hi’ to the community :D.
I wrote a short script which is possible to fill up a closed bezier-curve with nice triangles, so I thought it might be useful for one or two of you.

This script needs the external freeware program ‘Triangle’ to be installed, which you can find on http://www.cs.cmu.edu/~quake/triangle.html

A precompiled Windows-version of ‘Triangle’ you can download from http://home.arcor.de/kamebaukun/Data/triangle.exe
Additionally you need the cygwin-file http://home.arcor.de/kamebaukun/Data/cygwin1.dll

Simply copy these two files to a new directory (e.g. ‘C:\Programme\Triangle’) to use the power of this very nice tool.

The python script you can download from here:
http://home.arcor.de/kamebaukun/Data/TriangleMeshFill.py

In the python file you have to edit the first lines containing the path of the Triangle-Program file and the path and name of a temporary-file for transfer of data to the Triangle-program … not very user friendly, I know! … maybe different in a later version ;).

Additionally here is a short tutorial of this script:
http://home.arcor.de/kamebaukun/Data/TriangleMeshFillDoc.pdf
-> Sorry, there was a problem with reading the first page of this ‘pdf’ in browser window!
Please download the ‘pdf’-file and open it manually with the Acrobat-Reader. This works.

Just for a first impression, what the script (and ‘Triangle’!) can do here are some screenshots:

http://home.arcor.de/kamebaukun/Data/CurveBefore.jpg
2D bezier curves (outer border and holes … all three separate objects!)

http://home.arcor.de/kamebaukun/Data/CurveBefore2.jpg
Subdivide each curve serveral times (e.g. three times)

http://home.arcor.de/kamebaukun/Data/CurveBefore3.jpg
Activate script and select border and holes (3 curve objects), mark holes

http://home.arcor.de/kamebaukun/Data/CurveAfter.jpg
Press ‘Triangulate’ … and that’s it.

Hope it helps building some nice meshes :).

Cheers!

Cool. Now we can make good terrain.

Cool, now I won’t have to shy away from using curves to model mesh so much.

This actually works pretty good.

I tried it and it works for shapes without holes. I can’t seem to get it to work for shapes with holes, though. It just outputs some unconnected vertices whenever I assign a hole to the curve…

Hi grafix,

did you create single bezier-curve objects for each hole? This is quite important. Did you select all curves?
If you create a new curve for the hole, you must be in object-mode not edit mode (toggle between the modes with <TAB>).

That part should have been emphasized in your explanation above. :smiley:
“The bezier curves for the outlines and the holes are separate objects. Run the script, place the holes with the 3d cursor and select all the curve objects in the object mode, then press triangulate. Prepare to be amazed.”
It works! Great script. Now if only we have this as an option in filling curves converted to mesh, directly in Blender. But no problem here, we have your script.:slight_smile: Thanks a lot.

This seems to be a great tool/script using triangle.exe is here anybody to refurbish this little goodie ?

Convert to mesh
X / Limited Dissolve
Select face and triangle fill using addon https://github.com/PetteriAimonen/blender_addons

Many thanks, you made my day ! It is working as expected. Cheers. Jozef

but unfortunantely it is not Delaunay algorithm :frowning: … so the topology is not random