位置: 编程技术 - 正文

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

  • 什么是特别纳税人
  • 进出口环节税
  • 外国常驻代表机构办理税务登记
  • 2021城建税
  • 公司视频宣传制作方案
  • 以前年度调整后财务报表
  • 车辆购置税计入成本吗
  • 其他应付款太多怎么做账务处理
  • 会计信息采集审核需要多久
  • 股份制改造而发生的资产评估增值税法规定
  • 增值税专用发票抵扣期限
  • 固定资产缩水
  • 因产品不合格退回报废会计处理
  • 劳务派遣案例分析题
  • 正在注销的公司微信收的款怎么追回
  • 个人税务代人开普票
  • 两年内到期的应付票据
  • 股东垫资需要偿还吗
  • 政府补贴收入账户是什么
  • win11windows安全中心打不开
  • 公司估值一般不超过市值多少
  • windows history命令
  • 无形资产出租的账务处理
  • php中如何获取数组的长度
  • php加入图片代码
  • thinkphp5 ajax
  • vue写的购物车详细步骤
  • A Loepa oberthuri moth (© Robert Thompson/Minden Pictures)
  • window11预览版怎么样
  • 结算备付金管理办法(2019年修订版)
  • 2020信息采集
  • 非财政补助结转和非财政补助结余的区别
  • Python如何查看中风患者两表的数据量
  • php返回json数据交给js读出来是数字,不是字符串
  • java 邮件
  • 新事业单位会计制度下固定资产的核算
  • 技术维护费可以全额抵扣吗
  • 实收资本与资本公积之和小于实收资本
  • MySQL服务器系统支持哪些存储引擎
  • 费用多报销了,但已经给了,怎么办
  • 公司员工兼职开公司
  • 劳务公司账务处理实操
  • 制造费用的归集是什么意思
  • 上年度没有计提企业所得税,今年怎么做分录
  • 研发费用账务处理完整版
  • 注册资本未到位注销公司处理
  • 商标注册费计入哪个科目
  • 生产中产生的废油漆桶等危险废物应当作为什么贮存
  • 发生的费用
  • 次年发上年年终奖
  • 生产型企业电费会计分录
  • 会计错账的更正方法
  • 搜狗拼音输入法xp系统
  • Windows Server 2008故障转移群集简介
  • 教大家如何重做作业
  • win8开机启动项怎么关闭
  • win7怎么禁止u盘自动运行
  • linux中安装telnet
  • windows锁屏界面设置
  • Win7如何调整分辨率
  • 如何卸载windows media player
  • win8电脑d盘不见了怎么恢复
  • win10系统如何禁用u盘
  • win10 win+l
  • unity设置帧数
  • unity开发安卓游戏的input
  • jquery-easyui-1.3.3
  • linux查看端口号占用
  • 功能强大的英语
  • unity gui layer
  • javascript基本语法
  • 在WINDOWS系统中回收站的作用不包括
  • javascript总结笔记
  • Struts2+jquery.form.js实现图片与文件上传的方法
  • Android的事件处理机制是一种______机制
  • 国税总局201439号公告
  • 国家税务总局61号
  • 税务协查工作亮点
  • 百望税控盘怎么导出清单明细
  • 河北省税务局稽查局领导班子
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设