hgtransform
变换图形对象
说明
h = hgtransform
在当前坐标区中创建一个 Transform
对象。如果不存在坐标区,则 hgtransform
会创建新坐标区。创建 Transform
对象后,使用 h
查询和设置该对象的属性。有关属性列表,请参阅 Transform 属性。
您可以使用 Transform
对象作为容器来变换一组图形对象,而不必修改每个对象的坐标数据。通过将对象设置为单个 Transform
对象的子对象来对这些对象进行分组,然后对 Transform
对象执行变换,如平移、缩放和旋转,以将子对象作为一个组执行修改。
h = hgtransform(
使用一个或多个名称-值参量设置 Name,Value
)Transform
对象的属性。例如,hgtransform(Matrix=M)
在当前坐标区中使用变换矩阵 M
创建一个 Transform
对象。有关属性列表,请参阅Transform 属性。
示例
输入参数
局限性
Transform
对象可以是任意数量的图形对象的父对象,但它只能包含来自同一坐标区的对象。
提示
许多绘图函数会在绘图之前清空坐标区(移除坐标区子对象)。清空坐标区也将删除坐标区上的任何
Transform
对象。例如,如果您创建一个Transform
对象,然后使用plot
,则Transform
对象将被删除。h = hgtransform; p = plot(1:10); h.Matrix;
Invalid or deleted object.
通过将变换矩阵设置为单位矩阵,可以将
Transform
对象的子对象恢复到其原始方向、位置和大小。例如,在应用变换矩阵M
后,将变换t
的子对象恢复到其原始状态。变换操作是以绝对形式定义的,而不是相对于当前变换定义的,因此单位矩阵会重置所有以前的变换。有关单位矩阵的详细信息,请参阅t = hgtransform(Matrix=M); ... t.Matrix = eye(4);
eye
函数。您可以将
Text
对象作为Transform
对象的子对象,但缩放和旋转变换对文本不起作用。要更改文本的字体大小和方向,请改为设置文本属性,如TextSize
和Rotation
。有关详细信息,请参阅Text 属性。您可以将
Light
对象作为Transform
对象的子对象,但变换不会影响光源的位置。要修改光源的位置和方向,请改为设置Light
对象的Position
属性。有关详细信息,请参阅 Light 属性。
版本历史记录
在 R2006a 之前推出