public void SetRegion(RasterRegionXForm xform,RasterRegion region,RasterRegionCombineMode combineMode)
- (BOOL)setRegion:(nullable LTRasterRegionXForm *)xformregion:(nullable LTRasterRegion *)regioncombineMode:(LTRasterRegionCombineMode)combineModeerror:(NSError **)error
public void setRegion(RasterRegionXForm xform,RasterRegion region,RasterRegionCombineMode combineMode)
public:void SetRegion(RasterRegionXForm^ xform,RasterRegion^ region,RasterRegionCombineMode combineMode)
def SetRegion(self,xform,region,combineMode):
xform
RasterRegionXForm object that LEADTOOLS uses to translate between display coordinates and image coordinates. If you specify null for this parameter, the scalar fields default to 1, the offsets default to 0, and the view perspective defaults to the image view perspective.
region
A RasterRegion object to set or update into this RasterImage. If this parameter is an empty region or null, then the current region in the image will be deleted (this is the equivalent of calling MakeRegionEmpty.
combineMode
The action to take regarding the existing image region, if one is defined.
To get the RasterRegion object that describes the current image region, use GetRegion.
To update an existing region, you specify how the new region is to be combined with the existing one using the combineMode parameter. For more information, refer to RasterRegionCombineMode.
The RasterRegion class provides a platform independent representation of a region of interest in an image that can be used in any platform supported by LEADTOOLS such as GDI, GDI+, and WPF. The RasterRegion class contains extensive methods and properties to manipulate the region data and save/load it to a byte array.
To convert a LEADTOOLS RasterRegion object to/from a device dependent region, you can use the following helper classes:
The RasterRegion class implements the IDisposable interface, so you must call Dispose on any region objects you create after using it.
For more information, refer to Creating a Region.
For more information, refer to Saving A Region.
For more information, refer to Working with the Existing Region.
using Leadtools;using Leadtools.Codecs;using Leadtools.ImageProcessing;public void RasterRegionExample(){string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");string destFileName1 = Path.Combine(LEAD_VARS.ImagesDir, "Image1_WithRegion1.bmp");string destFileName2 = Path.Combine(LEAD_VARS.ImagesDir, "Image1_WithRegion2.bmp");using (RasterCodecs codecs = new RasterCodecs()){// Load the source imageusing (RasterImage image = codecs.Load(srcFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1)){// Create a new rectangular RasterRegionusing (RasterRegion region = new RasterRegion(new LeadRect(20, 30, 100, 200))){// Show this region propertiesConsole.WriteLine("IsEmpty: {0}\nBounds: {1}", region.IsEmpty, region.GetBounds());// Set it into the imageimage.SetRegion(null, region, RasterRegionCombineMode.Set);// Fill the image with a color and save it to disk to show the regionFillCommand cmd = new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Yellow));cmd.Run(image);codecs.Save(image, destFileName1, RasterImageFormat.Bmp, 24);// Clear this regionregion.MakeEmpty();// Show its propertiesConsole.WriteLine("IsEmpty: {0}\nBounds: {1}", region.IsEmpty, region.GetBounds());// Set it into the image and fill again with red, notice// that this will fill the whole image since// the region is now emptyimage.SetRegion(null, region, RasterRegionCombineMode.Set);cmd = new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Red));cmd.Run(image);codecs.Save(image, destFileName2, RasterImageFormat.Bmp, 24);}}}}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";}
import static org.junit.Assert.assertTrue;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.nio.file.Files;import java.nio.file.Paths;import org.junit.*;import org.junit.runner.JUnitCore;import org.junit.runner.Result;import org.junit.runner.notification.Failure;import leadtools.*;import leadtools.codecs.*;import leadtools.imageprocessing.FillCommand;public void rasterRegionExample() {final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images";String srcFileName = combine(LEAD_VARS_IMAGES_DIR, "Image1.cmp");String destFileName1 = combine(LEAD_VARS_IMAGES_DIR, "Image1_WithRegion1.bmp");String destFileName2 = combine(LEAD_VARS_IMAGES_DIR, "Image1_WithRegion2.bmp");RasterCodecs codecs = new RasterCodecs();// Load the source imageRasterImage image = codecs.load(srcFileName, 0, CodecsLoadByteOrder.BGR_OR_GRAY, 1, 1);// Create a new rectangular RasterRegionRasterRegion region = new RasterRegion(new LeadRect(20, 30, 100, 200));// Show this region propertiesSystem.out.println("IsEmpty: " + region.isEmpty() + "\nBounds: " + region.getBounds());// Set it into the imageimage.setRegion(null, region, RasterRegionCombineMode.SET);// Fill the image with a color and save it to disk to show the regionFillCommand cmd = new FillCommand(RasterColor.fromKnownColor(RasterKnownColor.YELLOW));cmd.run(image);codecs.save(image, destFileName1, RasterImageFormat.BMP, 24);// Clear this regionregion.makeEmpty();// Show its propertiesSystem.out.println("IsEmpty: " + region.isEmpty() + "\nBounds: " + region.getBounds());// Set it into the image and fill again with red, notice// that this will fill the whole image since// the region is now emptyimage.setRegion(null, region, RasterRegionCombineMode.SET);cmd = new FillCommand(RasterColor.fromKnownColor(RasterKnownColor.RED));cmd.run(image);codecs.save(image, destFileName2, RasterImageFormat.BMP, 24);assertTrue("Image unsuccessfully saved", (new File(destFileName2)).exists());System.out.println("Command run and image saved to " + destFileName2);}
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
