Table of Contents

Method YGroup3Unzip

Namespace
Zyl.VectorTraits.Impl.AVector256
Assembly
VectorTraits.dll

YGroup3Unzip(Vector256<float>, Vector256<float>, Vector256<float>, out Vector256<float>, out Vector256<float>)

De-Interleave 3-element groups into 3 vectors. It converts the 3-element groups AoS to SoA. It can also deinterleave packed RGB pixel data into R,G,B planar data (将3-元素组解交织为3个向量. 它能将3元素组的 数组结构体 转为 结构体数组. 它还能将 已打包的RGB像素数据, 解交织为 R,G,B 平面数据). Mnemonic: x[i] =: element_ref(3i, data0, data1, data2), y[i] =: element_ref(3i+1, data0, data1, data2), z[i] =: element_ref(3*i+2, data0, data1, data2).

public virtual Vector256<float> YGroup3Unzip(Vector256<float> data0, Vector256<float> data1, Vector256<float> data2, out Vector256<float> y, out Vector256<float> z)

Parameters

data0 Vector256<float>

A vector made of 3-element groups - Part 0 (由3元素组所组成的向量 - 第0部分).

data1 Vector256<float>

A vector made of 3-element groups - Part 1 (由3元素组所组成的向量 - 第1部分).

data2 Vector256<float>

A vector made of 3-element groups - Part 2 (由3元素组所组成的向量 - 第2部分).

y Vector256<float>

Returns the vector made of the Y-components (返回Y分量所组成的向量).

z Vector256<float>

Returns the vector made of the Z-components (返回Z分量所组成的向量).

Returns

Vector256<float>

Returns the vector made of the X-components (返回X分量所组成的向量).

See Also

YGroup3Unzip(Vector256<double>, Vector256<double>, Vector256<double>, out Vector256<double>, out Vector256<double>)

De-Interleave 3-element groups into 3 vectors. It converts the 3-element groups AoS to SoA. It can also deinterleave packed RGB pixel data into R,G,B planar data (将3-元素组解交织为3个向量. 它能将3元素组的 数组结构体 转为 结构体数组. 它还能将 已打包的RGB像素数据, 解交织为 R,G,B 平面数据). Mnemonic: x[i] =: element_ref(3i, data0, data1, data2), y[i] =: element_ref(3i+1, data0, data1, data2), z[i] =: element_ref(3*i+2, data0, data1, data2).

public virtual Vector256<double> YGroup3Unzip(Vector256<double> data0, Vector256<double> data1, Vector256<double> data2, out Vector256<double> y, out Vector256<double> z)

Parameters

data0 Vector256<double>

A vector made of 3-element groups - Part 0 (由3元素组所组成的向量 - 第0部分).

data1 Vector256<double>

A vector made of 3-element groups - Part 1 (由3元素组所组成的向量 - 第1部分).

data2 Vector256<double>

A vector made of 3-element groups - Part 2 (由3元素组所组成的向量 - 第2部分).

y Vector256<double>

Returns the vector made of the Y-components (返回Y分量所组成的向量).

z Vector256<double>

Returns the vector made of the Z-components (返回Z分量所组成的向量).

Returns

Vector256<double>

Returns the vector made of the X-components (返回X分量所组成的向量).

See Also

YGroup3Unzip(Vector256<sbyte>, Vector256<sbyte>, Vector256<sbyte>, out Vector256<sbyte>, out Vector256<sbyte>)

De-Interleave 3-element groups into 3 vectors. It converts the 3-element groups AoS to SoA. It can also deinterleave packed RGB pixel data into R,G,B planar data (将3-元素组解交织为3个向量. 它能将3元素组的 数组结构体 转为 结构体数组. 它还能将 已打包的RGB像素数据, 解交织为 R,G,B 平面数据). Mnemonic: x[i] =: element_ref(3i, data0, data1, data2), y[i] =: element_ref(3i+1, data0, data1, data2), z[i] =: element_ref(3*i+2, data0, data1, data2).

