位置: 编程技术 - 正文

如何在COCOS2D中绘制3d椭圆柱?(cocos2d教程)

编辑:rootadmin

推荐整理分享如何在COCOS2D中绘制3d椭圆柱?(cocos2d教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos2d怎么用,cocos2djs,cocos2d怎么样,cocos2djs,cocos2d-x教程,cocos2dx怎么用,cocos2djs,cocos2d怎么用,内容如对您有帮助,希望把文章链接给更多的朋友!

将以下代码添加到CCActionGrid3D.h

class CC_DLL CCEllipse3D : public CCGrid3DAction

{public: /** initializes an action with duration, grid size, waves and amplitude */ bool initWithDuration(float duration, const CCSize& gridSize, float alength, float blength, float startangle, float endagnle,float xoffset,float yoffset); /** * @js NA * @lua NA */ virtual CCObject* copyWithZone(CCZone* pZone); virtual void update(float time);public: /** creates an action with duration, grid size, waves and amplitude */ static CCEllipse3D* create(float duration, const CCSize& gridSize, float alength, float blength, float startangle, float endagnle,float xoffset,float yoffset);protected:float m_fStartAngle;//开始角float m_fEndAngle;//结束角float m_fALength;//长轴float m_fBLength;//短轴float m_fXOffset;//X偏移float m_fYOffset;//Y偏移

};

将以下代码添加到CCActionGrid3D.cpp

CCEllipse3D* CCEllipse3D::create(float duration, const CCSize& gridSize, float alength, float blength, float startangle, float endagnle,float xoffset,float yoffset){CCEllipse3D *pAction = new CCEllipse3D();if (pAction){if (pAction->initWithDuration(duration, gridSize, alength, blength, startangle, endagnle, xoffset, yoffset)){pAction->autorelease();}else{CC_SAFE_RELEASE_NULL(pAction);}}return pAction; }bool CCEllipse3D::initWithDuration(float duration, const CCSize& gridSize, float alength, float blength, float startangle, float endagnle,float xoffset,float yoffset){if (CCGrid3DAction::initWithDuration(duration, gridSize)){m_fStartAngle = startangle;//开始角m_fEndAngle = endagnle;//结束角m_fALength = alength;//长轴m_fBLength = blength;//短轴m_fXOffset = xoffset;//X偏移m_fYOffset = yoffset;//Y偏移return true;}return false;}CCObject* CCEllipse3D::copyWithZone(CCZone *pZone){CCZone* pNewZone = NULL;CCEllipse3D* pCopy = NULL;if(pZone && pZone->m_pCopyObject) {//in case of being called at sub classpCopy = (CCEllipse3D*)(pZone->m_pCopyObject);}else{pCopy = new CCEllipse3D();pZone = pNewZone = new CCZone(pCopy);}CCGrid3DAction::copyWithZone(pZone);pCopy->initWithDuration(m_fDuration, m_sGridSize, m_fALength, m_fBLength,m_fStartAngle,m_fEndAngle,m_fXOffset,m_fYOffset);CC_SAFE_DELETE(pNewZone);return pCopy;}void CCEllipse3D::update(float time){ int i, j; for (i = 0; i < m_sGridSize.width&#;1; i&#;&#;){float angle = (m_fStartAngle &#;(m_fEndAngle-m_fStartAngle)*i/m_sGridSize.width)*time;for (j = 0; j < m_sGridSize.height &#; 1; j&#;&#;){ccVertex3F v = originalVertex(ccp(i ,j));v.x = m_fALength*cos(angle)-m_fALength&#;m_fXOffset; v.y = m_fBLength*sin(angle)&#; v.y &#; m_fYOffset; setVertex(ccp(i, j), v);} } }

如何在COCOS2D中绘制3d椭圆柱?(cocos2d教程)

调用相关方法:

runAction(CCEllipse3D::create(1.0f, CCSize(,1) ,.0f,-.0f,0.0f,(float)M_PI,.0f,-.0f));

第一个参数代表时间

第二个参数代表网&#;

第三个参数椭圆长轴

第四个参数椭圆短柱

第五个参数开始绘制角

第六个参数结束绘制角

第七个参数x轴偏移

第八个参数Y轴偏移

SpriteBuilder Demo学习笔记 1、资源的auto-scaling。只需提供最高级别的resolution,SpriteBuilder会自动生成低级别的。SpriteBuilder默认是从4x(两倍于Retina屏)开始scaling,可以在File-ProjectS

cocos2d3.x在win7的环境配置和安装 安装过程:1:安装VS(需要IE.0以上)2:安装python2.7.9一直下一步即可;3:安装完python后右键我的电脑-属性-高级系统设-系统变量找到Path编辑,最

lua学习系列一之配置环境与IDE 之所以想要学习lua是因为cocos官方出了一个基于eclipse的IDE,电脑装VS一直装不上去,苦于程序太多于是没有重装系统,最近才发现出现了这个IDE,心

标签: cocos2d教程

本文链接地址:https://www.jiuchutong.com/biancheng/369112.html 转载请保留说明!

上一篇:cocos2d的安装与简介(cocos2d-x安装)

下一篇:SpriteBuilder Demo学习笔记

  • 现金流量表和其他表的勾稽关系
  • 应收账款资金占用费公式
  • 个人银行账户怎么填写
  • 金税盘备份文件名
  • 内部报送会计信息有哪些
  • 向香港公司支付服务费税率
  • 预算为负数实际为负数 怎么计算完成率
  • 煤炭企业在建工程核算探讨
  • 城建税如何核算成本
  • 收购公司固定资产注意事项
  • 免抵退税的账务处理
  • 房地产企业预缴税款最新规定
  • 跨月增值税专票退回涉及哪些税费
  • 开具增值税发票销货清单的最新规定是什么
  • 民办非企业能开据服务发票吗?
  • 公司为员工需要承担哪些责任
  • 股息率超过10%的公司
  • 居民企业非货币性资产投资、转让所得如何缴税?
  • 建筑工程预收款开票会计分录
  • 电子承兑重复背书两次有影响吗
  • 工资年终奖金扣多少税
  • 国家减免税额怎么入账
  • 怎么恢复系统win10
  • 财政拨款收入是指行政单位从哪里取得的预算资金
  • 报销伙食费的会计分录
  • thinkphp5.0自定义路由
  • win7系统电脑开机密码忘记了怎么办
  • 汇算清缴是哪个报表
  • 电脑连上WiFi上不了网怎么办?
  • 工程完工结转成本怎么算
  • extract php函数
  • 业务招待费能不能计入销售费用
  • phpjoin
  • php自定义函数的关键字是什么
  • php单例模式应用场景
  • 办公楼装修费两万合理吗
  • 未开票收入申报对企业有什么影响
  • npm install或npm i后没有依赖包node_modules?
  • python快速检索
  • set nu命令
  • 销售旧货怎么填写申报表
  • 小规模免增值税政策从什么时候开始
  • 公司扣个税查不到怎么办
  • 零星开支是什么会计科目
  • 研发费用资本化可以加计扣除吗
  • 帝国cms8.0
  • 汽车租赁属于经营租赁吗
  • 暂估入账后续处理
  • 资产减值损失属于什么科目
  • 股份支付的账务如何处理?
  • 一般纳税人交增值税的账务处理
  • 收据能否入账?如何填写才具有合法性呢...
  • 印花税根据不同的税目,分别采用
  • 佣金和其他费用
  • 购买固定资产的增值税计入成本吗
  • 应收账款可能出现贷方余额吗
  • 出口不退税进项要转出吗
  • 商业企业购入商品
  • mysql的基本介绍
  • mysql在mac上的安装教程
  • windows2003服务
  • 怎么将windowsxp换成windows7
  • ubuntu搭建网站教程
  • spybotsd.exe - spybotsd 是什么文件进程
  • win10 rundll
  • win10怎么解除网吧下载限速
  • 朝鲜引擎
  • Win10 Mobile RedStone预览版14267更新内容汇总(持续更新)
  • js如何创建类
  • jquery技巧
  • 使用ssh登录远程服务器有两种方法
  • 批处理设置ip地址配置的dns
  • javascript以及javascript的作用
  • python 钉钉打卡定位
  • python安装包的命令
  • 什么是城建税和土地税
  • 浙江网上税务局登录官网
  • 供热企业税收优惠政策执行情况
  • 江苏联通客服电话人工服务号码
  • 费减备案合格后怎么操作?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设