LEADTOOLS(Leadtoolsアセンブリ)

フレームを表示

AddMagicWandToRegionメソッド








ポイントのX座標。指定されたポイントのカラーは、リージョンを設定するのに用いられます。
ポイントのY座標。指定されたポイントのカラーは、リージョンを設定するのに用いられます。
リージョンのために下の停止ポイントを設定する下限許容値値。
リージョンのために上の停止ポイントを設定する上限許容値値。
定義されている場合、既存の画像リージョンに関して実施するアクション。
画像内の点(x, y)で見つかるカラーに基づいてリージョンを設定します。
構文
'Declaration
 
Public Sub AddMagicWandToRegion( _
   ByVal left As Integer, _
   ByVal top As Integer, _
   ByVal lowerToleranceColor As RasterColor, _
   ByVal upperToleranceColor As RasterColor, _
   ByVal combineMode As RasterRegionCombineMode _
) 
'Usage
 
Dim instance As RasterImage
Dim left As Integer
Dim top As Integer
Dim lowerToleranceColor As RasterColor
Dim upperToleranceColor As RasterColor
Dim combineMode As RasterRegionCombineMode
 
instance.AddMagicWandToRegion(left, top, lowerToleranceColor, upperToleranceColor, combineMode)
- (BOOL)addMagicWandToRegion:(NSInteger)left 
                         top:(NSInteger)top 
         lowerToleranceColor:(LTRasterColor *)lowTolColor 
         upperToleranceColor:(LTRasterColor *)upTolColor 
                 combineMode:(LTRasterRegionCombineMode)combineMode 
                       error:(NSError **)error
            
public void addMagicWandToRegion(
  int left, 
  int top, 
  RasterColor lowerToleranceColor, 
  RasterColor upperToleranceColor, 
  RasterRegionCombineMode combineMode
)
            
 function Leadtools.RasterImage.AddMagicWandToRegion( 
   left ,
   top ,
   lowerToleranceColor ,
   upperToleranceColor ,
   combineMode 
)

パラメーター

left
ポイントのX座標。指定されたポイントのカラーは、リージョンを設定するのに用いられます。
ポイントのY座標。指定されたポイントのカラーは、リージョンを設定するのに用いられます。
lowerToleranceColor
リージョンのために下の停止ポイントを設定する下限許容値値。
upperToleranceColor
リージョンのために上の停止ポイントを設定する上限許容値値。
combineMode
定義されている場合、既存の画像リージョンに関して実施するアクション。
解説

カラービットマップの場合:

ピクセル (x, y)の値が(125、125、125)でlowerToleranceColorが(20,30,15)である場合、下限は(105、95、110)になります。upperToleranceColorがそうである(20,30,15)ならば、上の停止ポイントは(145,155,140)です。

グレースケールビットマップの場合:

lowerToleranceColorの最小限のチャネル許容値値は下の停止ポイントを設定するのに用いられます、そして、upperToleranceColorの値は上の停止ポイントを設定するのに用いられます。たとえば、ピクセル(x,y)の値が(125,125,125)で、lowerToleranceColorが(20,30,15)の場合、3つの値の最小値(15)を使用して下限(110,110,110)が決定されます。upperToleranceColorがそうである(10,25,20)ならば、その3ビットバイト(10)の最小値は(135,135,135)の上の停止ポイントを作成するのに用いられます。

この関数は、12と16ビットグレースケールと48と64ビットカラーイメージをサポートします。12と16ビットグレースケールと48と64ビットカラーイメージのサポートは、Document/Medicalイメージングにおいて利用できます。

このメソッドは、符号付き/符号なしデータイメージをサポートします。

既存のリージョンを更新するために、新しいリージョンがどのようにcombineModeパラメーターを用いて既存のものと結合されることになっているかについて指定します。詳細については、「RasterRegionCombineMode」を参照してください。

AddMagicWandToRegion関数は、拡張グレースケールマスクを使うことができます。詳細については、「グレースケールイメージ」を参照してください。

詳細については、「リージョンの作成」を参照してください。

詳細については、「リージョンの保存」を参照してください。

詳細については、「既存のリージョンの操作」を参照してください。

サンプル

このサンプルはimageをロードして、マジックワンドリージョンをそれに設定して、ディスクへimageを保存する前に、リージョンを青で満たします

Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.ImageProcessing.Core
Imports Leadtools.ImageProcessing.Color
Imports Leadtools.Controls
Imports Leadtools.Dicom
Imports Leadtools.Drawing
Imports Leadtools.Svg

      
Public Sub AddMagicWandToRegionExample()
   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_AddMagicWandToRegion.bmp")

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

   ' Posterize the image to decrease the number of colors
   Dim posterize As PosterizeCommand = New PosterizeCommand(16)
   posterize.Run(image)

   ' Specify a pixel in the upper left of the displayed image
   Dim pt As LeadPoint = New LeadPoint(image.ImageWidth \ 8, image.ImageHeight \ 8)

   ' Adjust the point in case the view perspective is not TopLeft
   pt = image.PointToImage(RasterViewPerspective.TopLeft, pt)

   ' Create a magic wand region at this point
   Dim lowerColor As RasterColor = New RasterColor(20, 30, 150)
   Dim upperColor As RasterColor = New RasterColor(15, 30, 10)
   image.AddMagicWandToRegion(pt.X, pt.Y, lowerColor, upperColor, RasterRegionCombineMode.Set)

   ' Fill the region with blue
   Dim fill As FillCommand = New FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Blue))
   fill.Run(image)

   ' Save the 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.Dicom;
using Leadtools.Drawing;
using Leadtools.Controls;
using Leadtools.Svg;

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

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

   // Posterize the image to decrease the number of colors
   PosterizeCommand posterize = new PosterizeCommand(16);
   posterize.Run(image);

   // Specify a pixel in the upper left of the displayed image
   LeadPoint pt = new LeadPoint(image.ImageWidth / 8, image.ImageHeight / 8);

   // Adjust the point in case the view perspective is not TopLeft
   pt = image.PointToImage(RasterViewPerspective.TopLeft, pt);

   // Create a magic wand region at this point
   RasterColor lowerColor = new RasterColor(20, 30, 150);
   RasterColor upperColor = new RasterColor(15, 30, 10);
   image.AddMagicWandToRegion(pt.X, pt.Y, lowerColor, upperColor, RasterRegionCombineMode.Set);

   // Fill the region with blue
   FillCommand fill = new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Blue));
   fill.Run(image);

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

   image.Dispose();
   codecs.Dispose();
}
必要条件

ターゲットプラットホーム

参照

参照

RasterImageクラス
RasterImageメンバ
グレースケールイメージ
概要:1ピクセルあたりのビット数と関連知識
LEADTOOLSにおけるカラー値の使用