如何將Image上的圖 抓出每一點的RGB值 |
答題得分者是:tomoi
|
鴻760121
一般會員 發表:8 回覆:10 積分:3 註冊:2008-06-15 發送簡訊給我 |
|
tomoi
初階會員 發表:2 回覆:30 積分:41 註冊:2008-07-14 發送簡訊給我 |
|
鴻760121
一般會員 發表:8 回覆:10 積分:3 註冊:2008-06-15 發送簡訊給我 |
void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift,
int X, int Y) { TColor a = Image1->Canvas->Pixels[X][Y]; Label1->Caption = X; Label2->Caption = Y; unsigned char b; b = char(a); Label3->Caption = int(b); a >>= 8; b = char(a); Label4->Caption = int(b); a >>= 8; b = char(a); Label5->Caption = int(b); } 上面這是滑鼠偵測座標和RGB值 要怎麼變成 抓全部點的 顯示RGB值在Memo1上面?? 下面這好像是 把每點的RGB值 顯示在Memo1上面 可是我看不太懂 也不會用 //由(x1,y1)和(x2,y2)就可以組成矩形範圍-------------------- ss1=""; for(int i=x1; i<=x2; i ) { for(int j=y1; j<=y2; j ) { aaa = int(Image1->Canvas->Pixels[i][j]); rr = char(aaa); //讀取Red值 s1=IntToStr(rr); //將數值存入字串 ss1=ss1 s1 " ,"; }; }; Memo1->Lines->Add(ss1 "," s "矩陣" tt); ss1=""; //--------------------------------------------------------- 麻煩高手賜教 |
tomoi
初階會員 發表:2 回覆:30 積分:41 註冊:2008-07-14 發送簡訊給我 |
我不是高手,這種問題還不需要高手: )
[code cpp] void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { TColor a = Image1->Canvas->Pixels[X][Y]; Label1->Caption = X; Label2->Caption = Y; unsigned char b; b = char(a); Label3->Caption = int(b); b = char(a>>8); Label4->Caption = int(b); b = char(a>>16); Label5->Caption = int(b); } [/code] 原本的程式我不能compiler 你有試過嗎? 所以我小改了一下 原本的滑鼠事件MouseMove裡的重點就是取得滑鼠座標X,Y 現在你想要自己秀出圖上所有的色彩資訊,寫個for 迴圈來取代原本的X,Y like this: [code cpp] int X,Y; unsigned char b,c,d; for(Y=0; Y for(X=0; X { TColor a = Image1->Canvas->Pixels[X][Y]; // Label1->Caption = X; // Label2->Caption = Y; b = char(a); c = char(a>>8); d = char(a>>16); Memo1->Lines->Add(String(X) "," String(Y) String(b) String(c) String(d)); } [/code] 自己動一下腦吧
------
Tomo
編輯記錄
tomoi 重新編輯於 2008-08-12 07:53:32, 註解 無‧
|
鴻760121
一般會員 發表:8 回覆:10 積分:3 註冊:2008-06-15 發送簡訊給我 |
|
tomoi
初階會員 發表:2 回覆:30 積分:41 註冊:2008-07-14 發送簡訊給我 |
不要每讀一個pixel就寫到Memo那
先寫到一個string 等讀完一排再寫到Memo ===================引 用 鴻760121 文 章=================== 謝謝 我大概弄出來了 只是Memo1 排列 和 自動大小 橋不好 怎麼寫 Memo1 上的數值 排列 會和開啟的圖片一樣 目前我開Button跑是xxx.xxx.xxx(我把座標拿掉) 一直 直列往下延伸 大概是 圖片上一行一行的掃描 PS:原本的滑鼠掃描座標和RGB 可以跑沒問題
------
Tomo |
鴻760121
一般會員 發表:8 回覆:10 積分:3 註冊:2008-06-15 發送簡訊給我 |
|
tomoi
初階會員 發表:2 回覆:30 積分:41 註冊:2008-07-14 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |