←Select platform

Transform Method

Summary
Transforms this RasterRegion by the specified RasterRegionXForm.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public void Transform( 
   RasterRegionXForm xform 
) 
- (BOOL)transform:(LTRasterRegionXForm *)xform error:(NSError **)error 
public void transform( 
   RasterRegionXForm xform 
); 
public: 
void Transform(  
   RasterRegionXForm^ xform 
)  
def Transform(self,xform): 

Parameters

xform
The RasterRegionXForm by which to transform this region

Remarks

The RasterRegionXForm.ViewPerspective member of  xform is ignored by this method. For more information, refer to RasterRegionXForm.

Example

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.

C#
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:\LEADTOOLS22\Resources\Images"; 
} 
Requirements

Target Platforms

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

Leadtools Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.