how to create a triangular geometry in matlab using loop?

How can I create a triangular shape geometry in matlab using 'for loop'? Can I create grid point in this?

1 comentario

I have created a code for square mesh using for loop clc;clear all; L=1;H=3; m=40;n=40; dx=L/m;dy=H/n; for i=1:m+1 for j=1:n+1 x(i,j)=(i-1)*dx; y(i,j)=(j-1)*dy; end end R=x-x; mesh(x,y,R) view(0,90)
and I want to create a triangular geometry inside which I want square mesh but not using coordinate points.

Iniciar sesión para comentar.

 Respuesta aceptada

KSSV
KSSV el 28 de Abr. de 2016
clc; clear all ;
% Vertices of triangle
A = [2 1] ;
B = [-6 4] ;
C = [-3 -2] ;
% Discretization along sides
N = 20 ;
% sides
s1 = [linspace(A(1),B(1),N)',linspace(A(2),B(2),N)'];
s2 = [linspace(B(1),C(1),N)',linspace(B(2),C(2),N)'];
s3 = [linspace(C(1),A(1),N)',linspace(C(2),A(2),N)'];
% coors
X = [s1(:,1) ; s2(:,1) ; s3(:,1)] ;
Y = [s1(:,2) ; s2(:,2) ; s3(:,2)] ;
[p,t] = mesh2d([X Y]) ;
The grid will look as the figure attached
.

2 comentarios

can u do this using for loop?
clc;clear all; L=1;H=3; m=40;n=40; dx=L/m;dy=H/n; for i=1:m+1 for j=1:n+1 x(i,j)=(i-1)*dx; y(i,j)=(j-1)*dy; end end R=x-x; mesh(x,y,R) view(0,90)
This is my code for square mesh but I want a triangular domain inside which it should have square mesh using this for loop any idea

Iniciar sesión para comentar.

Más respuestas (1)

Azzi Abdelmalek
Azzi Abdelmalek el 28 de Abr. de 2016
Editada: Azzi Abdelmalek el 28 de Abr. de 2016
You don't need a loop to create a triangle, just set the coordinate of your triangle. For example
t=[0 10 5 0]
y=[0 0 5 0]
plot(t,y)
or
fill(t,y,'g')

Categorías

Más información sobre Interpolation en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 28 de Abr. de 2016

Comentada:

el 28 de Abr. de 2016

Community Treasure Hunt

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

Start Hunting!

Translated by