[CLSCompliant(false)]
public virtual Vector256<sbyte> YGroup3Unzip(Vector256<sbyte> data0, Vector256<sbyte> data1, Vector256<sbyte> data2, out Vector256<sbyte> y, out Vector256<sbyte> z)

Parameters

data0 Vector256<sbyte>

A vector made of 3-element groups - Part 0 (由3元素组所组成的向量 - 第0部分).

data1 Vector256<sbyte>

A vector made of 3-element groups - Part 1 (由3元素组所组成的向量 - 第1部分).

data2 Vector256<sbyte>

A vector made of 3-element groups - Part 2 (由3元素组所组成的向量 - 第2部分).

y Vector256<sbyte>

Returns the vector made of the Y-components (返回Y分量所组成的向量).

z Vector256<sbyte>

Returns the vector made of the Z-components (返回Z分量所组成的向量).

Returns

Vector256<sbyte>

Returns the vector made of the X-components (返回X分量所组成的向量).

See Also

YGroup3Unzip(Vector256<byte>, Vector256<byte>, Vector256<byte>, out Vector256<byte>, out Vector256<byte>)

De-Interleave 3-element groups into 3 vectors. It converts the 3-element groups AoS to SoA. It can also deinterleave packed RGB pixel data into R,G,B planar data (将3-元素组解交织为3个向量. 它能将3元素组的 数组结构体 转为 结构体数组. 它还能将 已打包的RGB像素数据, 解交织为 R,G,B 平面数据). Mnemonic: x[i] =: element_ref(3i, data0, data1, data2), y[i] =: element_ref(3i+1, data0, data1, data2), z[i] =: element_ref(3*i+2, data0, data1, data2).

public virtual Vector256<byte> YGroup3Unzip(Vector256<byte> data0, Vector256<byte> data1, Vector256<byte> data2, out Vector256<byte> y, out Vector256<byte> z)

Parameters

data0 Vector256<byte>

A vector made of 3-element groups - Part 0 (由3元素组所组成的向量 - 第0部分).

data1 Vector256<byte>

A vector made of 3-element groups - Part 1 (由3元素组所组成的向量 - 第1部分).

data2 Vector256<byte>

A vector made of 3-element groups - Part 2 (由3元素组所组成的向量 - 第2部分).

y Vector256<byte>

Returns the vector made of the Y-components (返回Y分量所组成的向量).

z Vector256<byte>

Returns the vector made of the Z-components (返回Z分量所组成的向量).

Returns

Vector256<byte>

Returns the vector made of the X-components (返回X分量所组成的向量).

See Also

YGroup3Unzip(Vector256<short>, Vector256<short>, Vector256<short>, out Vector256<short>, out Vector256<short>)

De-Interleave 3-element groups into 3 vectors. It converts the 3-element groups AoS to SoA. It can also deinterleave packed RGB pixel data into R,G,B planar data (将3-元素组解交织为3个向量. 它能将3元素组的 数组结构体 转为 结构体数组. 它还能将 已打包的RGB像素数据, 解交织为 R,G,B 平面数据). Mnemonic: x[i] =: element_ref(3i, data0, data1, data2), y[i] =: element_ref(3i+1, data0, data1, data2), z[i] =: element_ref(3*i+2, data0, data1, data2).

public virtual Vector256<short> YGroup3Unzip(Vector256<short> data0, Vector256<short> data1, Vector256<short> data2, out Vector256<short> y, out Vector256<short> z)

Parameters

data0 Vector256<short>

A vector made of 3-element groups - Part 0 (由3元素组所组成的向量 - 第0部分).

data1 Vector256<short>

A vector made of 3-element groups - Part 1 (由3元素组所组成的向量 - 第1部分).

data2 Vector256<short>

A vector made of 3-element groups - Part 2 (由3元素组所组成的向量 - 第2部分).

y Vector256<short>

Returns the vector made of the Y-components (返回Y分量所组成的向量).

z Vector256<short>

Returns the vector made of the Z-components (返回Z分量所组成的向量).

Returns

Vector256<short>

Returns the vector made of the X-components (返回X分量所组成的向量).

See Also

YGroup3Unzip(Vector256<ushort>, Vector256<ushort>, Vector256<ushort>, out Vector256<ushort>, out Vector256<ushort>)

De-Interleave 3-element groups into 3 vectors. It converts the 3-element groups AoS to SoA. It can also deinterleave packed RGB pixel data into R,G,B planar data (将3-元素组解交织为3个向量. 它能将3元素组的 数组结构体 转为 结构体数组. 它还能将 已打包的RGB像素数据, 解交织为 R,G,B 平面数据). Mnemonic: x[i] =: element_ref(3i, data0, data1, data2), y[i] =: element_ref(3i+1, data0, data1, data2), z[i] =: element_ref(3*i+2, data0, data1, data2).

[CLSCompliant(false)]
public virtual Vector256<ushort> YGroup3Unzip(Vector256<ushort> data0, Vector256<ushort> data1, Vector256<ushort> data2, out Vector256<ushort> y, out Vector256<ushort> z)

Parameters

data0 Vector256<ushort>

A vector made of 3-element groups - Part 0 (由3元素组所组成的向量 - 第0部分).

data1 Vector256<ushort>

A vector made of 3-element groups - Part 1 (由3元素组所组成的向量 - 第1部分).

data2 Vector256<ushort>

A vector made of 3-element groups - Part 2 (由3元素组所组成的向量 - 第2部分).

y Vector256<ushort>

Returns the vector made of the Y-components (返回Y分量所组成的向量).

z Vector256<ushort>

Returns the vector made of the Z-components (返回Z分量所组成的向量).

Returns

Vector256<ushort>

Returns the vector made of the X-components (返回X分量所组成的向量).

See Also

YGroup3Unzip(Vector256<int>, Vector256<int>, Vector256<int>, out Vector256<int>, out Vector256<int>)

De-Interleave 3-element groups into 3 vectors. It converts the 3-element groups AoS to SoA. It can also deinterleave packed RGB pixel data into R,G,B planar data (将3-元素组解交织为3个向量. 它能将3元素组的 数组结构体 转为 结构体数组. 它还能将 已打包的RGB像素数据, 解交织为 R,G,B 平面数据). Mnemonic: x[i] =: element_ref(3i, data0, data1, data2), y[i] =: element_ref(3i+1, data0, data1, data2), z[i] =: element_ref(3*i+2, data0, data1, data2).

public virtual Vector256<int> YGroup3Unzip(Vector256<int> data0, Vector256<int> data1, Vector256<int> data2, out Vector256<int> y, out Vector256<int> z)

Parameters

data0 Vector256<int>

A vector made of 3-element groups - Part 0 (由3元素组所组成的向量 - 第0部分).

data1 Vector256<int>

A vector made of 3-element groups - Part 1 (由3元素组所组成的向量 - 第1部分).

data2 Vector256<int>

A vector made of 3-element groups - Part 2 (由3元素组所组成的向量 - 第2部分).

y Vector256<int>

Returns the vector made of the Y-components (返回Y分量所组成的向量).

z Vector256<int>

Returns the vector made of the Z-components (返回Z分量所组成的向量).

Returns

Vector256<int>

Returns the vector made of the X-components (返回X分量所组成的向量).

See Also

YGroup3Unzip(Vector256<uint>, Vector256<uint>, Vector256<uint>, out Vector256<uint>, out Vector256<uint>)

De-Interleave 3-element groups into 3 vectors. It converts the 3-element groups AoS to SoA. It can also deinterleave packed RGB pixel data into R,G,B planar data (将3-元素组解交织为3个向量. 它能将3元素组的 数组结构体 转为 结构体数组. 它还能将 已打包的RGB像素数据, 解交织为 R,G,B 平面数据). Mnemonic: x[i] =: element_ref(3i, data0, data1, data2), y[i] =: element_ref(3i+1, data0, data1, data2), z[i] =: element_ref(3*i+2, data0, data1, data2).

