JBox2d – world.getBodyList () переходит в бесконечный цикл

Я пытаюсь создать класс, который бы нарисовал объекты моего мира JBox2d на холсте.

При обновлении я звоню

render.draw(canvas,world); 

Который передает мир и холст классу рисования, который, как предполагается, будет проходить через объекты мира и втягивать их в холст.

 public void draw(Canvas canvas, World world) { canvas.drawColor(0xFF6699FF); for ( Body b = world.getBodyList(); b!=null; b.getNext() ) { Log.e("xy", String.valueOf( b.getPosition().x )+" "+String.valueOf( b.getPosition().y ) ); } } 

Но, похоже, он переходит в бесконечный цикл, кнопка «Назад» не работает, тогда она говорит «не отвечает» и предлагает принудительно закрыть.

Любые идеи, каков правильный способ циклического перемещения тел в этом случае?

Благодаря!

    Как уже упоминалось в моем комментарии, цикл должен быть следующим:

     for ( Body b = world.getBodyList(); b!=null; b = b.getNext() ) { Log.e("xy", String.valueOf(b.getPosition().x)+ " " + String.valueOf(b.getPosition().y)); } 

    Это один из способов сделать это. Вы получаете доступ к своим различным формам (полигон / круг) через список мировых организаций:

     public void draw(Canvas canvas){ Body body = world.getBodyList(); while(body != null){ Fixture fixture = body.getFixtureList(); while(fixture != null){ ShapeType type = fixture.getType(); if(type == ShapeType.POLYGON){ PolygonShape shape = (PolygonShape)fixture.getShape(); // draw shape }else if(type == ShapeType.CIRCLE){ CircleShape shape = (CircleShape)fixture.getShape(); // draw shape } fixture = fixture.getNext(); } body = body.getNext(); } } 
    Intereting Posts
    Android: отключить вращение на 90 °, но разрешить поворот на 180 ° Библиотека Kotlin 'classes.jar' имеет неподдерживаемый формат. Обновите библиотеку или плагин Android – ActionBar не изменяет размер с помощью onConfigurationChanged (AppCompat) Вариант случая существует? HtmlUnit на Android: Зависимости Как очистить содержимое холста в Android? Android – Чтение данных HTML5 localStorage прямо с Java Javacard applet RPDU не содержит никаких данных при доступе от seek-for-android Универсальное приложение (планшет и телефон) – как лучше всего структурировать – несколько макетов xml или показать / скрыть виджеты? Поскольку обновление OTA для Marshmallow мое приложение на основе гироскопа больше не работает BetterPickers без библиотеки поддержки Adobe AIR 3.1 Native Extension для Android – нулевой контекст расширения в actionscript Как удалить контакт? Как сохранить изображение в пределах экрана при использовании масштабирования и перетаскивания жесты? Android xmpp library