translation matrix in OXY plane
2 次查看(过去 30 天)
显示 更早的评论
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?


0 个评论
采纳的回答
KSSV
2018-11-30
编辑:KSSV
2018-11-30
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)
4 个评论
KSSV
2018-11-30
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')
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Graphics Object Programming 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!