Shears the image by the wave drawn using the amplitudes array. This command is available in the Imaging Pro and above toolkits.
public class FreeHandShearCommand : Leadtools.Imageprocessing.Leadtools.ImageProcessing.RasterCommand, Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommandPublic Class FreeHandShearCommandInherits Leadtools.Imageprocessing.Leadtools.ImageProcessing.RasterCommandImplements Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand
public sealed class FreeHandShearCommand : Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommandfunction Leadtools.ImageProcessing.SpecialEffects.FreeHandShearCommand()public ref class FreeHandShearCommand : public Leadtools.Imageprocessing.Leadtools.ImageProcessing.RasterCommand, Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommandFor more information, refer to Applying Artistic Effects.
Run the FreeHandShearCommand on an image.
Imports LeadtoolsImports Leadtools.CodecsImports Leadtools.ImageProcessing.SpecialEffectsImports Leadtools.ImageProcessing.Effects<TestMethod()> _Public Sub FreeHandShearCommandExample()Dim codecs As New RasterCodecs()codecs.ThrowExceptionsOnInvalidImages = TrueDim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "sample5.cmp"))' Prepare the commandDim UserPoint() As LeadPointReDim UserPoint(3)Dim Amplitudes() As IntegerReDim Amplitudes(12)Dim command As FreeHandShearCommand = New FreeHandShearCommand' Fill apUserPoint array with points that define a triangular waveUserPoint(0).X = 0UserPoint(0).Y = 0UserPoint(1).X = 3UserPoint(1).Y = 10UserPoint(2).X = 9UserPoint(2).Y = -10UserPoint(3).X = 12UserPoint(3).Y = 0' Draw a triangular wave according to UserPoint points and store the Amplitudes values in the Amplitudes array.EffectsUtilities.GetCurvePoints(Amplitudes, UserPoint, CurvePointsType.Linear)' Normalize Amplitudes array (maximum value in Amplitudes is 1000 and lower is -1000).Dim Maximum As IntegerDim i As IntegerMaximum = 0For i = 0 To 12If (Maximum < Amplitudes(i)) ThenMaximum = Amplitudes(i)End IfNextIf (Maximum <> 0) ThenFor i = 0 To 12Amplitudes(i) = (1000 * Amplitudes(i) \ Math.Abs(Maximum))NextEnd Ifcommand.Amplitudes = Amplitudescommand.Scale = 100command.FillColor = New RasterColor(0, 0, 0)command.Flags = FreeHandShearCommandFlags.Horizontal Or FreeHandShearCommandFlags.Repeat' Apply the shear wave horizontally.command.Run(leadImage)codecs.Save(leadImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24)End SubPublic NotInheritable Class LEAD_VARSPublic Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"End Class
using Leadtools;using Leadtools.Codecs;using Leadtools.ImageProcessing.SpecialEffects;using Leadtools.ImageProcessing.Effects;public void FreeHandShearCommandExample(){// Load an imageRasterCodecs codecs = new RasterCodecs();codecs.ThrowExceptionsOnInvalidImages = true;RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "sample5.cmp"));// Prepare the commandLeadPoint[] UserPoint = new LeadPoint[4];int[] Amplitudes = new int[13];FreeHandShearCommand command = new FreeHandShearCommand();// Fill apUserPoint array with points that define a triangular waveUserPoint[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;// Draw a triangular wave according to UserPoint points and store the Amplitudes values in the Amplitudes array.EffectsUtilities.GetCurvePoints(Amplitudes, UserPoint, CurvePointsType.Linear);// Normalize Amplitudes array (maximum value in Amplitudes is 1000 and lower is -1000).int Maximum, i;for(Maximum = 0, i = 0; i < 13; i++){if(Maximum < Amplitudes [i])Maximum = Amplitudes [i];}if(Maximum != 0){for(i = 0; i < 13; i++){Amplitudes [i] = (1000 * Amplitudes [i] / Math.Abs(Maximum));}}command.Amplitudes = Amplitudes;command.Scale = 100;command.FillColor = new RasterColor(0, 0, 0);command.Flags = FreeHandShearCommandFlags.Horizontal | FreeHandShearCommandFlags.Repeat;// Apply the shear wave horizontally.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";}
Leadtools.ImageProcessing.SpecialEffects Namespace
Leadtools.ImageProcessing.Effects.AddNoiseCommand
Leadtools.ImageProcessing.Effects.EmbossCommand
Leadtools.ImageProcessing.Effects.MosaicCommand
Leadtools.ImageProcessing.Effects.MotionBlurCommand
Leadtools.ImageProcessing.Effects.OilifyCommand
Leadtools.ImageProcessing.Color.PosterizeCommand
Leadtools.ImageProcessing.Color.RemoveRedEyeCommand
Leadtools.ImageProcessing.Color.SolarizeCommand
Leadtools.ImageProcessing.Effects.CubismCommand
Leadtools.ImageProcessing.Color.SampleTargetCommand
Leadtools.ImageProcessing.Effects.DisplacementCommand
Leadtools.ImageProcessing.Core.HalfTonePatternCommand
Leadtools.ImageProcessing.Effects.MaskConvolutionCommand
|
Products |
Support |
Feedback: FreeHandShearCommand Class - Leadtools.ImageProcessing.SpecialEffects |
Introduction |
Help Version 19.0.2017.3.21
|

Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.