[BDB][問題]用pixel劃一橢圓如何改變x軸與y軸使其旋轉 |
尚未結案
|
zenko
一般會員 發表:3 回覆:2 積分:1 註冊:2004-08-21 發送簡訊給我 |
各位大大~我用公式利用cavin-pixel的方式畫出了一個橢圓
然而還需要能將此橢圓可以360度的旋轉,目前想到的方法就是改變x軸跟y軸的方式在重畫橢圓,可是怎麼想也想不出怎麼去改變x軸與y軸
希望各位大大給個提示
畫橢圓的方法使用下列兩個方式
1. for(n=0;n<360;n )
{
x=asin(n);
y=bcos(n);
cavin->pixel[x][y]=cblack;
} 2.double d1 = pow(b,2) - (pow(a,2)*b) (0.25*pow(a,2));
double d2;
.
.
while (pow(a,2)*(y - 0.5) > pow(b,2)*(x 1))
{
if (d1<0)
d1 =d1 pow(b,2)*(2*x 3);
else
{
d1 =d1 pow(b,2)*(2*x 3) pow(a,2)*(-2*y 2);
y=y-1;
}
x=x 1;
Canvas->Pixels[x d][y d]=clYellow;
Canvas->Pixels[d-x][y d]=clYellow;
Canvas->Pixels[x d][d-y]=clYellow;
}
|
JerryKuo
版主 發表:42 回覆:571 積分:322 註冊:2003-03-10 發送簡訊給我 |
引言: 各位大大~我用公式利用cavin-pixel的方式畫出了一個橢圓 然而還需要能將此橢圓可以360度的旋轉,目前想到的方法就是改變x軸跟y軸的方式在重畫橢圓,可是怎麼想也想不出怎麼去改變x軸與y軸 希望各位大大給個提示 畫橢圓的方法使用下列兩個方式 1. for(n=0;n<360;n ) { x=asin(n); y=bcos(n); cavin->pixel[x][y]=cblack; } 2.double d1 = pow(b,2) - (pow(a,2)*b) (0.25*pow(a,2)); double d2; . . while (pow(a,2)*(y - 0.5) > pow(b,2)*(x 1)) { if (d1<0) d1 =d1 pow(b,2)*(2*x 3); else { d1 =d1 pow(b,2)*(2*x 3) pow(a,2)*(-2*y 2); y=y-1; } x=x 1; Canvas->Pixels[x d][y d]=clYellow; Canvas->Pixels[d-x][y d]=clYellow; Canvas->Pixels[x d][d-y]=clYellow; }zenko你好; 你可以找到旋轉公式嗎?大學時的作業有做過,是用旋轉公式做的,當時程式技巧 不好,旋轉速度有點慢。建議你可以用旋轉公式試試看。 |
zenko
一般會員 發表:3 回覆:2 積分:1 註冊:2004-08-21 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |