예제 #1
0
        static public b2Vec2 MulX(b2Transform T, b2Vec2 v)
        {
            b2Vec2 a = MulMV(T.R, v);

            a.x += T.position.x;
            a.y += T.position.y;
            //return T.position + b2Mul(T.R, v);
            return(a);
        }
예제 #2
0
        static public b2Vec2 MulXT(b2Transform T, b2Vec2 v)
        {
            b2Vec2 a = SubtractVV(v, T.position);
            //return b2MulT(T.R, v - T.position);
            float tX = (a.x * T.R.col1.x + a.y * T.R.col1.y);

            a.y = (a.x * T.R.col2.x + a.y * T.R.col2.y);
            a.x = tX;
            return(a);
        }
예제 #3
0
        public void Set(b2Transform x)
        {
            position.SetV(x.position);

            R.SetM(x.R);
        }