←Select platform

FreeHandWaveCommand Constructor(int[],int,int,int,RasterColor,FreeHandWaveCommandFlags)

Summary

Initializes a new FreeHandWaveCommand class object with explicit parameters.

Syntax
C#
VB
C++
  
Public Function New( _ 
   ByVal amplitudes() As Integer, _ 
   ByVal scale As Integer, _ 
   ByVal waveLength As Integer, _ 
   ByVal angle As Integer, _ 
   ByVal fillColor As RasterColor, _ 
   ByVal flags As FreeHandWaveCommandFlags _ 
) 
public: 
FreeHandWaveCommand(  
   array<int>^ amplitudes, 
   int scale, 
   int waveLength, 
   int angle, 
   RasterColor fillColor, 
   FreeHandWaveCommandFlags flags 
) 

Parameters

amplitudes
Array of integers that represent wave values. The real value of the array elements is divided by 1000. These values are generally obtained from the Leadtools.ImageProcessing.Effects.EffectsUtilities.GetCurvePoints(System.Int32[],Leadtools.LeadPoint[],Leadtools.ImageProcessing.Effects.CurvePointsType) utility method.

scale
Factor used to increase or decrease the various amplitude values in the amplitudes array. Each value in the amplitudes array is multiplied by this factor. The real factor value is the Scale value divided by 100. This property only accepts positive values.

waveLength
Value that represents the wave length, if FreeHandWaveCommandFlags.Period flag is set. Possible values range from 1 - 100 and give the wavelength as a percentage of the image dimensions. If FreeHandWaveCommandFlags.Frequency flag is set, this value is the number of repeated waves.

angle
Wave rotation angle in hundredths of a degree (+/-). The valid range is from -36000 to 36000. The value in degrees is angle divided by 100.

fillColor
RasterColor object that specifies the fill color for any exposed areas.

flags
FreeHandWaveCommandFlags enumeration that indicate how to handle exposed areas, and the type of information contained in waveLength parameter.

Example

Run the FreeHandWaveCommand on an image and apply triangular wave on the loaded image.

C#
VB
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.SpecialEffects; 
using Leadtools.ImageProcessing.Effects; 
 
public void FreeHandWaveConstructorExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "sample5.cmp")); 
 
   // Prepare the command 
   LeadPoint[] userPoint = new LeadPoint[4]; 
   // Fill UserPoint array with points that define a triangular wave 
   userPoint[0].X = 0; 
   userPoint[0].Y = 0; 
   userPoint[1].X = 3; 
   userPoint[1].Y = 10; 
   userPoint[2].X = 9; 
   userPoint[2].Y = -10; 
   userPoint[3].X = 12; 
   userPoint[3].Y = 0; 
 
   int[] amplitudes = new int[13]; 
   //Draw a triangular wave according to UserPoint points and store the Amplitudes values in the Amplitudes array. 
   EffectsUtilities.GetCurvePoints(amplitudes, userPoint, CurvePointsType.Linear); 
 
   FreeHandWaveCommand command = new FreeHandWaveCommand(amplitudes, 100, 10, 0, new RasterColor(0, 0, 0), FreeHandWaveCommandFlags.Repeat | FreeHandWaveCommandFlags.Frequency); 
   command.Run(image); 
   codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24); 
 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing.SpecialEffects 
Imports Leadtools.ImageProcessing.Effects 
 
Public Sub FreeHandWaveConstructorExample() 
   Dim codecs As New RasterCodecs() 
   codecs.ThrowExceptionsOnInvalidImages = True 
 
   Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "sample5.cmp")) 
 
   ' Prepare the command 
   Dim userPoint() As LeadPoint 
   ReDim userPoint(3) 
   ' Fill UserPoint array with points that define a triangular wave 
   userPoint(0).X = 0 
   userPoint(0).Y = 0 
   userPoint(1).X = 3 
   userPoint(1).Y = 10 
   userPoint(2).X = 9 
   userPoint(2).Y = -10 
   userPoint(3).X = 12 
   userPoint(3).Y = 0 
 
   Dim amplitudes() As Integer 
   ReDim amplitudes(12) 
   'Draw a triangular wave according to UserPoint points and store the Amplitudes values in the Amplitudes array 
   EffectsUtilities.GetCurvePoints(amplitudes, userPoint, CurvePointsType.Linear) 
 
   Dim command As FreeHandWaveCommand 
   command = New FreeHandWaveCommand(amplitudes, 100, 10, 0, New RasterColor(0, 0, 0), FreeHandWaveCommandFlags.Repeat Or FreeHandWaveCommandFlags.Frequency) 
   command.Run(leadImage) 
   codecs.Save(leadImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24) 
 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 

Requirements

Target Platforms

Help Version 20.0.2019.3.11
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2019 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.ImageProcessing.SpecialEffects Assembly