private void updateTransformedTempObject(SpriterAbstractObject source, SpriterAbstractObject target) { source.copyValuesTo(target); if (!target.hasParent()) { target.setX(target.getX() + this.pivotX); target.setY(target.getY() + this.pivotY); } this.translateRelative(target, (target.hasParent()) ? this.tempBones2[target.getParentId ()] : this.tempParent); }
/// <summary>Sets the values of this instance to the given one.</summary> /// <remarks>Sets the values of this instance to the given one.</remarks> /// <param name="object">which has to be manipulated.</param> public virtual void copyValuesTo(SpriterAbstractObject @object) { @object.setAngle(angle); @object.setScaleX(scaleX); @object.setScaleY(scaleY); @object.setX(x); @object.setY(y); @object.setId(id); @object.setParentId(parentId); @object.setParent(parent); @object.setTimeline(timeline); @object.setSpin(spin); @object.setName(name); }
private void interpolateAbstractObject(SpriterAbstractObject target, SpriterAbstractObject obj1, SpriterAbstractObject obj2, float startTime, float endTime) { if (obj2 == null) { return; } target.setX(this.interpolate(obj1.getX(), obj2.getX(), startTime, endTime, this.frame )); target.setY(this.interpolate(obj1.getY(), obj2.getY(), startTime, endTime, this.frame )); target.setScaleX(this.interpolate(obj1.getScaleX(), obj2.getScaleX(), startTime, endTime, this.frame)); target.setScaleY(this.interpolate(obj1.getScaleY(), obj2.getScaleY(), startTime, endTime, this.frame)); target.setAngle(this.interpolateAngle(obj1.getAngle(), obj2.getAngle(), startTime , endTime, this.frame)); }