如何將一張影像丟入自行編輯的class 中的fuction |
尚未結案
|
quard0314
一般會員 發表:10 回覆:18 積分:5 註冊:2003-03-05 發送簡訊給我 |
以下是我自行編輯的 Image_process.cpp
class Image_process
{
private :
//----
public :
void gray_level(//傳入的影像的變數的資料型態);
};
void Image_process::gray_level(//接收影像的資料型態及變數)
{
// 影像處理
}
//--------------以下為Unit1.cpp的內容
TForm1 *Form1; __fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Image_process * bbb;
bbb->gray_level(/*想傳入的影像*/);// <-------要怎麼傳阿? bbb->gray_level(Iamge1)???
}
//---------------
請問:假如在form 上有張 image1的影像要丟入class中的gray_level
我要如何將整個image丟進去呢??傳入的資料型態為何??
麻煩各位大大替小弟解答一下....thanx
ps .Unit.h 已 #include "Image_process.cpp"
|
JerryKuo
版主 發表:42 回覆:571 積分:322 註冊:2003-03-10 發送簡訊給我 |
|
quard0314
一般會員 發表:10 回覆:18 積分:5 註冊:2003-03-05 發送簡訊給我 |
引言: quard0314你好: 我是建議不要傳TImage到函數處理,因為會很慢 => imageprocess(TImage tImage) 你可以把圖片資料先複製為二維陣列,或是一維陣列 再把二維指標或一維指標放到函數處理會比較好. 至於怎麼複製,先前就有很多篇文章討論過,你可以找看看 這樣你傳值就比較不用傷腦筋^^jerrykuo 你好.... imageprocess(TImage tIamge) <---這樣似乎過不了compiler...>< 至於複製iamge的資料至指標再傳參數我之前試過的確可以 可是我現在想試試看是否能夠把整個image丟進去然後再從的我副函式作處理 麻煩大大替我解答囉~~~拜託拜託..感激不進...><.... |
Royce520
高階會員 發表:18 回覆:157 積分:100 註冊:2002-09-13 發送簡訊給我 |
quard0314 你好,
怎麼會想要把 整個TImage物件 傳進去呢?
那你不是還要傳出來?? 正確 且 快速的方法
是傳遞物件指標(pointer) 再者, VCL 元件都是
借由指標傳遞的, 所以的你程式碼 可能如下安排: class Image_process
{
private :
Graphics::TBitmap* m_pBmp; // 用以儲存欲處理的影像資料的指標 public :
void gray_level(Graphics::TBitmap* argBmp);
};
void Image_process::gray_level(Graphics::TBitmap* argBmp)
{
// 影像處理
} 有關 TBitmap 或者是 TImage 的細節 請勤查 使用說明(加油!)
當然像JerryKuo 所說轉成一般陣列也行, 端看你的應用與應用上
的限制與要求了...
------
不要忘記呼吸,不要忘記編程! ∩__∩ |
JerryKuo
版主 發表:42 回覆:571 積分:322 註冊:2003-03-10 發送簡訊給我 |
|
quard0314
一般會員 發表:10 回覆:18 積分:5 註冊:2003-03-05 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |