LEADTOOLS (Leadtools assembly)
LEAD Technologies, Inc

IsVisible Method

Example 





The LeadPoint structure to test.
Tests whether the specified LeadPoint structure is contained within this RasterRegion. .NET support Silverlight support WinRT support
Syntax
public bool IsVisible( 
   LeadPoint point
)
'Declaration
 
Public Function IsVisible( _
   ByVal point As LeadPoint _
) As Boolean
'Usage
 
Dim instance As RasterRegion
Dim point As LeadPoint
Dim value As Boolean
 
value = instance.IsVisible(point)
public bool IsVisible( 
   LeadPoint point
)
 function Leadtools.RasterRegion.IsVisible( 
   point 
)
public:
bool IsVisible( 
   LeadPoint point
) 

Parameters

point
The LeadPoint structure to test.

Return Value

true when point is contained within this RasterRegion; false, otherwise.
Example
 
Public Sub RasterRegionIsVisibleExample()
      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_IsVisibleRegion.bmp")

      ' Load the source image
      Using image As RasterImage = codecs.Load(srcFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1)
         ' Add a small elliptical region
         image.AddEllipseToRegion(Nothing, New LeadRect(image.ImageWidth \ 3, image.ImageHeight \ 3, image.ImageWidth \ 3, image.ImageHeight \ 3), RasterRegionCombineMode.Set)

         ' Get the region
         Using region As RasterRegion = image.GetRegion(Nothing)
            ' Remove the region from the image
            image.MakeRegionEmpty()

            ' Loop the image pixels, if it is inside the region, switch
            ' the red and blue component of the pixel color
            For y As Integer = 0 To image.Height - 1
               For x As Integer = 0 To image.Width - 1
                  ' Check if this pixel is inside the region
                  If (region.IsVisible(New LeadPoint(x, y))) Then
                     ' Yes, flip its R and B component
                     Dim color As RasterColor = image.GetPixelColor(y, x)
                     color = New RasterColor(color.B, color.G, color.R)
                     image.SetPixelColor(y, x, color)
                  End If
               Next
            Next
         End Using

         codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24)
      End Using

      codecs.Dispose()
   End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
public void RasterRegionIsVisibleExample()
   {
      RasterCodecs codecs = new RasterCodecs();

      string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");
      string destFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1_IsVisibleRegion.bmp");

      // Load the source image
      using(RasterImage image = codecs.Load(srcFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1))
      {
         // Add a small elliptical region
         image.AddEllipseToRegion(null, new LeadRect(image.ImageWidth / 3, image.ImageHeight / 3, image.ImageWidth / 3, image.ImageHeight / 3), RasterRegionCombineMode.Set);

         // Get the region
         using(RasterRegion region = image.GetRegion(null))
         {
            // Remove the region from the image
            image.MakeRegionEmpty();

            // Loop the image pixels, if it is inside the region, switch
            // the red and blue component of the pixel color
            for(int y = 0; y < image.Height; y++)
            {
               for(int x = 0; x < image.Width; x++)
               {
                  // Check if this pixel is inside the region
                  if(region.IsVisible(new LeadPoint(x, y)))
                  {
                     // Yes, flip its R and B component
                     RasterColor color = image.GetPixelColor(y, x);
                     color = new RasterColor(color.B, color.G, color.R);
                     image.SetPixelColor(y, x, color);
                  }
               }
            }
         }

         codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24);
      }

      codecs.Dispose();
   }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
RasterRegionExamples.prototype.RasterRegionIsVisibleExample = function () {
    Tools.SetLicense();
    with (Leadtools) {
        with (Leadtools.Codecs) {
            var codecs = new RasterCodecs();

            var srcFileName = "Assets\\Image1.cmp";
            var destFileName = "Image1_IsVisibleRegion.bmp";
            var image;
            // Load the source image
            return Tools.AppInstallFolder().getFileAsync(srcFileName).then(function (loadFile) {
                return codecs.loadAsync(LeadStreamFactory.create(loadFile), 0, CodecsLoadByteOrder.bgrOrGray, 1, 1)
            })
                .then(function (img) {
                    image = img;
                    // Add a small elliptical region
                    image.addEllipseToRegion(null, LeadRectHelper.create(image.imageWidth / 3, image.imageHeight / 3, image.imageWidth / 3, image.imageHeight / 3), RasterRegionCombineMode.set);

                    // Get the region
                    var region = image.getRegion(null);

                    // Remove the region from the image
                    image.makeRegionEmpty();

                    // Loop the image pixels, if it is inside the region, switch
                    // the red and blue component of the pixel color
                    for (var y = 0; y < image.height; y++) {
                        for (var x = 0; x < image.width; x++) {
                            // Check if this pixel is inside the region
                            if (region.isVisible(LeadPointHelper.create(x, y))) {
                                // Yes, flip its R and B component
                                var color = image.getPixelColor(y, x);
                                color = RasterColorHelper.create(color.b, color.g, color.r);
                                image.setPixelColor(y, x, color);
                            }
                        }
                    }
                    region.close();

                    return Tools.AppLocalFolder().createFileAsync(destFileName)
                })
                .then(function (saveFile) {
                    var saveStream = LeadStreamFactory.create(saveFile);
                    return codecs.saveAsync(image, saveStream, RasterImageFormat.bmp, 0)
                })
                .then(function () {
                    image.close();
                    codecs.close();
                });
        }
    }
}
[TestMethod]
public async Task RasterRegionIsVisibleExample()
{
   RasterCodecs codecs = new RasterCodecs();
   string srcFileName = @"Assets\Image1.cmp";
   string destFileName = "Image1_IsVisibleRegion.bmp";

   // Load the source image
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   using (RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile), 0, CodecsLoadByteOrder.BgrOrGray, 1, 1))
   {
      // Add a small elliptical region
      image.AddEllipseToRegion(null, LeadRectHelper.Create(image.ImageWidth / 3, image.ImageHeight / 3, image.ImageWidth / 3, image.ImageHeight / 3), RasterRegionCombineMode.Set);

      // Get the region
      using (RasterRegion region = image.GetRegion(null))
      {
         // Remove the region from the image
         image.MakeRegionEmpty();

         // Loop the image pixels, if it is inside the region, switch
         // the red and blue component of the pixel color
         for (int y = 0; y < image.Height; y++)
         {
            for (int x = 0; x < image.Width; x++)
            {
               // Check if this pixel is inside the region
               if (region.IsVisible(LeadPointHelper.Create(x, y)))
               {
                  // Yes, flip its R and B component
                  RasterColor color = image.GetPixelColor(y, x);
                  color = RasterColorHelper.Create(color.B, color.G, color.R);
                  image.SetPixelColor(y, x, color);
               }
            }
         }
      }

      StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
      ILeadStream saveStream = LeadStreamFactory.Create(saveFile);
      await codecs.SaveAsync(image, saveStream, RasterImageFormat.Bmp, 0);
   }

   codecs.Dispose();
}
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

RasterRegion Class
RasterRegion Members

 

 


Products | Support | Contact Us | Copyright Notices

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