請教TRect繪圖元件 |
尚未結案
|
questiona
一般會員 ![]() ![]() 發表:7 回覆:2 積分:1 註冊:2004-04-19 發送簡訊給我 |
各位前輩好:後學有一問題請教。 問題簡述:
有一台遙控車沿著不規則形跑道前進,車子上面架設一各線型掃瞄雷射。
如果要繪出車子所行駛的路線及雷射掃瞄之區域,即整個範圍狀況。
請問要如何用TRec來做? 目前狀況:
已經可以得到每一秒車子正下方的掃瞄區域大小、目前車子的座標、及雷射
偏離水平線之角度。 不知道用TRect元件是否可以完成?或是要改用其他元件?
若可以又要如何加入座標及角度之資訊? 車子正下方資訊顯示之程式碼如下:
TRect Frame1Rect, Frame2Rect, FrameRect; Byte *ptr = (Byte *)oneping->ScanLine[0];
for(int i=0 ; i<2400 ; i++)
ptr[i]=(PingBuffer[ChanLeft][i]*step); Frame1Rect = Rect(0,0,pLeftChannel->Width,1);
pLeftChannel->Canvas->StretchDraw(Frame1Rect,oneping); for(int i=0 ; i<2400 ; i++)
ptr[i]=PingBuffer[ChanRight][i]*step;
pRightChannel->Canvas->StretchDraw(Frame1Rect,oneping); Frame1Rect = Rect(0,0,pLeftChannel->Width,pLeftChannel->Height-1);
Frame2Rect = Rect(0,1,pLeftChannel->Width,pLeftChannel->Height);
FrameRect = Rect(0,0,pLeftChannel->Width,pLeftChannel->Height); pLeftChannel->Canvas->CopyRect(Frame2Rect,pLeftChannel->Canvas,Frame1Rect);
TmpImage->Canvas->CopyRect(FrameRect,pLeftChannel->Canvas,FrameRect);
Image1->Canvas->StretchDraw(Frame1Rect,TmpImage); pRightChannel->Canvas->CopyRect(Frame2Rect,pRightChannel->Canvas,Frame1Rect);
TmpImage->Canvas->CopyRect(FrameRect,pRightChannel->Canvas,FrameRect);
Image2->Canvas->StretchDraw(Frame1Rect,TmpImage); 欲加入之資訊如圖:
|
richtop
資深會員 ![]() ![]() ![]() ![]() ![]() 發表:122 回覆:646 積分:468 註冊:2003-06-10 發送簡訊給我 |
questiona 您好: 您好像已能算出目前車子所在的位置,那是不是就可以利用Polygon而不是TRect,來將車子或偵測區四個頂點連起來,以標示現在的新增的位置。
不好意思,觀察想法,供您參考!
|
questiona
一般會員 ![]() ![]() 發表:7 回覆:2 積分:1 註冊:2004-04-19 發送簡訊給我 |
|
richtop
資深會員 ![]() ![]() ![]() ![]() ![]() 發表:122 回覆:646 積分:468 註冊:2003-06-10 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |