位置: 编程技术 - 正文

如何在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学习笔记

  • 企业增值税会计科目
  • 印花税退税减半征收会计分录怎么写?
  • t3怎么查资产负债表
  • 微信支付算库存现金还是银行存款
  • 电子税务局税种认定在哪里看
  • 农产品一般纳税人开普票免税吗
  • 怎么强调各个分公司之间无直接联系
  • 眼镜所属行业怎么填写
  • 一般纳税人普票怎么做分录
  • 电子发票作废了还能恢复吗
  • 小企业应收票据有哪些
  • 前期认证未抵扣
  • 个人转租房屋需交税吗
  • 铁路运费印花税税率
  • 汇算清缴补交需要调报表吗
  • 费用怎样确认是可抵扣暂时性差异?
  • 银行汇票多余款收账通知怎么做记账凭证
  • 固定资产本期折旧额与上期不一样
  • 减免税费期末如何结转
  • 企业购买商品
  • 最新《资源税纳税标准
  • 其他应付款需要做预算会计吗
  • 开票系统能导出几年前的
  • 收到一张免税发票能抵税吗
  • Mac笔记本电脑截图
  • 政策性搬迁损失扣除年度
  • .ico是什么文件
  • PHP daddslashes 使用方法介绍
  • 单位收到的投标通知书
  • php怎么输出中文
  • phpstudy访问数据库
  • 企业所得税是地税申报还是国税申报
  • javascript入门基础
  • 怎么用switch语句
  • 分公司二季度安全生产分析会内容
  • 年末结转利润分配各明细账户
  • 红字发票可以跨越开吗
  • 织梦作坊的微博
  • mongodb操作数据库
  • 收保险公司工伤怎么赔偿
  • 差旅费抵扣所得税标准
  • 疫情捐款可以抵扣增值税吗
  • 公立医院事业单位工作人员招聘实践考核自我评价
  • 个税征税对象包括哪些
  • 广告公司的广告制作费计入什么科目
  • 以土地作价投资合伙企业是否缴纳土地增值税
  • 公司员工入职的心得体会
  • 投资收益的会计科目
  • 债券溢价什么意思
  • 无法收回的款项怎么记账
  • 技术研发费用是什么意思
  • 一级资本充足率不得低于
  • 对会计人员继续教育的目的包括了保障
  • 商品销售成本的计算方法中,商品零售企业
  • iis w3svc
  • vc运行程序
  • watch programmes
  • win7如何查看图片的rgb
  • linux gpfs
  • xp系统如何优化
  • win10 运行
  • win7重新安装windows
  • Unity3D-SLua+ProtocolBuffers构建说明
  • node.js如何运行
  • csx脚本
  • ubuntu服务器配置代理访问外网
  • 教你怎样用气球做可爱小兔子气球君带你做气球手工
  • js的异步解决方案有哪些
  • HTTP之Range理解
  • 电子税务局怎么添加开票员
  • 税务备案超过15天
  • 税务登记证信息
  • 税务谈心谈话记录2021
  • 北京朝阳地税局电话号码
  • 营业执照三证合一图片
  • 企业登录密码是几位数
  • 什么是财务舞弊行为
  • 越南入关要给小费吗
  • 广东省地方税务局发票在线应用系统
  • 电费增值税专用发票如何抵税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设