0

ActionScript から c++ box2d にいくつかのコードを移植しようとして
いますが、ActionScript のコードは 2011 年のものです。
最新のものを使用しています。
とにかく、これは私がアクションスクリプトに持っているものです:

    var leftAxle:b2Body=world.CreateBody(leftAxleBodyDef);
    leftAxle.CreateFixture(leftAxleFixture);
// this is the part i need to port , there is no SetPosition in the box2d 2.2+ version 
    leftAxle.SetPosition(new b2Vec2(carPosX/worldScale-axleContainerDistance/worldScale-axleContainerHeight/worldScale*Math.cos((90-axleAngle)*degreesToRadians),carPosY/worldScale+axleContainerDepth/worldScale+axleContainerHeight/worldScale*Math.sin((90-axleAngle)*degreesToRadians)));

斜辺角を持つボックスを基本的に

4

1 に答える 1

2

申し訳ありませんが、C++ から AS3 に変換していると思っていました

コードの概要: https://github.com/cocos2d/cocos2d-x/blob/ac2c0469c71eaabff38f545ce956859627f2b7fc/external/Box2D/Dynamics/b2Body.cpp

のようSetPosition()ですSetTransform(const b2Vec2& position, float32 angle)。これは、位置と回転をb2Transform裏でストックしているからです。でさえ、のプロパティをGetPosition()返すだけですpositionb2Transform

于 2013-10-25T15:51:50.510 に答える