public void Transform(
RasterRegionXForm xform
)
Public Sub Transform( _
ByVal xform As RasterRegionXForm _
)
- (BOOL)transform:(LTRasterRegionXForm *)xform error:(NSError **)error
public void transform(RasterRegionXForm xform)
public:
void Transform(
RasterRegionXForm^ xform
)
xform
The RasterRegionXForm by which to transform this region
The RasterRegionXForm.ViewPerspective member of xform is ignored by this method. For more information, refer to RasterRegionXForm.
This example will create a large elliptical region in an image and fill it with yellow. It will then transform this region by making it twice as small and fill the new region with red.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
public void RasterRegionTransformExample()
{
string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");
string destFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1_TransformRegion.bmp");
using (RasterCodecs codecs = new RasterCodecs())
{
// Load the source image
using (RasterImage image = codecs.Load(srcFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1))
{
// Add a large elliptical region
image.AddEllipseToRegion(null, new LeadRect(0, 0, image.ImageWidth, image.ImageHeight), RasterRegionCombineMode.Set);
// Fill the image with yellow
FillCommand cmd = new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Yellow));
cmd.Run(image);
// Get the region
using (RasterRegion region = image.GetRegion(null))
{
// Transform this region by making it twice as small
LeadRect bounds = region.GetBounds();
RasterRegionXForm xform = RasterRegionXForm.Default;
xform.XScalarNumerator = 1;
xform.XScalarDenominator = 2;
xform.YScalarNumerator = 1;
xform.YScalarDenominator = 2;
xform.XOffset = bounds.Width / 2;
xform.YOffset = bounds.Height / 2;
region.Transform(xform);
// Re-set this region into the image
image.SetRegion(null, region, RasterRegionCombineMode.Set);
}
// Now fill with red and save
cmd = new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Red));
cmd.Run(image);
codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24);
}
}
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS21\Resources\Images";
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Public Sub RasterRegionTransformExample()
Dim codecs As New RasterCodecs()
Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")
Dim destFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1_TransformRegion.bmp")
' Load the source image
Using image As RasterImage = codecs.Load(srcFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1)
' Add a large elliptical region
image.AddEllipseToRegion(Nothing, New LeadRect(0, 0, image.ImageWidth, image.ImageHeight), RasterRegionCombineMode.Set)
' Fill the image with yellow
Dim cmd As New FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Yellow))
cmd.Run(image)
' Get the region
Using region As RasterRegion = image.GetRegion(Nothing)
' Transform this region by making it twice as small
Dim bounds As LeadRect = region.GetBounds()
Dim xform As RasterRegionXForm = RasterRegionXForm.Default
xform.XScalarNumerator = 1
xform.XScalarDenominator = 2
xform.YScalarNumerator = 1
xform.YScalarDenominator = 2
xform.XOffset = bounds.Width \ 2
xform.YOffset = bounds.Height \ 2
region.Transform(xform)
' Re-set this region into the image
image.SetRegion(Nothing, region, RasterRegionCombineMode.Set)
End Using
' Now fill with red and save
cmd = New FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Red))
cmd.Run(image)
codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24)
End Using
codecs.Dispose()
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\LEADTOOLS21\Resources\Images"
End Class
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