VGA显示正圆
接著上次的隨筆,既然VGA時序已經實現了,那么就顯示點東西看看吧。
想顯示個圓,但是無從下手,參考了這篇文章:https://user.qzone.qq.com/1241003385/blog/1543804422
仔細閱讀了這篇文章后才理解所謂顯示圓的算法很簡單,圓的標準方程是(x - a)?2?+ (y - b)?2?= r?2,只要控制顯示范圍滿足圓的方程就可以了。
當(x-a)2+(y-b)2<=r2區域是圓內,(x-a)2+(y-b)2>=r2的區域就是圓外。
這里顯示圓的半徑是50個像素點,并且以屏幕正中心為原點所以需要滿足條件:
distance = (x-a)*(x-a) + (y-b)*(y-b) = (h_cnt-96-48 -320) *(h_cnt-96-48-320) +(v_cnt-2-33 -240) *(v_cnt-2-33 -240);
其中96,48為行顯示區域以外,320為顯示行的中心,2,33為場顯示區域以外,320為顯示列的正中心。
如果distance小于r2=(50)2=2500?,說明在圓內,否則在圓外。
代碼如下:
?
?
?
?
?
轉載于:https://www.cnblogs.com/Librarian/p/10091944.html
總結
- 上一篇: LARS 最小角回归算法简介
- 下一篇: mapReducer第一个例子WordC