Leadtools.Windows.Media.Effects Send comments on this topic. | Back to Introduction - All Topics | Help Version 15.02.15
GammaCorrectExtendedCommandBitmapEffect Class
See Also  Members   Example 
Leadtools.Windows.Media.Effects.Color Namespace : GammaCorrectExtendedCommandBitmapEffect Class





Adjusts the intensity of colors in an image by changing the gamma constant that is used to map the intensity values. Either of two different color spaces can be specified.

Syntax

Visual Basic (Declaration) 
Public Class GammaCorrectExtendedCommandBitmapEffect 
   Inherits RasterCommandBitmapEffect
Visual Basic (Usage)Copy Code
Dim instance As GammaCorrectExtendedCommandBitmapEffect
C# 
public class GammaCorrectExtendedCommandBitmapEffect : RasterCommandBitmapEffect 
Managed Extensions for C++ 
public __gc class GammaCorrectExtendedCommandBitmapEffect : public RasterCommandBitmapEffect 
C++/CLI 
public ref class GammaCorrectExtendedCommandBitmapEffect : public RasterCommandBitmapEffect 
XAML Property Element Usage 

GammaCorrectExtendedCommandBitmapEffect ...

Example

Visual BasicCopy Code
Public Sub GammaCorrectExtendedCommandBitmapEffectExample(ByVal element As FrameworkElement)
   ' Initialize Effect
   Dim effect As GammaCorrectExtendedCommandBitmapEffect = New GammaCorrectExtendedCommandBitmapEffect()
   effect.Gamma = 250
   effect.Type = GammaCorrectExtendedCommandBitmapEffectsType.YuvSpace
   element.BitmapEffect = effect

   ' Initialize Animations
   Dim animation1 As Int32Animation = New Int32Animation()
   animation1.From = 1
   animation1.To = 1000
   animation1.By = 1
   animation1.Duration = New Duration(TimeSpan.FromSeconds(2.0))
   animation1.AutoReverse = True
   animation1.RepeatBehavior = RepeatBehavior.Forever

   ' Initialize and run Storyboard
   Dim storyboard As Storyboard = New Storyboard()
   storyboard.SetTargetName(animation1, "AnimatedBitmapEffect")
   storyboard.SetTargetProperty(animation1, New PropertyPath(GammaCorrectExtendedCommandBitmapEffect.GammaProperty))
   element.RegisterName("AnimatedBitmapEffect", effect)
   storyboard.Children.Add(animation1)

   storyboard.Begin(element)
End Sub
C#Copy Code
public void GammaCorrectExtendedCommandBitmapEffectExample(FrameworkElement element) 

   // Initialize Effect 
   GammaCorrectExtendedCommandBitmapEffect effect = new GammaCorrectExtendedCommandBitmapEffect(); 
   effect.Gamma = 250; 
   effect.Type = GammaCorrectExtendedCommandBitmapEffectsType.YuvSpace; 
   element.BitmapEffect = effect; 
 
   // Initialize Animations 
   Int32Animation animation1 = new Int32Animation(); 
   animation1.From = 1; 
   animation1.To = 1000; 
   animation1.By = 1; 
   animation1.Duration = new Duration(TimeSpan.FromSeconds(2.0)); 
   animation1.AutoReverse = true; 
   animation1.RepeatBehavior = RepeatBehavior.Forever; 
 
   // Initialize and run Storyboard 
   Storyboard storyboard = new Storyboard(); 
   Storyboard.SetTargetName(animation1, "AnimatedBitmapEffect"); 
   Storyboard.SetTargetProperty(animation1, new PropertyPath(GammaCorrectExtendedCommandBitmapEffect.GammaProperty)); 
   element.RegisterName("AnimatedBitmapEffect", effect); 
   storyboard.Children.Add(animation1); 
 
   storyboard.Begin(element); 
}
XAMLCopy Code
<Page Title="CSAnimateEffect" Height="391" Width="300" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:lteffects="clr-namespace:Leadtools.Windows.Media.Effects.Color;assembly=Leadtools.Windows.Media.Effects"> 
  <Grid> 
    <Image Margin="10,10,10,10" HorizontalAlignment="Center" VerticalAlignment="Center" Source="C:\Program Files\LEAD Technologies, Inc\LEADTOOLS 15\Images\slave.jpg"> 
      <Image.BitmapEffect> 
        <lteffects:GammaCorrectExtendedCommandBitmapEffect x:Name="MyBitmapEffect" Gamma="1" /> 
      </Image.BitmapEffect> 
      <Image.Triggers> 
        <EventTrigger RoutedEvent="Image.Loaded"> 
          <BeginStoryboard> 
            <Storyboard> 
              <Int32Animation Storyboard.TargetName="MyBitmapEffect" Storyboard.TargetProperty="Gamma" From="1" To="1000" Duration="0:0:2" RepeatBehavior="Forever" AutoReverse="True" /> 
            </Storyboard> 
          </BeginStoryboard> 
        </EventTrigger> 
      </Image.Triggers> 
    </Image> 
  </Grid> 
</Page>

Remarks

  • This command is like the GammaCorrectCommandBitmapEffect method, but has been extended to allow the specification of the colorspace to be used.
  • Intensity values ideally follow a logarithmic progression, because the eye perceives changes in intensity as being equal when the ratio of change is equal. For example, we would see a change from 0.1 to 0.2 as being equal to a change from 0.2 to 0.4.
  • Gamma is a standard constant that is used to calculate the progression. For most CRTs the gamma constant is in the range of 2.2 to 2.5.

Inheritance Hierarchy

System.Object
   System.Windows.Threading.DispatcherObject
      System.Windows.DependencyObject
         System.Windows.Freezable
            System.Windows.Media.Animation.Animatable
               System.Windows.Media.Effects.BitmapEffect
                  Leadtools.Windows.Media.Effects.RasterCommandBitmapEffect
                     Leadtools.Windows.Media.Effects.Color.GammaCorrectExtendedCommandBitmapEffect

Requirements

Target Platforms: Microsoft .NET Framework 3.0, Windows XP, Windows Vista, and Windows Server 2003

See Also