matlab affine3d解析--三维仿射几何变换

**

affine3d() 三维仿射几何变换

**:

  • 一、描述

affine3d对象封装了一个三维仿射几何变换。

  • 二、解释语法

tform = affine3d() 创建具有与标识转换对应的默认属性设置的affine3d对象。

tform = affine3d(A) 构造给定输入4×4矩阵A的affine3d对象,该矩阵指定一个有效的4×4仿射变换矩阵。

输入参数:
A 是一个4×4矩阵,它指定表单的有效仿射变换 :

        A = [a b c 0;
 		d e f 0;
		g h i 0;
	    j k l 1];
	 
默认值:恒等变换
  • 三、性能内容

T 是一个4×4双精度浮点矩阵,定义了三维正向变换。

矩阵T使用惯例:
[x y z 1] = [u v w 1] * T
式中:
[a b c 0;
 d e f 0;
 g h i 0;
 j k l 1];
默认值:恒等变换

维度描述的是输入和输出点的几何变换的维数。

  • 四、例子

在每个维度中定义不同的比例因子:

创建一个affine3d对象,该对象在每个维度中定义不同的比例因子。

Sx = 1.2;
Sy = 1.6;
Sz = 2.4;
tform = affine3d([Sx 0 0 0; 0 Sy 0 0; 0 0 Sz 0; 0 0 0 1]);

tform = 

  affine3d 属性:
                 T: [4x4 double]
    Dimensionality: 3

对输入点应用正向几何变换:

[X,Y,Z] = transformPointsForward(tform,1,1,1)
X =
    1.2000
Y =
    1.6000
Z =
    2.4000

对前一步的输出点进行几何逆变换,从逆变换中恢复原始点:

[U,V,W] = transformPointsInverse(tform,X,Y,Z)
U =
     1
V =
     1
W =
     1
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值