畫五角星有畫5點的和畫10點的。5點五角星內部是有填充的,或者線有交叉。10點五角星是畫出五角星的外圍輪廓線。
不論是畫5點五角星還是10點五角星,基本思路都是一樣的。即,五角星的頂點在大圓上,五角星的拐點在小圓上。五個點與中心點連線構成的角度是360÷5=72度。
因此,5點法畫五角星的**就可以寫成:
double pi = 3.1415926535;
cpoint point[5];
for(int i=0;i<5;i++)
for(i=0;i<5;i++)
內部小圓的半徑是大圓半徑的幾分之幾呢?這個計算很簡單。
10點法畫五角星的**可以寫成:
point cirlce[11];
lreal largecircle_radius = size;
lreal **allcircle_radius = (cos(72*2*_pi_/360)/cos(36*2*_pi_/360))*size;
for(int32 i=0; i<10; i++)
cirlce[10] = cirlce[0];
::movetoex(memdc, cirlce[0].x, cirlce[0].y, null );
::polylineto(memdc, cirlce, 11);
如果用opengl畫的話,**參考
》csdn資料庫 - vc/mfc 圖形處理/演算法問題
》 能不能告訴我怎樣畫乙個五角星?最好把演算法講得明白點,謝謝!!!
C C 畫乙個巨型五角星
利用正弦定理判斷乙個點是否是否在五角星內,相對於五角星中心的四個象限特判一下來修改角度,把角度都轉化成最上面的角,就差不多了,沒仔細調整五角星位置,很醜 寫完的時候想想才發現其實也有更方便的方法,我們可以通過轉角度,把當前點通過不斷旋轉的方法轉到五角星上面的乙個角內,這種方法同樣適用於n角星 inc...
五角星畫法
從小都畫不好的五角星原來有畫法 的,只要尺子和圓規就可以了 1.首先移動中心到將要畫的五角星中心 2.沿 x 軸移動起點 p1 到五角星一角所在的位置,如綠線所在右側終點 3.順時針旋轉座標系36度 4.再次沿 x 軸移動終點 p2 p2 到中心的距離小於 p1 到中心的距離,從而產生五角星凹處的效...
五角星的畫法
繪製五角星作為gdi 畫圖的乙個示例 這是從網上找的比較簡單的方法 void mydraw graphics g,point center,int radius 旋轉72 private point rotate72 point pt,point center 計算內五邊形畫空心五角星 今天畫五角星...