类 Transform
内容
[
隐藏
]Transform class
变换包含信息,允许以最小开销访问对象的平移/缩放/旋转或变换矩阵。这用于局部变换。
public class Transform : A3DObject
属性
| 名称 | 描述 |
|---|---|
| EulerAngles { get; set; } | 获取或设置以欧拉角表示的旋转,单位为度 |
| GeometricRotation { get; set; } | 获取或设置几何欧拉旋转(以度为单位)。几何变换仅影响附加的实体,而不影响子节点。当您将几何变换导出到不支持该变换的文件类型时,它将合并为局部变换。 |
| GeometricScaling { get; set; } | 获取或设置几何缩放。几何变换仅影响附加的实体,而不影响子节点。当您将几何变换导出到不支持该变换的文件类型时,它将合并为局部变换。 |
| GeometricTranslation { get; set; } | 获取或设置几何平移。几何变换仅影响附加的实体,而不影响子节点。当您将几何变换导出到不支持该变换的文件类型时,它将合并为局部变换。 |
| virtual Name { get; set; } | 获取或设置名称。 |
| PostRotation { get; set; } | 获取或设置以度为单位表示的后置旋转 |
| PreRotation { get; set; } | 获取或设置以度为单位表示的预置旋转 |
| Properties { get; } | 获取所有属性的集合。 |
| Rotation { get; set; } | 获取或设置以四元数表示的旋转。 |
| RotationOffset { get; set; } | 获取或设置旋转偏移 |
| RotationPivot { get; set; } | 获取或设置旋转枢轴 |
| Scaling { get; set; } | 获取或设置缩放 |
| ScalingOffset { get; set; } | 获取或设置缩放偏移 |
| ScalingPivot { get; set; } | 获取或设置缩放枢轴 |
| TransformMatrix { get; set; } | 获取或设置变换矩阵。 |
| Translation { get; set; } | 获取或设置平移 |
方法
| 名称 | 描述 |
|---|---|
| FindProperty(string) | 查找属性。它可以是动态属性(由 CreateDynamicProperty/SetProperty 创建)或本地属性(通过其名称识别) |
| GetProperty(string) | 获取指定属性的值 |
| RemoveProperty(Property) | 移除动态属性。 |
| RemoveProperty(string) | 移除通过名称识别的指定属性 |
| SetEulerAngles(double, double, double) | 设置当前变换的欧拉角(单位为度)。 |
| SetGeometricRotation(double, double, double) | 设置几何欧拉旋转(以度为单位)。几何变换仅影响附加的实体,而不影响子节点。当您将几何变换导出到不支持该变换的文件类型时,它将合并为局部变换。 |
| SetGeometricScaling(double, double, double) | 设置几何缩放。几何变换仅影响附加的实体,而不影响子节点。当您将几何变换导出到不支持该变换的文件类型时,它将合并为局部变换。 |
| SetGeometricTranslation(double, double, double) | 设置几何平移。几何变换仅影响附加的实体,而不影响子节点。当您将几何变换导出到不支持该变换的文件类型时,它将合并为局部变换。 |
| SetPostRotation(double, double, double) | 设置以度为单位表示的后置旋转 |
| SetPreRotation(double, double, double) | 设置以度为单位表示的预置旋转 |
| SetProperty(string, object) | 设置指定属性的值 |
| SetRotation(double, double, double, double) | 设置当前变换的旋转(四元数分量)。 |
| SetScale(double, double, double) | 设置当前变换的缩放。 |
| SetTranslation(double, double, double) | 设置当前变换的平移。 |
示例
以下代码展示了如何更改节点的变换:
Scene scene = new Scene();
var boxNode = scene.RootNode.CreateChildNode(new Box());
//将盒子放置在 (10, 0, 0) 处
boxNode.Transform.Translation = new Vector3(10, 0, 0);
另请参见
- class A3DObject
- namespace Aspose.ThreeD
- assembly Aspose.3D