LEADTOOLS (Leadtools assembly)

GetRegionBounds Method

Show in webframe
Example 







RasterRegionXForm object that LEADTOOLS uses to translate between display coordinates and image coordinates. If you specify null (Nothing in Visual Basic) in this parameter, the scalar fields default to 1, the offsets default to 0, and the view perspective defaults to the image view perspective.
Gets the bounding rectangle of the image region.
Syntax
public LeadRect GetRegionBounds( 
   RasterRegionXForm xform
)
'Declaration
 
Public Function GetRegionBounds( _
   ByVal xform As RasterRegionXForm _
) As LeadRect
'Usage
 
Dim instance As RasterImage
Dim xform As RasterRegionXForm
Dim value As LeadRect
 
value = instance.GetRegionBounds(xform)
public LeadRect GetRegionBounds( 
   RasterRegionXForm xform
)
-(LeadRect)getRegionBounds:(LTRasterRegionXForm*)xform;
public LeadRect getRegionBounds(RasterRegionXForm xform)
 function Leadtools.RasterImage.GetRegionBounds( 
   xform 
)
public:
LeadRect GetRegionBounds( 
   RasterRegionXForm^ xform
) 

Parameters

xform
RasterRegionXForm object that LEADTOOLS uses to translate between display coordinates and image coordinates. If you specify null (Nothing in Visual Basic) in this parameter, the scalar fields default to 1, the offsets default to 0, and the view perspective defaults to the image view perspective.

Return Value

The bounding rectangle.
Example
Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.ImageProcessing.Core
Imports Leadtools.ImageProcessing.Color
Imports Leadtools.WinForms
Imports Leadtools.Dicom
Imports Leadtools.Drawing

Public Sub GetRegionBoundsExample()
   Dim codecs As RasterCodecs = New RasterCodecs()

   Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")
   Dim destFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1_GetRegionBounds.bmp")

   ' Load the image
   Dim image As RasterImage = codecs.Load(srcFileName)

   ' Add an ellipse inside a rectangle region to the image

   Dim rc As LeadRect = New LeadRect(image.Width \ 3, image.Height \ 3, image.Width \ 3, image.Height \ 3)
   image.AddEllipseToRegion(Nothing, rc, RasterRegionCombineMode.Set)

   rc = image.GetRegionBounds(Nothing)

   image.AddRectangleToRegion(Nothing, rc, RasterRegionCombineMode.Xor)

   ' Invert the region area and save the image
   Dim command As InvertCommand = New InvertCommand()
   command.Run(image)
   codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24)

   image.Dispose()
   codecs.Dispose()
End Sub

Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing.Color;
using Leadtools.WinForms;
using Leadtools.Dicom;
using Leadtools.Drawing;

      
public void GetRegionBoundsExample()
{
   RasterCodecs codecs = new RasterCodecs();
   string srcFileName = Path.Combine(ImagesPath.Path, "Image1.cmp");
   string destFileName = Path.Combine(ImagesPath.Path, "Image1_GetRegionBounds.bmp");

   // Load the image
   RasterImage image = codecs.Load(srcFileName);

   // Add an ellipse inside a rectangle region to the image

   LeadRect rc = new LeadRect(image.Width / 3, image.Height / 3, image.Width / 3, image.Height / 3);
   image.AddEllipseToRegion(null, rc, RasterRegionCombineMode.Set);

   rc = image.GetRegionBounds(null);

   image.AddRectangleToRegion(null, rc, RasterRegionCombineMode.Xor);

   // Invert the region area and save the image
   InvertCommand command = new InvertCommand();
   command.Run(image);
   codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24);

   image.Dispose();
   codecs.Dispose();
}
RasterImageExamples.prototype.GetRegionBoundsExample = function () {
   Tools.SetLicense();
   with (Leadtools) {
      with (Leadtools.Codecs) {
         var codecs = new RasterCodecs();

         var srcFileName = "Assets\\Image1.cmp";
         var destFileName = "Image1_GetRegionBounds.bmp";
         var image;
         // Load the image
         return Tools.AppInstallFolder().getFileAsync(srcFileName).then(function (loadFile) {
            return codecs.loadAsync(LeadStreamFactory.create(loadFile)).then(function (img) {
               image = img;

               // Add an ellipse inside a rectangle region to the image
               var rc = LeadRectHelper.create(image.width / 3, image.height / 3, image.width / 3, image.height / 3);
               image.addEllipseToRegion(null, rc, RasterRegionCombineMode.set);

               rc = image.getRegionBounds(null);

               image.addRectangleToRegion(null, rc, RasterRegionCombineMode.xor);

               // Invert the region area and save the image
               var command = new Leadtools.ImageProcessing.Color.InvertCommand();
               command.run(image);
               return Tools.AppLocalFolder().createFileAsync(destFileName)
            })
            .then(function (saveFile) {
               var saveStream = LeadStreamFactory.create(saveFile);
               return codecs.saveAsync(image, saveStream, RasterImageFormat.bmp, 24);
            })
            .then(function () {

               image.close();
               codecs.close();
            });
         });
      }
   }
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing.Color;
using Leadtools.Dicom;

      
public async Task GetRegionBoundsExample()
{
   RasterCodecs codecs = new RasterCodecs();
   string srcFileName = @"Assets\Image1.cmp";
   string destFileName = @"Image1_GetRegionBounds.bmp";

   // Load the image
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));

   // Add an ellipse inside a rectangle region to the image
   LeadRect rc = LeadRectHelper.Create(image.Width / 3, image.Height / 3, image.Width / 3, image.Height / 3);
   image.AddEllipseToRegion(null, rc, RasterRegionCombineMode.Set);

   rc = image.GetRegionBounds(null);

   image.AddRectangleToRegion(null, rc, RasterRegionCombineMode.Xor);

   // Invert the region area and save the image
   InvertCommand command = new InvertCommand();
   command.Run(image);
   StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
   ILeadStream saveStream = LeadStreamFactory.Create(saveFile);
   await codecs.SaveAsync(image, saveStream, RasterImageFormat.Bmp, 24);

   image.Dispose();
   codecs.Dispose();
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Dicom;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing.Color;
using Leadtools.Examples;
using Leadtools.Windows.Media;

public void GetRegionBoundsExample(Stream destStream)
{
   // create a new image to work with
   RasterImage image = new RasterImage(RasterMemoryFlags.Conventional, 500, 500, 24, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, null, null, 0);
   // Add an rectanle inside a rectangle region to the image

   LeadRect rc = new LeadRect(image.Width / 3, image.Height / 3, image.Width / 3, image.Height / 3);
   image.AddRectangleToRegion(null, rc, RasterRegionCombineMode.Set);

   rc = image.GetRegionBounds(null);

   rc = new LeadRect(image.Width / 4, image.Height / 4, image.Width / 4, image.Height / 4);
   image.AddRectangleToRegion(null, rc, RasterRegionCombineMode.Xor);

   // Invert the region area and save the image
   InvertCommand command = new InvertCommand();
   command.Run(image);

   // Save the image back to file
   RasterCodecs codecs = new RasterCodecs();
   codecs.Save(image, destStream, RasterImageFormat.Bmp, 0);

   image.Dispose();
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.Dicom
Imports Leadtools.ImageProcessing
Imports Leadtools.ImageProcessing.Core
Imports Leadtools.ImageProcessing.Color
Imports Leadtools.Windows.Media

Public Sub GetRegionBoundsExample(ByVal destStream As Stream)
   ' create a new image to work with
   Dim image As RasterImage = New RasterImage(RasterMemoryFlags.Conventional, 500, 500, 24, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, Nothing, Nothing, 0)
   ' Add an rectanle inside a rectangle region to the image

   Dim rc As LeadRect = New LeadRect(image.Width / 3, image.Height / 3, image.Width / 3, image.Height / 3)
   image.AddRectangleToRegion(Nothing, rc, RasterRegionCombineMode.Set)

   rc = image.GetRegionBounds(Nothing)

   rc = New LeadRect(image.Width / 4, image.Height / 4, image.Width / 4, image.Height / 4)
   image.AddRectangleToRegion(Nothing, rc, RasterRegionCombineMode.Xor)

   ' Invert the region area and save the image
   Dim command As InvertCommand = New InvertCommand()
   command.Run(image)

   ' Save the image back to file
   Dim codecs As RasterCodecs = New RasterCodecs()
   codecs.Save(image, destStream, RasterImageFormat.Bmp, 0)

   image.Dispose()
End Sub
Requirements

Target Platforms

See Also

Reference

RasterImage Class
RasterImage Members

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.