DekGenius.com
[ Team LiB ] Previous Section Next Section

ColorMatrix

System.Drawing.Imaging (system.drawing.dll)sealed class

A color matrix (also commonly called a "color twist matrix") is used to transform one color into another, by considering the color definition to be a 3D vector into a color cube. Only because we now have an alpha channel, it is actually a 4D vector into a color hypercube!

It is a 5x5 matrix and is used to transform an {R,G,B,A,1} color. Note that the color vector is considered to be "wide" rather than "tall" (compare this to the System.Drawing.Drawing2D.Matrix class and a Point, which is considered to be tall, rather than wide).

You can retrieve any Item from the matrix (this is the indexer property), or you can use one of the 25 properties prefixed with "Matrix" to get or set the values.

The matrix is applied with the ImageAttributes.SetColorMatrix() method.

public sealed class ColorMatrix {
// Public Constructors
   public ColorMatrix();
   public ColorMatrix(float[  ][ ] newColorMatrix);
// Public Instance Properties
   public float Matrix00{set; get; }
   public float Matrix01{set; get; }
   public float Matrix02{set; get; }
   public float Matrix03{set; get; }
   public float Matrix04{set; get; }
   public float Matrix10{set; get; }
   public float Matrix11{set; get; }
   public float Matrix12{set; get; }
   public float Matrix13{set; get; }
   public float Matrix14{set; get; }
   public float Matrix20{set; get; }
   public float Matrix21{set; get; }
   public float Matrix22{set; get; }
   public float Matrix23{set; get; }
   public float Matrix24{set; get; }
   public float Matrix30{set; get; }
   public float Matrix31{set; get; }
   public float Matrix32{set; get; }
   public float Matrix33{set; get; }
   public float Matrix34{set; get; }
   public float Matrix40{set; get; }
   public float Matrix41{set; get; }
   public float Matrix42{set; get; }
   public float Matrix43{set; get; }
   public float Matrix44{set; get; }
   public float this{set; get; }
}

Passed To

ImageAttributes.{SetColorMatrices(), SetColorMatrix()}

    [ Team LiB ] Previous Section Next Section