Creating a 2D mesh on a given boundary

39 views (last 30 days)
Hello, I wanted to ask how to create a triangular mesh in a delimited region. I have a vector of points x and y delimiting all the point, I constructed the region boundary using
k = boundary(x,y);
and I can see the plot of my boundary with
plot(x(k),y(k));
How do i create a triangular mesh of a specific h size covering this region?
Thanks for your help!

Accepted Answer

Pavan Guntha
Pavan Guntha on 22 Oct 2021
Hi,
You could use 'triplot' function with an appropriate triangulation object to plot the triangular mesh. An illustration on how can we draw a triangular mesh onto a random shape is shown below:
P = rand(10,2);
K = boundary(P(:,1), P(:,2));
plot(P(K,1), P(K,2))
T = delaunayTriangulation(P);
triplot(T)
The random shape & triangular mesh are as follows:
For more information you could look at the following documentation pages:
  • triplot - Used to plot a 2D triangular mesh based on the input x,y co-ordinates & a triangulation object.
  • delaunayTriangulation - We can specify few edge constraints on how a triangulation object is to be created based on which the triangular mesh is plotted.
Hope this helps!

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!