[CLSCompliant(false)]
public virtual Vector256<uint> YGroup3Unzip(Vector256<uint> data0, Vector256<uint> data1, Vector256<uint> data2, out Vector256<uint> y, out Vector256<uint> z)

Parameters

data0 Vector256<uint>

A vector made of 3-element groups - Part 0 (由3元素组所组成的向量 - 第0部分).

data1 Vector256<uint>

A vector made of 3-element groups - Part 1 (由3元素组所组成的向量 - 第1部分).

data2 Vector256<uint>

A vector made of 3-element groups - Part 2 (由3元素组所组成的向量 - 第2部分).

y Vector256<uint>

Returns the vector made of the Y-components (返回Y分量所组成的向量).

z Vector256<uint>

Returns the vector made of the Z-components (返回Z分量所组成的向量).

Returns

Vector256<uint>

Returns the vector made of the X-components (返回X分量所组成的向量).

See Also

YGroup3Unzip(Vector256<long>, Vector256<long>, Vector256<long>, out Vector256<long>, out Vector256<long>)

De-Interleave 3-element groups into 3 vectors. It converts the 3-element groups AoS to SoA. It can also deinterleave packed RGB pixel data into R,G,B planar data (将3-元素组解交织为3个向量. 它能将3元素组的 数组结构体 转为 结构体数组. 它还能将 已打包的RGB像素数据, 解交织为 R,G,B 平面数据). Mnemonic: x[i] =: element_ref(3i, data0, data1, data2), y[i] =: element_ref(3i+1, data0, data1, data2), z[i] =: element_ref(3*i+2, data0, data1, data2).

public virtual Vector256<long> YGroup3Unzip(Vector256<long> data0, Vector256<long> data1, Vector256<long> data2, out Vector256<long> y, out Vector256<long> z)

Parameters

data0 Vector256<long>

A vector made of 3-element groups - Part 0 (由3元素组所组成的向量 - 第0部分).

data1 Vector256<long>

A vector made of 3-element groups - Part 1 (由3元素组所组成的向量 - 第1部分).

data2 Vector256<long>

A vector made of 3-element groups - Part 2 (由3元素组所组成的向量 - 第2部分).

y Vector256<long>

Returns the vector made of the Y-components (返回Y分量所组成的向量).

z Vector256<long>

Returns the vector made of the Z-components (返回Z分量所组成的向量).

Returns

Vector256<long>

Returns the vector made of the X-components (返回X分量所组成的向量).

See Also

YGroup3Unzip(Vector256<ulong>, Vector256<ulong>, Vector256<ulong>, out Vector256<ulong>, out Vector256<ulong>)

De-Interleave 3-element groups into 3 vectors. It converts the 3-element groups AoS to SoA. It can also deinterleave packed RGB pixel data into R,G,B planar data (将3-元素组解交织为3个向量. 它能将3元素组的 数组结构体 转为 结构体数组. 它还能将 已打包的RGB像素数据, 解交织为 R,G,B 平面数据). Mnemonic: x[i] =: element_ref(3i, data0, data1, data2), y[i] =: element_ref(3i+1, data0, data1, data2), z[i] =: element_ref(3*i+2, data0, data1, data2).

[CLSCompliant(false)]
public virtual Vector256<ulong> YGroup3Unzip(Vector256<ulong> data0, Vector256<ulong> data1, Vector256<ulong> data2, out Vector256<ulong> y, out Vector256<ulong> z)

Parameters

data0 Vector256<ulong>

A vector made of 3-element groups - Part 0 (由3元素组所组成的向量 - 第0部分).

data1 Vector256<ulong>

A vector made of 3-element groups - Part 1 (由3元素组所组成的向量 - 第1部分).

data2 Vector256<ulong>

A vector made of 3-element groups - Part 2 (由3元素组所组成的向量 - 第2部分).

y Vector256<ulong>

Returns the vector made of the Y-components (返回Y分量所组成的向量).

z Vector256<ulong>

Returns the vector made of the Z-components (返回Z分量所组成的向量).

Returns

Vector256<ulong>

Returns the vector made of the X-components (返回X分量所组成的向量).

See Also