%% Mapped Incenters of Deformed Triangulation
% Create a Delaunay triangulation from a set of points.

x = [0 4 8 12 0 4 8 12]';
y = [0 0 0 0 8 8 8 8]';
DT = delaunayTriangulation(x,y);

%
% Calculate the Cartesian coordinates of the incenters.

cc = incenter(DT);

%
% Plot the original triangulation and reference points.

figure
subplot(1,2,1);
triplot(DT); 
hold on;
plot(cc(:,1),cc(:,2),'*r'); 
hold off;
axis equal;

%
% Create a new triangulation which is a deformed version of DT .

ti = DT.ConnectivityList;
y = [0 0 0 0 16 16 16 16]';
TR = triangulation(ti,x,y);

%
% Compute the barycentric coordinates for the incenters of DT, and use them to compute the Cartesian coordinates of the analogous points in TR.

b = cartesianToBarycentric(DT,[1:length(ti)]',cc);
xc = barycentricToCartesian(TR,[1:length(ti)]',b);

%
% Plot the deformed triangulation and mapped locations of the reference points.

subplot(1,2,2);
triplot(TR); 
hold on;
plot(xc(:,1),xc(:,2),'*r'); 
hold off;
axis equal;

% Copyright 2015 The MathWorks, Inc.