TransformUtils(变换全局控制)

#ifndef __SUPPORT_TRANSFORM_UTILS_H__

#define __SUPPORT_TRANSFORM_UTILS_H__


// todo:

// when in MAC or windows, it includes <OpenGL/gl.h>

#include "CCGL.h"


namespace   cocos2d {


struct CCAffineTransform;//仿射变换


void CGAffineToGL(const CCAffineTransform *t, GLfloat *m);

void CGAffineToGL(const CCAffineTransform *t, GLfloat *m)

{

    // | m[0] m[4] m[8]  m[12] |     | m11 m21 m31 m41 |     | a c 0 tx |

    // | m[1] m[5] m[9]  m[13] |     | m12 m22 m32 m42 |     | b d 0 ty |

    // | m[2] m[6] m[10] m[14] | <=> | m13 m23 m33 m43 | <=> | 0 0 1  0 |

    // | m[3] m[7] m[11] m[15] |     | m14 m24 m34 m44 |     | 0 0 0  1 |

    

    m[2] = m[3] = m[6] = m[7] = m[8] = m[9] = m[11] = m[14] = 0.0f;

    m[10] = m[15] = 1.0f;

    m[0] = t->a; m[4] = t->c; m[12] = t->tx;

    m[1] = t->b; m[5] = t->d; m[13] = t->ty;

}


void GLToCGAffine(const GLfloat *m, CCAffineTransform *t);

/

void GLToCGAffine(const GLfloat *m, CCAffineTransform *t)

{

    t->a = m[0]; t->c = m[4]; t->tx = m[12];

    t->b = m[1]; t->d = m[5]; t->ty = m[13];

}


//

}//namespace   cocos2d 


#endif // __SUPPORT_TRANSFORM_UTILS_H__


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值