triangulation between two circles

5 次查看(过去 30 天)
Yu Li
Yu Li 2020-4-26
编辑: Yu Li 2020-4-26
Hi:
I have two circiles which is constructed by points.
With the known coordinated of the points on these two circles respectively, is there anyway generate the triangulation information like figures shown below?
The goal is not to plot the lines that construct the triangles between two circles, I need the triangulation information, i.e. the connectivity that construct those triangles by the node ID.
which is very similiar with the output of function 'triangulation':
Thanks!
Yu

回答(1 个)

Image Analyst
Image Analyst 2020-4-26
Try this and adapt as needed:
numPoints = 50;
theta = linspace(0, 360, numPoints);
deltaTheta = (theta(2) - theta(1)) / 2
radius1 = 300;
radius2 = 400;
xInner = radius1 * cosd(theta);
yInner = radius1 * sind(theta);
plot(xInner, yInner, 'r.-', 'MarkerSize', 15, 'LineWidth', 2);
hold on;
theta2 = theta + deltaTheta;
xOuter = radius2 * cosd(theta2);
yOuter = radius2 * sind(theta2);
plot(xOuter, yOuter, 'r.-', 'MarkerSize', 15, 'LineWidth', 2);
% Plot lines between them
% Need [xinner(1), yInner(1);
% xOuter(1), yOuter(1);
% xinner(2), yInner(2);
% xOuter(2), yOuter(2);
% Interleave the arrays
row = 1;
for k = 1 : length(xInner)
xBoth(row) = xInner(k);
xBoth(row+1) = xOuter(k);
yBoth(row) = yInner(k);
yBoth(row+1) = yOuter(k);
row = row + 2;
end
plot(xBoth, yBoth, 'b-', 'LineWidth', 1);
axis('on', 'square');
grid on;
  1 个评论
Yu Li
Yu Li 2020-4-26
编辑:Yu Li 2020-4-26
Hi:
thanks for your reply. but I'm sorry, I did not describe my question clearly.
my goal is not to plot the triangle lines between two circles, I need the triangulation information, i.e.
1. the coordinate of each node (which is known infomation)
2. the connectivity that construct those triangles by the node ID.
which is very similiar with the output of function 'triangulation':
Thanks!
Yu

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Delaunay Triangulation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by