The type "9" of cell of the "vtk" can not be input in FreeFem

Dear all,

I have many results of “vtk” file from the other fluid software, and I need to input these “vtk” files into my FreeFEM++ programs to calculate next step. The mesh of “vtk” is two dimensional, and the cell type is 9. I used the “vtkload” to read the “vtk" files, but I failed. It seems like the FreeFEM++ has not include the type “9” of the cell of the “vtk”. Is anyone has good solution for this?

Thank you

2021-07-18 153129

The type 9 of cell of “vtk”

2021-07-18 153504

I found the “cell case 9” is not included in “iovtk.cpp”, so the “vtkload” is not used.
How to solve this problem?

Only vertex, edges, triangles and tetrahedrons are considered in Freefem++
(see here).
You can moat likely do the conversion from quad to triangles inside vtk.

Thank you Julien for your answer.

Yes, your method I can understand. But you know, my target is not to import the model through the “vtk” file. As I said in the first question, this “vtk” file is a two-dimensional rectangular model generated by other fluid simulation programs(not FreeFEM++), which contains the fluid force and pressure information on each point of each element. I mainly want to input these fluid force and pressure values into each point of my FreeFEM++ model.

The solution I think is to let the FreeFEM++ program read the information of each coordinate point first, and then the fluid force and pressure information in the “vtk” file can be input into my FreeFEM++ program one by one. Is there any better idea?


How about using the C++ or python to write the “vtk” reading program, and compile with FreeFEM++. Maybe FreeFEM++'s language is not enough for reading “vtk”. I read the “iovtk.cpp”, and I got the read “mesh” part. It seems not very simple to read the “vtk”. Any guy who know how to read the “vtk” without "load “iovtk:” on FreeFEM++?