---
title: MDLTransform
framework: modelio
role: symbol
role_heading: Class
path: modelio/mdltransform
---

# MDLTransform

A description of the local coordinate space transformations for a 3D object.

## Declaration

```swift
class MDLTransform
```

## Overview

Overview Transform information can be static, or in the case of resources that describe animations, time based. You use transform objects to position, orient, shear, and scale the meshes, cameras, lights, and container objects in an asset using their transform property.

## Topics

### Creating a Transform Object

- [init(identity:)](modelio/mdltransform/init(identity:).md)
- [init(matrix:)](modelio/mdltransform/init(matrix:).md)
- [init(transformComponent:)](modelio/mdltransform/init(transformcomponent:).md)
- [init(matrix:resetsTransform:)](modelio/mdltransform/init(matrix:resetstransform:).md)
- [init(transformComponent:resetsTransform:)](modelio/mdltransform/init(transformcomponent:resetstransform:).md)

### Using Factors of a Static Transform

- [translation](modelio/mdltransform/translation.md)
- [rotation](modelio/mdltransform/rotation.md)
- [scale](modelio/mdltransform/scale.md)
- [shear](modelio/mdltransform/shear.md)
- [setIdentity()](modelio/mdltransform/setidentity().md)

### Using Factors of an Animated Transform

- [translation(atTime:)](modelio/mdltransform/translation(attime:).md)
- [setTranslation(_:forTime:)](modelio/mdltransform/settranslation(_:fortime:).md)
- [rotation(atTime:)](modelio/mdltransform/rotation(attime:).md)
- [rotationMatrix(atTime:)](modelio/mdltransform/rotationmatrix(attime:).md)
- [setRotation(_:forTime:)](modelio/mdltransform/setrotation(_:fortime:).md)
- [scale(atTime:)](modelio/mdltransform/scale(attime:).md)
- [setScale(_:forTime:)](modelio/mdltransform/setscale(_:fortime:).md)
- [shear(atTime:)](modelio/mdltransform/shear(attime:).md)
- [setShear(_:forTime:)](modelio/mdltransform/setshear(_:fortime:).md)
- [setMatrix(_:forTime:)](modelio/mdltransform/setmatrix(_:fortime:).md)

### Initializers

- [init()](modelio/mdltransform/init().md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [MDLComponent](modelio/mdlcomponent.md)
- [MDLTransformComponent](modelio/mdltransformcomponent.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### 3D Asset Basics

- [MDLAsset](modelio/mdlasset.md)
- [MDLObject](modelio/mdlobject.md)
- [MDLMesh](modelio/mdlmesh.md)
- [MDLSubmesh](modelio/mdlsubmesh.md)
- [MDLSubmeshTopology](modelio/mdlsubmeshtopology.md)
- [MDLNamed](modelio/mdlnamed.md)
