quick-cocos2d-x之画多边形

画多边形使用的类为CCPolygonShape,创建一个CCPolygonShape对象时需要传入一个CCPointArray对象,注意,CCPointArray对象并不能用一个table来代替。以下是实现过程。

这里以画正六边形为例,首先要确定六个点,这六个点以一个中心点和半径来确定,函数如下:

function getHexagonPointArray(x, y, r)

local pointArray = CCPointArray:create(6)

local i

for i = 0, 6 do

     local angle = i * math.pi / 3

     local point = ccp(math.cos(angle) * r + x, math.sin(angle) * r + y)

     pointArray:add(point)

end

return pointArray

end

然后是画出这个正六边形:

local pointArray = getHexagonPointArray(x, y, 40)

local hexagon = CCPolygonShape:create(pointArray)

hexagon:setFill(true)

hexagon:setColor(ccc4f(r / 255, g / 255, b / 255, 1))

self:addChild(hexagon)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 12,788评论 0 33
  • created by Dejavu(不断更新中) 简介 地面信息的提取对于车形的智能机器人来说十分重要,之前一直采...
    ericdejavu阅读 1,124评论 0 1
  • 一个朋友跟我说 不如,你回来? 我说,我想静静 其实我骗他的 真相是我有了新朋友 End2017.5.17
    亲爱的园长阅读 197评论 2 2
  • 下午,程序员童大宝犯困。 自动门打开,他端着咖啡走出全家。 这时,左手边经过三位姑娘,肩并肩一排,边走边聊。 姑娘...
    打小阅读 241评论 0 1
  • 一棵树下,诗阵地抒情 文·三峡刘星 三峡石散乱的魂灵,汪洋、肆意、无忌、自由犹如一座诗歌的方阵。 由街衢而往,有便...
    三峡刘星阅读 548评论 4 3