Пример #1
0
  private void demo(String[] args) {
    int i, j;
    DMass m = OdeHelper.createMass();

    // create world
    OdeHelper.initODE2(0);
    world = OdeHelper.createWorld();
    space = OdeHelper.createHashSpace(null);
    contactgroup = OdeHelper.createJointGroup();
    world.setGravity(0, 0, -GRAVITY);
    ground = OdeHelper.createPlane(space, 0, 0, 1, 0);

    // bodies
    for (i = 0; i < N1; i++) {
      for (j = 0; j < N2; j++) {
        body[i][j] = OdeHelper.createBody(world);
        m.setBox(1, LENGTH, LENGTH, HEIGHT);
        m.adjust(MASS * (j + 1));
        body[i][j].setMass(m);
        body[i][j].setPosition(i * 2 * LENGTH, j * 2 * LENGTH, HEIGHT * 0.5);

        box[i][j] = OdeHelper.createBox(space, LENGTH, LENGTH, HEIGHT);
        box[i][j].setBody(body[i][j]);
      }
    }

    // run simulation
    dsSimulationLoop(args, 352, 288, this);

    contactgroup.destroy();
    space.destroy();
    world.destroy();
    OdeHelper.closeODE();
  }