public class CombineWarpCommand : RasterCommand
@interface LTCombineWarpCommand : LTRasterCommand
public ref class CombineWarpCommand : public RasterCommand
class CombineWarpCommand(RasterCommand):
You can warp the entire source image, or a portion of the source image. To warp a portion of the source image, set SourceRectangle accordingly. To warp the entire source image, set the following:
CombineWarp.Command.SourceRectangle = new LeadRect(0, 0, RasterImage.Width, RasterImage.Height);
The warp area in the destination image is specified in SetDestinationPoints. The polygon specified in SetDestinationPoints must:
If either of these conditions is false, this class will throw an exception.
The ordering of the points in SetDestinationPoints can affect the resulting warp. For example, if the source image is the following:
then ordering the points in SetDestinationPoints as shown below results in the following warp:
while ordering the points in SetDestinationPoints as shown below, results in the following warp:
The CombineWarpCommand works by combining the image in the DestinationImage property with the image passed to the Run method. The DestinationImage will then hold the result of the combine operation..
For more information, refer to Introduction to Image Processing With LEADTOOLS.
This command does not support signed data images.
This example will warp combines two images.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
public void CombineWarpCommandExample()
{
RasterCodecs codecs = new RasterCodecs();
string srcFileName1 = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");
string srcFileName2 = Path.Combine(LEAD_VARS.ImagesDir, "Image2.cmp");
string destFileName = Path.Combine(LEAD_VARS.ImagesDir, "CombineWarpCommand.bmp");
// Load the source images from disk
RasterImage parentImage = codecs.Load(srcFileName1);
RasterImage childImage = codecs.Load(srcFileName2);
// Combine them
CombineWarpCommand command = new CombineWarpCommand();
LeadPoint[] destPoints =
{
new LeadPoint(100,100),
new LeadPoint(200,75),
new LeadPoint(200,250),
new LeadPoint(100,200)
};
command.DestinationImage = parentImage;
command.SetDestinationPoints(destPoints);
command.SourceRectangle = new LeadRect(0, 0, childImage.Width, childImage.Height);
command.Flags = CombineWarpCommandFlags.Bilinear;
command.Run(childImage);
// Save it to disk
codecs.Save(parentImage, destFileName, RasterImageFormat.Bmp, 24);
// Clean Up
parentImage.Dispose();
childImage.Dispose();
codecs.Dispose();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document