本文整理匯總了Java中org.box2d.proto.Box2D.PbWorld類的典型用法代碼示例。如果您正苦於以下問題:Java PbWorld類的具體用法?Java PbWorld怎麽用?Java PbWorld使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
PbWorld類屬於org.box2d.proto.Box2D包,在下文中一共展示了PbWorld類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: serialize
import org.box2d.proto.Box2D.PbWorld; //導入依賴的package包/類
@Override
public SerializationResult serialize(World argWorld) {
final PbWorld world = serializeWorld(argWorld).build();
return new SerializationResult() {
@Override
public void writeTo(OutputStream argOutputStream) throws IOException {
world.writeTo(argOutputStream);
}
@Override
public Object getValue() {
return world;
}
};
}
示例2: deserializeWorld
import org.box2d.proto.Box2D.PbWorld; //導入依賴的package包/類
@Override
public World deserializeWorld(InputStream argInput) throws IOException {
PbWorld world = PbWorld.parseFrom(argInput);
return deserializeWorld(world);
}
示例3: serializeWorld
import org.box2d.proto.Box2D.PbWorld; //導入依賴的package包/類
public PbWorld.Builder serializeWorld(World argWorld) {
final PbWorld.Builder builder = PbWorld.newBuilder();
if (signer != null) {
Long tag = signer.getTag(argWorld);
if (tag != null) {
builder.setTag(tag);
}
}
builder.setGravity(vecToPb(argWorld.getGravity()));
builder.setAllowSleep(argWorld.isAllowSleep());
builder.setContinuousPhysics(argWorld.isContinuousPhysics());
builder.setWarmStarting(argWorld.isWarmStarting());
builder.setSubStepping(argWorld.isSubStepping());
Body cbody = argWorld.getBodyList();
int cnt = 0;
HashMap<Body, Integer> bodies = new HashMap<Body, Integer>();
while (cbody != null) {
builder.addBodies(serializeBody(cbody));
bodies.put(cbody, cnt);
cnt++;
cbody = cbody.m_next;
}
cnt = 0;
HashMap<Joint, Integer> joints = new HashMap<Joint, Integer>();
Joint cjoint = argWorld.getJointList();
// first pass
while (cjoint != null) {
if (SerializationHelper.isIndependentJoint(cjoint.getType())) {
builder.addJoints(serializeJoint(cjoint, bodies, joints));
joints.put(cjoint, cnt);
cnt++;
}
cjoint = cjoint.m_next;
}
// second pass for dependent joints
cjoint = argWorld.getJointList();
while (cjoint != null) {
if (!SerializationHelper.isIndependentJoint(cjoint.getType())) {
builder.addJoints(serializeJoint(cjoint, bodies, joints));
joints.put(cjoint, cnt);
cnt++;
}
cjoint = cjoint.m_next;
}
return builder;
}