<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "macOS: -",
    "tvOS: -",
    "visionOS: -",
    "watchOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "Accelerate",
  "identifier" : "/documentation/Accelerate/vImage_AffineTransform_Double",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Accelerate"
    ],
    "preciseIdentifier" : "c:@S@vImage_AffineTransform_Double"
  },
  "title" : "vImage_AffineTransform_Double"
}
-->

# vImage_AffineTransform_Double

A structure for values that represent a double-precision affine transformation.

```
struct vImage_AffineTransform_Double
```

## Overview

This structure represents the 3x2 matrix :

![3 by 2 matrix](images/com.apple.accelerate/media-2557524.gif)

In 64-bit applications, this structure is just like the Core Graphics <doc://com.apple.documentation/documentation/CoreFoundation/CGAffineTransform> data structure. In 32-bit applications, the Core Graphics data structure is equivalent to [`vImage_AffineTransform`](/documentation/Accelerate/vImage_AffineTransform). Most of the time, you should use the [`vImage_CGAffineTransform`](/documentation/Accelerate/vImage_CGAffineTransform) data structure, which changes size depending on architecture.

The <doc://com.apple.documentation/documentation/CoreGraphics/cgaffinetransform> describes functions for creating and manipulating matrixes of this form.

## Topics

### Initializers

[`init(a:b:c:d:tx:ty:)`](/documentation/Accelerate/vImage_AffineTransform_Double/init(a:b:c:d:tx:ty:)-9nehj)

Returns a new affine transform.

[`init()`](/documentation/Accelerate/vImage_AffineTransform_Double/init())

[`init(a:b:c:d:tx:ty:)`](/documentation/Accelerate/vImage_AffineTransform_Double/init(a:b:c:d:tx:ty:)-4gqxp)

### Affine Transform Matrix Elements

[`a`](/documentation/Accelerate/vImage_AffineTransform_Double/a)

The entry at position `[1,1]` in the matrix.

[`b`](/documentation/Accelerate/vImage_AffineTransform_Double/b)

The entry at position `[1,2]` in the matrix.

[`c`](/documentation/Accelerate/vImage_AffineTransform_Double/c)

The entry at position `[2,1]` in the matrix.

[`d`](/documentation/Accelerate/vImage_AffineTransform_Double/d)

The entry at position `[2,2]` in the matrix.

[`tx`](/documentation/Accelerate/vImage_AffineTransform_Double/tx)

The entry at position `[3,1]` in the matrix.

[`ty`](/documentation/Accelerate/vImage_AffineTransform_Double/ty)

The entry at position `[3,2]` in the matrix.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)