Transform

  1. 介绍
  2. 案例
    1. Translate (Flag=1)
    2. Scale (Flag=2)
    3. Rotate (Flag=3)
    4. Scale wirh origin point (Flag=4)
    5. Rotate wirh origin point (Flag=5)

介绍

Transform用于坐标的三维变换。

案例

Translate (Flag=1)

P1=[-1,1,1;1,1,1;1,-1,1;-1,-1,1;-1,1,-1;1,1,-1;1,-1,-1;-1,-1,-1];
T=Transform(P1);
T=Translate(T,-2,-1,3);
P2=Solve(T);
scatter3(P1(:,1),P1(:,2),P1(:,3), ...
  'MarkerEdgeColor','k',...
  'MarkerFaceColor',[0 .75 .75]);
hold on
scatter3(P2(:,1),P2(:,2),P2(:,3), ...
  'MarkerEdgeColor','k',...
  'MarkerFaceColor',[1 0 0]);
axis equal

平移变换

Scale (Flag=2)

P1=[-1,1,1;1,1,1;1,-1,1;-1,-1,1;-1,1,-1;1,1,-1;1,-1,-1;-1,-1,-1];
T=Transform(P1);
T=Scale(T,2,1,3);
P2=Solve(T);
scatter3(P1(:,1),P1(:,2),P1(:,3), ...
  'MarkerEdgeColor','k',...
  'MarkerFaceColor',[0 .75 .75]);
hold on
scatter3(P2(:,1),P2(:,2),P2(:,3), ...
  'MarkerEdgeColor','k',...
  'MarkerFaceColor',[1 0 0]);
axis equal

缩放

Rotate (Flag=3)

P1=[-1,1,1;1,1,1;1,-1,1;-1,-1,1;-1,1,-1;1,1,-1;1,-1,-1;-1,-1,-1];
T=Transform(P1);
T=Rotate(T,45,0,0);
P2=Solve(T);
scatter3(P1(:,1),P1(:,2),P1(:,3), ...
  'MarkerEdgeColor','k',...
  'MarkerFaceColor',[0 .75 .75]);
hold on
scatter3(P2(:,1),P2(:,2),P2(:,3), ...
  'MarkerEdgeColor','k',...
  'MarkerFaceColor',[1 0 0]);
axis equal

旋转

Scale wirh origin point (Flag=4)

P1=[-1,1,1;1,1,1;1,-1,1;-1,-1,1;-1,1,-1;1,1,-1;1,-1,-1;-1,-1,-1];
T=Transform(P1);
T=Scale(T,2,1,3,'Ori',[-1,-1,-1]);
P2=Solve(T);
scatter3(P1(:,1),P1(:,2),P1(:,3), ...
  'MarkerEdgeColor','k',...
  'MarkerFaceColor',[0 .75 .75]);
hold on
scatter3(P2(:,1),P2(:,2),P2(:,3), ...
  'MarkerEdgeColor','k',...
  'MarkerFaceColor',[1 0 0]);
axis equal

绕原点缩放

Rotate wirh origin point (Flag=5)

P1=[-1,1,1;1,1,1;1,-1,1;-1,-1,1;-1,1,-1;1,1,-1;1,-1,-1;-1,-1,-1];
T=Transform(P1);
T=Rotate(T,0,0,45,'Ori',[-1,-1,-1]);
P2=Solve(T);
scatter3(P1(:,1),P1(:,2),P1(:,3), ...
  'MarkerEdgeColor','k',...
  'MarkerFaceColor',[0 .75 .75]);
hold on
scatter3(P2(:,1),P2(:,2),P2(:,3), ...
  'MarkerEdgeColor','k',...
  'MarkerFaceColor',[1 0 0]);
axis equal

绕原点旋转


本网站基于Hexo 3-Hexz主题生成。如需转载请标注来源,如有错误请批评指正,欢迎邮件至 392176462@qq.com