pixels16
16ビットのグレースケール画像からのピクセルデータで構成されるushortリストがあります。次に、画像を表示するピクチャーボックスと、ユーザーがピクチャーボックス内の任意の場所をクリックできる関数があり、システムはその位置のピクセル値を返します (コードの下を参照)。
これは、指定された位置のピクセル値を返すコードです。私の考えでは、ユーザーが画像内の位置でクリックした正確なピクセルの値を表示していますが、正しいですか?
私の論理は、画像が512x512の場合、最初Y
にスポットを見つけX
たら、次のようにそのポイントのピクセル値を取得できます。int pixelposition = (512 * (y-1)) + x;
私は正しい方向にいますか?
for (int y = 0; y < picbox_mpr.Width; y++)
{
if (e.Y == y)
{
for (int x = 0; x < picbox_mpr.Height; x++)
{
if (e.X == x)
{
int pixelposition = (512 * (y-1)) + x;
string a= pixels16[pixelposition].ToString();
MessageBox.Show(a);
}
}
}
}