computeBounds method

  1. @override
Bounds computeBounds(
  1. SkeletonDrawable drawable
)
override

Implementation

@override
Bounds computeBounds(SkeletonDrawable drawable) {
  var data = drawable.skeletonData;
  var oldSkin = drawable.skeleton.getSkin();
  var customSkin = Skin("custom-skin");
  for (var skinName in _skins) {
    var skin = data.findSkin(skinName);
    if (skin == null) continue;
    customSkin.addSkin(skin);
  }
  drawable.skeleton.setSkin(customSkin);
  drawable.skeleton.setToSetupPose();
  var bounds = drawable.skeleton.getBounds();
  customSkin.dispose();

  if (oldSkin == null) {
    drawable.skeleton.setSkinByName("");
  } else {
    drawable.skeleton.setSkin(oldSkin);
  }
  drawable.skeleton.setToSetupPose();
  return bounds;
}