Struct HalfVector4P
- Namespace
- SixLabors.ImageSharp.PixelFormats
- Assembly
- SixLabors.ImageSharp.dll
Packed pixel type containing four associated 16-bit floating-point values.
public struct HalfVector4P : IPixel<HalfVector4P>, IEquatable<HalfVector4P>, IPackedVector<ulong>, IPixel
- Implements
- Inherited Members
Remarks
ToVector4() returns the stored associated IEEE 754 binary16 values directly. Scaled vector conversions
normalize the finite range [-65504, 65504] to [0, 1] while preserving associated alpha. The packed
representation is binary-compatible with DXGI_FORMAT_R16G16B16A16_FLOAT.
Constructors
HalfVector4P(Vector4)
Initializes a new instance of the HalfVector4P struct.
public HalfVector4P(Vector4 vector)
Parameters
vectorVector4The vector containing the associated component values.
HalfVector4P(float, float, float, float)
Initializes a new instance of the HalfVector4P struct.
public HalfVector4P(float x, float y, float z, float w)
Parameters
xfloatThe associated x-component.
yfloatThe associated y-component.
zfloatThe associated z-component.
wfloatThe alpha component.
Properties
PackedValue
Gets or sets the packed representation of the value.
public ulong PackedValue { readonly get; set; }
Property Value
Methods
CreatePixelOperations()
Creates a PixelOperations<TPixel> instance for this pixel type. This method is not intended to be consumed directly. Use Instance instead.
public static PixelOperations<HalfVector4P> CreatePixelOperations()
Returns
- PixelOperations<HalfVector4P>
The PixelOperations<TPixel> instance.
Equals(HalfVector4P)
Indicates whether the current object is equal to another object of the same type.
public readonly bool Equals(HalfVector4P other)
Parameters
otherHalfVector4PAn object to compare with this object.
Returns
Equals(object?)
Indicates whether this instance and a specified object are equal.
public override readonly bool Equals(object? obj)
Parameters
objobjectThe object to compare with the current instance.
Returns
- bool
true if
objand this instance are the same type and represent the same value; otherwise, false.
FromAbgr32(Abgr32)
Initializes the pixel instance from an Abgr32 value.
public static HalfVector4P FromAbgr32(Abgr32 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromArgb32(Argb32)
Initializes the pixel instance from an Argb32 value.
public static HalfVector4P FromArgb32(Argb32 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromAssociatedScaledVector4(Vector4)
Initializes the pixel instance from a generic ("scaled") Vector4 whose color components use associated alpha,
representing color multiplied by the logical opacity represented by alpha.
The scaled representation uses
public static HalfVector4P FromAssociatedScaledVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
- HalfVector4P
The HalfVector4P.
FromAssociatedVector4(Vector4)
Initializes the pixel instance from a Vector4 which is specific to the current pixel type and whose color components use associated alpha, representing color multiplied by the logical opacity represented by alpha.
public static HalfVector4P FromAssociatedVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
- HalfVector4P
The HalfVector4P.
FromBgr24(Bgr24)
Initializes the pixel instance from an Bgr24 value.
public static HalfVector4P FromBgr24(Bgr24 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromBgra32(Bgra32)
Initializes the pixel instance from an Bgra32 value.
public static HalfVector4P FromBgra32(Bgra32 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromBgra5551(Bgra5551)
Initializes the pixel instance from an Bgra5551 value.
public static HalfVector4P FromBgra5551(Bgra5551 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromL16(L16)
Initializes the pixel instance from an L16 value.
public static HalfVector4P FromL16(L16 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromL8(L8)
Initializes the pixel instance from an L8 value.
public static HalfVector4P FromL8(L8 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromLa16(La16)
Initializes the pixel instance from an La16 value.
public static HalfVector4P FromLa16(La16 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromLa32(La32)
Initializes the pixel instance from an La32 value.
public static HalfVector4P FromLa32(La32 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromRgb24(Rgb24)
Initializes the pixel instance from an Rgb24 value.
public static HalfVector4P FromRgb24(Rgb24 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromRgb48(Rgb48)
Initializes the pixel instance from an Rgb48 value.
public static HalfVector4P FromRgb48(Rgb48 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromRgba32(Rgba32)
Initializes the pixel instance from an Rgba32 value.
public static HalfVector4P FromRgba32(Rgba32 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromRgba64(Rgba64)
Initializes the pixel instance from an Rgba64 value.
public static HalfVector4P FromRgba64(Rgba64 source)
Parameters
Returns
- HalfVector4P
The HalfVector4P.
FromScaledVector4(Vector4)
Initializes the pixel instance from a generic ("scaled") Vector4 representation using the pixel type's native alpha representation.
The scaled representation uses
public static HalfVector4P FromScaledVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
- HalfVector4P
The HalfVector4P.
FromUnassociatedScaledVector4(Vector4)
Initializes the pixel instance from a generic ("scaled") Vector4 whose color components use unassociated alpha.
The scaled representation uses
public static HalfVector4P FromUnassociatedScaledVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
- HalfVector4P
The HalfVector4P.
FromUnassociatedVector4(Vector4)
Initializes the pixel instance from a Vector4 which is specific to the current pixel type and whose color components use unassociated alpha.
public static HalfVector4P FromUnassociatedVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
- HalfVector4P
The HalfVector4P.
FromVector4(Vector4)
Initializes the pixel instance from a Vector4 which is specific to the current pixel type and uses its native alpha representation.
public static HalfVector4P FromVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
- HalfVector4P
The HalfVector4P.
GetHashCode()
Returns the hash code for this instance.
public override readonly int GetHashCode()
Returns
- int
A 32-bit signed integer that is the hash code for this instance.
GetPixelTypeInfo()
Gets the pixel type information.
public static PixelTypeInfo GetPixelTypeInfo()
Returns
ToAssociatedScaledVector4()
Expands the pixel into a generic ("scaled") Vector4 whose color components use associated alpha,
representing color multiplied by the logical opacity represented by alpha.
The scaled representation uses
public readonly Vector4 ToAssociatedScaledVector4()
Returns
ToAssociatedVector4()
Expands the pixel into a Vector4 which is specific to the current pixel type and whose color components use associated alpha, representing color multiplied by the logical opacity represented by alpha.
public readonly Vector4 ToAssociatedVector4()
Returns
ToRgba32()
Convert the pixel instance into Rgba32 representation.
public readonly Rgba32 ToRgba32()
Returns
ToScaledVector4()
Expands the pixel into a generic ("scaled") Vector4 representation using the pixel type's native alpha representation.
The scaled representation uses
public readonly Vector4 ToScaledVector4()
Returns
ToString()
Returns the fully qualified type name of this instance.
public override readonly string ToString()
Returns
- string
The fully qualified type name.
ToUnassociatedScaledVector4()
Expands the pixel into a generic ("scaled") Vector4 whose color components use unassociated alpha.
The scaled representation uses
public readonly Vector4 ToUnassociatedScaledVector4()
Returns
ToUnassociatedVector4()
Expands the pixel into a Vector4 which is specific to the current pixel type and whose color components use unassociated alpha. When alpha is zero and the pixel's native representation is associated, the color components remain unchanged because no unassociated value can be recovered.
public readonly Vector4 ToUnassociatedVector4()
Returns
ToVector4()
Expands the pixel into a Vector4 which is specific to the current pixel type and uses its native alpha representation. The vector components are typically expanded in least to greatest significance order.
public readonly Vector4 ToVector4()
Returns
Operators
operator ==(HalfVector4P, HalfVector4P)
Compares two HalfVector4P values for equality.
public static bool operator ==(HalfVector4P left, HalfVector4P right)
Parameters
leftHalfVector4PThe left value.
rightHalfVector4PThe right value.
Returns
operator !=(HalfVector4P, HalfVector4P)
Compares two HalfVector4P values for inequality.
public static bool operator !=(HalfVector4P left, HalfVector4P right)
Parameters
leftHalfVector4PThe left value.
rightHalfVector4PThe right value.