Struct RgbaHalf
- Namespace
- SixLabors.ImageSharp.PixelFormats
- Assembly
- SixLabors.ImageSharp.dll
Packed pixel type containing four 16-bit floating-point values typically ranging from 0 to 1. The color components are stored in red, green, blue, and alpha order.
public struct RgbaHalf : IPixel<RgbaHalf>, IEquatable<RgbaHalf>, IPackedVector<ulong>, IPixel
- Implements
- Inherited Members
Remarks
ToVector4() and scaled vector conversions return the same component values in the nominal color range
[0, 1]. The packed representation is binary-compatible with DXGI_FORMAT_R16G16B16A16_FLOAT.
Constructors
RgbaHalf(Vector4)
Initializes a new instance of the RgbaHalf struct.
public RgbaHalf(Vector4 vector)
Parameters
vectorVector4The vector containing the component values.
RgbaHalf(float, float, float)
Initializes a new instance of the RgbaHalf struct.
public RgbaHalf(float r, float g, float b)
Parameters
RgbaHalf(float, float, float, float)
Initializes a new instance of the RgbaHalf struct.
public RgbaHalf(float r, float g, float b, float a)
Parameters
rfloatThe red component.
gfloatThe green component.
bfloatThe blue component.
afloatThe alpha component.
Fields
A
Gets or sets the alpha component.
public Half A
Field Value
B
Gets or sets the blue component.
public Half B
Field Value
G
Gets or sets the green component.
public Half G
Field Value
R
Gets or sets the red component.
public Half R
Field Value
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<RgbaHalf> CreatePixelOperations()
Returns
- PixelOperations<RgbaHalf>
The PixelOperations<TPixel> instance.
Equals(RgbaHalf)
Indicates whether the current object is equal to another object of the same type.
public readonly bool Equals(RgbaHalf other)
Parameters
otherRgbaHalfAn 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 RgbaHalf FromAbgr32(Abgr32 source)
Parameters
Returns
FromArgb32(Argb32)
Initializes the pixel instance from an Argb32 value.
public static RgbaHalf FromArgb32(Argb32 source)
Parameters
Returns
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 RgbaHalf FromAssociatedScaledVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
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 RgbaHalf FromAssociatedVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
FromBgr24(Bgr24)
Initializes the pixel instance from an Bgr24 value.
public static RgbaHalf FromBgr24(Bgr24 source)
Parameters
Returns
FromBgra32(Bgra32)
Initializes the pixel instance from an Bgra32 value.
public static RgbaHalf FromBgra32(Bgra32 source)
Parameters
Returns
FromBgra5551(Bgra5551)
Initializes the pixel instance from an Bgra5551 value.
public static RgbaHalf FromBgra5551(Bgra5551 source)
Parameters
Returns
FromL16(L16)
Initializes the pixel instance from an L16 value.
public static RgbaHalf FromL16(L16 source)
Parameters
Returns
FromL8(L8)
Initializes the pixel instance from an L8 value.
public static RgbaHalf FromL8(L8 source)
Parameters
Returns
FromLa16(La16)
Initializes the pixel instance from an La16 value.
public static RgbaHalf FromLa16(La16 source)
Parameters
Returns
FromLa32(La32)
Initializes the pixel instance from an La32 value.
public static RgbaHalf FromLa32(La32 source)
Parameters
Returns
FromRgb24(Rgb24)
Initializes the pixel instance from an Rgb24 value.
public static RgbaHalf FromRgb24(Rgb24 source)
Parameters
Returns
FromRgb48(Rgb48)
Initializes the pixel instance from an Rgb48 value.
public static RgbaHalf FromRgb48(Rgb48 source)
Parameters
Returns
FromRgba32(Rgba32)
Initializes the pixel instance from an Rgba32 value.
public static RgbaHalf FromRgba32(Rgba32 source)
Parameters
Returns
FromRgba64(Rgba64)
Initializes the pixel instance from an Rgba64 value.
public static RgbaHalf FromRgba64(Rgba64 source)
Parameters
Returns
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 RgbaHalf FromScaledVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
FromUnassociatedScaledVector4(Vector4)
Initializes the pixel instance from a generic ("scaled") Vector4 whose color components use unassociated alpha.
The scaled representation uses
public static RgbaHalf FromUnassociatedScaledVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
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 RgbaHalf FromUnassociatedVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
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 RgbaHalf FromVector4(Vector4 source)
Parameters
sourceVector4The vector to load the pixel from.
Returns
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 ==(RgbaHalf, RgbaHalf)
Compares two RgbaHalf values for equality.
public static bool operator ==(RgbaHalf left, RgbaHalf right)
Parameters
Returns
operator !=(RgbaHalf, RgbaHalf)
Compares two RgbaHalf values for inequality.
public static bool operator !=(RgbaHalf left, RgbaHalf right)