Fixture constructor

Fixture(
  1. Body body,
  2. FixtureDef def
)

Implementation

Fixture(this.body, FixtureDef def) {
  userData = def.userData;
  friction = def.friction;
  restitution = def.restitution;

  _filter.set(def.filter);

  _isSensor = def.isSensor;

  shape = def.shape.clone();

  // Reserve proxy space
  final childCount = shape.childCount;
  if (proxies.length < childCount) {
    final old = proxies;
    final newLength = max(old.length * 2, childCount);
    proxies.clear();
    for (var x = 0; x < newLength; x++) {
      proxies.add(FixtureProxy(this)..proxyId = BroadPhase.nullProxy);
    }
  }
  _proxyCount = 0;
  _density = def.density;
}