public override IGraphCloneable Clone(CloneContext cloneContext) { DxfBlockStretchAction blockStretchAction = (DxfBlockStretchAction)cloneContext.GetExistingClone((IGraphCloneable)this); if (blockStretchAction == null) { blockStretchAction = new DxfBlockStretchAction(); cloneContext.RegisterClone((IGraphCloneable)this, (IGraphCloneable)blockStretchAction); blockStretchAction.CopyFrom((DxfHandledObject)this, cloneContext); } return((IGraphCloneable)blockStretchAction); }
public override void CopyFrom(DxfHandledObject from, CloneContext cloneContext) { base.CopyFrom(from, cloneContext); DxfBlockStretchAction blockStretchAction = (DxfBlockStretchAction)from; this.ActionConnections = DxfConnectionPoint.Clone(cloneContext, blockStretchAction.ActionConnections); this.Frame = new WW.Math.Point2D[blockStretchAction.Frame.Length]; for (int index = 0; index < blockStretchAction.Frame.Length; ++index) { this.Frame[index] = blockStretchAction.Frame[index]; } this.StretchEntities = DxfBlockPolarStretchAction.StretchEntity.Clone(blockStretchAction.StretchEntities, cloneContext); this.StretchNodes = DxfBlockPolarStretchAction.StretchNode.Clone(cloneContext, blockStretchAction.StretchNodes); }