Cocos2d x繪製圓角矩形

2021-07-31 20:58:47 字數 1991 閱讀 4929

/*

* @brief 畫圓角矩形

* @param origin 矩形開始點

* @param destination 矩形結束點

* @param radius 圓角半徑

* @param segments 圓角等份數,等份越多,圓角越平滑

* @param bfill 是否填充

* @param color 填充顏色

* @attention

*/void drawprimitivestest::ccdrawroundrect( point origin, point destination, float radius, unsigned int segments, bool

bfill, color4f color)

//point tagcenter;

float minx =min(origin.x, destination.x);

float maxx =max(origin.x, destination.x);

float miny =min(origin.y, destination.y);

float maxy =max(origin.y, destination.y);

unsigned

int dwpolygonptmax = (segments + 1) * 4

; point * ppolygonptarr = new

point[dwpolygonptmax];

point * thispolygonpt =ppolygonptarr;

int aa = 0

;

//左上角

tagcenter.x = minx +radius;

tagcenter.y = maxy -radius;

thisvertices =vertices;

for(unsigned int i = 0; i <= segments; ++i, ++thispolygonpt, ++thisvertices)

//右上角

tagcenter.x = maxx -radius;

tagcenter.y = maxy -radius;

thisvertices = vertices +segments;

for(unsigned int i = 0; i <= segments; ++i, ++thispolygonpt, --thisvertices)

//右下角

tagcenter.x = maxx -radius;

tagcenter.y = miny +radius;

thisvertices =vertices;

for(unsigned int i = 0; i <= segments; ++i, ++thispolygonpt, ++thisvertices)

//左下角

tagcenter.x = minx +radius;

tagcenter.y = miny +radius;

thisvertices = vertices +segments;

for(unsigned int i = 0; i <= segments; ++i, ++thispolygonpt, --thisvertices)

if(bfill)

else

cc_safe_delete_array(vertices);

cc_safe_delete_array(ppolygonptarr);

}

**

cocos2dx 畫圓角矩形 lua版

cocos2dx 畫圓角矩形 lua版 toc 你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下markdown的基本語法知識。全新的介面設計,將會帶來全新的寫作體驗 在創作中心設定你喜愛的 高亮樣式,markdo...

Cocos2d x 繪製動畫

需要說明的是 因為cocos2d x是通用遊戲引擎,為了保證相容性和易用性,對動畫機制作了最簡單的設計 被做成了乙個action 但代價就是繪製動畫的 可能比較多,如果在實際開發中,一般都要選擇自己封裝。最好自己開發乙個編輯器,開發編輯器最好使用qt,因為是跨平台的。在66rpg裡找了一張動畫資源。...

cocos2dx之渲染樹的繪製

無論如何複雜的遊戲場景也都是精靈通過不同的層次 位置組合構成的,因此只要可以把精靈按照前後層次,在不同的位置繪製出來就完成了遊戲場景的繪製。這裡僅考慮由精靈構成的簡單遊戲,複雜的遊戲也許會包含其他遊戲元素,但是原理上並不衝突。在第3章學習遊戲元素時,我們曾接觸過cocos2d x的渲染樹結構,渲染樹...