remesh code for a 3D geometry

22 visualizzazioni (ultimi 30 giorni)
Alberto Acri
Alberto Acri il 18 Feb 2023
Hi. I need to remesh a 3D geometry. I have both node coordinates and triangle faces. I have been using this somewhat dated code (link) however I cannot get a dense mesh (edgelength < 2) which would be ideal for me.
[vnew, fnew, meanedge, stdev]=remesher(V, F, edgelength, iterations) % you can read this line in the code given on the link
Does anyone know how to solve such a problem?
Eventually:
  • Does anyone know what equivalent code that performs the same function as remesh?
  • Or a code that allows to thicken the number of triangles in a geometry? In that case I would have a 3D geometry with a wide mesh (few nodes and triangles) and I would like to increase the number of nodes and triangles.

Risposte (2)

Sulaymon Eshkabilov
Sulaymon Eshkabilov il 18 Feb 2023
It is worth testing these fcns for remeshing:
griddata()
griddatan()
delaunayn()
  1 Commento
Alberto Acri
Alberto Acri il 18 Feb 2023
Thank you for your reply. I can take a look at these functions but I am not very familiar with matlab so to apply them to my case.

Accedi per commentare.


Sulaymon Eshkabilov
Sulaymon Eshkabilov il 18 Feb 2023
An alternative mesh fcn in MATLAB is ndgrid() - see this example:
xx = linspace(-pi,pi, 20);
[X,Y] = ndgrid(xx);
Z = 2*X.*exp(cos(X)+cos(Y));
nexttile
mesh(X,Y, Z)
yy = linspace(-pi,pi, 100);
[XX,YY] = ndgrid(yy);
FZ = interpn(X,Y,Z, XX, YY, 'makima');
nexttile
mesh(XX,YY, FZ)
  2 Commenti
Alberto Acri
Alberto Acri il 19 Feb 2023
Thank you for your reply. In my case where I have a coordinate matrix Rx3 how should I do it?
Sulaymon Eshkabilov
Sulaymon Eshkabilov il 19 Feb 2023
Try interpn()

Accedi per commentare.

Prodotti


Release

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by