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

[問題]以質心為原點找圖形上某個點符合某個角度

尚未結案
plihui
初階會員


發表:88
回覆:96
積分:41
註冊:2003-07-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-04-03 20:37:37 IP:61.230.xxx.xxx 未訂閱
void TForm1::ReSampleEdge(TStringList  *contour_x,TStringList  *contour_y)
{  int i=0;
   int x,y;
   int dx,dy;
   int total_edpt=contour_x->Count;
   double theta=0; //目前所在點的夾角
   double delta_theta=PI/4;//標準夾角差為45
   int n=0;//
   Image1->Canvas->Pen->Color=clRed;
   Image1->Canvas->Pen->Width=1;
    for(i=0;iStrings[i]);
        y=StrToInt(contour_y->Strings[i]);
        if(i==0)
        {
        Image1->Canvas->Pixels[x-1][y-1]=clBlue;
        Image1->Canvas->Pixels[x][y-1]=clBlue;
        Image1->Canvas->Pixels[x 1][y-1]=clBlue;
        Image1->Canvas->Pixels[x-1][y]=clBlue;
        Image1->Canvas->Pixels[x][y]=clBlue;
        Image1->Canvas->Pixels[x 1][y]=clBlue;
        Image1->Canvas->Pixels[x-1][y 1]=clBlue;
        Image1->Canvas->Pixels[x][y 1]=clBlue;
        Image1->Canvas->Pixels[x 1][y 1]=clBlue;
        }            dx=x-cx;
        dy=y-cy;
        theta=(atan2(dx,-dy)>=0)?atan2(dx,-dy):(atan2(dx,-dy) 2*PI);
//        ShowMessage(FloatToStr(theta*180/PI));
//        ShowMessage(FloatToStr(n*delta_theta*180/PI));
        if(fabs(fabs(sin(theta))-fabs(sin(n*delta_theta)))<0.1)
        {
         Image1->Canvas->MoveTo(cx,cy);
         Image1->Canvas->LineTo(x,y);
         ShowMessage(FloatToStr(theta*180/PI));
         ShowMessage(FloatToStr(n*delta_theta*180/PI));
         Sleep(100);
         Application->ProcessMessages();
         n  ;
         }
    }
   ShowMessage("End");    }
比如說:我要取圖形邊緣上取一些點 該點與圖形質心連線的符合某些角度 (ex: 從0、45、90、135、180、225、270、315、360 ) 發現取出來的角度的值會圖形大小改變也就算了 (比如:44.99) 有時候還會取到40度的值 誤差太大了->請問各位大大該如何解決這一個問題
plihui
初階會員


發表:88
回覆:96
積分:41
註冊:2003-07-03

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-04-05 00:52:56 IP:61.230.xxx.xxx 未訂閱
找到問題所在 改為 if((fabs(theta-(n*delta_theta))==0)||(fabs(theta-(n*delta_theta))
系統時間:2024-05-10 12:27:17
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!