當前位置: 首頁>>代碼示例>>Java>>正文


Java SerializationHelper類代碼示例

本文整理匯總了Java中org.jbox2d.serialization.SerializationHelper的典型用法代碼示例。如果您正苦於以下問題:Java SerializationHelper類的具體用法?Java SerializationHelper怎麽用?Java SerializationHelper使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


SerializationHelper類屬於org.jbox2d.serialization包,在下文中一共展示了SerializationHelper類的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: serializeWorld

import org.jbox2d.serialization.SerializationHelper; //導入依賴的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;
}
 
開發者ID:unktomi,項目名稱:form-follows-function,代碼行數:52,代碼來源:PbSerializer.java


注:本文中的org.jbox2d.serialization.SerializationHelper類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。