トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     Box2dで物体の回転中心を変えたい
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
e271828
Åê¹ÆNo.41572
投稿日時: 2009-2-25 23:32
新米
居住地:
投稿: 11
使用環境:
MacOSX,FlashCS3,Flash8
Box2dで物体の回転中心を変えたい
Box2d 2.0.0を使っています。
箱は通常重心(中心)が真ん中にあります。そのまま回転させると、やはりその中心で回転します。
私がやりたいことは、その回転の中心をグローバル座標などでどこかに決めて、そこを中心に回転させたいのです。
自分でも調べてみて、

SetMassというメソッドが使えそうということが分かっています。
以下、リファレンスの原文です。

Set the mass properties. Note that this changes the center of mass position. If you are not sure how to compute mass properties, use SetMassFromShapes. The inertia tensor is assumed to be relative to the center of mass.

それを以下のようにして使ってみました
var ms=new b2MassData;
ms.center=new b2Vec2(0.2,4);//変更後の中心の座標
_b2Body.SetMass(ms);
_b2Bodyの中心を変えたいのですが、これでは何の変化もありませんでした。

以下のようにローカルの中心をトレースしてみても、0,0で変化なしです
trace(_b2Body.GetLocalCenter().x,_b2Body.GetLocalCenter().y);


どうしたら、Box2dで物体の回転中心を変えられるのでしょう、識者の方、助言をお願いします。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops