FreeBASIC マニュアルのトップに戻る

FreeBASIC XorGfx

目次→描画ライブラリ参考→2次元 描画関数XOR (graphics Put)←オリジナル・サイト

XOR (graphics Put) 左にメニュー・フレームが表示されていない場合は、ここをクリックして下さい

←リンク元に戻る プログラム開発関連に戻る

点描方法として、ビット演算 Xor を使用する Put 描画命令文へのパラメタ

構文:
Put [ target, ] [ STEP ] ( x,y ), source [ ,( x1,y1 )-( x2,y2 ) ], Xor

パラメタ:
Xor
必要。

説明:
Xor 方法は、ビット演算 Xor 関数を使って、ソースのそれぞれの画素を、対応するあて先画素に結合します。
この結果は、あて先画素として出力されます。

この方法は、すべての描画モードで使えます。
マスク色はありません。色値 0 (フルカラー・モードでの RGBA(0、0、0、0))は、無効です。Xor のふるまいです。

フルカラー・モードでは、各要素(赤、緑、青、アルファ)は、ビットの離散的なセットで保たれます。このため、特定のチャンネルだけに影響するように、操作することができます。確実にするため、他のすべてのチャンネルの値は、 0 に設定されます。

例:
注:FreeBASIC 1.08〜 で、SetEnviron を追加しなくても、日本語環境で描画画面が表示されるように改善されました。
' Sets the graphics method GDI
' 描画方法を GDI に設定
SetEnviron("fbgfx=GDI")

''描画画面を開けます
ScreenRes 320, 200, 16

''円を含むスプライト(sprite)を生成します
Const As Integer r = 32
Dim c As Any Ptr = ImageCreate (r * 2 + 1, r * 2 + 1, 0)
Circle c, (r, r), r, RGBA(255, 255, 255, 0), , , 1, f

''3つのスプライト(sprite)を、中央で互いを重ね合わせて、置きます
Put (146 - r, 108 - r), c, Xor
Put (174 - r, 108 - r), c, Xor
Put (160 - r,  84 - r), c, Xor

''スプライト(sprite)で使われたメモリを、解放します
ImageDestroy c

''プログラムを閉じる前に、キー入力を待ちます
Sleep

イメージ
QB との違い:

参照:

2次元描画関数に戻る

←リンク元に戻る プログラム開発関連に戻る

ページ歴史:2023-07-09 04:41:43
日本語翻訳:WATANABE Makoto、原文著作者:CountingPine

ホームページのトップに戻る

表示-非営利-継承