2017-02-08 4 views
0

VB.netのピクチャボックスに描画された領域の平均RGB値を返す関数があります。関数によって返された複数の値からの個別値の使用VB.net

コードは以下の通りです:

Function GetAvgRGB(ByVal CrdY As Integer, ByVal CrdX As Integer, ByVal Region As System.Drawing.Rectangle) As Tuple(Of Integer, Integer, Integer) 

    Dim totalR As UInteger 
    Dim totalG As UInteger 
    Dim totalB As UInteger 

    For y As Integer = CrdY - (Region.Height/2) To CrdY + ((Region.Height/2) - 1) 
     For x As Integer = CrdX - (Region.Width/2) To CrdX + ((Region.Width/2) - 1) 
      totalR += myBitmap.GetPixel(x, y).R 
      totalG += myBitmap.GetPixel(x, y).G 
      totalB += myBitmap.GetPixel(x, y).B 
     Next 
    Next 

    Dim pixelCount As Integer = Region.Width * Region.Height 

    Dim averageR As Integer = CType(totalR \ pixelCount, Integer) 
    Dim averageG As Integer = CType(totalG \ pixelCount, Integer) 
    Dim averageB As Integer = CType(totalB \ pixelCount, Integer) 

    Return Tuple.Create(averageR, averageG, averageB) 

End Function 

私のクエリは、私は、この関数によって返されたR、G & Bの値..

+0

あなたはTuple.Item1、Tuple.Item2、およびTuple.Item3を使用していますか? –

答えて

1

Itemプロパティを使用して分離行う方法です。

Dim myTuple = GetAvgRGB(?,?,?) 
Dim r = myTuple.Item1 ' g = .Item2, b = .Item3 
+0

すぐに解決していただきありがとうございます! – Prashant

関連する問題