位置: 编程技术 - 正文

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

  • 增值税为什么不重复征税
  • 以旧换新销售商品
  • 进项税额转出要补所得税吗
  • 出口商品认证
  • 劳务外包人员算不算从业人员
  • 作废的增值税普通发票还可以重新开吗?
  • 住宿发票税点为什么有6%和3%的区别
  • 一般纳税人收到普票需要价税分离吗
  • 企业所得税年度申报
  • 退货退款分录
  • 股息和资本利得的区别
  • 银行手续费发票怎么开
  • 商贸企业销售商品结转成本是手工算吗
  • 未分配利润的计税基础是
  • 企业所得税到底是25%还是5%
  • 当年亏损可以用以前年度来弥补吗
  • 单位转让专利技巧和方法
  • 每期折旧怎么算
  • 发生的费用可以直接计入主营业务成本吗
  • 个人到财务挂账怎么做账
  • 进口货物的企业有哪些
  • 计提工资社保公式是什么
  • iphone制造成本
  • PHP:Memcached::prependByKey()的用法_Memcached类
  • 什么是减值测试方法
  • 补缴断交的医保划算吗
  • 二手固定资产怎么折旧
  • yolov5使用教程
  • 金融企业贷款损失准备金计提比例
  • php中正则表达式
  • 流动资产占总资产比重多少较为合适
  • laravel框架关键技术解析
  • 银行对账单附在记账凭证中吗
  • vue路由用法
  • vue-router导航守卫
  • php array_fill
  • 暂时性差异可以计入哪些科目
  • 将织梦dedecms转换到wordpress
  • 增值税专用发票有几联?
  • 物业公司收的水费是计入其他应付款还是其他业务收入
  • 认缴出资和注册资本
  • java中日志的作用
  • 织梦如何使用
  • 保函被索赔支付什么意思
  • 织梦专题页模板
  • 短期投资理财是
  • 软件信息技术服务业
  • 营业执照作废声明
  • 什么是增值税的销项税额
  • 个贷系统平账专户A户付款会计分录
  • 支付单位结算卡费用计入什么科目
  • 人力资源外包服务费计入什么科目
  • 员工话费实报实销分录
  • 企业单位为职工发放哪些福利
  • 商业承兑汇票提示付款流程
  • 用友t3财务通普及版如何开下年账
  • 账户验证费会计分录
  • 商业承兑汇票和银行承兑汇票的区别
  • win2003加速开机
  • centos怎么配置ssh
  • win7系统运行在哪里
  • 系统占用90g怎么删
  • mac怎么连续播放视频
  • winxp 证书错误
  • 电脑windows7打不开怎么办
  • linux怎么格式化硬盘
  • win8应用错误怎么办
  • ssh客户端软件
  • Jquery+Ajax+PHP+MySQL实现分类列表管理(上)
  • android 自定义dialog
  • shell脚本编写的基本知识
  • 用js实现冒泡排序
  • flask框架菜鸟教程
  • shell中括号的作用
  • jquery设置important
  • python打印出none
  • 厦门增值税发票查验
  • 税务部门行政审批
  • 开票盘注销后能否撤回
  • 税务稽查审理的基本原则
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设