位置: 编程技术 - 正文

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

  • 股权转让印花税税率
  • 已付预付款当月应付金额怎么填写?
  • 个税申报赡养老人只能填一个吗
  • 小规模季度开票超过30怎么纳税
  • 文化创意服务的税率
  • 进项认证勾选在哪里操作
  • 小规模10万元免税
  • 房地产公司将自建自用房产出售 土地增值税
  • 非破产清算会计案例
  • 存货盘盈涉税问题
  • 取得的收入含税吗
  • 存款利率怎么算存一年后的金额
  • 代扣代缴手续费返还需要缴纳增值税吗
  • 行政单位要纳税吗
  • 文化事业建设税计算方法
  • 企业弥补亏损的三个途径
  • 如何查看本月还款金额
  • 主营业务净利率和销售净利率一样吗
  • 符合条件的小型微利企业减按多少的税率征收企业所得税
  • 福利费专票进项抵扣转出怎么做账
  • 车间工人工资计入
  • linux怎么安装使用conda
  • 微软雅黑字体一般用在哪里
  • 关闭无法验证发布者
  • 不缴或少缴应纳税款的行为属于
  • 公司给员工交纳社保
  • php中strcmp
  • 总公司固定资产包括哪些
  • 尿急尿频尿不尽吃什么药效果好
  • html怎么嵌入js
  • 加德满都治安状况如何
  • 冲销进项税
  • 应收账款属于会计要素中的什么科目
  • bootstrap框架的理解
  • vue .find
  • 华为od测试岗机试需要怎么准备
  • html cssjs
  • 使用灭火器人要站在上风口还是下风口
  • 多线程 cpp
  • 没有计提坏账如何披露
  • 退回以前年度的增值税账务处理
  • 小规模纳税人可以开专票吗
  • 发票作废是什么样的
  • 企业所得税季报人数季度初值
  • 发票有种类型
  • 其它应付款的审计内容
  • 实收资本会计处理方法
  • 现金形式福利费个税软件怎么申报个税
  • 增资减资改变股东要交税吗
  • 补提去年累计折旧
  • 收付转三种凭证的限制类型
  • sql server的go
  • 简单介绍清明上河图
  • window怎么操作
  • xp win10 打印机
  • ubuntu无法正常开机
  • centos安装详细
  • xp的开始菜单
  • ubuntu 编译安装
  • macbookair如何删除
  • win7主要有哪些内容
  • 程序员用linux可以干什么
  • 打开应用通知栏
  • Shell脚本监控日志 出现关键字 grep提醒
  • c++ not1
  • Linux 中的nc命令小结
  • python ftps
  • jquery动态添加样式
  • jquery是基于java的吗
  • nodejs gyp
  • unity3d坐标系
  • javascript基础笔记
  • Android Studio --自动删除没有用的资源,给APK减减肥
  • 重庆市委常委是副部级干部吗?
  • 如何开具红字发票明细
  • 个体工商户定期定额核定
  • 商业银行税务稽查重点
  • 广东省广州市税务局分数线
  • 所得税的核定征收方法
  • 增值税防伪税控开票实训心得
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设