SETPIXELSRGB

グラフィックス・サブルーチン:指定した RGB 値を複数のピクセルに設定します。

モジュールUSE DFLIB

形式

CALL SETPIXELSRGB (n, x, y, color)

n
(入力) INTEGER(4)。設定するピクセル数。他の引数の要素数を指定します。

x, y
(入力) INTEGER(2)。設定するピクセルのビューポート座標を含む並行配列。

color
(入力) INTEGER(4)。ピクセルに設定する RGB 色指を含む配列。範囲と結果はシステムのディスプレイ・アダプタに依存します。

SETPIXELSRGB は,color の RGB 色値を配列 xy に指定されるピクセルに設定します。これらの配列は平行です。3 つの配列の各第 1 要素は第 1 ピクセルを参照し,第 2 要素は次のピクセルを参照します。

各 RGB 色値では,3 つの色,赤,緑,青のそれぞれは 8 ビット値 (2 つの 16 進数) で表されます。SETPIXELSRGB で指定した値は,赤が最も右のバイトで続いて緑,青の順になります。RGB 色値の内部構造は以下のとおりです。

最大値は,3 つの要素の各々のが最大の 2 進 1111111 (16 進 FF) の最大の色強度に対応します。たとえば,#0000FF は赤の最大強度,#00FF00 は緑の最大強度,#FF0000 は青の最大強度,#FFFFFF は 3 つすべての最大強度 (結果として明るい白) になります。

SETPIXELSRGB のよい使い方は,SETPIXELRGB のバッファリング形式としてです。これにより十分な性能の向上が得られます。以下の例では,この方法を示しています。

ピクセルがクリッピング領域外にある場合,それらのピクセルは無視されます。1 よりも小さい nSETPIXELSRGB を呼び出すと,これも無視されます。

SETPIXELSRGB (と他の SETPIXELRGBSETCOLORRGB のような RGB 色選択関数) は,全利用可能範囲から選択された値に色を設定します。非 RGB 色関数 (SETPIXELSSETCOLOR) は,True Color 値ではなく色指標を使います。

色指標を使う場合,パレットで利用可能な色に制限されます。最大で 256 色です。幾つかのディスプレイ・アダプタ (SVGA または True Color) は 262,144 (256K) 色以上を作成する機能を持っています。すべての利用可能な色を参照するには,非 RGB 色関数でパレット指標を指定するのではなく,RGB 色関数で明示的に RGB 色値を指定する必要があります。

互換性

STANDARD GRAPHICS QUICKWIN GRAPHICS LIB

関連情報

GETPIXELRGBGETPIXELSRGBSETPIXELRGBSETPIXELS

	! QuickWin または Standard Graphics アプリケーションでビルドします。
	! SetPixelRGB と SetPixelRGB_W のバッファリング置き換え。
	! これは,ピクセル処理の性能を向上します。
	USE DFLIB
	PARAMETER (I$SIZE = 200)
	INTEGER(4) bn, bc(I$SIZE), status
	INTEGER(2) bx(I$SIZE),by(I$SIZE)

	bn = 0
	DO i = 1, I$SIZE
	  bn = bn + 1
	  bx(bn) = i
	  by(bn) = i
	  bc(bn) = GETCOLORRGB()
	  status = SETCOLORRGB(bc(bn)+1)
	END DO
	CALL SETPIXELSRGB(bn,bx,by,bc)
	END