線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:961
推到 Plurk!
推到 Facebook!

請問如何找TBitmap 上是紅色的點

尚未結案
woodss
一般會員


發表:13
回覆:24
積分:17
註冊:2003-07-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-07-14 20:52:37 IP:61.64.xxx.xxx 未訂閱
只要是偏紅色都算 有沒有公式能算出是偏紅色的方式 謝謝
cashyy
高階會員


發表:117
回覆:322
積分:212
註冊:2004-04-30

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-07-14 21:26:35 IP:59.104.xxx.xxx 未訂閱
您好! 如果要計算公式的話,小弟是不知道啦! 但如果要找圖素色彩的話,倒是可以參考下面程式碼: 如果要 class="code"> //.h //--------------------------------------------------------------------------- #ifndef Unit2H #define Unit2H //--------------------------------------------------------------------------- #include #include #include #include <Forms.hpp> #include //--------------------------------------------------------------------------- class TForm1 : public TForm { __published: // IDE-managed Components TImage *Image1; TStaticText *StaticText1; void __fastcall Image1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); private: // User declarations public: // User declarations __fastcall TForm1(TComponent* Owner); }; //--------------------------------------------------------------------------- extern PACKAGE TForm1 *Form1; //--------------------------------------------------------------------------- #endif //.cpp //--------------------------------------------------------------------------- #include #pragma hdrstop #include "Unit2.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { //取得Form1的DC HDC hdc = ::GetDC(Handle); //取得滑鼠位置的圖素色彩 COLORREF pcolor = ::GetPixel( hdc, X, Y ); //逐一用巨集取出RGB色彩值 unsigned int r = GetRValue(pcolor); unsigned int g = GetGValue(pcolor); unsigned int b = GetBValue(pcolor); //將結果即時顯示在Form1標題文字中 Caption ="滑鼠位置:X = " AnsiString(X) " ,Y =" AnsiString(Y) " ,圖素色彩:R:" AnsiString(r) "_G:" AnsiString(g) "_B:" AnsiString(b); //釋放Form1的DC handle ReleaseDC(0,hdc); } //--------------------------------------------------------------------------- 發表人 - cashyy 於 2005/07/14 21:31:50
JustinShen
中階會員


發表:22
回覆:104
積分:80
註冊:2003-09-20

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-07-14 22:57:38 IP:222.93.xxx.xxx 未訂閱
偏红色很难把握,一般来说对于RGB组成,如果R-Max(G,B)>0都可以算红色系,但是,可能需要确定更精确的范围才会满意哟 Justin Shen ================================= 如果能帮到您,我会很开心;如果能得到您的帮助,是我的荣幸 =================================
------
====================
我为一切作努力!
Justin Shen

系統時間:2024-06-30 11:57:31
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!