# translation matrix in OXY plane

7 views (last 30 days)
ha ha on 30 Nov 2018
Edited: ha ha on 30 Nov 2018
Let's say: I have matrix A=[x y z] with ~3.000 point data . Please see attachment file, and figure:
My question is: how can I translate all points with distance 1 in the black arrow direction (// with the long edge of the points), as illustrate figure?

KSSV on 30 Nov 2018
Edited: KSSV on 30 Nov 2018
You need to add that value to the coordinates. If you want to move along x-axes add 1 unit to x coordinates.
data = importdata('A.txt') ;
x = data(:,1) ;
y = data(:,2) ;
z = data(:,3) ;
plot3(x,y,z,'.r')
hold on
%% Translate along x axis by unit 1
dx = 1. ;
x = x+dx ;
plot3(x,y,z,'.b')
view(2)

Show 1 older comment
KSSV on 30 Nov 2018
YOu need to split that into two components...and add that to every point along x and y.
KSSV on 30 Nov 2018
data = importdata('A.txt') ;
x = data(:,1) ;
y = data(:,2) ;
z = data(:,3) ;
plot(x,y,'.r')
hold on
%%
idx = boundary(x,y) ;
p = polyshape(x(idx),y(idx)) ;
v = p.Vertices(1:2,:) ;
v = diff(v) ;
u = -0.1 ; % move by this unit
x = x+u*v(1) ; y = y+u*v(2) ;
plot(x,y,'.b')
ha ha on 30 Nov 2018
Thanks @ KSSV .
You are correct.