簡體   English   中英

檢查像素顏色 Allegro 5 C++

[英]Checking pixel color Allegro 5 C++

我想檢查屏幕上的像素是否為紅色。 我正在使用快板 5。 這是我的代碼

ALLEGRO_BITMAP *bitmap ;
int x , y;

x=*xIter-20;
y=*yIter;

ALLEGRO_COLOR red_color = al_map_rgb (255,0,0);
ALLEGRO_COLOR new_color = al_get_pixel (bitmap , x , y);

if(new_color==red_color)
    return 1;

但它報告了一個語法錯誤

錯誤 C2678:二進制“==”:未找到采用“ALLEGRO_COLOR”類型的左側操作數的運算符(或沒有可接受的轉換)

unsigned char r,g,b;
al_unmap_rgb(new_color, &r, &g, &b);

bool isColorRed = (r == 255 && g == 0 && b == 0);

ALLEGRO_COLOR類型沒有運算符== ,您需要自己實現它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM