public void calcBoundingBox(SpriterRectangle base) { this.boundingBox.set(base); for (SpriterObject object : this.childObjects) { Point[] points = object.getBoundingBox(); this.boundingBox.left = Math.min( Math.min(Math.min(Math.min(points[0].x, points[1].x), points[2].x), points[3].x), this.boundingBox.left); this.boundingBox.right = Math.max( Math.max(Math.max(Math.max(points[0].x, points[1].x), points[2].x), points[3].x), this.boundingBox.right); this.boundingBox.top = Math.max( Math.max(Math.max(Math.max(points[0].y, points[1].y), points[2].y), points[3].y), this.boundingBox.top); this.boundingBox.bottom = Math.min( Math.min(Math.min(Math.min(points[0].y, points[1].y), points[2].y), points[3].y), this.boundingBox.bottom); } for (SpriterBone child : this.childBones) { child.calcBoundingBox(boundingBox); this.boundingBox.set(child.boundingBox); } }
public void addChildObject(SpriterObject object) { object.setParent(this); childObjects.add(object); }
/** * Manipulates the given object. * * @param object */ public void modSpriterObject(SpriterObject object) { this.modObject(object); object.setAlpha(object.getAlpha() * this.alpha); }