全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2951
推到 Plurk!
推到 Facebook!

感覺 eVision 對 BCB 很不友善

 
neverwin
一般會員


發表:3
回覆:4
積分:1
註冊:2009-08-31

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-10-02 09:44:08 IP:59.120.xxx.xxx 訂閱
目前使用 Euresys eVision 遇到很多問題

一開始 Draw()函式無法使用,結果是照 eVision 的範例程式宣告方法是無法使用的!

Draw()可以使用之後, 搭配 VCL 的元件顯示卻有問題
Panel 元件不能顯示圖形,
而Image 元件的 AutoSize 屬性無法作用,所以只能顯示固定大小的圖片,想從建構子設定圖片大小也是無效
並且無法重繪,因此我只能Load第一張圖上去,再放其他圖上去都沒有反應。

再接下來使用 easyMatch 時, DrawPosition()函式又出現 Linker Error
這回換宣告方式也沒用。

快瘋了真是,eVision 問題多多








friendlly
高階會員


發表:22
回覆:144
積分:103
註冊:2003-04-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-10-03 16:11:33 IP:123.192.xxx.xxx 訂閱
Evision 有提供 ACtivex , API 的方式呼叫 

看你是使用哪一種

相對的不同版本也是有限制

只要理解限制 其實很方便


===================引 用 neverwin 文 章===================
目前使用 Euresys eVision 遇到很多問題

一開始 Draw()函式無法使用,結果是照 eVision 的範例程式宣告方法是無法使用的!

Draw()可以使用之後, 搭配 VCL 的元件顯示卻有問題
Panel 元件不能顯示圖形,
而Image 元件的 AutoSize 屬性無法作用,所以只能顯示固定大小的圖片,想從建構子設定圖片大小也是無效
並且無法重繪,因此我只能Load第一張圖上去,再放其他圖上去都沒有反應。

再接下來使用 easyMatch 時, DrawPosition()函式又出現 Linker Error
這回換宣告方式也沒用。

快瘋了真是,eVision 問題多多








neverwin
一般會員


發表:3
回覆:4
積分:1
註冊:2009-08-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-10-05 11:10:48 IP:59.120.xxx.xxx 訂閱
我的程式如下,其實已經是把 eVision 的程式碼直接貼過來
但是編譯之後 DrawFrame()會有 Linker Error

Include, Library 的路徑已經加入, EasyBcb6.lib\ EMchBcb6.lib 也加入專案了
到底是什麼原因 造成這個問題 請大大指點迷津



[code cpp]
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
// Perform eVision initialization to improve the execution time of the first eVision call
Euresys::eVision::Initialize();

// Be sure to work in degrees
ESetAngleUnit(E_ANGLE_UNIT_DEGREES);

// A red pen is used to draw the learning ROI
m_pRedPen = new TPen;
m_pRedPen->Style = psDot;
m_pRedPen->Color = clRed;
m_pRedPen->Width = 1;

// A green pen is used to draw the occurrences
m_pGreenPen = new TPen;
m_pGreenPen->Style = psSolid;
m_pGreenPen->Color = TColor(0x0000FF00);
m_pGreenPen->Width = 1;

}
//---------------------------------------------------------------------------
void __fastcall TForm1::ButtonOpenClick(TObject *Sender)
{
// eVision MchMatch sample program

// Define the filter
OpenDialog1->Filter= "Image Files (*.bmp;*.jpg;*.tif)|*.bmp;*.jpg;*.tif|";

if (OpenDialog1->Execute())
{
// Load the image file
imgSrc.Load(OpenDialog1->FileName.c_str());
if (EFailure())
return ;

// Detach the ROI from the image
roi.Detach();

// Attach the ROI to the image
roi.Attach(&imgSrc);
roi.SetPlacement(imgSrc.GetWidth()/4, imgSrc.GetHeight()/4,
imgSrc.GetWidth()/2, imgSrc.GetHeight()/2);
/******
// Refresh the menu
Tryme1->Enabled= TRUE;

// Reset the flag
m_bMatched= FALSE;
******/

// Redraw
Invalidate();
}

// - eVision MchMatch sample program

return ;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormPaint(TObject *Sender)
{
if(imgSrc.Void())
return;

imgSrc.Draw(Canvas->Handle);


TPen* pOldPen= Canvas->Pen;
Canvas->Pen= m_pRedPen;
roi.DrawFrame(Canvas->Handle, E_FRAME_ON, TRUE);



Canvas->Pen= pOldPen;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
// Free memory
delete (m_pGreenPen);
delete (m_pRedPen);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
Euresys::eVision::Terminate();
}
//---------------------------------------------------------------------------


[/code]

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