<!--
{
  "documentType" : "article",
  "framework" : "Accelerate",
  "identifier" : "/documentation/Accelerate/single-precision-horizontal-shearing",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Single-precision horizontal shearing"
}
-->

# Single-precision horizontal shearing

Apply single-precision horizontal shearing to images.

## Topics

### Shearing 8-bit-per-channel buffers

[`func vImageHorizontalShear_Planar8(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, Pixel_8, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_Planar8(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within an 8-bit planar image.

[`func vImageHorizontalShear_CbCr8(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, UnsafePointer<UInt8>!, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_CbCr8(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within an 8-bit-per-channel, 2-channel interleaved image.

[`func vImageHorizontalShear_ARGB8888(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, UnsafePointer<UInt8>!, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_ARGB8888(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within an 8-bit-per-channel, 4-channel interleaved image.

### Shearing 10-bit-per-channel buffers

[`func vImageHorizontalShear_XRGB2101010W(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, Pixel_32U, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_XRGB2101010W(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within a 2-bit alpha, 10-bit RGB interleaved image.

### Shearing 16-bit-per-channel buffers

[`func vImageHorizontalShear_Planar16U(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, Pixel_16U, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_Planar16U(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within an unsigned 16-bit planar image.

[`func vImageHorizontalShear_Planar16S(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, Pixel_16S, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_Planar16S(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within a signed 16-bit planar image.

[`func vImageHorizontalShear_Planar16F(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, Pixel_16F, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_Planar16F(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within a floating-point 16-bit planar image.

[`func vImageHorizontalShear_CbCr16U(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, UnsafePointer<UInt16>!, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_CbCr16U(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within an unsigned 16-bit-per-channel, 2-channel interleaved image.

[`func vImageHorizontalShear_CbCr16F(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, UnsafePointer<UInt16>!, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_CbCr16F(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within a flloating-point 16-bit-per-channel, 2-channel interleaved image.

[`func vImageHorizontalShear_ARGB16U(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, UnsafePointer<UInt16>!, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_ARGB16U(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within an unsigned 16-bit-per-channel, 4-channel interleaved image.

[`func vImageHorizontalShear_ARGB16S(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, UnsafePointer<Int16>!, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_ARGB16S(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within a signed 16-bit-per-channel, 4-channel interleaved image.

[`func vImageHorizontalShear_ARGB16F(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, UnsafePointer<UInt16>!, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_ARGB16F(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within a floating-point 16-bit-per-channel, 4-channel interleaved image.

### Shearing 32-bit-per-channel buffers

[`func vImageHorizontalShear_PlanarF(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, Pixel_F, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_PlanarF(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within a 32-bit planar image.

[`func vImageHorizontalShear_ARGBFFFF(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImagePixelCount, vImagePixelCount, Float, Float, ResamplingFilter!, UnsafePointer<Float>!, vImage_Flags) -> vImage_Error`](/documentation/Accelerate/vImageHorizontalShear_ARGBFFFF(_:_:_:_:_:_:_:_:_:))

Performs a single-precision horizontal shear on a region of interest within a 32-bit-per-channel, 4-channel interleaved image.



---

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)